CS2 Updates

This website provides updates, news, and insider information about Counter-Strike, including game updates, patches, and changes.
Show raw JSON
{
  "generated_at_utc": "2026-07-10T20:56:44.763Z",
  "source": {
    "owner": "SteamDatabase",
    "repo": "GameTracking-CS2"
  },
  "last_updates": [
    {
      "event_id": "gh:fe4e895",
      "detected_at_utc": "2026-07-10T20:56:43.428Z",
      "commit_date_utc": "2026-07-09T21:50:22Z",
      "commit": {
        "sha": "fe4e895b3b44d4c1e4ae32e4b62daa6150d6c8f0",
        "short": "fe4e895",
        "message": "2000873 | 37 files | M\tDumpSource2/schemas/server/dynpitchvol_base_t.h, M\tDumpSource2/schemas/server/dynpitchvol_t.h, M\tgame/bin/built_from_cl.txt, M\tgame/bin/win64/animationsystem_strings.txt, M\tgame/bin/win64/assetpreview_strings.txt, M\tgame/bin/win64/assetrename_strings.txt, M\tgame/bin/win64/engine2_strings.txt, M\tgame/bin/win64/gfsdk_aftermath_lib.x64_strings.txt, M\tgame/bin/win64/libfbxsdk_2020_3_1_strings.txt, M\tgame/bin/win64/meshsystem_strings.txt, M\tgame/bin/win64/networksystem_strings.txt, M\tgame/bin/win64/panorama_strings.txt, M\tgame/bin/win64/panorama_text_pango_strings.txt, M\tgame/bin/win64/panoramauiclient_strings.txt, M\tgame/bin/win64/physicsbuilder_strings.txt, M\tgame/bin/win64/pi_level_zero_strings.txt, M\tgame/bin/win64/pulse_system_strings.txt, M\tgame/bin/win64/resourcecompiler_strings.txt, M\tgame/bin/win64/scenesystem_strings.txt, M\tgame/bin/win64/steamaudio_strings.txt, M\tgame/bin/win64/steamnetworkingsockets_strings.txt, M\tgame/bin/win64/tier0_strings.txt, M\tgame/bin/win64/tools/cs2_item_editor_strings.txt, M",
        "url": "https://github.com/SteamTracking/GameTracking-CS2/commit/fe4e895b3b44d4c1e4ae32e4b62daa6150d6c8f0"
      },
      "classification": {
        "tags": [
          "scripts",
          "ui",
          "misc",
          "content-change"
        ],
        "important_files": [
          "game/csgo/pak01_dir/panorama/scripts/scoreboard.js"
        ]
      },
      "ai_summary": "Assets/UI/maps update (game/bin/win64/panorama_strings.txt, game/bin/win64/panorama_text_pango_strings.txt, game/bin/win64/panoramauiclient_strings.txt).",
      "stats": {
        "files_changed": 37,
        "additions": 189,
        "deletions": 276
      },
      "files": [
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_base_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": -1972506438,\n-//\t\"vol\": 32766,\n+//\t\"pitchfrac\": -1164249830,\n+//\t\"vol\": 32762,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        },
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": -1972506438,\n-//\t\"vol\": 32766,\n+//\t\"pitchfrac\": -1164249830,\n+//\t\"vol\": 32762,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        },
        {
          "filename": "game/bin/built_from_cl.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1 +1 @@\n-10810962\n+10812601"
        },
        {
          "filename": "game/bin/win64/animationsystem_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 4,
          "changes": 4,
          "patch": "@@ -2128,7 +2128,6 @@\n ?const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)\n ?expf\n ?m_flPosition\n-@08N\n @6P9b\n @6P;b\n @6p]b\n@@ -3024,8 +3023,6 @@ Overlay Blend: %.2f%%\n OverlayBlendTask - Trying to perform an overlay blend with mismatched pose types ( additive/parent-space )\n OverlayProjectionDirection\n P08@Jp\n-P08J\n-P08N\n P6pLb\n P6plb\n PARENT\n@@ -3805,7 +3802,6 @@ offWhenFinished\n optionallycompressedtangentframe\n options.m_pBoneWeights->Count() >= m_boneIDs.Count()\n options.m_pBoneWeights->Count() >= m_pSkeleton->GetNumBones()\n-p08@H^\n p6`Bb\n pCheckpointName\n pDescription"
        },
        {
          "filename": "game/bin/win64/assetpreview_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -14069,7 +14069,6 @@ ROTATION\n R\\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z\n R\\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z\n R\\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z\n-R\\vp4\n R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ\n R_T5Y\n Rad2 Deg"
        },
        {
          "filename": "game/bin/win64/assetrename_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 3,
          "changes": 3,
          "patch": "@@ -15568,7 +15568,6 @@ $x(<*L(^$*.d$40.2Z$D6@$Q\n @%s_lookFrame_2\n @&*(**&,b*t\n @&*(**&,b*~\n-@08N\n @2Py\\t\n @60jB\n @6@KB\n@@ -21012,7 +21011,6 @@ Overwriting existing wrinkle map data on mesh\n P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z\n P.\"0$.p2:4&6\"8>6\n P08@JP\n-P08J\n P08~\n P4 Delete of GAME file\n P4 branch/copy and edit destination\n@@ -27058,7 +27056,6 @@ overwrite_existing\n overwrite_existing_flags_only\n ownerlog\n owns_polymorphic_data\n-p08@H^\n p2Py\\t\n p2|N\n p6pjB"
        },
        {
          "filename": "game/bin/win64/engine2_strings.txt",
          "status": "modified",
          "additions": 65,
          "deletions": 54,
          "changes": 119,
          "patch": "@@ -152,9 +152,10 @@\n  %i refs\\n\n  (08@HPX`hpx\n  (08@HPX`j@E\n- (08@HPXb@\n+ (08@HPXb\n  (08@HPZ@E\n- (0X`hpz@\n+ (08@HR\n+ (0X`hpz\n  (Start: \n  (default = .tga + .wav file)\\n\n  (fallback, started with \n@@ -169,7 +170,7 @@\n  -component \"%s\"\n  -noscreenshot\n  -product \"%s\"\n- .phG\n+ .06G\n  2r6\n  3CQ`p\n  7Me}\n@@ -926,6 +927,7 @@ $tI(knN\n (channel = \n (dump took %.1fms)\\n\n (end of input).\\n\\t This indicates a poorly specified lexer RULE\\n\\t or unterminated input element such as: \"STRING[\"]\\n\n+(f YG\n (merge \n (no landmark)\n (no reason given)\n@@ -1073,9 +1075,10 @@ $tI(knN\n ../src/shaders\n ..\\content\n .00cfg\n-.01G\n-.0WG\n-.0cG\n+.08G\n+.0eG\n+.0jG\n+.0lG\n .9GXdx\n .>\\rfJBGo\n .?AU?$Container@VUnknownFieldSet@protobuf@google@@@InternalMetadata@internal@protobuf@google@@\n@@ -2475,12 +2478,9 @@ $tI(knN\n .ESource2PlayStatsFieldType\n .ESplitScreenMessageType\n .P6AXPEBD@Z\n-.PBG\n .PEAVCEntityIdentity@@\n+.PIG\n .PLACEHOLDER_VALUE\n-.PRG\n-.PcG\n-.PeG\n .ProtoFlattenedSerializer_t\n .RequestPause_t\n .SignonState_t\n@@ -2520,10 +2520,13 @@ $tI(knN\n .log\n .los\n .lzh\n-.p7G\n-.pVG\n-.pcG\n+.p6G\n+.pMG\n+.pbG\n+.pdG\n .pdata\n+.peG\n+.pfG\n .placeholder.proto\n .rdata\n .rdata$00\n@@ -2596,14 +2599,14 @@ $tI(knN\n 0123456789abcdefghijklmnopqrstuvwxyz\n 08@HP\n 08@HR@E\n-08@J@\n+08@J\n 08B@E\n 08\\fj\n 0: run all send jobs on main thread; 1: send jobs run asynchronously (except on dedicated server); 2: send jobs asynchronously; 3: send jobs run in parallel but block to not overlap the next tick; 4: main server clients' send jobs run in parallel, then HLTV server jobs; this approximately matches pre-async profile for a single HLTV server configuration\n+0:0d%\n 0:<\\n\\fdelta_ignore\n 0=Off, 1=Surface Wireframe, 2=Transparent Wireframe\n 0=Off, 1=Visualize trace from camera, 2=Visualize occlusion, 3=Visualize far field trace from camera\n-0>PUG\n 0B_u\n 0C&C\n 0E>X\n@@ -2650,11 +2653,13 @@ $tI(knN\n 2#GameUI_Disconnect_RemoteProblem_TimeoutConnecting\n 2$.google.protobuf.FieldOptions.JSType:\\tJS_NORMAL\n 2%sT5\n+2(RB\n 2).google.protobuf.FileOptions.OptimizeMode:\n 2*.google.protobuf.FieldDescriptorProto.Type\n 2+.google.protobuf.FieldDescriptorProto.Label\n 2/.google.protobuf.MethodOptions.IdempotencyLevel:\n 200000\n+20b%\n 25:Q\n 2CZu\n 2Hax\n@@ -2666,7 +2671,7 @@ $tI(knN\n 2\\r.PrefetchType\"h\\n\n 2\\rU2t\n 2\\tV_fpclassifyd\n-2\\vpL\n+2\\vpT\n 2i0/\n 3$EE\\f\n 3'F^7\n@@ -2706,21 +2711,22 @@ $tI(knN\n 5\\n\\vnested_type\n 5c;3E\n 5y?4\n-6 BG\n-605G\n+6 3G\n+6 SG\n+60BG\n+60IG\n+60RG\n 64-bit\n 6?k 6?t\n 6GQ^h~\n 6KT3c7\n 6NK>\n-6V{G\n+6PZG\n 6\\fXO>\\ntA\n 6\\n\\fmessage_type\n 6\\r56t\n-6`7G\n-6`gG\n-6`kG\n-6p4G\n+6`LG\n+6`MG\n 6s?fBbEcJYG[I[NYVP\\B]@f;g<h<u4{,\n 6tmT\n 6uu?>\n@@ -2741,6 +2747,7 @@ $tI(knN\n 8@HP:\n 8@J@E\n 8A3b\n+8B0}$\n 8B@E\n 8Csinf\n 8Smt\n@@ -2749,6 +2756,7 @@ $tI(knN\n 8\\n\\vdescriptors\n 8\\vu8t\n 8b  16-May-2010\n+8e5^\n 8ke?;\n 8}WW`\n 9*ubC'\n@@ -2812,7 +2820,6 @@ $tI(knN\n =e2m\n =imb;D\n =rF`JXKXWJYB[Cd;l2x(z%a+N2SNTQXKVJWGZI]J]Jm(r$u\"u\"\n->0MG\n >0|t?z7\n >5dK\n >6uu\n@@ -2826,7 +2833,8 @@ $tI(knN\n >cQ6\n >fff?fff?fff?fff?invalid_hitbox\n >jtm}S\n->pLG\n+>p5G\n+>pPG\n >qxs\n >qxs?\n >qxs?z7\n@@ -3184,14 +3192,13 @@ $tI(knN\n ?ysB\n @ Current  :  %s\\n\n @08@HPX`hpx\n-@08Nd\n-@6P*G\n+@08N\n+@60bG\n+@60dG\n @GetProfile_ultrafast\n @HPX\n @HPX&I\n-@HPX`hv@CG\n-@HV QG\n-@NPDG\n+@HPX`hv\n @\\tV_fwrite\n @^8U)zj\n @i-kuX\n@@ -3381,7 +3388,6 @@ Automatically records all games as SourceTV demos.\n Av8I5\n Avestan\n A{v8\n-B0b%\n B2Bk\n B5@S\n B86!\n@@ -5182,7 +5188,10 @@ Extensions to non-lite types can only be declared in non-lite files.  Note that\n Extra arguments given after name\\n\n ExtractModuleMetadata\n Extraneous token\n+F JG\n+F0XG\n F>qUxv\n+F@HG\n FAIL\n FALSE\n FATAL\n@@ -6570,14 +6579,12 @@ Override Fog color: %f %f %f\\n\n Overrides the SourceTV master root address.\n Overrides the max players reported to prospective clients\n Overriding minidump handler with Engine2MinidumpFunction\\n\n-P08@J@\n-P08JP\n-P08Nd\n+P08@J\n+P08J\n+P08N\n P2@E\n P4File\n-P6P=G\n-P6PgG\n-P6`/G\n+P6`bG\n P:S;A\n P?fff?33s?{\n P@HPX`hpx\\f\n@@ -6701,6 +6708,7 @@ PerFrameSleepChanged\n PerFrameSleepMS\n Perf stats buffer full, no more data will be collected.\\n\n Performs a bind <key> \"increment var <cvar> 0 1 1\".\n+Pfp1G\n Phags_Pa\n Phoenician\n PhysicsBuilderMgr001\n@@ -6849,6 +6857,7 @@ Playing Broadcast (%s)\n Playing Demo (%s)\n Playing back demo: '%s' at tick %u\\n\n PmNk\n+PnP3G\n Pointers cannot be used as numeric values\n PollAndProcessInput\n Poor man's restart: reload the current map from disk.\n@@ -7035,7 +7044,7 @@ RP_PAUSE\n RP_TOGGLEPAUSE\n RSDS\n RST%d\n-R\\vpL\n+R\\vp4\n RaiseException\n Random Float\n Random Integer\n@@ -8338,7 +8347,6 @@ UtlVectorMemory_FailedAllocation\n U}JK\n U}g7x~\n V/?[w8rV\n-V0fG\n V<@ss\n V?wm\\v\n VApplication001\n@@ -8473,7 +8481,6 @@ Visibility %s.\\n\n Voice\n VoiceDataFormat_t\n Void\n-Vp\\G\n Vrad3_001\n Vu?N\\t?8Ws?vGr?\n Vv.q\n@@ -8667,7 +8674,6 @@ You have been kicked and banned %s by the server.\\n\n Your current chat group is \"%s\"\\n\n YpU_Z\n Z-google.golang.org/protobuf/types/descriptorpb\n-Z0b%\n Z48wN39\n Z6y\\r?\n Z?SHX?\n@@ -8754,7 +8760,7 @@ Zq\",9\\fB\n \\fV4U\n \\fX\\fm\\vH\\vH\\vm\\v\n \\f\\ng_pThreadPool\n-\\foNj\n+\\fp\\vPP\n \\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number\n \\n    Actual    : \n \\n    Field type: \n@@ -9172,7 +9178,6 @@ Zq\",9\\fB\n ]\\n,NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION\n ]\\tV_log2_uint\n ^<V7w\n-^PUG\n ^RfN>\n ^\\n*NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT\n ^\\n*NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT\n@@ -9233,8 +9238,8 @@ _spawngroup_logging/log_%s_group_%s.txt\n _temp_mapcycle.txt\n `-uRQg\n `3Q\"X\n-`6 eG\n-`60eG\n+`6PdG\n+`6PeG\n `?m'_?&~]?(\n `RTTI\n `adjustor{\n@@ -9292,7 +9297,6 @@ a numbered reference must not be zero\n a&M-=Z]<i*k)n-t&q&p&|\n a6>r\n a?wSa?\\\n-aBvd\n a\\tV_logf\n a\\v4+Wk\n abcdefghijklmnopqrstuvwxyz\n@@ -10001,6 +10005,7 @@ false:=\\n\\rvalve_map_key\n false:?\\n\n false:A\\n\n fast path %d at %d\\n\n+fb{G\n field\n field_serializer_name_sym\n field_serializer_version\n@@ -10032,6 +10037,7 @@ float32\n float64\n floor\n fmod\n+fn{G\n fog_enable\n fog_override_color\n fog_override_enable\n@@ -10052,8 +10058,6 @@ forcing new thread crash\\n\n forcing parallel process non-main thread crash\\n\n format\n found duplicate in %s\\n\n-fp(G\n-fpGG\n fps variability,\n fps,\n fps_max\n@@ -10176,6 +10180,7 @@ guid\n h0'D\n h>1my\n hJ4%\n+hMI^\n hPU3\n hTarget\n h\\n,NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING\n@@ -10230,7 +10235,6 @@ hostname\n hostname : %s\\n\n hostname_in_client_status\n hostport\n-hpz@\n hscript\n hscript_lightbinding\n http Send %.3f ms ave, %.3f ms max\\n\n@@ -10719,11 +10723,13 @@ multvar\n multvar: cvar \"%s\" not found\\n\n multvar: no varname specified!\\n\n mx=E\n+n 4G\n n03>Pu\n+n0UG\n n>sak><\n n?A6\n n?SZn?\n-n@jG\n+n@QG\n nBits != 32\n nGh>\n nI9>h\n@@ -10834,6 +10840,8 @@ not started\n not supported\n notes\n nothing to repeat\n+npHG\n+npWG\n null\n nullptr\n num_bits\n@@ -10941,20 +10949,21 @@ overwatch\n owM&\n owner dead\n oz>!km>\n-p08@H^d\n+p08@H^\n p0p@\n+p20}$\n p2@E\n p2p_listpeers\n p2p_ping \"%s\"\n p4edit\n-p6@0G\n+p6@OG\n+p>7{G\n p?ff\n p@HPX`h\\f\n pClass\n pClass->m_ClassID(%i) >= %i\\n\n pClient\n pCm)\n-pF ]G\n pH\\fy\n pMessage\n pNewSet->m_readPipe.OpenPipe_Named( false, szReadPipeParam, true )\n@@ -11103,10 +11112,12 @@ quit\n quit\\n\n qxs?L\n qxs?z7\n+r0b%\n r?dar?\\n\n rA?7\n rEy5\n rFg7\n+r\\fp4\n r\\tVr.>T\n r_always_render_all_windows\n r_aspectratio\n@@ -11951,6 +11962,7 @@ utcdatetime_vals\n utl_vector, \n utlstringtoken\n uzKs@>\n+v0iG\n v2!L.2\n vE-2\n vQO+t\n@@ -12131,7 +12143,6 @@ y\\tV_sincosf\n yields\n yiq-\n yslf`ZTMGA;5.\n-z0b%\n z?Mbz?H5z?\n z\\n8NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY\n z\\nB\\fz"
        },
        {
          "filename": "game/bin/win64/gfsdk_aftermath_lib.x64_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -1088,7 +1088,6 @@ $@(2.(0f6(:b@\n =5au\n >global\n @08B\n-@08N\n @20z\\n\n @HJP~\n @HPV\n@@ -5002,7 +5001,6 @@ Zig Software Foundation Zig Compiler\n [structured binding for \n [unnamed type (instance \n \\6^6V\n-\\fp\\vPP\n \\mfpmp.exe\n \\n          to \n \\n; <label>:"
        },
        {
          "filename": "game/bin/win64/libfbxsdk_2020_3_1_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -12974,7 +12974,6 @@ $\\t$\\n$\\v$\\f$\\r$\n ?valueAs@FbxDistance@fbxsdk@@QEBAMAEBVFbxSystemUnit@2@@Z\n @&DlF4D>H4D>J4D\n @08B \n-@08N\n @2p9'\n @6 Zj\n @60/k\n@@ -16580,7 +16579,6 @@ Overscan Fit\n P$RfP\n P%luY%luM%luDT%luH%luM%.14gS\n P(Pe{\n-P08N\n P08~\n P0F&RPTZX\n P2 p"
        },
        {
          "filename": "game/bin/win64/meshsystem_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -115,7 +115,7 @@\n .?AVIShaderReloadListener@@\n .?AVIVPhysicsLegacyKeyHandler@@\n .vmdl\n-2\\vpT\n+2\\vpL\n 2_BONE_IK\n 8a\\v6;\n ;1#INF"
        },
        {
          "filename": "game/bin/win64/networksystem_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -266,9 +266,7 @@\n 8Fpu\n ::Storage_t\n <classname> <fieldname>:  spew why field was excluded from networking for classname.\n-@08N\n @6po\n-@HPX`hv\n Accepting Steam Net connection %s\\n\n AckSeqNum\n Activates/deactivates net message validation\n@@ -670,8 +668,6 @@ Order,'From','To',Bits\\n\n OutSeqNumAck\n Overrides IP for multihomed hosts\n P08@Jpq\n-P08J\n-P08N\n P2pq\n P6 R\n P:pq\n@@ -1075,7 +1071,6 @@ out-of-order\n outgoing_data_bytespersecond\n outgoing_sequence\n outgoing_sequence_start\n-p08@H^\n p0j@\n p2pq\n p\\rP\\f0!h"
        },
        {
          "filename": "game/bin/win64/panorama_strings.txt",
          "status": "modified",
          "additions": 31,
          "deletions": 47,
          "changes": 78,
          "patch": "@@ -17,10 +17,7 @@\n  ' ) - 3 G M Q _ c e i w } \n  (%ld unused bits)\\n\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  (INVALID PSS PARAMETERS)\\n\n  (Negative)\n  (derived from %s)\n@@ -265,54 +262,49 @@ $hRh\n (!(1(=(?(I(Q([(](a(g(u(\n ((long)msg_hdr->msg_len) > 0\n (0'yX\n-(1oJ\n+(1GJ\n (4?NewFromUnsigned@Integer@v8@@SA?AV?$Local@VInteger@v8@@@2@PEAVIsolate@2@I@Z\n-(5BJ\n-(5EJ\n-(5JJ\n (5Me\n-(5OJ\n (5jP\n-(A9J\n+(95J\n+(AkJ\n (BZq\n (D4D\n-(ENJ\n-(EaJ\n-(EjJ\n+(EUJ\n (I?Value@External@v8@@QEBAPEAXXZ\n+(M2J\n+(M8J\n (NONE)\n-(QkJ\n+(U0J\n (U1h\n-(U2J\n-(U5J\n-(U7J\n-(Y0J\n-(YyJ\n+(UHJ\n+(UvJ\n+(Y4J\n+(YlJ\n (ZdOt\\n&\n (_Assert)\n-(acJ\n+(aWJ\n+(abJ\n (anonymous)\n (d4t8\n (down)\n (fS{ggRcjh\n (h`H1pqA\n (i/Al\n-(i8J\n-(iHJ\n-(iMJ\n-(iQJ\n+(ihJ\n (jvg;\n (memory)\n-(qGJ\n+(moJ\n+(qBJ\n+(qEJ\n+(qJJ\n+(qOJ\n (undefined)\n (unset)\n (unset) w/parent: %s\n (vQF\n (wMww\n-(yCJ\n-(yRJ\n-(yeJ\n-(ylJ\n+(yDJ\n )!)#)?)G)])e)i)o)u)\n )4?NewFromUtf8@String@v8@@SA?AV?$MaybeLocal@VString@v8@@@2@PEAVIsolate@2@PEBDW4NewStringType@2@H@Z\n )Ck?B\n@@ -989,12 +981,10 @@ $hRh\n 02V8[\n 05=k\n 08@HR\n-08@J\n 08bX\n 09,h\n 0;Q5[\n 0<cz\n-0>pc=\n 0M2~@p\n 0W/5\n 0Z@q\n@@ -1029,6 +1019,7 @@ $hRh\n 2)252Y2]2c2k2o2u2w2{2\n 2)Ab`\n 2+~,@\\r;Zj09\n+20I \n 20t\\f\n 24U\\n\n 27;C\n@@ -1051,7 +1042,6 @@ $hRh\n 2f)l=\n 2nIg\n 2p\"6\n-2pO$\n 2prB\n 3%3+3/353A3G3[3_3g3k3s3y3\n 31tPR\n@@ -1125,7 +1115,6 @@ $hRh\n 6l13\n 6lkc\n 6myY;\n-6px=\n 6qo~\n 6r-m_v\n 6r1ij\n@@ -1157,15 +1146,16 @@ $hRh\n 7wKR\n 7zRQ\n 8\"3hrf\n-8)KJ\n 8+Qw\n 80F2<\n 82\\n:XPH\n 851Pe\n+85}J\n 8<pl\n 8= zp\n 8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z\n 8A6j\n+8AXJ\n 8BP!\\n\n 8GZS\n 8SIffK5W\n@@ -1174,6 +1164,7 @@ $hRh\n 8]Vc2\n 8ca1\n 8dS2\n+8eKJ\n 8pe7?\n 8q-S*]X\n 8sOy\n@@ -1190,7 +1181,6 @@ $hRh\n 9J9;6\n 9N1=@\n 9QTA\n-9R}J\n 9Y@nJM\n 9Zr4\n 9\\not\n@@ -1342,15 +1332,14 @@ $hRh\n ?uWS\n ?x29\n @!@%@+@1@?@C@E@]@a@g@m@\n-@08N\n @0pp\n-@60d=\n-@60f=\n+@6Pd=\n+@6Pf=\n @?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z\n @BH]f\n-@HPX`hv y=\n+@HPX`hv@y=\n @MfKZ\n-@NPz=\n+@Npz=\n @Pgl\n @Pu\\rm\n @WE]X\n@@ -3579,12 +3568,9 @@ P-224\n P-256\n P-384\n P-521\n-P08@J\n-P08J\n-P08N\n+P08J0\n P1\\t98\"\n P5[1\n-P6`d=\n PAGN_4\n PARAMETERS\n PARSE_BAG\n@@ -4646,7 +4632,6 @@ Ut]<E\n Uv1t\n Uz_G3=\n V07;m\n-V0b=\n V2I_ASIDENTIFIERS\n V2I_AUTHORITY_INFO_ACCESS\n V2I_AUTHORITY_KEYID\n@@ -4690,6 +4675,7 @@ VNotify Abandoned (Not enabled)\\n\n VNotify Sent\\n\n VNotify StartProcess failed!\\n\n VNotify: %s\\n\n+VPb=\n VY5[;o\n VZ#-DLU[3=h\n V\\rKk\n@@ -5024,7 +5010,6 @@ Z~wl\n \\n5a=Z\n \\n:82H\n \\nJS(%s:%d:%d)\\n%s\\n%s\\n\n-\\nWKJ\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n \\n\\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n \\n\\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n@@ -5103,7 +5088,6 @@ _}eOk\n `28)fk\n `3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z\n `:zQF\n-`AMJ\n `D$daM-l\n `DZG\n `F?ToLocalEmpty@api_internal@v8@@YAXXZ\n@@ -8131,7 +8115,6 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n-p08@H^\n p2P!\\n\n p2{l\n p4Z3\n@@ -8452,6 +8435,7 @@ quiet\n qx(q\n r$0I\n r-IE\n+r05 \n r184\n r3A~\n r<\\rND"
        },
        {
          "filename": "game/bin/win64/panorama_text_pango_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -904,7 +904,6 @@ $hRh\n @08NX\n @0pp\n @BH]f\n-@HPX`hv\n @MfKZ\n @Pgl\n @Pu\\rm\n@@ -2625,7 +2624,6 @@ P-256\n P-384\n P-521\n P08@J`k\n-P08J\n P08NX\n P1\\t98\"\n P2`k"
        },
        {
          "filename": "game/bin/win64/panoramauiclient_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 6,
          "changes": 6,
          "patch": "@@ -1,9 +1,6 @@\n  !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  <b>@import</b> \n  cubic-bezier( %1.3f, %1.3f, %1.3f, %1.3f ) \n  ellipsis\n@@ -443,7 +440,6 @@\n .PEA_N\n .PEBVILocalizationString@panorama@@\n 08@HR\n-08@J\n 0:Pj\n 0vt8\n 0x%4.4x \n@@ -493,7 +489,6 @@\n @08Nt8\n @?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z\n @DebugIndividualStyle\n-@HPX`hv\n @keyframes \n @keyframes '%s'\\r\\n{\\r\\n\n @nt8\n@@ -1113,7 +1108,6 @@ OpenStyleFileForEditAtByteIndex\n OpenText\n Option_%d\n OverMaxPips\n-P08@J\n P08J0\n P08Nt8\n PageDown"
        },
        {
          "filename": "game/bin/win64/physicsbuilder_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -6920,6 +6920,7 @@ $prefix_element$\n 2DBlend\n 2DBlendEditor\n 2DBlendFromAnimation\n+2\\vpL\n 2_BONE_IK\n 4-byte data pool\n 4\\r54t"
        },
        {
          "filename": "game/bin/win64/pi_level_zero_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -523,7 +523,6 @@ Queue->executeOpenCommandList(OpenCommandList->second.isCopy(Queue))\n Queue->insertStartBarrierIfDiscardEventsMode(CommandList)\n Queue->resetCommandList(it, true, EventListToCleanup)\n RSDSU\n-R\\vp4\n Raising QueueBatchSize to %d\\n\n Read from device global variable is out of range.\n SPIR-V_%d.%d "
        },
        {
          "filename": "game/bin/win64/pulse_system_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -169,6 +169,7 @@\n .?AVIPulseHost_YieldingCursor@@\n .?AVIPulseSystem@@\n .?AVIResourceTypeManager@@\n+2\\vpL\n ;1#INF\n <No Cell>\n <map_key>"
        },
        {
          "filename": "game/bin/win64/resourcecompiler_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 10,
          "changes": 10,
          "patch": "@@ -169,10 +169,7 @@\n  (%lu = 0x%lx)\\n\n  (%u = 0x%x)\\n\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  (Bad Remap %d)\n  (INVALID PSS PARAMETERS)\\n\n  (Negative)\n@@ -21270,7 +21267,6 @@ $prefix_element$\n 02V8[\n 05=k\n 08@HR\n-08@J\n 08bX\n 09,h\n 0;Q5[\n@@ -21708,7 +21704,6 @@ $prefix_element$\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n-@08N\n @0pp\n @BH]f\n @CMapLocator\n@@ -31843,9 +31838,6 @@ P-224\n P-256\n P-384\n P-521\n-P08@J\n-P08J\n-P08N\n P1\\t98\"\n P5[1\n PAGN_4\n@@ -32890,7 +32882,6 @@ RT Proxy geometry: %s verts / %s, %s indices / %s.  Duplicated %i verts due to p\n RT60 for low, mid, and high frequency bands for the probe.\n R\\r1>Vp\n R\\vp!y\n-R\\vp4\n R]Di\n R_T5Y\n Rad2 Deg\n@@ -43804,7 +43795,6 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n-p08@H^\n p2{l\n p4Z3\n p4lib"
        },
        {
          "filename": "game/bin/win64/scenesystem_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -26,10 +26,7 @@\n  %i fog-only.\n  %s | Flags %lld \\n\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  (EXTERN)\n  (Frozen)\n  (MAYBE DISABLED?!)\n@@ -879,7 +876,6 @@ $tIP\n 001.003\n 050s0\n 08@HR\n-08@J\n 0?333?333?333?333?\n 0x%02X\n 0x%04X\n@@ -3888,7 +3884,6 @@ Override ChildBg color\n Override Streaming GPU Memory\n P+\\fGj\n P.P5\n-P08@J\n P08J`\n P08Np\n P3\\rA"
        },
        {
          "filename": "game/bin/win64/steamaudio_strings.txt",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -674,6 +674,7 @@ $hRh\n 2Zq)\n 2\\fWQx\n 2\\rlhp\n+2\\vpL\n 2\\vpPK\n 2\\vpdY\n 2^pV\n@@ -3123,6 +3124,7 @@ RSA_verify_PKCS1_PSS_mgf1\n RSDS3z\"\n R\\fpPK\n R\\r1>Vp\n+R\\vpL\n R]Di\n Rbg.E\n ReadConsoleInputW"
        },
        {
          "filename": "game/bin/win64/steamnetworkingsockets_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -4280,7 +4280,6 @@ RSA_sign_ASN1_OCTET_STRING\n RSA_verify\n RSA_verify_ASN1_OCTET_STRING\n RSA_verify_PKCS1_PSS_mgf1\n-R\\vp4\n Rank=%d \n Rbg.E\n Read-only file system"
        },
        {
          "filename": "game/bin/win64/tier0_strings.txt",
          "status": "modified",
          "additions": 11,
          "deletions": 12,
          "changes": 23,
          "patch": "@@ -76,7 +76,6 @@\n #include is NULL \n #int#\n #nyf\n-#vpulse1\n $Ib?s\n $eax\n $ebp\n@@ -434,7 +433,7 @@ $xmm9\n (yaX\n ) : AssertMsg Failed in function \n ) : Assertion Failed in function \n-)05\\tX81\n+)05\\t`81\n )14:;EFIJ^de\n )14:EFIJNOde\\\n )EIWde\n@@ -451,6 +450,7 @@ $xmm9\n *Vc>L\n *fj\\rv\n *nullptr*\n++$p81\n +i9O\n +inf\n +tPOu\n@@ -818,7 +818,7 @@ $xmm9\n 5\\fE5d\n 5m8>8=t\n 5nsfZ\n-5t8.1\n+5tH.1\n 64-bit DWARF format is not supported\\n\n 67VW\n 6A_p\n@@ -844,6 +844,7 @@ $xmm9\n 8Z~H\n 8ke?;\n 8powf\n+8x(.1\n 99jd9\n 9>70\n 9>expf\n@@ -3789,6 +3790,7 @@ EnableWindow\n Enabling flag '%s' on channel '%s'.\\n\n EncodePointer\n End of input was reached and '[' was not matched by ']'\n+End of input was reached and '{' was not matched by '}'\n EndDialog\n EndPaint\n Engine2/MapMaxCoord\n@@ -4328,7 +4330,7 @@ ISolveIKChainAnimNode\n ISubGraphAnimNode\n ISubGraphManager\n ITALIAN\n-I\\zH6H71\n+I\\zH6\n Ignore\n Ignore All Asserts\n Ignore For 24 Hours\n@@ -4367,7 +4369,6 @@ InitializeSListHead\n InitializeSRWLock\n InitializeSecurityDescriptor\n Inline attr without expected value\\n\n-Input contains no data\n InputService_001\n InputStackSystemVersion001\n InputSystemVersion001\n@@ -4855,7 +4856,7 @@ Outflow_NPCScriptedMoveTo\n Outflow_NPCUseScriptedAbility\n Outflow_Simultaneous\n OutputDebugStringA\n-P(YX8\n+P(YXH\n P4_EXTRACT_CMD=p4.exe print -o %srcsrvtrg% -q \"//%var3%#%var4%\"\\n\n P4_EXTRACT_TARGET=%targ%\\%var2%\\%fnbksl%(%var3%)\\%var4%\\%fnfile%(%var1%)\\n\n PARTICLE_DEPTH_FEATHERING_OFF\n@@ -6170,6 +6171,7 @@ Unable to seek to ELF shoff\\n\n Unable to seek to Mach-O load commands\\n\n Unable to seek to Macho-O slice base\\n\n Unable to seek to module section at file offset 0x%x\\n\n+Unable to write file '%s'\\n\n Unaccounted\n Unexpected EOF while parsing number\n Unexpected augmentation string byte 0x%x (shouldn't have augmentation data)\\n\n@@ -6887,7 +6889,7 @@ ZwSetTimerResolution\n \\nk>oB\n \\ntier0.dll\n \\rConsole\n-\\rEnd of input was reached and '{' was not matched by '}'\n+\\rInput contains no data\n \\r\\f\\v\\v\\n\\n\\t\\t\\t\\t\\t\n \\rmj>zjZ\n \\sdktools\\bin\n@@ -7008,7 +7010,6 @@ _root_keyname\n _test_conversion_counter\n _wWT+\n `RTTI\n-`X71\n `anonymous namespace'\n `copy constructor closure'\n `default constructor closure'\n@@ -7594,7 +7595,6 @@ k*WBjL\n k=yI\n k>4\\tF\n k>RU\n-kH81\n kernel32.dll\n kernelbase.dll\n l6qnk\n@@ -8299,7 +8299,6 @@ nOffset < m_nAllocationSize\n nOverrideCPField\n nSwitchValue\n nTries < 10000000\n-nUnable to write file '%s'\\n\n nXAO\n n\\f\"pA3Q\n n]?iJ\n@@ -8814,6 +8813,7 @@ vpcf8\n vpcf9\n vpk:\n vpulse\n+vpulse1\n vpulse10\n vpulse11\n vpulse12\n@@ -8871,7 +8871,6 @@ x=9v\n xSvf$\n xT?V\n xYiu\n-x\\th71\n x`tm6\n xu37\n xuRCk\n@@ -8903,7 +8902,7 @@ zs}O\n {}{}{:0<{}s}.0\n |jPZ\n ~DSTRCT\n-~Lx71\n+~L071\n ~NX4\n ~cU4\n ~g9A"
        },
        {
          "filename": "game/bin/win64/tools/cs2_item_editor_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -4378,7 +4378,6 @@ $\\n\\tword_list\n ?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z\n @#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z\n @08N<U;\n-@HPX`hv\n @\\n\\fSingleObject\n @\\n\\vserver_type\n @\\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z\n@@ -5687,7 +5686,6 @@ Other Tools\n Outliner\n OverlayProjectionDirection\n P08@Jp\n-P08J\n P08N<U;\n P?isValid@QColor@@QEBA_NXZ\n P?isValid@QTextCharFormat@@QEBA_NXZ"
        },
        {
          "filename": "game/bin/win64/tools/hammer_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 10,
          "changes": 10,
          "patch": "@@ -92,11 +92,8 @@\n  (%lu = 0x%lx)\\n\n  (%u = 0x%x)\\n\n  (08@HPX`j0\n- (08@HPXb\n  (08@HPZ0\n- (08@HR\n  (08@J0\n- (0X`hpz\n  (Driven by choice group '%1')\n  (INVALID PSS PARAMETERS)\\n\n  (Negative)\n@@ -15115,7 +15112,6 @@ $worldspacetype\n 02V8[\n 05=k\n 08@HR0\n-08@J\n 08B0\n 08bX\n 09,h\n@@ -18793,7 +18789,6 @@ $worldspacetype\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n-@08N\n @0pp\n @6 vS\n @6 yS\n@@ -18802,7 +18797,6 @@ $worldspacetype\n @:p1B\n @BH]f\n @C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlsortvector.h\n-@HPX`hv\n @Integer overflow in %s\n @MfKZ\n @Pgl\n@@ -29358,9 +29352,6 @@ P-224\n P-256\n P-384\n P-521\n-P08@J\n-P08J\n-P08N\n P1\\t98\"\n P4CopyFile\n P4CopyFile: Couldn't copy \"%s\" to \"%s\"\\n\n@@ -42108,7 +42099,6 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n-p08@H^\n p2{l\n p4 fstat -Op %s\n p4Z3"
        },
        {
          "filename": "game/bin/win64/tools/modeldoc_editor_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -12780,7 +12780,6 @@ $prefix_element$\n 2\\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z\n 2\\v?event@QAction@@MEAA_NPEAVQEvent@@@Z\n 2\\vp4\n-2\\vpT\n 2_BONE_IK\n 2aboutToShow()\n 2accepted()\n@@ -14869,7 +14868,6 @@ $prefix_element$\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n-@08N\n @AuthPhysCollisionAttributesModeEnum_t\n @HPX`hv \n @HV0\n@@ -21575,8 +21573,6 @@ Overwrite all bone data\n Overwrite existing flags only\n Overwriting existing wrinkle map data on mesh\n P08@J0p.\n-P08J\n-P08N\n P20p.\n P:0p.\n P?isValid@QColor@@QEBA_NXZ\n@@ -27036,7 +27032,6 @@ overwrite_existing\n overwrite_existing_flags_only\n owns_polymorphic_data\n p\"?value@QSpinBox@@QEBAHXZ\n-p08@H^\n p20p.\n pAction\n pActionObject"
        },
        {
          "filename": "game/bin/win64/tools/sfm_strings.txt",
          "status": "modified",
          "additions": 4,
          "deletions": 1,
          "changes": 5,
          "patch": "@@ -6540,6 +6540,7 @@ $prefix_element$\n ?waitForFinished@QProcess@@QEAA_NH@Z\n ?waitForReadyRead@QProcess@@UEAA_NH@Z\n @#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z\n+@08Nd\n @606\n @608\n @HPX`hvpP\n@@ -10471,7 +10472,7 @@ Overwrite\n Overwrite With Current\n P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z\n P08@JPk+\n-P08J\n+P08Nd\n P2Pk+\n P4 Operation failed\n P4InteractionDialog\n@@ -12963,6 +12964,7 @@ a?windowText@QPalette@@QEBAAEBVQBrush@@XZ\n a?write@QStandardItem@@UEBAXAEAVQDataStream@@@Z\n a?x@QMouseEvent@@QEBAHXZ\n a?y@QMouseEvent@@QEBAHXZ\n+aBvd\n aC=H\n aTR>7\n aZure : voiced postalveolar fricative\n@@ -14653,6 +14655,7 @@ overrideShutterSpeedValue\n ownerelement\n ownerlog\n p\"?value@QSpinBox@@QEBAHXZ\n+p08@H^d\n p2Pk+\n p4win\n p60\\"
        },
        {
          "filename": "game/bin/win64/v8system_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -19,6 +19,7 @@\n .?AVISource2V8System@@\n .?AVV8ArrayBufferAllocator@@\n 1?LowMemoryNotification@Isolate@v8@@QEAAXXZ\n+2\\vpL\n 2\\vp`9\n 3?New@Isolate@v8@@SAPEAV12@AEBUCreateParams@12@@Z\n 9?Reallocate@Allocator@ArrayBuffer@v8@@UEAAPEAXPEAX_K1@Z"
        },
        {
          "filename": "game/bin/win64/visbuilder_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -82,7 +82,6 @@\n .?AVISequence@@\n .?AVIVertColorBase@@\n 08@HR\n-2\\vpT\n =fff?\n ?expf\n @08NP\n@@ -181,7 +180,6 @@ No triangles found to compute visibility\\n\n Note, removing %u lines of sight, too much memory! (was %s, use -debuglos to preserve more of these for debugging)\\n\n Outside detection took %.2f seconds\\n\n OverlayProjectionDirection\n-P08J\n P08NP\n P6p\\\n PerVertexLighting"
        },
        {
          "filename": "game/csgo/bin/win64/client_strings.txt",
          "status": "modified",
          "additions": 6,
          "deletions": 11,
          "changes": 17,
          "patch": "@@ -111,10 +111,7 @@\n  (%ld unused bits)\\n\n  (+%d more due to usercommand delivery)\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  (DEFAULT)\n  (Dirty Animation)\n  (INVALID PSS PARAMETERS)\\n\n@@ -10983,7 +10980,6 @@ $taser_charge\n 02V8[\n 05=k\n 08@HR\n-08@J\n 08bX\n 09,h\n 0;Q5[\n@@ -11377,6 +11373,7 @@ $taser_charge\n 5-\\rGw\n 50Q5\n 51t&\n+5248\n 52pk\n 5760\n 5A10K\n@@ -12842,7 +12839,7 @@ BloomVisualisation\n BlurBackground\n BlurOperationPanel\n BlurPopupPanel\n-Bm_nEndMatchNextMapVote\n+Bm_iCompetitiveRankingPredicted_Win\n BoX5\n Body Component Scriptdesc\n BodyGameSystem\n@@ -14138,8 +14135,8 @@ CMS_stream\n CMS_uncompress\n CMS_verify\n CMapBombDamageGameSystem\n-CMapBombDamageRuntimeData::RenderVisualization(), C:\\buildworker\\csgo_rel_win64\\build\\src\\game\\shared\\cstrike15\\cs_bomb_damage.cpp:440\n-CMapBombDamageRuntimeData::RenderVisualization(), C:\\buildworker\\csgo_rel_win64\\build\\src\\game\\shared\\cstrike15\\cs_bomb_damage.cpp:459\n+CMapBombDamageRuntimeData::RenderVisualization(), C:\\buildworker\\csgo_rel_win64\\build\\src\\game\\shared\\cstrike15\\cs_bomb_damage.cpp:448\n+CMapBombDamageRuntimeData::RenderVisualization(), C:\\buildworker\\csgo_rel_win64\\build\\src\\game\\shared\\cstrike15\\cs_bomb_damage.cpp:467\n CMapInfo_API::FireWinCondition\n CMissionTemplate::BMakeQuestDefSchema\n CModel::GetBoneIndexForHitboxForMesh\n@@ -14686,7 +14683,7 @@ CRenderGameSystem::OnClientPreOutputParallelWithServer\n CRenderGameSystem::OnClientPreOutputParallelWithServer(), C:\\buildworker\\csgo_rel_win64\\build\\src\\game\\shared\\rendergamesystem.cpp:1245\n CRenderGameSystem::OnClientPreOutputParallelWithServer(1345): \n CRenderingPipelineCS2Shadows\n-CRenderingPipelineCsgo::AddLayersToView(10761): \n+CRenderingPipelineCsgo::AddLayersToView(10760): \n CResourceName\n CResourceNameTyped\n CResourcePrecacherGameSystem\n@@ -21873,8 +21870,6 @@ P-224\n P-256\n P-384\n P-521\n-P08@J\n-P08J\n P08N$\n P1\\t98\"\n P2P Voice\n@@ -36259,7 +36254,7 @@ p.ppBasis\n p.prime\n p.tpBasis\n p08@H^$\n-p0j0a\n+p0j0e\n p250\n p2p_ping could not convert \"%s\" to a CPeerToPeerAddress\\n\n p2p_ping could not ping \"%s\" because they are an unknown peer\\n"
        },
        {
          "filename": "game/csgo/bin/win64/host_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 10,
          "changes": 10,
          "patch": "@@ -1,9 +1,6 @@\n  !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 9\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n !m_hParam.IsValid()\n %%s%%s%%d:  sv[%%%d.%ds] cl[%%%d.%ds]\\n\n %s:  IGameSystem::LoopActivateAllSystems {\\n\n@@ -96,13 +93,10 @@\n .?AVISinglePlayerSharedMemory@@\n .?AVISource2Host@@\n 08@HR\n-08@J\n 2\\vpD\n 8Fp\\\n ?expf\n-@08N\n @6pV\n-@HPX`hv\n AA:@0\n APPSYSTEM: In ConnectGameInterfaces(), s_nRegistrationCount is %d!\\n\n APPSYSTEM: In ConnectGameInterfaces(), tried to use different connection modes!\\n\n@@ -137,9 +131,6 @@ IND)ind)\"\n LightmapUV\n LightmapUVW\n OverlayProjectionDirection\n-P08@J\n-P08J\n-P08N\n Parameter %s is an incorrect type (needs to be %s)\n PerVertexLighting\n Physics\n@@ -181,7 +172,6 @@ lowprecisionuv\n lowprecisionuv1\n medium\n optionallycompressedtangentframe\n-p08@H^\n p6`f\n posxyz\n runleft"
        },
        {
          "filename": "game/csgo/bin/win64/matchmaking_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 6,
          "changes": 6,
          "patch": "@@ -16,10 +16,7 @@\n    View %s failed to allocate description!\\n\n  !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$P\n  (08@HPX`j\n- (08@HPXb\n  (08@HPZ\n- (08@HR\n- (0X`hpz\n  :score average_contribution  :payloadformat {  payload0 {  :score mvp_awards :format int  :upload sum  }  payload1 {  :score rounds_played  :format int  :upload sum  }  payload2 {  :score total_contribution  :format int  :upload sum  }  payload3 {  :score kills  :format int  :upload sum  }  payload4 {  :score deaths  :format int  :upload sum  }  payload5 {  :score damage  :format int  :upload sum  }  } \n  :score kd_ratio  :payloadformat {  payload0 {  :score kills :format int  :upload sum  }  payload1 {  :score deaths  :format int  :upload sum  }  payload2 {  :score rounds_played  :format int  :upload sum  }  payload3 {  :score shots_fired  :format int  :upload sum  }  payload4 {  :score head_shots  :format int  :upload sum  }  payload5 {  :score shots_hit  :format int  :upload sum  }  } \n  :score num_rounds  :scoresum 1  :payloadformat {  payload0 {  :score time_played  :format uint64  :upload sum  }  payload1 {  :score time_played_ct  :format uint64  :upload sum  }  payload2 {  :score time_played_t  :format uint64  :upload sum  }  payload3 {  :score total_medals  :format int  :upload last  }  } \n@@ -350,7 +347,6 @@ $tIJobs/Coroutines\n 0.0.0.0\n 00000000\n 08@HR\n-08@J\n 0\\n,GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE\n 0\\n,k_ECommunityItemAttribute_CommunityItemAppID\n 0v8,\n@@ -379,7 +375,6 @@ $tIJobs/Coroutines\n <\\n\\ncategories\n >\\n\\tTypeCache\n @08N8,\n-@HPX`hv\n @\\n\\fSingleObject\n @workshop\n APPSYSTEM: In ConnectGameInterfaces(), s_nRegistrationCount is %d!\\n\n@@ -715,7 +710,6 @@ OnlineSearch::StartSearch failed to build filter list!\\n\n OnlineSearch::StartSearchPass:\\n\n Options/searchteamkey\n Options/server\n-P08@J\n P08Jp\n P08N8,\n P\\n\\nattributes"
        },
        {
          "filename": "game/csgo/bin/win64/modtools_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -8850,8 +8850,6 @@ $modelname$_surface\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n-@08N\n-@HPX`hv\n @Integer overflow in %s\n @N08\n @m_nParticle\n@@ -11973,8 +11971,6 @@ Overwrite all bone data\n Overwrite existing flags only\n Overwriting existing wrinkle map data on mesh\n P08@J0s\n-P08J\n-P08N\n P20s\n P6 W\n P:0s\n@@ -14583,7 +14579,6 @@ overridesound\n overwrite_existing\n overwrite_existing_flags_only\n owns_polymorphic_data\n-p08@H^\n p20s\n p6pR\n pEvent != nullptr"
        },
        {
          "filename": "game/csgo/bin/win64/server_strings.txt",
          "status": "modified",
          "additions": 30,
          "deletions": 38,
          "changes": 68,
          "patch": "@@ -100,12 +100,10 @@\n  %s%lu (%s0x%lx)\\n\n  ' ) - 3 G M Q _ c e i w } \n  (%ld unused bits)\\n\n- (08@HPX`j0\n- (08@HPXb\n- (08@HPZ0\n- (08@HR\n- (08@J0\n- (0X`hpz\n+ (08@HPX`j\n+ (08@HPXb`\n+ (08@HPZ\n+ (0X`hpz`\n  (Dirty Animation)\n  (Disabled on Server)\n  (INVALID PSS PARAMETERS)\\n\n@@ -124,6 +122,7 @@\n  -8CKV\n  -> %s '%s'\\n\n  -> Could not find an item definition named '%s'\\n\n+ .pMX\n  0@NYa\n  0Fa\n  1CSc\\t\n@@ -2177,7 +2176,6 @@ $tH@T\\tI\n -\\n)GAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED\n -\\n)GAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET\n -\\n)k_ECsgoSteamUserStat_MatchWinsCompetitive\n--\\n0TX\n -\\n\\fcommendation\n -\\n\\nconditions\n -\\n\\tAttribute\n@@ -2242,9 +2240,7 @@ $tH@T\\tI\n ... and no start position\n ....................\n ..uR5&m\n-.0CX\n-.0LX\n-.0uX\n+.0aX\n .0zX\n .4bb\n .97yY\n@@ -8497,7 +8493,6 @@ $tH@T\\tI\n .PEAVCPlayer_UseServices@@\n .PEAVCPlayer_WaterServices@@\n .PEAVCPlayer_WeaponServices@@\n-.PPX\n .PlayerCommendationInfo\n .PlayerDecalDigitalSignature\n .PlayerDecalDigitalSignature\":\\n\n@@ -8507,7 +8502,8 @@ $tH@T\\tI\n .PlayerRankingInfo\n .PlayerRankingInfo\"L\\n3CMsgGCCStrike15_v2_MatchmakingOperator2GCBlogUpdate\n .PlayerRankingInfo.PerMapRank\n-.PuX\n+.PyX\n+.PzX\n .Q.Ol\n .ScoreLeaderboardData\n .ScoreLeaderboardData\"S\\n%CCSUsrMsg_PlayerDecalDigitalSignature\n@@ -8797,10 +8793,9 @@ $tH@T\\tI\n .dx_LV9\n .fatdem\n .lbN\n-.pCX\n-.pPX\n .pp@0\n-.ppX\n+.pyX\n+.pzX\n .text$\n .vjs_c\n .vmap\n@@ -8841,9 +8836,8 @@ $tH@T\\tI\n 0123456789\n 02V8[\n 05=k\n-08@HR0\n-08@J\n-08B0\n+08@HR\n+08@J`\n 08bX\n 09,h\n 0;Q5[\n@@ -8958,7 +8952,6 @@ $tH@T\\tI\n 2\\n.eRollType\n 2\\n\\nline_items\n 2\\rlhp\n-2\\vp4\n 2^pV\n 2a\"l\n 2bT~\n@@ -9037,6 +9030,7 @@ $tH@T\\tI\n 4\\re4h#\n 4\\vU44\n 4f h\n+4t\\nGV\n 4tpD\n 4zj@1;IJ\n 4|2;#GameUI_Retake_Card_LightEmUp,1,1,rifle1,grenade0|2;#GameUI_Retake_Card_Kobe,1,1,rifle1,grenade2|1;#GameUI_Retake_Card_1g,1,1,rifle1,grenade3|1;#GameUI_Retake_Card_DisappearingAct,1,1,rifle1,grenade1|1;#GameUI_Retake_Card_EyesOnTarget,1,1,weapon_aug\n@@ -9107,16 +9101,13 @@ $tH@T\\tI\n 6\\n2GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION\n 6\\n\\nvariations\n 6_wEX\n-6`fX\n 6afD\n 6bX+\n 6c&0|vvX\n 6i$R\\nQ\n 6l13\n 6lkc\n 6myY;\n-6pJX\n-6pgX\n 6qo~\n 6r-m_v\n 6r1ij\n@@ -9162,7 +9153,6 @@ $tH@T\\tI\n 8<pl\n 8= zp\n 8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z\n-8@J0\n 8A6j\n 8GZS\n 8SIffK5W\n@@ -9344,6 +9334,7 @@ $tH@T\\tI\n >?SetClassName@FunctionTemplate@v8@@QEAAXV?$Local@VString@v8@@@2@@Z\n >JRZ`c4DLV_c*8AN\\c\n >KS[ac5>IU^c+0<LZc\n+>PVX\n >Sem\n >WK6\n >\\n9k_EGCItemCustomizationNotification_ClientRedeemFreeReward\n@@ -9418,17 +9409,16 @@ $tH@T\\tI\n ?uWS\n ?x29\n @!@%@+@1@?@C@E@]@a@g@m@\n-@08N\n @0pp\n @333\n @333?\n @33s@\n-@6`pX\n+@6 zX\n+@6@yX\n @?SlowGetAlignedPointerFromInternalField@Object@v8@@AEAAPEAXH@Z\n @Aff\n @BH]f\n @BoneSetup\n-@HPX`hv\n @MfKZ\n @Pgl\n @Pu\\rm\n@@ -9443,7 +9433,6 @@ $tH@T\\tI\n @\\n\\vserver_type\n @dKb]\n @fff>fff>fff>fff>\n-@htp\n @i1V\n @m_bLeftHanded\n @m_zoomLevel\n@@ -9467,6 +9456,7 @@ A<fP\n A>x8\n A@d0I\n AA Compromise\n+AA:0\n AABB\n AABBDirection\n AACompromise\n@@ -14498,7 +14488,6 @@ F9q'\n F<mb\n F?ToString@Value@v8@@QEBA?AV?$MaybeLocal@VString@v8@@@2@V?$Local@VContext@v8@@@2@@Z\n F?ToUint32@Value@v8@@QEBA?AV?$MaybeLocal@VUint32@v8@@@2@V?$Local@VContext@v8@@@2@@Z\n-F@aX\n FACE_EXIT\n FACE_LADDER\n FACE_TRAVERSAL_DIRECTION\n@@ -14551,6 +14540,7 @@ F\\n\\finventories2\n F\\n\\finventories3\n F\\n\\rroundstatsall\n F\\rH'4\n+F`eX\n Face %s\n Face Actor\n Face Entity\n@@ -18039,8 +18029,7 @@ P-224\n P-256\n P-384\n P-521\n-P08@J\n-P08N\n+P08@J`\n P1\\t98\"\n P5[1\n P@33\n@@ -18341,6 +18330,7 @@ Permanent Identifier\n Permanently removes the entity from the world.<br>Very similar to the 'Kill' input.<br>Keywords: remove kill erase delete eliminate\n Permit Responses\n Permitted\n+Pf0cX\n Phys.GlassBreakLg\n Phys.GlassBreakMd\n Phys.GlassBreakSm\n@@ -18505,6 +18495,7 @@ Please specify 0 or 1 with the -stream Parameter\\n\n Please wait for broadcast to start ...\n Pm8A?\n PmR\"H?\n+Pn0dX\n Point entity.\n PointTemplate\n Policy Qualifier CPS\n@@ -18845,7 +18836,6 @@ RSA_verify_PKCS1_PSS\n RSA_verify_PKCS1_PSS_mgf1\n RSDS}\n RTime32\n-R\\fp4\n R\\r1>Vp\n R\\vp!y\n R]Di\n@@ -21269,7 +21259,6 @@ Ut]<E\n Uv1t\n Uz_G3=\n V07;m\n-V0IX\n V2I_ASIDENTIFIERS\n V2I_AUTHORITY_INFO_ACCESS\n V2I_AUTHORITY_KEYID\n@@ -21780,7 +21769,7 @@ X\\n\\tTeamStats\n X\\n\\vFantasyTeam\n X\\n\\vLoadoutItem\n X\\tQo\n-X`hr0\n+X`hr\n Xd3h\n XfJ7\n XjfR\n@@ -22813,6 +22802,7 @@ Z~wl\n \\ri1I\n \\rjwB\\t\n \\roKK\n+\\rpYX\n \\rrCj\n \\rusercmd.proto\"\\\\n\n \\sG7tPD\n@@ -22838,6 +22828,7 @@ Z~wl\n \\tJm_9\n \\tLa0+\n \\tNone\\n\n+\\tPXX\n \\tPrivate script scope:\n \\tPublic script scope:\n \\tRead %s\\t%s%s%s,\\tOffs 0x%04x\\n\n@@ -22894,6 +22885,7 @@ Z~wl\n ]MSd\n ][LK~lO\n ^.om5r\n+^0QX\n ^DnJ\n ^DqPt\n ^J_spY\n@@ -22964,6 +22956,7 @@ _xU`u\n _}eOk\n `28)fk\n `3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z\n+`60}X\n `:zQF\n `D$daM-l\n `DZG\n@@ -26794,6 +26787,7 @@ houseIdentifier\n hoverposeangles\n hoverposeflags\n hoverposeposition\n+hpz`\n hr_H\n http request\n http$\n@@ -26810,6 +26804,7 @@ h|gg\n i <= EVP_MAX_MD_SIZE\n i%YR\n i%|kB\n+i0OP\n i2b_PVK_bio\n i2d ecpkparameters failure\n i2d_ASN1_SET\n@@ -29267,14 +29262,13 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n-p08@H^\n+p0jP\n p250\n p2{l\n p4Z3\n p5Z3\n p5\\nL,\n p618\n-p6pZX\n p>?Set@Template@v8@@QEAAXV?$Local@VName@v8@@@2@V?$Local@VData@v8@@@2@W4PropertyAttribute@2@@Z\n p@0pqE5tsO?|1\n pActivator\n@@ -30145,7 +30139,6 @@ rX&O0\n rZ1VwGf5\n rZPM\n r\\vDi\n-r\\vp4\n rad2deg\n radio.go\n radio.letsgo\n@@ -32236,6 +32229,7 @@ tournament_team_id\n tournament_teams\n tournamentinfo\n tpBasis\n+tp\\n0V\n tq}a\n trace\n traceHitboxes\n@@ -33280,14 +33274,12 @@ zz2K\n }VKRZ\n }W70d\n }Xee+\n-}\\rpUX\n }gE3\n }n2W\n }}JSON_END\\n\n ~9ob\n ~If D\n ~P2T\n-~PIX\n ~R65Fu\n ~jLRG\n ~w]UG"
        },
        {
          "filename": "game/csgo/pak01_dir.txt",
          "status": "modified",
          "additions": 13,
          "deletions": 14,
          "changes": 27,
          "patch": "@@ -6295,7 +6295,7 @@ items/assets/stickers/community/auto_racing/foil_lucky_charms_albedo_texture_tga\n items/assets/stickers/community/auto_racing/foil_lucky_charms_normal_map_tga_fb85240f.vtex_c CRC:0034029ea5 size:742846\n items/assets/stickers/community/auto_racing/foil_turbo_peek_albedo_texture_tga_8f4e603c.vtex_c CRC:006c320bf9 size:309113\n items/assets/stickers/community/auto_racing/foil_turbo_peek_normal_map_tga_8354208d.vtex_c CRC:00a98e3b7d size:374591\n-items/assets/stickers/community/auto_racing/foil_watch_sniper_albedo_texture_tga_e452288b.vtex_c CRC:00af80f096 size:184959\n+items/assets/stickers/community/auto_racing/foil_watch_sniper_albedo_texture_tga_e452288b.vtex_c CRC:0010e161fd size:189175\n items/assets/stickers/community/auto_racing/foil_watch_sniper_normal_map_tga_621830d8.vtex_c CRC:00645c482a size:254689\n items/assets/stickers/community/auto_racing/holo_cone_zone_albedo_texture_tga_71e7549c.vtex_c CRC:00b8e457be size:83385\n items/assets/stickers/community/auto_racing/holo_cone_zone_holo_mask_tga_f99e55f2.vtex_c CRC:00e5d26088 size:1028164\n@@ -38966,12 +38966,12 @@ models/inventory_items/phoenix_silver_01.vmdl_c CRC:00f0c0d5a4 size:93008\n models/inventory_items/premier_seasons/premier_season_1_coin_eg.vmdl_c CRC:000fa56f6e size:37429\n models/inventory_items/premier_seasons/premier_season_2_coin_eg.vmdl_c CRC:00971040b0 size:44725\n models/inventory_items/premier_seasons/premier_season_3_coin_eg.vmdl_c CRC:0083526ee6 size:45701\n-models/inventory_items/premier_seasons/premier_season_4_coin_eg.vmdl_c CRC:009832e264 size:40085\n+models/inventory_items/premier_seasons/premier_season_4_coin_eg.vmdl_c CRC:00b78d6c38 size:40325\n models/inventory_items/premier_seasons/premier_season_5_coin_eg.vmdl_c CRC:00cb23af80 size:42373\n models/inventory_items/premier_seasons/premier_season_coin.vmat_c CRC:00b79bfbf7 size:3837\n models/inventory_items/premier_seasons/premier_season_coin_ao_tga_6a8f4871.vtex_c CRC:00e2ac4961 size:7183960\n models/inventory_items/premier_seasons/premier_season_coin_bar1.vmat_c CRC:006b039b7a size:4141\n-models/inventory_items/premier_seasons/premier_season_coin_bar1_gold.vmat_c CRC:0079b82f43 size:4501\n+models/inventory_items/premier_seasons/premier_season_coin_bar1_gold.vmat_c CRC:0058e0469c size:4501\n models/inventory_items/premier_seasons/premier_season_coin_bar1_vmat_g_tcolor_fac801b5.vtex_c CRC:0076b8f03a size:2064\n models/inventory_items/premier_seasons/premier_season_coin_bar2.vmat_c CRC:00d211060d size:4157\n models/inventory_items/premier_seasons/premier_season_coin_bar2_gold.vmat_c CRC:00ae46014a size:4413\n@@ -38986,7 +38986,6 @@ models/inventory_items/premier_seasons/premier_season_coin_bar5.vmat_c CRC:00531\n models/inventory_items/premier_seasons/premier_season_coin_bar5_gold.vmat_c CRC:002fc20428 size:4413\n models/inventory_items/premier_seasons/premier_season_coin_bar5_vmat_g_tcolor_fac801b5.vtex_c CRC:0076b8f03a size:2064\n models/inventory_items/premier_seasons/premier_season_coin_color_tga_1d708fdb.vtex_c CRC:00d9eed8a7 size:2827804\n-models/inventory_items/premier_seasons/premier_season_coin_color_tga_f6419421.vtex_c CRC:001fb01ae4 size:2780352\n models/inventory_items/premier_seasons/premier_season_coin_gold_ao_tga_39746aa6.vtex_c CRC:002ee7a8ce size:7183960\n models/inventory_items/premier_seasons/premier_season_coin_gold_color_tga_ef81bfea.vtex_c CRC:0044a4682c size:2684288\n models/inventory_items/premier_seasons/premier_season_coin_gold_metal_tga_16922f51.vtex_c CRC:0038fccbec size:222930\n@@ -81791,7 +81790,7 @@ panorama/scripts/premier_season_progress.vts_c CRC:0053e72f0c size:14126\n panorama/scripts/rank_skillgroup_particles.vts_c CRC:00425ca141 size:34446\n panorama/scripts/rankup_redemption_store.vts_c CRC:0091bfb806 size:36878\n panorama/scripts/rating_emblem.vts_c CRC:003abf1e41 size:35918\n-panorama/scripts/scoreboard.vts_c CRC:0044400b32 size:224254\n+panorama/scripts/scoreboard.vts_c CRC:0092de6e3c size:224846\n panorama/scripts/segmented_progress_bar.vts_c CRC:00d6a4c4ce size:13518\n panorama/scripts/settingsmenu.vts_c CRC:009d8e72d6 size:16302\n panorama/scripts/settingsmenu_chatwheel.vts_c CRC:000b1dcc0a size:26910\n@@ -85010,35 +85009,35 @@ radial_quickinventory.txt CRC:005a0c1bf5 size:1080\n rebuy.txt CRC:008332da3a size:1688\n resource/clientscheme.res CRC:001b42ad42 size:14978\n resource/csgo_brazilian.txt CRC:00941e8325 size:4920179\n-resource/csgo_bulgarian.txt CRC:001face1c9 size:7594249\n+resource/csgo_bulgarian.txt CRC:0026b37a2c size:7598247\n resource/csgo_czech.txt CRC:00f59ee02a size:4991497\n resource/csgo_danish.txt CRC:003e46ea1d size:4906226\n resource/csgo_dutch.txt CRC:0089c165c8 size:4952011\n resource/csgo_english.txt CRC:00fa51b5c5 size:4785583\n resource/csgo_finnish.txt CRC:00d9f8e03c size:4864858\n-resource/csgo_french.txt CRC:00be16d07a size:5148166\n+resource/csgo_french.txt CRC:00f545b740 size:5148191\n resource/csgo_german.txt CRC:00ee1788bc size:5063637\n resource/csgo_greek.txt CRC:0012c39566 size:7030406\n-resource/csgo_hungarian.txt CRC:0067326818 size:4977615\n+resource/csgo_hungarian.txt CRC:00d782dde2 size:4977616\n resource/csgo_indonesian.txt CRC:00f261dac9 size:4630531\n-resource/csgo_italian.txt CRC:00d9dbd6a4 size:5077217\n+resource/csgo_italian.txt CRC:00220e5342 size:5077239\n resource/csgo_japanese.txt CRC:00ef75e1a8 size:5221252\n resource/csgo_koreana.txt CRC:009b44bd51 size:4996771\n resource/csgo_latam.txt CRC:00587a9883 size:5078895\n resource/csgo_norwegian.txt CRC:00932029fc size:4829875\n resource/csgo_polish.txt CRC:00a3eec447 size:5190511\n resource/csgo_portuguese.txt CRC:00c3a7d6e9 size:4963053\n-resource/csgo_romanian.txt CRC:0088598d38 size:5165601\n+resource/csgo_romanian.txt CRC:006ad28ed1 size:5170162\n resource/csgo_russian.txt CRC:003b679d3b size:6417600\n-resource/csgo_schinese.txt CRC:0041bb0d45 size:4827202\n+resource/csgo_schinese.txt CRC:00a0a2ded1 size:4829800\n resource/csgo_schinese_pw.txt CRC:0083fe268a size:15645\n resource/csgo_spanish.txt CRC:00ffc1299d size:5047337\n-resource/csgo_swedish.txt CRC:00982d3d85 size:4931016\n+resource/csgo_swedish.txt CRC:003abc81ac size:4936529\n resource/csgo_tchinese.txt CRC:002014d5bb size:4530497\n resource/csgo_thai.txt CRC:00768b3607 size:7991366\n resource/csgo_turkish.txt CRC:00e2d9f88f size:5067916\n resource/csgo_ukrainian.txt CRC:0039e1a88f size:6465856\n-resource/csgo_vietnamese.txt CRC:00c3586118 size:5340104\n+resource/csgo_vietnamese.txt CRC:0062216eb0 size:5343483\n resource/game.gameevents CRC:0090de10bc size:9837\n resource/halflife2.vfont CRC:00b064848c size:58000\n resource/mod.gameevents CRC:0035ddf423 size:20770\n@@ -118310,7 +118309,7 @@ stickers/community/auto_racing/foil_born_to_peek.vmat_c CRC:0038942f35 size:5264\n stickers/community/auto_racing/foil_eco_mode.vmat_c CRC:0053510444 size:5248\n stickers/community/auto_racing/foil_lucky_charms.vmat_c CRC:00c41ed6bb size:5264\n stickers/community/auto_racing/foil_turbo_peek.vmat_c CRC:009bf4e2ae size:5264\n-stickers/community/auto_racing/foil_watch_sniper.vmat_c CRC:0044ee4bbd size:5248\n+stickers/community/auto_racing/foil_watch_sniper.vmat_c CRC:00fa47bbc1 size:5248\n stickers/community/auto_racing/holo_cone_zone.vmat_c CRC:0000c144d6 size:5264\n stickers/community/auto_racing/holo_engine_start.vmat_c CRC:000e15e52b size:5280\n stickers/community/auto_racing/holo_first_lap.vmat_c CRC:00fcb7cad8 size:5264"
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/scoreboard.js",
          "status": "modified",
          "additions": 12,
          "deletions": 4,
          "changes": 16,
          "patch": "@@ -825,8 +825,14 @@ var Scoreboard;\n                                     _m_panelCache.m_elMusicKitUnborrow.SetHasClass('hidden', !isBorrowed);\n                                 }\n                                 let imagepath = 'file://{images}/' + InventoryAPI.GetItemInventoryImageFromMusicID(newStatValue) + '.png';\n-                                $('#id-sb-meta__musickit-image').SetImage(imagepath);\n-                                $('#id-sb-meta__musickit-name').text = $.Localize(InventoryAPI.GetMusicNameFromMusicID(newStatValue));\n+                                let elMusicKitImage = $('#id-sb-meta__musickit-image');\n+                                if (elMusicKitImage) {\n+                                    elMusicKitImage.SetImage(imagepath);\n+                                }\n+                                let elMusicKitName = $('#id-sb-meta__musickit-name');\n+                                if (elMusicKitName) {\n+                                    elMusicKitName.text = $.Localize(InventoryAPI.GetMusicNameFromMusicID(newStatValue));\n+                                }\n                             }\n                         }\n                     }\n@@ -1446,7 +1452,9 @@ var Scoreboard;\n             oPlayer.m_elPlayer.SetPanelEvent('onactivate', () => {\n                 _m_arrSortingPausedRefGetCounter++;\n                 let elPlayerCardContextMenu = UiToolkitAPI.ShowCustomLayoutContextMenuParametersDismissEventSetFocus('', '', 'file://{resources}/layout/context_menus/context_menu_playercard.xml', 'xuid=' + oPlayer.m_xuid, _OnPlayerCardDismiss, false);\n-                elPlayerCardContextMenu.AddClass('ContextMenu_NoArrow');\n+                if (elPlayerCardContextMenu) {\n+                    elPlayerCardContextMenu.AddClass('ContextMenu_NoArrow');\n+                }\n                 if (!_m_hDenyInputToGame) {\n                     _m_hDenyInputToGame = UiToolkitAPI.AddDenyInputFlagsToGame(elPlayerCardContextMenu, 'ScoreboardPlayercard', 'CaptureMouse');\n                 }\n@@ -2319,7 +2327,7 @@ var Scoreboard;\n         }\n     }\n     function _UpdateJob() {\n-        if (!_m_bInit) {\n+        if (_m_bInit) {\n             _UpdateMatchInfo();\n             _UpdateScore();\n             _UpdateNextPlayer();"
        },
        {
          "filename": "game/csgo/readonly_tools_asset_info.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -130189,7 +130189,6 @@ items/assets/paintkits/set_spy_tech/r8_monarch_normal_tga_2fedbf30.vtex\n items/assets/paintkits/set_spy_tech/r8_monarch_overlay_mask_psd_c59cb2f.vtex\n items/assets/paintkits/set_spy_tech/r8_monarch_rough_tga_c7cf9893.vtex\n items/assets/paintkits/set_spy_tech/spytech_glitch_colorized_01_psd_50da255b.vtex\n-models/inventory_items/premier_seasons/premier_season_coin_color_tga_f6419421.vtex\n materials/trim/trim_concrete_pillar_base_01_height_tga_6c5fa117.vtex\n materials/trim/trim_concrete_pillar_base_02_normal_psd_d94209ab.vtex\n sounds/weapons/c4/c4_shockwave_debris_01.vsnd"
        },
        {
          "filename": "game/csgo/steam.inf",
          "status": "modified",
          "additions": 6,
          "deletions": 6,
          "changes": 12,
          "patch": "@@ -1,9 +1,9 @@\n-ClientVersion=2000872\n-ServerVersion=2000872\n-PatchVersion=1.41.6.8\n+ClientVersion=2000873\n+ServerVersion=2000873\n+PatchVersion=1.41.6.9\n ProductName=cs2\n appID=730\n ServerAppID=2347773\n-SourceRevision=10810984\n-VersionDate=Jul 08 2026\n-VersionTime=23:09:39\n+SourceRevision=10812696\n+VersionDate=Jul 09 2026\n+VersionTime=13:32:20"
        }
      ]
    },
    {
      "event_id": "gh:31f57cc",
      "detected_at_utc": "2026-07-10T20:56:43.690Z",
      "commit_date_utc": "2026-07-09T19:40:38Z",
      "commit": {
        "sha": "31f57cc8089b6079d982185d32437b62179d2b8f",
        "short": "31f57cc",
        "message": "2000872 | 2 files | M\tDumpSource2/schemas/server/dynpitchvol_base_t.h, M\tDumpSource2/schemas/server/dynpitchvol_t.h",
        "url": "https://github.com/SteamTracking/GameTracking-CS2/commit/31f57cc8089b6079d982185d32437b62179d2b8f"
      },
      "classification": {
        "tags": [],
        "important_files": []
      },
      "ai_summary": "General update: “2000872 | 2 files | M\tDumpSource2/schemas/server/dynpitchvol_base_t.h, M\tDumpSource2/schemas/server/dynpitchvol_t.h” Files touched: DumpSource2/schemas/server/dynpitchvol_base_t.h, DumpSource2/schemas/server/dynpitchvol_t.h.",
      "stats": {
        "files_changed": 2,
        "additions": 4,
        "deletions": 4
      },
      "files": [
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_base_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": -770969414,\n-//\t\"vol\": 32762,\n+//\t\"pitchfrac\": -1972506438,\n+//\t\"vol\": 32766,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        },
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": -770969414,\n-//\t\"vol\": 32762,\n+//\t\"pitchfrac\": -1972506438,\n+//\t\"vol\": 32766,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        }
      ]
    },
    {
      "event_id": "gh:7c51633",
      "detected_at_utc": "2026-07-10T20:56:44.019Z",
      "commit_date_utc": "2026-07-09T17:08:42Z",
      "commit": {
        "sha": "7c516339e9d9969c46fbdd47d109b85e1789dc42",
        "short": "7c51633",
        "message": "2000872 | 246 files | M\tDumpSource2/schemas/server/dynpitchvol_base_t.h, M\tDumpSource2/schemas/server/dynpitchvol_t.h, M\tgame/core/shaders_vulkan_dir/shaders/vfx/aoproxy_splat.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/atrous_filter.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/atrous_pack_depthnormal.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/black.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/bloom.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/blur.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/cables.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/cmaa2.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/combine_colorcorrection_lut_cs.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/compact_indirect_draws.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/compute_depthbin_cullbits.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/compute_smooth_normals_cs.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/compute_tile_cullbits.slang, M\tgame/core/shaders_vulkan_dir/shaders/vfx/convolve_environment_map",
        "url": "https://github.com/SteamTracking/GameTracking-CS2/commit/7c516339e9d9969c46fbdd47d109b85e1789dc42"
      },
      "classification": {
        "tags": [],
        "important_files": []
      },
      "ai_summary": "Assets/UI/maps update (game/core/shaders_vulkan_dir/shaders/vfx/panorama.slang, game/core/shaders_vulkan_dir/shaders/vfx/panorama_fancyquad.slang, game/csgo/shaders_vulkan_dir/shaders/vfx/panorama_alpha.slang).",
      "stats": {
        "files_changed": 246,
        "additions": 34228,
        "deletions": 30015
      },
      "files": [
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_base_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": 295170234,\n-//\t\"vol\": 32761,\n+//\t\"pitchfrac\": -770969414,\n+//\t\"vol\": 32762,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        },
        {
          "filename": "DumpSource2/schemas/server/dynpitchvol_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,8 +17,8 @@\n //\t\"pitch\": 0,\n //\t\"spinupsav\": 0,\n //\t\"spindownsav\": 0,\n-//\t\"pitchfrac\": 295170234,\n-//\t\"vol\": 32761,\n+//\t\"pitchfrac\": -770969414,\n+//\t\"vol\": 32762,\n //\t\"fadeinsav\": 0,\n //\t\"fadeoutsav\": 0,\n //\t\"volfrac\": 0,"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/aoproxy_splat.slang",
          "status": "modified",
          "additions": 33,
          "deletions": 45,
          "changes": 78,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 1;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -38,7 +38,7 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3424 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2820 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _2817\n \t{\n@@ -50,11 +50,6 @@ VS\n \t    int4 _m0[20];\n \t};\n \t\n-\tstruct _2691\n-\t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n \tcbuffer AoProxyConstantBuffer_t : register(b1, space0)\n \t{\n \t    _2817 AoProxyConstantBuffer_t_1_m0 : packoffset(c5);\n@@ -63,11 +58,11 @@ VS\n \t    _2697 AoProxyConstantBuffer_t_1_m3 : packoffset(c65);\n \t};\n \t\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _2691 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n-\t    float3 _Globals_1_m2 : packoffset(c26);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);\n \t};\n \t\n \t\n@@ -107,15 +102,15 @@ VS\n \t{\n \t    uint _24589 = uint(gl_InstanceIndex - gl_BaseInstanceARB);\n \t    float3 _9948 = lerp(AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz, AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz, vPositionOs.xyz * 2.0f).xyz;\n-\t    float4 _23609 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_9948, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n+\t    float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(_9948, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    float3 _23026 = 2.0f.xxx / (AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz - AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz);\n \t    output_0 = float4(((AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz + AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz) * (-0.5f)) * _23026.xyz, AoProxyConstantBuffer_t_1_m2._m0[_24589].x);\n \t    output_1 = _23026;\n-\t    output_2 = _9948 - _Globals_1_m2.xyz;\n+\t    output_2 = _9948 - PerViewConstantBuffer_t_1_m2.xyz;\n \t    output_3 = AoProxyConstantBuffer_t_1_m1._m0[_24589].w;\n \t    output_4 = uint3(AoProxyConstantBuffer_t_1_m3._m0[_24589].xyz);\n-\t    _23609.y = -_23609.y;\n-\t    gl_Position = _23609;\n+\t    _17971.y = -_17971.y;\n+\t    gl_Position = _17971;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -152,43 +147,38 @@ PS\n \tCreateInputTexture2D(TextureAoConeLUT, Linear, 8, \"\", \"_lut_z000\", \"LUT\", Default4(1, 1, 1, 0));\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (9696 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (8780 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _1276\n+\tstruct _2704\n \t{\n \t    float4 _m0[4];\n \t};\n \t\n-\tstruct _2646\n-\t{\n-\t    float4 _m0[3];\n-\t};\n-\t\n-\tstruct _532\n+\tstruct _1413\n \t{\n-\t    _2646 _m0[106];\n+\t    column_major float4x3 _m0[106];\n \t};\n \t\n-\tstruct _2688\n+\tstruct _2520\n \t{\n \t    float4 _m0[106];\n \t};\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float4 _Globals_1_m0 : packoffset(c16);\n-\t    float _Globals_1_m1 : packoffset(c23);\n-\t    float _Globals_1_m2 : packoffset(c23.y);\n-\t    float3 _Globals_1_m3 : packoffset(c26);\n-\t    float3 _Globals_1_m4 : packoffset(c28);\n+\t    float4 PerViewConstantBuffer_t_1_m0 : packoffset(c16);\n+\t    float PerViewConstantBuffer_t_1_m1 : packoffset(c23);\n+\t    float PerViewConstantBuffer_t_1_m2 : packoffset(c23.y);\n+\t    float3 PerViewConstantBuffer_t_1_m3 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m4 : packoffset(c28);\n \t};\n \t\n \tcbuffer AoProxyConstantBuffer_t : register(b1, space1)\n \t{\n-\t    _1276 AoProxyConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    _2704 AoProxyConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 AoProxyConstantBuffer_t_1_m1 : packoffset(c4);\n-\t    _532 AoProxyConstantBuffer_t_1_m2 : packoffset(c85);\n-\t    _2688 AoProxyConstantBuffer_t_1_m3 : packoffset(c403);\n+\t    _1413 AoProxyConstantBuffer_t_1_m2 : packoffset(c85);\n+\t    _2520 AoProxyConstantBuffer_t_1_m3 : packoffset(c403);\n \t};\n \t\n \tTexture2D<float4> g_tSceneDepth : register(t31, space1);\n@@ -220,7 +210,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    float3 _10889 = (_Globals_1_m3.xyz + (input_1.xyz * (1.0f / (((clamp((g_tSceneDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - _Globals_1_m1) / (_Globals_1_m2 - _Globals_1_m1), 0.0f, 1.0f) * _Globals_1_m0.z) + _Globals_1_m0.w) * dot(_Globals_1_m4.xyz, input_1.xyz))))).xyz;\n+\t    float3 _10889 = (PerViewConstantBuffer_t_1_m3.xyz + (input_1.xyz * (1.0f / (((clamp((g_tSceneDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - PerViewConstantBuffer_t_1_m1) / (PerViewConstantBuffer_t_1_m2 - PerViewConstantBuffer_t_1_m1), 0.0f, 1.0f) * PerViewConstantBuffer_t_1_m0.z) + PerViewConstantBuffer_t_1_m0.w) * dot(PerViewConstantBuffer_t_1_m4.xyz, input_1.xyz))))).xyz;\n \t    float3 _11842 = mad(_10889, input_2.xyz, input_3.xyz);\n \t    float3 _3852 = 1.0f.xxx - abs(_11842);\n \t    float _4208 = clamp(3.0f * min(_3852.x, min(_3852.y, _3852.z)), 0.0f, 1.0f) * clamp(2.7999999523162841796875f - (2.0f * length(_11842)), 0.0f, 1.0f);\n@@ -241,12 +231,11 @@ PS\n \t        {\n \t            break;\n \t        }\n-\t        float4x3 _21989 = float4x3(float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].x, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].x, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].x), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].y, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].y, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].y), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].z, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].z, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].z), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].w, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].w, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].w));\n-\t        float3 _17090 = mul(float4(_10889, 1.0f), _21989);\n-\t        float3 _17194 = _17090.xyz;\n-\t        float _8132 = rsqrt(dot(_17194, _17194));\n-\t        float3 _16478 = (_17090.xyz * (-_8132)).xyz;\n-\t        _16164 = _13155.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;\n+\t        float3 _7095 = mul(float4(_10889, 1.0f), AoProxyConstantBuffer_t_1_m2._m0[_16208]);\n+\t        float3 _11556 = _7095.xyz;\n+\t        float _8132 = rsqrt(dot(_11556, _11556));\n+\t        float3 _16478 = (_7095.xyz * (-_8132)).xyz;\n+\t        _16164 = _13155.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;\n \t        _21531 = _16208 + 1;\n \t        _13155 = _16164;\n \t        _16208 = _21531;\n@@ -264,13 +253,12 @@ PS\n \t        {\n \t            break;\n \t        }\n-\t        float4x3 _21990 = float4x3(float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].x, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].x, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].x), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].y, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].y, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].y), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].z, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].z, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].z), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].w, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].w, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].w));\n-\t        float3 _15779 = mul(float4(_10889, 1.0f), _21990);\n-\t        float3 _20220 = (clamp(_15779.xyz, -AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz, AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz) * 0.89999997615814208984375f) - _15779.xyz;\n+\t        float3 _24855 = mul(float4(_10889, 1.0f), AoProxyConstantBuffer_t_1_m2._m0[_16209]);\n+\t        float3 _20220 = (clamp(_24855.xyz, -AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz, AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz) * 0.89999997615814208984375f) - _24855.xyz;\n \t        float3 _10134 = abs(_20220);\n \t        float _23212 = 1.0f / (1.0f + (dot(_10134 / ((_10134.x + _10134.y) + _10134.z).xxx, 3.1415927410125732421875f.xxx / (AoProxyConstantBuffer_t_1_m3._m0[_16209].yzx * AoProxyConstantBuffer_t_1_m3._m0[_16209].zxy).xyz) * length(_20220)));\n \t        float3 _16479 = normalize(_20220).xyz;\n-\t        _16165 = _13156.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;\n+\t        _16165 = _13156.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;\n \t        _21532 = _16209 + 1;\n \t        _13156 = _16165;\n \t        _16209 = _21532;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/atrous_filter.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -95,7 +95,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vInputDimensions) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n@@ -105,7 +105,7 @@ PS\n \t#extension GL_EXT_samplerless_texture_functions : require\n \t\n \tconst float _378[2][2] = float[][](float[](0.25, 0.125), float[](0.125, 0.0625));\n-\tconst float _2009[3] = float[](1.0, 0.666666686534881591796875, 0.16666667163372039794921875);\n+\tconst float _1994[3] = float[](1.0, 0.666666686534881591796875, 0.16666667163372039794921875);\n \t\n \tstruct _1104\n \t{\n@@ -246,7 +246,7 @@ PS\n \t                {\n \t                    _9364 = abs(_8858 - _3401.x) / _18186;\n \t                }\n-\t                float _6029 = (exp((-max(0.0, _9364)) - max(0.0, abs(_12624 - dot(_19777.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125))) / _7725)) * pow(clamp(dot(_12110, normalize(_8255)), 0.0, 1.0), _Globals_.g_fNormalPhi)) * (_2009[abs(_17017)] * _2009[abs(_17018)]);\n+\t                float _6029 = (exp((-max(0.0, _9364)) - max(0.0, abs(_12624 - dot(_19777.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125))) / _7725)) * pow(clamp(dot(_12110, normalize(_8255)), 0.0, 1.0), _Globals_.g_fNormalPhi)) * (_1994[abs(_17017)] * _1994[abs(_17018)]);\n \t                _10913 = _13137 + _6029;\n \t                _17551 = _16325 + vec4(_19777.xyz * _6029, _19777.w * (_6029 * _6029));\n \t            }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/atrous_pack_depthnormal.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/black.slang",
          "status": "modified",
          "additions": 59,
          "deletions": 36,
          "changes": 95,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -43,11 +43,11 @@ VS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2996 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2336 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -61,28 +61,35 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _856\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2671\n+\tstruct _1126\n \t{\n-\t    _856 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _982 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c17);\n-\t    float4 _Globals_1_m2 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n+\t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n \t\n \t\n@@ -107,18 +114,34 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _856 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3 _19937 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23894 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19937.xyz, 1.0f) + (_Globals_1_m2 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _19937 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n \t    output_0 = _19937;\n-\t    _23894.y = -_23894.y;\n-\t    gl_Position = _23894;\n-\t    gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), _Globals_1_m1.xyzw);\n+\t    _18256.y = -_18256.y;\n+\t    gl_Position = _18256;\n+\t    gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -147,15 +170,15 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (1748 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float _Globals_1_m0 : packoffset(c18);\n-\t    float3 _Globals_1_m1 : packoffset(c26);\n-\t    float3 _Globals_1_m2 : packoffset(c31);\n-\t    float _Globals_1_m3 : packoffset(c31.w);\n-\t    float _Globals_1_m4 : packoffset(c32);\n-\t    float _Globals_1_m5 : packoffset(c32.y);\n-\t    float _Globals_1_m6 : packoffset(c32.z);\n+\t    float PerViewConstantBuffer_t_1_m0 : packoffset(c18);\n+\t    float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);\n+\t    float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);\n+\t    float PerViewConstantBuffer_t_1_m4 : packoffset(c32);\n+\t    float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);\n+\t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n \t\n@@ -174,12 +197,12 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    float3 _19800 = lerp(0.0f.xxx, _Globals_1_m2.xyz, clamp(min(_Globals_1_m5, pow(clamp((distance(input_0.xyz, _Globals_1_m1.xyz) * _Globals_1_m4) + _Globals_1_m3, 0.0f, 1.0f), _Globals_1_m6)), 0.0f, 1.0f).xxx);\n+\t    float3 _19800 = lerp(0.0f.xxx, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_0.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);\n \t    float4 _17842 = float4(0.0f, 0.0f, 0.0f, 1.0f);\n \t    _17842.x = _19800.x;\n \t    _17842.y = _19800.y;\n \t    _17842.z = _19800.z;\n-\t    float3 _11003 = _17842.xyz * _Globals_1_m0;\n+\t    float3 _11003 = _17842.xyz * PerViewConstantBuffer_t_1_m0;\n \t    float4 _8673 = _17842;\n \t    _8673.x = _11003.x;\n \t    _8673.y = _11003.y;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/bloom.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/blur.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cables.slang",
          "status": "modified",
          "additions": 104,
          "deletions": 71,
          "changes": 175,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -36,13 +36,18 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \tfloat4 g_vColorMapParams < Attribute(\"ColorMapParams\"); UiType(VectorText); >;\n \tfloat4 g_vNormalMapParams < Attribute(\"NormalMapParams\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (12976 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (12340 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tstruct _1119\n+\t{\n+\t    float3x4 _m0;\n+\t};\n \t\n \tstruct _1125\n \t{\n@@ -56,19 +61,21 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _940\n-\t{\n-\t    float4 _m0[3];\n-\t};\n-\t\n-\tstruct _2839\n+\tstruct _1126\n \t{\n-\t    _940 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1066\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tstatic float4 _4;\n@@ -83,7 +90,7 @@ VS\n \t\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1066 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n@@ -118,7 +125,25 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(input_0 * 32 + 0) & 255u), (g_instanceBuffer.Load(input_0 * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(input_0 * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(input_0 * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(input_0 * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(input_0 * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(input_0 * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(input_0 * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(input_0 * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(input_0 * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(input_0 * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(input_0 * 32 + 28));\n+\t    _1125 _20228;\n+\t    _20228._m0 = _24007._m0;\n+\t    _20228._m1 = _24007._m1;\n+\t    _20228._m2 = _24007._m2;\n+\t    _20228._m3 = _24007._m3;\n+\t    _20228._m4 = _24007._m4;\n+\t    _20228._m5 = _24007._m5;\n+\t    _20228._m6 = _24007._m6;\n+\t    _20228._m7 = _24007._m7;\n+\t    float4 _23812 = float4(uint4(_20228._m0 & 255u, (_20228._m0 & 65280u) >> uint(8), (_20228._m0 & 16711680u) >> uint(16), (_20228._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -153,33 +178,42 @@ VS\n \t    _16668.x = _21354;\n \t    _16668.y = _21355;\n \t    _16668.z = _19167;\n-\t    _940 _25207;\n-\t    [unroll]\n-\t    for (int _4ident = 0; _4ident < 3; _4ident++)\n-\t    {\n-\t        _25207._m0[_4ident] = asfloat(g_transformBuffer.Load4(_4ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) - 1u) * 48 + 0));\n-\t    }\n-\t    _940 _25208;\n-\t    [unroll]\n-\t    for (int _5ident = 0; _5ident < 3; _5ident++)\n-\t    {\n-\t        _25208._m0[_5ident] = asfloat(g_transformBuffer.Load4(_5ident * 16 + g_instanceBuffer.Load(input_0 * 32 + 16) * 48 + 0));\n-\t    }\n-\t    _940 _25209;\n-\t    [unroll]\n-\t    for (int _6ident = 0; _6ident < 3; _6ident++)\n-\t    {\n-\t        _25209._m0[_6ident] = asfloat(g_transformBuffer.Load4(_6ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) + 1u) * 48 + 0));\n-\t    }\n-\t    _940 _25210;\n-\t    [unroll]\n-\t    for (int _7ident = 0; _7ident < 3; _7ident++)\n-\t    {\n-\t        _25210._m0[_7ident] = asfloat(g_transformBuffer.Load4(_7ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) + 2u) * 48 + 0));\n-\t    }\n-\t    float _23034 = float(g_instanceBuffer.Load(input_0 * 32 + 12));\n-\t    uint _14353 = input_0 + 1u;\n-\t    float4 _23813 = float4(uint4((g_instanceBuffer.Load(_14353 * 32 + 0) & 255u), (g_instanceBuffer.Load(_14353 * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(_14353 * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(_14353 * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    _1120 _18614;\n+\t    _18614._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 32)));\n+\t    _1119 _19924;\n+\t    _19924._m0 = _18614._m0;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_20228._m4 * 48 + 0), g_transformBuffer.Load4(_20228._m4 * 48 + 16), g_transformBuffer.Load4(_20228._m4 * 48 + 32)));\n+\t    _1119 _21121;\n+\t    _21121._m0 = _8152._m0;\n+\t    _1120 _17001;\n+\t    _17001._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 32)));\n+\t    _1119 _21122;\n+\t    _21122._m0 = _17001._m0;\n+\t    _1120 _17002;\n+\t    _17002._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _17002._m0;\n+\t    float _23034 = float(_20228._m3);\n+\t    _1126 _17003;\n+\t    _17003._m0 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 0);\n+\t    _17003._m1 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 4);\n+\t    _17003._m2 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 8);\n+\t    _17003._m3 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 12);\n+\t    _17003._m4 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 16);\n+\t    _17003._m5 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 20);\n+\t    _17003._m6 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 24);\n+\t    _17003._m7 = asfloat(g_instanceBuffer.Load((input_0 + 1u) * 32 + 28));\n+\t    _1125 _22470;\n+\t    _22470._m0 = _17003._m0;\n+\t    _22470._m1 = _17003._m1;\n+\t    _22470._m2 = _17003._m2;\n+\t    _22470._m3 = _17003._m3;\n+\t    _22470._m4 = _17003._m4;\n+\t    _22470._m5 = _17003._m5;\n+\t    _22470._m6 = _17003._m6;\n+\t    _22470._m7 = _17003._m7;\n+\t    float4 _23813 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6254 = _23813.xyz;\n \t    float3 _17829 = _6254 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7677 = pow((_6254 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -224,8 +258,7 @@ VS\n \t    float _22334 = _13095 * 2.0f;\n \t    float _22338 = _13095 * (-0.5f);\n \t    float _7486 = input_1.z * (-0.5f);\n-\t    float3 _17546 = float3(_25208._m0[0].x + ((_25209._m0[0].x * _22379) + ((_25207._m0[0].x * _7486) + ((_25210._m0[0].x * _22338) + ((_25209._m0[0].x * _22334) + ((_25208._m0[0].x * _22330) + ((_25207._m0[0].x * _13095) + ((_25210._m0[0].x * _22215) + ((_25209._m0[0].x * _9059) + ((_25208._m0[0].x * _9058) + (_25207._m0[0].x * _23270)))))))))), _25208._m0[0].y + ((_25209._m0[0].y * _22379) + ((_25207._m0[0].y * _7486) + ((_25210._m0[0].y * _22338) + ((_25209._m0[0].y * _22334) + ((_25208._m0[0].y * _22330) + ((_25207._m0[0].y * _13095) + ((_25210._m0[0].y * _22215) + ((_25209._m0[0].y * _9059) + ((_25208._m0[0].y * _9058) + (_25207._m0[0].y * _23270)))))))))), _25208._m0[0].z + ((_25209._m0[0].z * _22379) + ((_25207._m0[0].z * _7486) + ((_25210._m0[0].z * _22338) + ((_25209._m0[0].z * _22334) + ((_25208._m0[0].z * _22330) + ((_25207._m0[0].z * _13095) + ((_25210._m0[0].z * _22215) + ((_25209._m0[0].z * _9059) + ((_25208._m0[0].z * _9058) + (_25207._m0[0].z * _23270)))))))))));\n-\t    float _14966 = -_25207._m0[0].w;\n+\t    float3 _17546 = float3(_21121._m0[0].x + ((_21122._m0[0].x * _22379) + ((_19924._m0[0].x * _7486) + ((_19848._m0[0].x * _22338) + ((_21122._m0[0].x * _22334) + ((_21121._m0[0].x * _22330) + ((_19924._m0[0].x * _13095) + ((_19848._m0[0].x * _22215) + ((_21122._m0[0].x * _9059) + ((_21121._m0[0].x * _9058) + (_19924._m0[0].x * _23270)))))))))), _21121._m0[0].y + ((_21122._m0[0].y * _22379) + ((_19924._m0[0].y * _7486) + ((_19848._m0[0].y * _22338) + ((_21122._m0[0].y * _22334) + ((_21121._m0[0].y * _22330) + ((_19924._m0[0].y * _13095) + ((_19848._m0[0].y * _22215) + ((_21122._m0[0].y * _9059) + ((_21121._m0[0].y * _9058) + (_19924._m0[0].y * _23270)))))))))), _21121._m0[0].z + ((_21122._m0[0].z * _22379) + ((_19924._m0[0].z * _7486) + ((_19848._m0[0].z * _22338) + ((_21122._m0[0].z * _22334) + ((_21121._m0[0].z * _22330) + ((_19924._m0[0].z * _13095) + ((_19848._m0[0].z * _22215) + ((_21122._m0[0].z * _9059) + ((_21121._m0[0].z * _9058) + (_19924._m0[0].z * _23270)))))))))));\n \t    float _22343 = (3.0f * input_1.z) * input_1.z;\n \t    float _22344 = _22343 * 0.5f;\n \t    float _22345 = _22343 * (-0.5f);\n@@ -240,52 +273,52 @@ VS\n \t    float3 _15070;\n \t    if (input_1.z == 0.0f)\n \t    {\n-\t        _13136 = _25208._m0[0].w;\n-\t        _15070 = _25208._m0[0].xyz;\n-\t        _9326 = _25209._m0[0].xyz - _25207._m0[0].xyz;\n+\t        _13136 = _21121._m0[0].w;\n+\t        _15070 = _21121._m0[0].xyz;\n+\t        _9326 = _21122._m0[0].xyz - _19924._m0[0].xyz;\n \t    }\n \t    else\n \t    {\n-\t        bool _15477 = input_1.z == 1.0f;\n+\t        bool _17899 = input_1.z == 1.0f;\n \t        float3 _23151;\n-\t        if (_15477)\n+\t        if (_17899)\n \t        {\n-\t            _23151 = _25210._m0[0].xyz - _25208._m0[0].xyz;\n+\t            _23151 = _19848._m0[0].xyz - _21121._m0[0].xyz;\n \t        }\n \t        else\n \t        {\n-\t            _23151 = float3((_25209._m0[0].x * 0.5f) + ((_25207._m0[0].x * (-0.5f)) + ((_25210._m0[0].x * _14274) + ((_25209._m0[0].x * _22364) + ((_25208._m0[0].x * _22360) + ((_25207._m0[0].x * _7487) + ((_25210._m0[0].x * _22344) + ((_25209._m0[0].x * _22353) + ((_25208._m0[0].x * _22349) + (_25207._m0[0].x * _22345))))))))), (_25209._m0[0].y * 0.5f) + ((_25207._m0[0].y * (-0.5f)) + ((_25210._m0[0].y * _14274) + ((_25209._m0[0].y * _22364) + ((_25208._m0[0].y * _22360) + ((_25207._m0[0].y * _7487) + ((_25210._m0[0].y * _22344) + ((_25209._m0[0].y * _22353) + ((_25208._m0[0].y * _22349) + (_25207._m0[0].y * _22345))))))))), (_25209._m0[0].z * 0.5f) + ((_25207._m0[0].z * (-0.5f)) + ((_25210._m0[0].z * _14274) + ((_25209._m0[0].z * _22364) + ((_25208._m0[0].z * _22360) + ((_25207._m0[0].z * _7487) + ((_25210._m0[0].z * _22344) + ((_25209._m0[0].z * _22353) + ((_25208._m0[0].z * _22349) + (_25207._m0[0].z * _22345))))))))));\n+\t            _23151 = float3((_21122._m0[0].x * 0.5f) + ((_19924._m0[0].x * (-0.5f)) + ((_19848._m0[0].x * _14274) + ((_21122._m0[0].x * _22364) + ((_21121._m0[0].x * _22360) + ((_19924._m0[0].x * _7487) + ((_19848._m0[0].x * _22344) + ((_21122._m0[0].x * _22353) + ((_21121._m0[0].x * _22349) + (_19924._m0[0].x * _22345))))))))), (_21122._m0[0].y * 0.5f) + ((_19924._m0[0].y * (-0.5f)) + ((_19848._m0[0].y * _14274) + ((_21122._m0[0].y * _22364) + ((_21121._m0[0].y * _22360) + ((_19924._m0[0].y * _7487) + ((_19848._m0[0].y * _22344) + ((_21122._m0[0].y * _22353) + ((_21121._m0[0].y * _22349) + (_19924._m0[0].y * _22345))))))))), (_21122._m0[0].z * 0.5f) + ((_19924._m0[0].z * (-0.5f)) + ((_19848._m0[0].z * _14274) + ((_21122._m0[0].z * _22364) + ((_21121._m0[0].z * _22360) + ((_19924._m0[0].z * _7487) + ((_19848._m0[0].z * _22344) + ((_21122._m0[0].z * _22353) + ((_21121._m0[0].z * _22349) + (_19924._m0[0].z * _22345))))))))));\n \t        }\n-\t        bool3 _10724 = _15477.xxx;\n-\t        _13136 = _15477 ? _25209._m0[0].w : (0.5f * ((((2.0f * _25208._m0[0].w) + ((_14966 + _25209._m0[0].w) * input_1.z)) + (((((2.0f * _25207._m0[0].w) - (5.0f * _25208._m0[0].w)) + (4.0f * _25209._m0[0].w)) - _25210._m0[0].w) * _13095)) + ((((_14966 + (3.0f * _25208._m0[0].w)) - (3.0f * _25209._m0[0].w)) + _25210._m0[0].w) * (_13095 * input_1.z))));\n-\t        _15070 = float3(_10724.x ? _25209._m0[0].xyz.x : _17546.x, _10724.y ? _25209._m0[0].xyz.y : _17546.y, _10724.z ? _25209._m0[0].xyz.z : _17546.z);\n+\t        bool3 _10724 = _17899.xxx;\n+\t        _13136 = _17899 ? _21122._m0[0].w : (0.5f * ((((2.0f * _21121._m0[0].w) + ((_21122._m0[0].w - _19924._m0[0].w) * input_1.z)) + (((((2.0f * _19924._m0[0].w) - (5.0f * _21121._m0[0].w)) + (4.0f * _21122._m0[0].w)) - _19848._m0[0].w) * _13095)) + (((((3.0f * _21121._m0[0].w) - _19924._m0[0].w) - (3.0f * _21122._m0[0].w)) + _19848._m0[0].w) * (_13095 * input_1.z))));\n+\t        _15070 = float3(_10724.x ? _21122._m0[0].xyz.x : _17546.x, _10724.y ? _21122._m0[0].xyz.y : _17546.y, _10724.z ? _21122._m0[0].xyz.z : _17546.z);\n \t        _9326 = _23151;\n \t    }\n \t    float3 _17352;\n \t    if (input_1.z == 1.0f)\n \t    {\n-\t        _17352 = _25209._m0[1].xyz;\n+\t        _17352 = _21122._m0[1].xyz;\n \t    }\n \t    else\n \t    {\n-\t        _17352 = _25208._m0[1].xyz;\n+\t        _17352 = _21121._m0[1].xyz;\n \t    }\n \t    float3 _15988 = normalize(cross(_17352, _9326));\n \t    float3 _7048 = (_15988 * input_1.x) + (normalize(cross(_9326, _15988)) * input_1.y);\n \t    float3 _10252 = _15070 + (_7048 * _13136);\n \t    float3 _23727;\n-\t    if (_25207._m0[0].w < 0.0f)\n+\t    if (_19924._m0[0].w < 0.0f)\n \t    {\n-\t        _23727 = normalize(_10252 - _25207._m0[0].xyz);\n+\t        _23727 = normalize(_10252 - _19924._m0[0].xyz);\n \t    }\n \t    else\n \t    {\n \t        _23727 = _7048;\n \t    }\n \t    float3 _19321;\n-\t    if (_25210._m0[0].w < 0.0f)\n+\t    if (_19848._m0[0].w < 0.0f)\n \t    {\n-\t        _19321 = normalize(_10252 - _25210._m0[0].xyz);\n+\t        _19321 = normalize(_10252 - _19848._m0[0].xyz);\n \t    }\n \t    else\n \t    {\n@@ -350,14 +383,14 @@ VS\n \t        _19303 = _9358.z;\n \t    }\n \t    float4 _18024 = float4(_10252.xyz, 1.0f);\n-\t    float4 _23875 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (_18024 + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n+\t    float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (_18024 + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n \t    output_0 = float4(_Globals_1_g_vColorMapParams.x + (_Globals_1_g_vColorMapParams.z * input_1.w), (_Globals_1_g_vColorMapParams.y + (_Globals_1_g_vColorMapParams.w * _23034)) + (_Globals_1_g_vColorMapParams.w * input_1.z), _Globals_1_g_vNormalMapParams.x + (_Globals_1_g_vNormalMapParams.z * input_1.w), (_Globals_1_g_vNormalMapParams.y + (_Globals_1_g_vNormalMapParams.w * _23034)) + (_Globals_1_g_vNormalMapParams.w * input_1.z));\n \t    output_1 = lerp(float4(_23035, _23036, _19302, _23812.w), float4(_23037, _23038, _19303, _23813.w), input_1.z.xxxx);\n \t    output_2 = _10252;\n \t    output_3 = _19321;\n \t    output_4 = float4(cross(_9326, _7048), 1.0f).xyz;\n-\t    _23875.y = -_23875.y;\n-\t    gl_Position = _23875;\n+\t    _18237.y = -_18237.y;\n+\t    gl_Position = _18237;\n \t    gl_ClipDistance[0] = dot(_18024, PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t\n@@ -390,7 +423,7 @@ PS\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \tTexture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;\n \tTexture2D g_tNormal < Channel(AG, MipNormal(TextureNormal), Linear); OutputFormat(DXT5); SrgbRead(false); >;\n \t\n@@ -409,7 +442,7 @@ PS\n \tfloat g_flSelfIllumAmount < Range(0, 5); UiType(Slider); UiGroup(\"Lighting\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4840 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4824 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _2;\n \t\n@@ -436,10 +469,10 @@ PS\n \t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b3, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b3, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \tTexture2D<float4> g_tColor : register(t30, space1);\n@@ -472,8 +505,8 @@ PS\n \t    float _7644 = 1.0f - _Globals_1_g_flRoughness;\n \t    float _8478 = _7644 * 0.800000011920928955078125f;\n \t    float _23619 = exp2(_7644 * 10.0f);\n-\t    float _14805 = pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), _8478 + 0.60000002384185791015625f) * ((_8478 + 1.60000002384185791015625f) * 0.5f);\n-\t    float3 _9146 = ((SunLightShaderParamsCB_1_m0.xyz * (((pow(clamp(dot(_14744, normalize(SunLightShaderParamsCB_1_m1.xyz + (-normalize(input_3.xyz - PerViewConstantBuffer_t_1_m1.xyz)).xyz).xyz), 0.0f, 1.0f), _23619) * _14805) * (((_23619 + 2.0f) * (_23619 + 4.0f)) / (8.0f * (exp2(_23619 * (-0.5f)) + _23619)))) * (1.0f - clamp(_Globals_1_g_flRoughness * 0.5f, 0.0f, 1.0f)))) * 1.0f).xyz + ((g_tColor.Sample(DefaultSamplerState_0, input_0.xy).xyz * input_1.xyz) * ((((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * _14805) * 1.0f)).xyz * _Globals_1_g_flDiffuseAmount) + _Globals_1_g_flSelfIllumAmount.xxx));\n+\t    float _14805 = pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), _8478 + 0.60000002384185791015625f) * ((_8478 + 1.60000002384185791015625f) * 0.5f);\n+\t    float3 _9146 = ((SunLightShaderParamsCB_t_1_m0.xyz * (((pow(clamp(dot(_14744, normalize(SunLightShaderParamsCB_t_1_m1.xyz + (-normalize(input_3.xyz - PerViewConstantBuffer_t_1_m1.xyz)).xyz).xyz), 0.0f, 1.0f), _23619) * _14805) * (((_23619 + 2.0f) * (_23619 + 4.0f)) / (8.0f * (exp2(_23619 * (-0.5f)) + _23619)))) * (1.0f - clamp(_Globals_1_g_flRoughness * 0.5f, 0.0f, 1.0f)))) * 1.0f).xyz + ((g_tColor.Sample(DefaultSamplerState_0, input_0.xy).xyz * input_1.xyz) * ((((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * _14805) * 1.0f)).xyz * _Globals_1_g_flDiffuseAmount) + _Globals_1_g_flSelfIllumAmount.xxx));\n \t    float4 _20488;\n \t    _20488.x = _9146.x;\n \t    _20488.y = _9146.y;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cmaa2.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -47,7 +47,7 @@ CS\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1028 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tRWByteAddressBuffer undetermined : register(u159, space0);\n \tRWBuffer<uint> _5971 : register(u163, space0);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/combine_colorcorrection_lut_cs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/compact_indirect_draws.slang",
          "status": "modified",
          "additions": 31,
          "deletions": 21,
          "changes": 52,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -35,7 +35,7 @@ CS\n \tRWStructuredBuffer g_GlobalStats < Attribute(\"GlobalStats\"); >;\n \tBuffer g_Input < Attribute(\"InputDraws\"); SrgbRead(false); >;\n \tRWBuffer<float4> g_Output < Attribute(\"OutputDraws\"); >;\n-\tStructuredBuffer g_Requests < Attribute(\"CompactionRequests\"); SrgbRead(false); >;\n+\tStructuredBuffer g_Requests < Attribute(\"CompactionRequests\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (3000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n@@ -46,10 +46,16 @@ CS\n \t    uint _m1;\n \t};\n \t\n+\tstruct _991\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t};\n+\t\n \tByteAddressBuffer g_Requests : register(t30, space0);\n-\tRWBuffer<uint> _3229 : register(u159, space0);\n-\tBuffer<uint4> undetermined : register(t31, space0);\n+\tBuffer<uint4> undetermined_unexpectedTypeId408_1045 : register(t31, space0);\n \tRWBuffer<uint> _4783 : register(u158, space0);\n+\tRWBuffer<uint> _3229 : register(u159, space0);\n \t\n \tstatic uint3 gl_LocalInvocationID;\n \tstatic uint3 gl_GlobalInvocationID;\n@@ -63,12 +69,16 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    uint _24425 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 0);\n-\t    uint _19512 = _24425 >> uint(8);\n-\t    uint _23353 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 4);\n-\t    uint _6021 = _24425 & 255u;\n-\t    bool _20621 = gl_LocalInvocationID.y == 0u;\n-\t    if (_20621)\n+\t    _991 _8152;\n+\t    _8152._m0 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 0);\n+\t    _8152._m1 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 4);\n+\t    _990 _20228;\n+\t    _20228._m0 = _8152._m0;\n+\t    _20228._m1 = _8152._m1;\n+\t    uint _24796 = _20228._m0 >> uint(8);\n+\t    uint _6021 = _20228._m0 & 255u;\n+\t    bool _21645 = gl_LocalInvocationID.y == 0u;\n+\t    if (_21645)\n \t    {\n \t        _5866[gl_LocalInvocationID.x] = 0u;\n \t    }\n@@ -81,29 +91,29 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        uint _18763 = (_19512 + _13039) * 5u;\n-\t        uint4 _8527 = undetermined.Load(int(_18763));\n+\t        uint _18763 = (_24796 + _13039) * 5u;\n+\t        uint4 _8527 = undetermined_unexpectedTypeId408_1045.Load(int(_18763));\n \t        uint _7919 = _8527.x;\n-\t        uint4 _8603 = undetermined.Load(int(_18763 + 1u));\n+\t        uint4 _8603 = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 1u));\n \t        uint _8120 = _8603.x;\n \t        if ((_7919 * _8120) != 0u)\n \t        {\n-\t            uint _3233;\n-\t            InterlockedAdd(_5866[gl_LocalInvocationID.x], 1u, _3233);\n-\t            uint _25189 = (_23353 + _3233) * 5u;\n+\t            uint _8060;\n+\t            InterlockedAdd(_5866[gl_LocalInvocationID.x], 1u, _8060);\n+\t            uint _25189 = (_20228._m1 + _8060) * 5u;\n \t            _4783[_25189] = _7919.x;\n \t            _4783[_25189 + 1u] = _8120.x;\n-\t            _4783[_25189 + 2u] = undetermined.Load(int(_18763 + 2u)).x.x;\n-\t            _4783[_25189 + 3u] = undetermined.Load(int(_18763 + 3u)).x.x;\n-\t            _4783[_25189 + 4u] = undetermined.Load(int(_18763 + 4u)).x.x;\n+\t            _4783[_25189 + 2u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 2u)).x.x;\n+\t            _4783[_25189 + 3u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 3u)).x.x;\n+\t            _4783[_25189 + 4u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 4u)).x.x;\n \t        }\n \t        _4283 = _13039 + 16u;\n \t        _13039 = _4283;\n \t        continue;\n \t    }\n \t    GroupMemoryBarrierWithGroupSync();\n \t    bool _12885;\n-\t    if (_20621)\n+\t    if (_21645)\n \t    {\n \t        _12885 = _6021 != 0u;\n \t    }\n@@ -113,7 +123,7 @@ CS\n \t    }\n \t    if (_12885)\n \t    {\n-\t        _3229[_23353] = _5866[gl_LocalInvocationID.x].x;\n+\t        _3229[_20228._m1] = _5866[gl_LocalInvocationID.x].x;\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/compute_depthbin_cullbits.slang",
          "status": "modified",
          "additions": 83,
          "deletions": 13,
          "changes": 96,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -30,12 +30,12 @@ CS\n {\n \t\n \tcbuffer CullParams_t < Attribute(\"CullParams_t\"); >;\n-\tStructuredBuffer g_CullItems < Attribute(\"CullItems\"); SrgbRead(false); >;\n+\tStructuredBuffer g_CullItems < Attribute(\"CullItems\"); >;\n \tRWStructuredBuffer g_OutputCullBits < Attribute(\"OutputCullBits\"); >;\n \tExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerGpuSet\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3352 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3372 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1017\n \t{\n@@ -45,12 +45,41 @@ CS\n \t    uint _m3;\n \t};\n \t\n-\tstruct _2489\n+\tstruct _1935\n \t{\n-\t    _1017 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    float2 _m4;\n+\t    float2 _m5;\n+\t    float _m6;\n+\t    float _m7;\n+\t    float2 _m8;\n+\t    float _m9;\n+\t    float _m10;\n+\t    float _m11;\n+\t    float _m12;\n+\t    float _m13;\n+\t    float _m14;\n+\t    float _m15;\n+\t    float _m16;\n \t};\n \t\n-\tstruct _1935\n+\tstruct _1018\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t};\n+\t\n+\tstruct _535\n+\t{\n+\t    _1018 _m0[3];\n+\t};\n+\t\n+\tstruct _1936\n \t{\n \t    uint _m0;\n \t    uint _m1;\n@@ -77,11 +106,11 @@ CS\n \t    float CullParams_t_1_m1 : packoffset(c2.z);\n \t    float CullParams_t_1_m2 : packoffset(c2.w);\n \t    uint4 CullParams_t_1_m3 : packoffset(c3);\n-\t    _2489 CullParams_t_1_m4 : packoffset(c7);\n+\t    _535 CullParams_t_1_m4 : packoffset(c7);\n \t};\n \t\n-\tRWByteAddressBuffer undetermined : register(u158, space0);\n \tByteAddressBuffer g_CullItems : register(t30, space0);\n+\tRWByteAddressBuffer undetermined : register(u158, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_GlobalInvocationID;\n@@ -97,8 +126,13 @@ CS\n \t    uint _3251 = gl_WorkGroupID.y - CullParams_t_1_m3[_22151];\n \t    float _17281 = (CullParams_t_1_m2 + (float(gl_GlobalInvocationID.x) * CullParams_t_1_m0)) - CullParams_t_1_m1;\n \t    float _15813 = (CullParams_t_1_m2 + (float(gl_GlobalInvocationID.x + 1u) * CullParams_t_1_m0)) + CullParams_t_1_m1;\n-\t    uint _5249 = CullParams_t_1_m4._m0[_22151]._m2 + (_3251 * 32u);\n-\t    uint _19037 = min(CullParams_t_1_m4._m0[_22151]._m3, (_5249 + 32u));\n+\t    _1017 _20228;\n+\t    _20228._m0 = CullParams_t_1_m4._m0[_22151]._m0;\n+\t    _20228._m1 = CullParams_t_1_m4._m0[_22151]._m1;\n+\t    _20228._m2 = CullParams_t_1_m4._m0[_22151]._m2;\n+\t    _20228._m3 = CullParams_t_1_m4._m0[_22151]._m3;\n+\t    uint _5249 = _20228._m2 + (_3251 * 32u);\n+\t    uint _19037 = min(_20228._m3, (_5249 + 32u));\n \t    uint _13155;\n \t    _13155 = 0u;\n \t    uint _4284;\n@@ -110,10 +144,46 @@ CS\n \t        {\n \t            break;\n \t        }\n+\t        _1936 _10769;\n+\t        _10769._m0 = g_CullItems.Load(_16208 * 80 + 0);\n+\t        _10769._m1 = g_CullItems.Load(_16208 * 80 + 4);\n+\t        _10769._m2 = g_CullItems.Load(_16208 * 80 + 8);\n+\t        _10769._m3 = g_CullItems.Load(_16208 * 80 + 12);\n+\t        _10769._m4 = asfloat(g_CullItems.Load2(_16208 * 80 + 16));\n+\t        _10769._m5 = asfloat(g_CullItems.Load2(_16208 * 80 + 24));\n+\t        _10769._m6 = asfloat(g_CullItems.Load(_16208 * 80 + 32));\n+\t        _10769._m7 = asfloat(g_CullItems.Load(_16208 * 80 + 36));\n+\t        _10769._m8 = asfloat(g_CullItems.Load2(_16208 * 80 + 40));\n+\t        _10769._m9 = asfloat(g_CullItems.Load(_16208 * 80 + 48));\n+\t        _10769._m10 = asfloat(g_CullItems.Load(_16208 * 80 + 52));\n+\t        _10769._m11 = asfloat(g_CullItems.Load(_16208 * 80 + 56));\n+\t        _10769._m12 = asfloat(g_CullItems.Load(_16208 * 80 + 60));\n+\t        _10769._m13 = asfloat(g_CullItems.Load(_16208 * 80 + 64));\n+\t        _10769._m14 = asfloat(g_CullItems.Load(_16208 * 80 + 68));\n+\t        _10769._m15 = asfloat(g_CullItems.Load(_16208 * 80 + 72));\n+\t        _10769._m16 = asfloat(g_CullItems.Load(_16208 * 80 + 76));\n+\t        _1935 _22261;\n+\t        _22261._m0 = _10769._m0;\n+\t        _22261._m1 = _10769._m1;\n+\t        _22261._m2 = _10769._m2;\n+\t        _22261._m3 = _10769._m3;\n+\t        _22261._m4 = _10769._m4;\n+\t        _22261._m5 = _10769._m5;\n+\t        _22261._m6 = _10769._m6;\n+\t        _22261._m7 = _10769._m7;\n+\t        _22261._m8 = _10769._m8;\n+\t        _22261._m9 = _10769._m9;\n+\t        _22261._m10 = _10769._m10;\n+\t        _22261._m11 = _10769._m11;\n+\t        _22261._m12 = _10769._m12;\n+\t        _22261._m13 = _10769._m13;\n+\t        _22261._m14 = _10769._m14;\n+\t        _22261._m15 = _10769._m15;\n+\t        _22261._m16 = _10769._m16;\n \t        bool _12885;\n-\t        if (asfloat(g_CullItems.Load(_16208 * 80 + 32)) <= _15813)\n+\t        if (_22261._m6 <= _15813)\n \t        {\n-\t            _12885 = asfloat(g_CullItems.Load(_16208 * 80 + 36)) >= _17281;\n+\t            _12885 = _22261._m7 >= _17281;\n \t        }\n \t        else\n \t        {\n@@ -132,7 +202,7 @@ CS\n \t        _16208 = _4284;\n \t        continue;\n \t    }\n-\t    undetermined.Store(((CullParams_t_1_m4._m0[_22151]._m0 + (gl_GlobalInvocationID.x * CullParams_t_1_m4._m0[_22151]._m1)) + _3251) * 4 + 0, _13155);\n+\t    undetermined.Store(((_20228._m0 + (gl_GlobalInvocationID.x * _20228._m1)) + _3251) * 4 + 0, _13155);\n \t}\n \t\n \t[numthreads(32, 1, 1)]"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/compute_smooth_normals_cs.slang",
          "status": "modified",
          "additions": 6,
          "deletions": 6,
          "changes": 12,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -36,9 +36,9 @@ CS\n \tint g_bIs16BitIB < Attribute(\"16BitIB\"); UiType(Slider); >;\n \tfloat g_flCompressMultiplier < Attribute(\"CompressMultiplier\"); UiType(Slider); >;\n \tfloat g_flStretchMultiplier < Attribute(\"StretchMultiplier\"); UiType(Slider); >;\n-\tByteAddressBuffer g_inputIB < Attribute(\"InputIB\"); SrgbRead(false); >;\n-\tByteAddressBuffer g_inputVB < Attribute(\"InputVB\"); SrgbRead(false); >;\n-\tByteAddressBuffer g_inputVertAliasInfo < Attribute(\"InputVertAliasInfo\"); SrgbRead(false); >;\n+\tByteAddressBuffer g_inputIB < Attribute(\"InputIB\"); >;\n+\tByteAddressBuffer g_inputVB < Attribute(\"InputVB\"); >;\n+\tByteAddressBuffer g_inputVertAliasInfo < Attribute(\"InputVertAliasInfo\"); >;\n \tint g_nAccumVBStartIndex < Attribute(\"TempBufferStartIndex\"); UiType(Slider); >;\n \tint g_nInputIndexOffset < Attribute(\"InputIBOffset\"); UiType(Slider); >;\n \tint g_nInputVertexSizeInBytes < Attribute(\"VertexSize\"); UiType(Slider); >;\n@@ -51,7 +51,7 @@ CS\n \tRWByteAddressBuffer g_vertexCacheVB < Attribute(\"VertexCacheVB\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4524 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4508 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -114,7 +114,7 @@ CS\n \t        }\n \t        else\n \t        {\n-\t            _19017 = uint3(g_inputIB.Load(_6279 * 4 + 0), g_inputIB.Load(_6751 * 4 + 0), g_inputIB.Load((uint(int(_9848 + 8u)) / 4u) * 4 + 0));\n+\t            _19017 = uint3(g_inputIB.Load(_6279 * 4 + 0), g_inputIB.Load(_6751 * 4 + 0), g_inputIB.Load(((_9848 + 8u) / 4u) * 4 + 0));\n \t        }\n \t        uint _11276 = (_19017.x + _Globals_1_g_nVertexCacheStartIndex) * 24u;\n \t        uint _6234 = undetermined.Load((_11276 / 4u) * 4 + 0);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/compute_tile_cullbits.slang",
          "status": "modified",
          "additions": 134,
          "deletions": 29,
          "changes": 163,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -31,27 +31,57 @@ CS\n \tDynamicCombo( D_SUBGROUP_SIZE_32, 0..1 );\n \t\n \tcbuffer CullParams_t < Attribute(\"CullParams_t\"); >;\n-\tStructuredBuffer g_CullItems < Attribute(\"CullItems\"); SrgbRead(false); >;\n-\tStructuredBuffer g_CullPlanes < Attribute(\"CullPlanes\"); SrgbRead(false); >;\n+\tStructuredBuffer g_CullItems < Attribute(\"CullItems\"); >;\n+\tStructuredBuffer g_CullPlanes < Attribute(\"CullPlanes\"); >;\n \tRWStructuredBuffer g_OutputCullBits < Attribute(\"OutputCullBits\"); >;\n \tExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerGpuSet\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (7936 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (7684 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _1002\n+\tstruct _1017\n \t{\n \t    uint _m0;\n \t    uint _m1;\n \t    uint _m2;\n+\t    uint _m3;\n+\t};\n+\t\n+\tstruct _1935\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    float2 _m4;\n+\t    float2 _m5;\n+\t    float _m6;\n+\t    float _m7;\n+\t    float2 _m8;\n+\t    float _m9;\n+\t    float _m10;\n+\t    float _m11;\n+\t    float _m12;\n+\t    float _m13;\n+\t    float _m14;\n+\t    float _m15;\n+\t    float _m16;\n+\t};\n+\t\n+\tstruct _1018\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n \t};\n \t\n-\tstruct _701\n+\tstruct _2681\n \t{\n-\t    _1002 _m0[3];\n+\t    _1018 _m0[3];\n \t};\n \t\n-\tstruct _1935\n+\tstruct _1936\n \t{\n \t    uint _m0;\n \t    uint _m1;\n@@ -82,12 +112,12 @@ CS\n \t    float2 CullParams_t_1_m3 : packoffset(c1);\n \t    float2 CullParams_t_1_m4 : packoffset(c1.z);\n \t    uint4 CullParams_t_1_m5 : packoffset(c3);\n-\t    _701 CullParams_t_1_m6 : packoffset(c4);\n+\t    _2681 CullParams_t_1_m6 : packoffset(c4);\n \t};\n \t\n \tByteAddressBuffer g_CullItems : register(t31, space0);\n-\tRWByteAddressBuffer undetermined : register(u158, space0);\n \tByteAddressBuffer g_CullPlanes : register(t30, space0);\n+\tRWByteAddressBuffer undetermined : register(u158, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_LocalInvocationID;\n@@ -105,6 +135,11 @@ CS\n \t{\n \t    uint _22151 = (gl_WorkGroupID.z >= CullParams_t_1_m5.z) ? 2u : uint(gl_WorkGroupID.z >= CullParams_t_1_m5.y);\n \t    uint _3251 = gl_WorkGroupID.z - CullParams_t_1_m5[_22151];\n+\t    _1017 _20228;\n+\t    _20228._m0 = CullParams_t_1_m6._m0[_22151]._m0;\n+\t    _20228._m1 = CullParams_t_1_m6._m0[_22151]._m1;\n+\t    _20228._m2 = CullParams_t_1_m6._m0[_22151]._m2;\n+\t    _20228._m3 = CullParams_t_1_m6._m0[_22151]._m3;\n \t    float2 _23453 = (float2(gl_GlobalInvocationID.xy) * CullParams_t_1_m3) + CullParams_t_1_m4;\n \t    uint2 _7433 = gl_WorkGroupID.xy * uint2(8u, 4u);\n \t    float2 _16631 = (float2(_7433) * CullParams_t_1_m3) + CullParams_t_1_m4;\n@@ -116,14 +151,49 @@ CS\n \t    {\n \t        _5602 = 0u;\n \t    }\n-\t    uint _24395 = CullParams_t_1_m6._m0[_22151]._m2 + (_3251 * 32u);\n-\t    uint _7606 = _24395 + _3716;\n-\t    float2 _4241 = asfloat(g_CullItems.Load2(_7606 * 80 + 16)) - _3512;\n-\t    float2 _5212 = asfloat(g_CullItems.Load2(_7606 * 80 + 24)) + _3512;\n-\t    bool2 _17472 = bool2(_4823.x >= _4241.x, _4823.y >= _4241.y);\n+\t    uint _24395 = _20228._m2 + (_3251 * 32u);\n+\t    _1936 _17001;\n+\t    _17001._m0 = g_CullItems.Load((_24395 + _3716) * 80 + 0);\n+\t    _17001._m1 = g_CullItems.Load((_24395 + _3716) * 80 + 4);\n+\t    _17001._m2 = g_CullItems.Load((_24395 + _3716) * 80 + 8);\n+\t    _17001._m3 = g_CullItems.Load((_24395 + _3716) * 80 + 12);\n+\t    _17001._m4 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 16));\n+\t    _17001._m5 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 24));\n+\t    _17001._m6 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 32));\n+\t    _17001._m7 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 36));\n+\t    _17001._m8 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 40));\n+\t    _17001._m9 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 48));\n+\t    _17001._m10 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 52));\n+\t    _17001._m11 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 56));\n+\t    _17001._m12 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 60));\n+\t    _17001._m13 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 64));\n+\t    _17001._m14 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 68));\n+\t    _17001._m15 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 72));\n+\t    _17001._m16 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 76));\n+\t    _1935 _21178;\n+\t    _21178._m0 = _17001._m0;\n+\t    _21178._m1 = _17001._m1;\n+\t    _21178._m2 = _17001._m2;\n+\t    _21178._m3 = _17001._m3;\n+\t    _21178._m4 = _17001._m4;\n+\t    _21178._m5 = _17001._m5;\n+\t    _21178._m6 = _17001._m6;\n+\t    _21178._m7 = _17001._m7;\n+\t    _21178._m8 = _17001._m8;\n+\t    _21178._m9 = _17001._m9;\n+\t    _21178._m10 = _17001._m10;\n+\t    _21178._m11 = _17001._m11;\n+\t    _21178._m12 = _17001._m12;\n+\t    _21178._m13 = _17001._m13;\n+\t    _21178._m14 = _17001._m14;\n+\t    _21178._m15 = _17001._m15;\n+\t    _21178._m16 = _17001._m16;\n+\t    float2 _4241 = _21178._m4 - _3512;\n+\t    float2 _5212 = _21178._m5 + _3512;\n+\t    bool2 _20688 = bool2(_4823.x >= _4241.x, _4823.y >= _4241.y);\n \t    bool2 _8020 = bool2(_5212.x >= _4823.x, _5212.y >= _4823.y);\n \t    uint _15363;\n-\t    if (all(bool2(_17472.x && _8020.x, _17472.y && _8020.y)))\n+\t    if (all(bool2(_20688.x && _8020.x, _20688.y && _8020.y)))\n \t    {\n \t        _15363 = 1u << _3716;\n \t    }\n@@ -155,18 +225,53 @@ CS\n \t        }\n \t        uint _17426 = firstbitlow(_17017);\n \t        _3461 = _17017 & (_17017 - 1u);\n-\t        uint _24956 = _24395 + _17426;\n+\t        _1936 _17002;\n+\t        _17002._m0 = g_CullItems.Load((_24395 + _17426) * 80 + 0);\n+\t        _17002._m1 = g_CullItems.Load((_24395 + _17426) * 80 + 4);\n+\t        _17002._m2 = g_CullItems.Load((_24395 + _17426) * 80 + 8);\n+\t        _17002._m3 = g_CullItems.Load((_24395 + _17426) * 80 + 12);\n+\t        _17002._m4 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 16));\n+\t        _17002._m5 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 24));\n+\t        _17002._m6 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 32));\n+\t        _17002._m7 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 36));\n+\t        _17002._m8 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 40));\n+\t        _17002._m9 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 48));\n+\t        _17002._m10 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 52));\n+\t        _17002._m11 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 56));\n+\t        _17002._m12 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 60));\n+\t        _17002._m13 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 64));\n+\t        _17002._m14 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 68));\n+\t        _17002._m15 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 72));\n+\t        _17002._m16 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 76));\n+\t        _1935 _20229;\n+\t        _20229._m0 = _17002._m0;\n+\t        _20229._m1 = _17002._m1;\n+\t        _20229._m2 = _17002._m2;\n+\t        _20229._m3 = _17002._m3;\n+\t        _20229._m4 = _17002._m4;\n+\t        _20229._m5 = _17002._m5;\n+\t        _20229._m6 = _17002._m6;\n+\t        _20229._m7 = _17002._m7;\n+\t        _20229._m8 = _17002._m8;\n+\t        _20229._m9 = _17002._m9;\n+\t        _20229._m10 = _17002._m10;\n+\t        _20229._m11 = _17002._m11;\n+\t        _20229._m12 = _17002._m12;\n+\t        _20229._m13 = _17002._m13;\n+\t        _20229._m14 = _17002._m14;\n+\t        _20229._m15 = _17002._m15;\n+\t        _20229._m16 = _17002._m16;\n \t        bool _12885;\n \t        do\n \t        {\n-\t            if (!(asfloat(g_CullItems.Load(_24956 * 80 + 72)) != 0.0f))\n+\t            if (_20229._m15 == 0.0f)\n \t            {\n \t                _12885 = true;\n \t                break;\n \t            }\n \t            float _7381 = _23453.x;\n \t            float _16189 = _23453.y;\n-\t            _12885 = ((((((asfloat(g_CullItems.Load(_24956 * 80 + 48)) * (_7381 * _7381)) + (asfloat(g_CullItems.Load(_24956 * 80 + 52)) * (_16189 * _16189))) + (asfloat(g_CullItems.Load(_24956 * 80 + 56)) * (_7381 * _16189))) + (asfloat(g_CullItems.Load(_24956 * 80 + 60)) * _7381)) + (asfloat(g_CullItems.Load(_24956 * 80 + 64)) * _16189)) + asfloat(g_CullItems.Load(_24956 * 80 + 68))) >= 0.0f;\n+\t            _12885 = ((((((_20229._m9 * (_7381 * _7381)) + (_20229._m10 * (_16189 * _16189))) + (_20229._m11 * (_7381 * _16189))) + (_20229._m12 * _7381)) + (_20229._m13 * _16189)) + _20229._m14) >= 0.0f;\n \t            break;\n \t        } while(false);\n \t        bool _16055;\n@@ -175,24 +280,24 @@ CS\n \t            bool _12501;\n \t            do\n \t            {\n-\t                if (g_CullItems.Load(_24956 * 80 + 8) != 0u)\n+\t                if (_20229._m2 != 0u)\n \t                {\n \t                    float2 _13155;\n-\t                    _13155 = asfloat(g_CullPlanes.Load2(((g_CullItems.Load(_24956 * 80 + 0) + g_CullItems.Load(_24956 * 80 + 8)) - 1u) * 8 + 0));\n+\t                    _13155 = asfloat(g_CullPlanes.Load2(((_20229._m0 + _20229._m2) - 1u) * 8 + 0));\n \t                    float2 _6325;\n \t                    uint _23989;\n \t                    bool _13174;\n \t                    bool _16054;\n \t                    uint _16208 = 0u;\n \t                    for (;;)\n \t                    {\n-\t                        if (!(_16208 < g_CullItems.Load(_24956 * 80 + 8)))\n+\t                        if (!(_16208 < _20229._m2))\n \t                        {\n \t                            _13174 = _16305;\n \t                            _16054 = false;\n \t                            break;\n \t                        }\n-\t                        _6325 = asfloat(g_CullPlanes.Load2((g_CullItems.Load(_24956 * 80 + 0) + _16208) * 8 + 0));\n+\t                        _6325 = asfloat(g_CullPlanes.Load2((_20229._m0 + _16208) * 8 + 0));\n \t                        float2 _6626 = _6325 - _13155;\n \t                        float2 _10733 = float2(-_6626.y, _6626.x);\n \t                        if ((dot(_10733, _23453) + CullParams_t_1_m2) < dot(_10733, _6325))\n@@ -226,28 +331,28 @@ CS\n \t        bool _16057;\n \t        if (_16055)\n \t        {\n-\t            uint _13648 = g_CullItems.Load(_24956 * 80 + 0) + g_CullItems.Load(_24956 * 80 + 8);\n+\t            uint _24392 = _20229._m0 + _20229._m2;\n \t            bool _12502;\n \t            do\n \t            {\n-\t                if (g_CullItems.Load(_24956 * 80 + 12) != 0u)\n+\t                if (_20229._m3 != 0u)\n \t                {\n \t                    float2 _13156;\n-\t                    _13156 = asfloat(g_CullPlanes.Load2(((_13648 + g_CullItems.Load(_24956 * 80 + 12)) - 1u) * 8 + 0));\n+\t                    _13156 = asfloat(g_CullPlanes.Load2(((_24392 + _20229._m3) - 1u) * 8 + 0));\n \t                    float2 _6326;\n \t                    uint _23990;\n \t                    bool _13176;\n \t                    bool _16056;\n \t                    uint _16209 = 0u;\n \t                    for (;;)\n \t                    {\n-\t                        if (!(_16209 < g_CullItems.Load(_24956 * 80 + 12)))\n+\t                        if (!(_16209 < _20229._m3))\n \t                        {\n \t                            _13176 = _13136;\n \t                            _16056 = false;\n \t                            break;\n \t                        }\n-\t                        _6326 = asfloat(g_CullPlanes.Load2((_13648 + _16209) * 8 + 0));\n+\t                        _6326 = asfloat(g_CullPlanes.Load2((_24392 + _16209) * 8 + 0));\n \t                        float2 _6627 = _6326 - _13156;\n \t                        float2 _10734 = float2(-_6627.y, _6627.x);\n \t                        if ((dot(_10734, _23453) + CullParams_t_1_m2) < dot(_10734, _6326))\n@@ -303,7 +408,7 @@ CS\n \t    }\n \t    if (_12886)\n \t    {\n-\t        undetermined.Store(((CullParams_t_1_m6._m0[_22151]._m0 + (((gl_GlobalInvocationID.y * CullParams_t_1_m0) + gl_GlobalInvocationID.x) * CullParams_t_1_m6._m0[_22151]._m1)) + _3251) * 4 + 0, _17133);\n+\t        undetermined.Store(((_20228._m0 + (((gl_GlobalInvocationID.y * CullParams_t_1_m0) + gl_GlobalInvocationID.x) * _20228._m1)) + _3251) * 4 + 0, _17133);\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/convolve_environment_map.slang",
          "status": "modified",
          "additions": 6,
          "deletions": 6,
          "changes": 12,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_41\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -41,7 +41,7 @@ VS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vMatRow1) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n@@ -86,7 +86,7 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (2524 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _365\n+\tstruct _71\n \t{\n \t    float4 _m0[2048];\n \t};\n@@ -98,8 +98,8 @@ PS\n \t\n \tcbuffer FilterTapConstantBuffer_t : register(b2, space1)\n \t{\n-\t    _365 FilterTapConstantBuffer_t_1_m0 : packoffset(c0);\n-\t    _365 FilterTapConstantBuffer_t_1_m1 : packoffset(c2048);\n+\t    _71 FilterTapConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    _71 FilterTapConstantBuffer_t_1_m1 : packoffset(c2048);\n \t};\n \t\n \tTextureCube<float4> g_tCubemap : register(t30, space1);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/copytexture.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -127,7 +127,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vScaleAndBias) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_bc7.slang",
          "status": "modified",
          "additions": 271,
          "deletions": 278,
          "changes": 549,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -38,17 +38,17 @@ CS\n \tfloat2 g_vImageSize < Attribute(\"ImageSize\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (40472 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (40284 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n \t    float2 _Globals_1_g_vImageSize : packoffset(c0);\n \t    uint _Globals_1_g_nMipLevel : packoffset(c0.z);\n \t};\n \t\n-\tRWTexture2D<uint4> _3592 : register(u158, space0);\n \tTexture2D<float4> g_tSrc : register(t30, space0);\n \tSamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint : register(s14, space0);\n+\tRWTexture2D<uint4> _3592 : register(u158, space0);\n \t\n \tstatic uint3 gl_GlobalInvocationID;\n \tstruct SPIRV_Cross_Input\n@@ -115,10 +115,10 @@ CS\n \t            _13039 = _4299;\n \t            continue;\n \t        }\n+\t        float4 _6603[16] = _3448;\n \t        uint4 _23123;\n \t        do\n \t        {\n-\t            float4 _19980[16] = _3448;\n \t            int _23989;\n \t            bool _12885;\n \t            int _13041 = 0;\n@@ -129,7 +129,7 @@ CS\n \t                    _12885 = false;\n \t                    break;\n \t                }\n-\t                if (_19980[_13041].w < 0.99800002574920654296875f)\n+\t                if (_6603[_13041].w < 0.99800002574920654296875f)\n \t                {\n \t                    _12885 = true;\n \t                    break;\n@@ -140,7 +140,6 @@ CS\n \t            }\n \t            if (_12885)\n \t            {\n-\t                float4 _16414[16] = _3448;\n \t                float4 _13155;\n \t                _13155 = 0.0f.xxxx;\n \t                float4 _17199;\n@@ -153,7 +152,7 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    _17199 = _13155 + _16414[_16208];\n+\t                    _17199 = _13155 + _6603[_16208];\n \t                    _20924 = _16208 + 1;\n \t                    _13155 = _17199;\n \t                    _16208 = _20924;\n@@ -181,7 +180,7 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    float4 _6911 = _16414[_17017] - _21291;\n+\t                    float4 _6911 = _6603[_17017] - _21291;\n \t                    _7775 = _13136 + (_6911 * _6911.x);\n \t                    _7776 = _16305 + (_6911 * _6911.y);\n \t                    _7777 = _17114 + (_6911 * _6911.z);\n@@ -236,7 +235,7 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    float _15242 = dot(_16414[_17018] - _21291, _12501);\n+\t                    float _15242 = dot(_6603[_17018] - _21291, _12501);\n \t                    _16925 = min(_16324, _15242);\n \t                    _22816 = max(_13137, _15242);\n \t                    _24638 = _17018 + 1u;\n@@ -248,7 +247,6 @@ CS\n \t                float4 _17231 = clamp(_21291 + (_12501 * _16324), 0.0f.xxxx, 1.0f.xxxx);\n \t                float4 _24558 = clamp(_21291 + (_12501 * _13137), 0.0f.xxxx, 1.0f.xxxx);\n \t                bool4 _6853 = (dot(_17231, float4(1.0f, 1.0f, 1.0f, 0.0f)) > dot(_24558, float4(1.0f, 1.0f, 1.0f, 0.0f))).xxxx;\n-\t                float4 _16413[16] = _3448;\n \t                float4 _13138;\n \t                float4 _16325;\n \t                _13138 = float4(_6853.x ? _24558.x : _17231.x, _6853.y ? _24558.y : _17231.y, _6853.z ? _24558.z : _17231.z, _6853.w ? _24558.w : _17231.w);\n@@ -289,12 +287,12 @@ CS\n \t                        {\n \t                            break;\n \t                        }\n-\t                        int _23276 = int((clamp(dot(_16413[_17020] - _13138, _15667) / _7122, 0.0f, 1.0f) * 15.0f) + 0.5f);\n+\t                        int _23276 = int((clamp(dot(_6603[_17020] - _13138, _15667) / _7122, 0.0f, 1.0f) * 15.0f) + 0.5f);\n \t                        if (_23276 == 0)\n \t                        {\n \t                            _13140 = _13139;\n \t                            _16307 = _16306;\n-\t                            _14891 = _17115 + _16413[_17020];\n+\t                            _14891 = _17115 + _6603[_17020];\n \t                            _18360 = _17134 + 1;\n \t                        }\n \t                        else\n@@ -304,7 +302,7 @@ CS\n \t                            if (_23276 == 15)\n \t                            {\n \t                                _13212 = _16306 + 1;\n-\t                                _15670 = _13139 + _16413[_17020];\n+\t                                _15670 = _13139 + _6603[_17020];\n \t                            }\n \t                            else\n \t                            {\n@@ -347,10 +345,9 @@ CS\n \t                    continue;\n \t                }\n \t                float4 _6656 = float4(uint4((clamp(_13138, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n-\t                float4 _19267 = float4(uint4((clamp(_16325, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n-\t                float4 _16412[16] = _3448;\n-\t                float4 _13869 = (_19267 - _6656) * 0.0039215688593685626983642578125f;\n-\t                float4 _18308 = _13869 * (1.0f / (dot(_13869, _13869) + 9.9999997473787516355514526367188e-05f));\n+\t                float4 _7539 = float4(uint4((clamp(_16325, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n+\t                float4 _21909 = (_7539 - _6656) * 0.0039215688593685626983642578125f;\n+\t                float4 _18308 = _21909 * (1.0f / (dot(_21909, _21909) + 9.9999997473787516355514526367188e-05f));\n \t                float _17055 = dot(_6656, _18308) * 0.0039215688593685626983642578125f;\n \t                uint2 _13157;\n \t                _13157 = uint2(0u, 0u);\n@@ -364,7 +361,7 @@ CS\n \t                        break;\n \t                    }\n \t                    _9504 = _13157;\n-\t                    _9504.x = _13157.x | (uint((15.0f * clamp(dot(_16412[_16210], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16210 * 4));\n+\t                    _9504.x = _13157.x | (uint((15.0f * clamp(dot(_6603[_16210], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16210 * 4));\n \t                    _8515 = _16210 + 1;\n \t                    _13157 = _9504;\n \t                    _16210 = _8515;\n@@ -382,7 +379,7 @@ CS\n \t                        break;\n \t                    }\n \t                    _9505 = _13158;\n-\t                    _9505.y = _13158.y | (uint((15.0f * clamp(dot(_16412[8 + _16211], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16211 * 4));\n+\t                    _9505.y = _13158.y | (uint((15.0f * clamp(dot(_6603[8 + _16211], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16211 * 4));\n \t                    _8516 = _16211 + 1;\n \t                    _13158 = _9505;\n \t                    _16211 = _8516;\n@@ -399,8 +396,8 @@ CS\n \t                    _21166 = _13158;\n \t                }\n \t                bool4 _19656 = _15644.xxxx;\n-\t                float4 _17592 = float4(_19656.x ? _6656.x : _19267.x, _19656.y ? _6656.y : _19267.y, _19656.z ? _6656.z : _19267.z, _19656.w ? _6656.w : _19267.w);\n-\t                float4 _23067 = float4(_19656.x ? _19267.x : _6656.x, _19656.y ? _19267.y : _6656.y, _19656.z ? _19267.z : _6656.z, _19656.w ? _19267.w : _6656.w);\n+\t                float4 _17592 = float4(_19656.x ? _6656.x : _7539.x, _19656.y ? _6656.y : _7539.y, _19656.z ? _6656.z : _7539.z, _19656.w ? _6656.w : _7539.w);\n+\t                float4 _23068 = float4(_19656.x ? _7539.x : _6656.x, _19656.y ? _7539.y : _6656.y, _19656.z ? _7539.z : _6656.z, _19656.w ? _7539.w : _6656.w);\n \t                uint4 _16326;\n \t                _16326 = uint4(0u, 0u, 0u, 0u);\n \t                int _10579;\n@@ -451,7 +448,7 @@ CS\n \t                    _17021 = _10579;\n \t                    continue;\n \t                }\n-\t                uint _10056 = uint(_23067.x) >> uint(1);\n+\t                uint _10056 = uint(_23068.x) >> uint(1);\n \t                uint4 _16327;\n \t                _16327 = _16326;\n \t                int _10580;\n@@ -553,7 +550,7 @@ CS\n \t                    _17023 = _10581;\n \t                    continue;\n \t                }\n-\t                uint _10058 = uint(_23067.y) >> uint(1);\n+\t                uint _10058 = uint(_23068.y) >> uint(1);\n \t                uint4 _16329;\n \t                _16329 = _16328;\n \t                int _10582;\n@@ -655,7 +652,7 @@ CS\n \t                    _17026 = _10583;\n \t                    continue;\n \t                }\n-\t                uint _10060 = uint(_23067.z) >> uint(1);\n+\t                uint _10060 = uint(_23068.z) >> uint(1);\n \t                uint4 _16331;\n \t                _16331 = _16330;\n \t                int _10584;\n@@ -757,7 +754,7 @@ CS\n \t                    _17028 = _10585;\n \t                    continue;\n \t                }\n-\t                uint _10062 = uint(_23067.w) >> uint(1);\n+\t                uint _10062 = uint(_23068.w) >> uint(1);\n \t                uint4 _16333;\n \t                _16333 = _16332;\n \t                int _10586;\n@@ -915,7 +912,6 @@ CS\n \t                _23123 = _23135;\n \t                break;\n \t            }\n-\t            float4 _16409[16] = _3448;\n \t            float3 _13159;\n \t            _13159 = 0.0f.xxx;\n \t            int _9913;\n@@ -927,14 +923,14 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                _21805 = _13159 + _16409[_16218].xyz;\n+\t                _21805 = _13159 + _6603[_16218].xyz;\n \t                _9913 = _16218 + 1;\n \t                _13159 = _21805;\n \t                _16218 = _9913;\n \t                continue;\n \t            }\n \t            float3 _12972 = _13159 * 0.0625f.xxx;\n-\t            float3x3 _16410 = float3x3(0.0f.xxx, 0.0f.xxx, 0.0f.xxx);\n+\t            float3x3 _20506 = float3x3(0.0f.xxx, 0.0f.xxx, 0.0f.xxx);\n \t            int _10608;\n \t            int _13042 = 0;\n \t            for (;;)\n@@ -943,27 +939,27 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                float3 _12822 = _16409[_13042].xyz - _12972;\n+\t                float3 _12822 = _6603[_13042].xyz - _12972;\n \t                float _6827 = _12822.x;\n-\t                _16410[0].x += (_6827 * _6827);\n+\t                _20506[0].x += (_6827 * _6827);\n \t                float _6828 = _12822.y;\n \t                float _22952 = _6827 * _6828;\n-\t                _16410[0].y += _22952;\n-\t                _16410[1].x += _22952;\n+\t                _20506[0].y += _22952;\n+\t                _20506[1].x += _22952;\n \t                float _6829 = _12822.z;\n \t                float _22953 = _6827 * _6829;\n-\t                _16410[0].z += _22953;\n-\t                _16410[2].x += _22953;\n-\t                _16410[1].y += (_6828 * _6828);\n+\t                _20506[0].z += _22953;\n+\t                _20506[2].x += _22953;\n+\t                _20506[1].y += (_6828 * _6828);\n \t                float _18844 = _6828 * _6829;\n-\t                _16410[1].z += _18844;\n-\t                _16410[2].y += _18844;\n-\t                _16410[2].z += (_6829 * _6829);\n+\t                _20506[1].z += _18844;\n+\t                _20506[2].y += _18844;\n+\t                _20506[2].z += (_6829 * _6829);\n \t                _10608 = _13042 + 1;\n \t                _13042 = _10608;\n \t                continue;\n \t            }\n-\t            float3x3 _16411 = float3x3(float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f));\n+\t            float3x3 _23854 = float3x3(float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f));\n \t            int _21567;\n \t            int _13043 = 0;\n \t            for (;;)\n@@ -972,25 +968,25 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                float _23755 = _16410[0].y;\n+\t                float _23755 = _20506[0].y;\n \t                float _24236 = abs(_23755);\n-\t                float _20289 = _16410[0].z;\n+\t                float _20289 = _20506[0].z;\n \t                bool _11754 = abs(_20289) > _24236;\n \t                float _22864;\n \t                if (_11754)\n \t                {\n-\t                    _22864 = abs(_16410[0].z);\n+\t                    _22864 = abs(_20506[0].z);\n \t                }\n \t                else\n \t                {\n \t                    _22864 = _24236;\n \t                }\n-\t                float _6983 = _16410[1].z;\n+\t                float _6983 = _20506[1].z;\n \t                bool _11755 = abs(_6983) > _22864;\n \t                float _24840;\n \t                if (_11755)\n \t                {\n-\t                    _24840 = abs(_16410[1].z);\n+\t                    _24840 = abs(_20506[1].z);\n \t                }\n \t                else\n \t                {\n@@ -1002,9 +998,9 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                float _8600 = _16410[_16226][_16226];\n-\t                float _8524 = _16410[_9005][_9005];\n-\t                float _12024 = _16410[_16226][_9005];\n+\t                float _8600 = _20506[_16226][_16226];\n+\t                float _8524 = _20506[_9005][_9005];\n+\t                float _12024 = _20506[_16226][_9005];\n \t                float _6561 = _8524 - _8600;\n \t                float _9028;\n \t                if (abs(_6561) < 9.9999997473787516355514526367188e-06f)\n@@ -1037,108 +1033,108 @@ CS\n \t                    }\n \t                    if (_12886)\n \t                    {\n-\t                        float _8525 = _16410[_13044][_16226];\n-\t                        float _13973 = _16410[_13044][_9005];\n+\t                        float _8525 = _20506[_13044][_16226];\n+\t                        float _13973 = _20506[_13044][_9005];\n \t                        float _19722 = (_8525 * _14203) - (_13973 * _17205);\n \t                        int _21437 = _13044 * 3;\n \t                        switch (_21437 + _16226)\n \t                        {\n \t                            case 0:\n \t                            {\n-\t                                _16410[0].x = _19722;\n+\t                                _20506[0].x = _19722;\n \t                                break;\n \t                            }\n \t                            case 1:\n \t                            {\n-\t                                _16410[0].y = _19722;\n+\t                                _20506[0].y = _19722;\n \t                                break;\n \t                            }\n \t                            case 2:\n \t                            {\n-\t                                _16410[0].z = _19722;\n+\t                                _20506[0].z = _19722;\n \t                                break;\n \t                            }\n \t                            case 3:\n \t                            {\n-\t                                _16410[1].x = _19722;\n+\t                                _20506[1].x = _19722;\n \t                                break;\n \t                            }\n \t                            case 4:\n \t                            {\n-\t                                _16410[1].y = _19722;\n+\t                                _20506[1].y = _19722;\n \t                                break;\n \t                            }\n \t                            case 5:\n \t                            {\n-\t                                _16410[1].z = _19722;\n+\t                                _20506[1].z = _19722;\n \t                                break;\n \t                            }\n \t                            case 6:\n \t                            {\n-\t                                _16410[2].x = _19722;\n+\t                                _20506[2].x = _19722;\n \t                                break;\n \t                            }\n \t                            case 7:\n \t                            {\n-\t                                _16410[2].y = _19722;\n+\t                                _20506[2].y = _19722;\n \t                                break;\n \t                            }\n \t                            case 8:\n \t                            {\n-\t                                _16410[2].z = _19722;\n+\t                                _20506[2].z = _19722;\n \t                                break;\n \t                            }\n \t                            default:\n \t                            {\n \t                                break;\n \t                            }\n \t                        }\n-\t                        float _25208 = _16410[_13044][_16226];\n-\t                        switch ((_16226 * 3) + _13044)\n+\t                        float _18807 = _20506[_13044][_16226];\n+\t                        switch ((_11755 ? 3 : 0) + _13044)\n \t                        {\n \t                            case 0:\n \t                            {\n-\t                                _16410[0].x = _25208;\n+\t                                _20506[0].x = _18807;\n \t                                break;\n \t                            }\n \t                            case 1:\n \t                            {\n-\t                                _16410[0].y = _25208;\n+\t                                _20506[0].y = _18807;\n \t                                break;\n \t                            }\n \t                            case 2:\n \t                            {\n-\t                                _16410[0].z = _25208;\n+\t                                _20506[0].z = _18807;\n \t                                break;\n \t                            }\n \t                            case 3:\n \t                            {\n-\t                                _16410[1].x = _25208;\n+\t                                _20506[1].x = _18807;\n \t                                break;\n \t                            }\n \t                            case 4:\n \t                            {\n-\t                                _16410[1].y = _25208;\n+\t                                _20506[1].y = _18807;\n \t                                break;\n \t                            }\n \t                            case 5:\n \t                            {\n-\t                                _16410[1].z = _25208;\n+\t                                _20506[1].z = _18807;\n \t                                break;\n \t                            }\n \t                            case 6:\n \t                            {\n-\t                                _16410[2].x = _25208;\n+\t                                _20506[2].x = _18807;\n \t                                break;\n \t                            }\n \t                            case 7:\n \t                            {\n-\t                                _16410[2].y = _25208;\n+\t                                _20506[2].y = _18807;\n \t                                break;\n \t                            }\n \t                            case 8:\n \t                            {\n-\t                                _16410[2].z = _25208;\n+\t                                _20506[2].z = _18807;\n \t                                break;\n \t                            }\n \t                            default:\n@@ -1151,100 +1147,100 @@ CS\n \t                        {\n \t                            case 0:\n \t                            {\n-\t                                _16410[0].x = _20014;\n+\t                                _20506[0].x = _20014;\n \t                                break;\n \t                            }\n \t                            case 1:\n \t                            {\n-\t                                _16410[0].y = _20014;\n+\t                                _20506[0].y = _20014;\n \t                                break;\n \t                            }\n \t                            case 2:\n \t                            {\n-\t                                _16410[0].z = _20014;\n+\t                                _20506[0].z = _20014;\n \t                                break;\n \t                            }\n \t                            case 3:\n \t                            {\n-\t                                _16410[1].x = _20014;\n+\t                                _20506[1].x = _20014;\n \t                                break;\n \t                            }\n \t                            case 4:\n \t                            {\n-\t                                _16410[1].y = _20014;\n+\t                                _20506[1].y = _20014;\n \t                                break;\n \t                            }\n \t                            case 5:\n \t                            {\n-\t                                _16410[1].z = _20014;\n+\t                                _20506[1].z = _20014;\n \t                                break;\n \t                            }\n \t                            case 6:\n \t                            {\n-\t                                _16410[2].x = _20014;\n+\t                                _20506[2].x = _20014;\n \t                                break;\n \t                            }\n \t                            case 7:\n \t                            {\n-\t                                _16410[2].y = _20014;\n+\t                                _20506[2].y = _20014;\n \t                                break;\n \t                            }\n \t                            case 8:\n \t                            {\n-\t                                _16410[2].z = _20014;\n+\t                                _20506[2].z = _20014;\n \t                                break;\n \t                            }\n \t                            default:\n \t                            {\n \t                                break;\n \t                            }\n \t                        }\n-\t                        float _25209 = _16410[_13044][_9005];\n+\t                        float _25208 = _20506[_13044][_9005];\n \t                        switch ((_9005 * 3) + _13044)\n \t                        {\n \t                            case 0:\n \t                            {\n-\t                                _16410[0].x = _25209;\n+\t                                _20506[0].x = _25208;\n \t                                break;\n \t                            }\n \t                            case 1:\n \t                            {\n-\t                                _16410[0].y = _25209;\n+\t                                _20506[0].y = _25208;\n \t                                break;\n \t                            }\n \t                            case 2:\n \t                            {\n-\t                                _16410[0].z = _25209;\n+\t                                _20506[0].z = _25208;\n \t                                break;\n \t                            }\n \t                            case 3:\n \t                            {\n-\t                                _16410[1].x = _25209;\n+\t                                _20506[1].x = _25208;\n \t                                break;\n \t                            }\n \t                            case 4:\n \t                            {\n-\t                                _16410[1].y = _25209;\n+\t                                _20506[1].y = _25208;\n \t                                break;\n \t                            }\n \t                            case 5:\n \t                            {\n-\t                                _16410[1].z = _25209;\n+\t                                _20506[1].z = _25208;\n \t                                break;\n \t                            }\n \t                            case 6:\n \t                            {\n-\t                                _16410[2].x = _25209;\n+\t                                _20506[2].x = _25208;\n \t                                break;\n \t                            }\n \t                            case 7:\n \t                            {\n-\t                                _16410[2].y = _25209;\n+\t                                _20506[2].y = _25208;\n \t                                break;\n \t                            }\n \t                            case 8:\n \t                            {\n-\t                                _16410[2].z = _25209;\n+\t                                _20506[2].z = _25208;\n \t                                break;\n \t                            }\n \t                            default:\n@@ -1260,53 +1256,53 @@ CS\n \t                float _17556 = _14203 * _14203;\n \t                float _22675 = ((2.0f * _17205) * _14203) * _12024;\n \t                float _10137 = _17205 * _17205;\n-\t                float _17037 = ((_17556 * _8600) - _22675) + (_10137 * _8524);\n-\t                int _21935 = _16226 * 3;\n-\t                switch (_21935 + _16226)\n+\t                float _10637 = ((_17556 * _8600) - _22675) + (_10137 * _8524);\n+\t                int _23930 = _11755 ? 3 : 0;\n+\t                switch (_23930 + _16226)\n \t                {\n \t                    case 0:\n \t                    {\n-\t                        _16410[0].x = _17037;\n+\t                        _20506[0].x = _10637;\n \t                        break;\n \t                    }\n \t                    case 1:\n \t                    {\n-\t                        _16410[0].y = _17037;\n+\t                        _20506[0].y = _10637;\n \t                        break;\n \t                    }\n \t                    case 2:\n \t                    {\n-\t                        _16410[0].z = _17037;\n+\t                        _20506[0].z = _10637;\n \t                        break;\n \t                    }\n \t                    case 3:\n \t                    {\n-\t                        _16410[1].x = _17037;\n+\t                        _20506[1].x = _10637;\n \t                        break;\n \t                    }\n \t                    case 4:\n \t                    {\n-\t                        _16410[1].y = _17037;\n+\t                        _20506[1].y = _10637;\n \t                        break;\n \t                    }\n \t                    case 5:\n \t                    {\n-\t                        _16410[1].z = _17037;\n+\t                        _20506[1].z = _10637;\n \t                        break;\n \t                    }\n \t                    case 6:\n \t                    {\n-\t                        _16410[2].x = _17037;\n+\t                        _20506[2].x = _10637;\n \t                        break;\n \t                    }\n \t                    case 7:\n \t                    {\n-\t                        _16410[2].y = _17037;\n+\t                        _20506[2].y = _10637;\n \t                        break;\n \t                    }\n \t                    case 8:\n \t                    {\n-\t                        _16410[2].z = _17037;\n+\t                        _20506[2].z = _10637;\n \t                        break;\n \t                    }\n \t                    default:\n@@ -1315,156 +1311,156 @@ CS\n \t                    }\n \t                }\n \t                float _20268 = ((_10137 * _8600) + _22675) + (_17556 * _8524);\n-\t                int _21936 = _9005 * 3;\n-\t                switch (_21936 + _9005)\n+\t                int _21935 = _9005 * 3;\n+\t                switch (_21935 + _9005)\n \t                {\n \t                    case 0:\n \t                    {\n-\t                        _16410[0].x = _20268;\n+\t                        _20506[0].x = _20268;\n \t                        break;\n \t                    }\n \t                    case 1:\n \t                    {\n-\t                        _16410[0].y = _20268;\n+\t                        _20506[0].y = _20268;\n \t                        break;\n \t                    }\n \t                    case 2:\n \t                    {\n-\t                        _16410[0].z = _20268;\n+\t                        _20506[0].z = _20268;\n \t                        break;\n \t                    }\n \t                    case 3:\n \t                    {\n-\t                        _16410[1].x = _20268;\n+\t                        _20506[1].x = _20268;\n \t                        break;\n \t                    }\n \t                    case 4:\n \t                    {\n-\t                        _16410[1].y = _20268;\n+\t                        _20506[1].y = _20268;\n \t                        break;\n \t                    }\n \t                    case 5:\n \t                    {\n-\t                        _16410[1].z = _20268;\n+\t                        _20506[1].z = _20268;\n \t                        break;\n \t                    }\n \t                    case 6:\n \t                    {\n-\t                        _16410[2].x = _20268;\n+\t                        _20506[2].x = _20268;\n \t                        break;\n \t                    }\n \t                    case 7:\n \t                    {\n-\t                        _16410[2].y = _20268;\n+\t                        _20506[2].y = _20268;\n \t                        break;\n \t                    }\n \t                    case 8:\n \t                    {\n-\t                        _16410[2].z = _20268;\n+\t                        _20506[2].z = _20268;\n \t                        break;\n \t                    }\n \t                    default:\n \t                    {\n \t                        break;\n \t                    }\n \t                }\n-\t                switch (_21935 + _9005)\n+\t                switch (_23930 + _9005)\n \t                {\n \t                    case 0:\n \t                    {\n-\t                        _16410[0].x = 0.0f;\n+\t                        _20506[0].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 1:\n \t                    {\n-\t                        _16410[0].y = 0.0f;\n+\t                        _20506[0].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 2:\n \t                    {\n-\t                        _16410[0].z = 0.0f;\n+\t                        _20506[0].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 3:\n \t                    {\n-\t                        _16410[1].x = 0.0f;\n+\t                        _20506[1].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 4:\n \t                    {\n-\t                        _16410[1].y = 0.0f;\n+\t                        _20506[1].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 5:\n \t                    {\n-\t                        _16410[1].z = 0.0f;\n+\t                        _20506[1].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 6:\n \t                    {\n-\t                        _16410[2].x = 0.0f;\n+\t                        _20506[2].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 7:\n \t                    {\n-\t                        _16410[2].y = 0.0f;\n+\t                        _20506[2].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 8:\n \t                    {\n-\t                        _16410[2].z = 0.0f;\n+\t                        _20506[2].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    default:\n \t                    {\n \t                        break;\n \t                    }\n \t                }\n-\t                switch (_21936 + _16226)\n+\t                switch (_21935 + _16226)\n \t                {\n \t                    case 0:\n \t                    {\n-\t                        _16410[0].x = 0.0f;\n+\t                        _20506[0].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 1:\n \t                    {\n-\t                        _16410[0].y = 0.0f;\n+\t                        _20506[0].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 2:\n \t                    {\n-\t                        _16410[0].z = 0.0f;\n+\t                        _20506[0].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 3:\n \t                    {\n-\t                        _16410[1].x = 0.0f;\n+\t                        _20506[1].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 4:\n \t                    {\n-\t                        _16410[1].y = 0.0f;\n+\t                        _20506[1].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 5:\n \t                    {\n-\t                        _16410[1].z = 0.0f;\n+\t                        _20506[1].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 6:\n \t                    {\n-\t                        _16410[2].x = 0.0f;\n+\t                        _20506[2].x = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 7:\n \t                    {\n-\t                        _16410[2].y = 0.0f;\n+\t                        _20506[2].y = 0.0f;\n \t                        break;\n \t                    }\n \t                    case 8:\n \t                    {\n-\t                        _16410[2].z = 0.0f;\n+\t                        _20506[2].z = 0.0f;\n \t                        break;\n \t                    }\n \t                    default:\n@@ -1480,55 +1476,55 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    float _8526 = _16411[_13045][_16226];\n-\t                    float _13974 = _16411[_13045][_9005];\n+\t                    float _8526 = _23854[_13045][_16226];\n+\t                    float _13974 = _23854[_13045][_9005];\n \t                    float _19723 = (_8526 * _14203) - (_13974 * _17205);\n \t                    int _21438 = _13045 * 3;\n \t                    switch (_21438 + _16226)\n \t                    {\n \t                        case 0:\n \t                        {\n-\t                            _16411[0].x = _19723;\n+\t                            _23854[0].x = _19723;\n \t                            break;\n \t                        }\n \t                        case 1:\n \t                        {\n-\t                            _16411[0].y = _19723;\n+\t                            _23854[0].y = _19723;\n \t                            break;\n \t                        }\n \t                        case 2:\n \t                        {\n-\t                            _16411[0].z = _19723;\n+\t                            _23854[0].z = _19723;\n \t                            break;\n \t                        }\n \t                        case 3:\n \t                        {\n-\t                            _16411[1].x = _19723;\n+\t                            _23854[1].x = _19723;\n \t                            break;\n \t                        }\n \t                        case 4:\n \t                        {\n-\t                            _16411[1].y = _19723;\n+\t                            _23854[1].y = _19723;\n \t                            break;\n \t                        }\n \t                        case 5:\n \t                        {\n-\t                            _16411[1].z = _19723;\n+\t                            _23854[1].z = _19723;\n \t                            break;\n \t                        }\n \t                        case 6:\n \t                        {\n-\t                            _16411[2].x = _19723;\n+\t                            _23854[2].x = _19723;\n \t                            break;\n \t                        }\n \t                        case 7:\n \t                        {\n-\t                            _16411[2].y = _19723;\n+\t                            _23854[2].y = _19723;\n \t                            break;\n \t                        }\n \t                        case 8:\n \t                        {\n-\t                            _16411[2].z = _19723;\n+\t                            _23854[2].z = _19723;\n \t                            break;\n \t                        }\n \t                        default:\n@@ -1541,47 +1537,47 @@ CS\n \t                    {\n \t                        case 0:\n \t                        {\n-\t                            _16411[0].x = _20016;\n+\t                            _23854[0].x = _20016;\n \t                            break;\n \t                        }\n \t                        case 1:\n \t                        {\n-\t                            _16411[0].y = _20016;\n+\t                            _23854[0].y = _20016;\n \t                            break;\n \t                        }\n \t                        case 2:\n \t                        {\n-\t                            _16411[0].z = _20016;\n+\t                            _23854[0].z = _20016;\n \t                            break;\n \t                        }\n \t                        case 3:\n \t                        {\n-\t                            _16411[1].x = _20016;\n+\t                            _23854[1].x = _20016;\n \t                            break;\n \t                        }\n \t                        case 4:\n \t                        {\n-\t                            _16411[1].y = _20016;\n+\t                            _23854[1].y = _20016;\n \t                            break;\n \t                        }\n \t                        case 5:\n \t                        {\n-\t                            _16411[1].z = _20016;\n+\t                            _23854[1].z = _20016;\n \t                            break;\n \t                        }\n \t                        case 6:\n \t                        {\n-\t                            _16411[2].x = _20016;\n+\t                            _23854[2].x = _20016;\n \t                            break;\n \t                        }\n \t                        case 7:\n \t                        {\n-\t                            _16411[2].y = _20016;\n+\t                            _23854[2].y = _20016;\n \t                            break;\n \t                        }\n \t                        case 8:\n \t                        {\n-\t                            _16411[2].z = _20016;\n+\t                            _23854[2].z = _20016;\n \t                            break;\n \t                        }\n \t                        default:\n@@ -1597,18 +1593,18 @@ CS\n \t                _13043 = _21567;\n \t                continue;\n \t            }\n-\t            bool _6405 = _16410[1].y > _16410[0].x;\n+\t            bool _6405 = _20506[1].y > _20506[0].x;\n \t            float _22865;\n \t            if (_6405)\n \t            {\n-\t                _22865 = _16410[1].y;\n+\t                _22865 = _20506[1].y;\n \t            }\n \t            else\n \t            {\n-\t                _22865 = _16410[0].x;\n+\t                _22865 = _20506[0].x;\n \t            }\n-\t            int _22180 = (_16410[2].z > _22865) ? 2 : int(_6405);\n-\t            float3 _11081 = normalize(float3(_16411[0][_22180], _16411[1][_22180], _16411[2][_22180]));\n+\t            int _22180 = (_20506[2].z > _22865) ? 2 : int(_6405);\n+\t            float3 _11081 = normalize(float3(_23854[0][_22180], _23854[1][_22180], _23854[2][_22180]));\n \t            bool _21167;\n \t            if (any(isnan(_11081)))\n \t            {\n@@ -1620,9 +1616,8 @@ CS\n \t                _21167 = all(bool3(_9948.x < 9.9999997473787516355514526367188e-05f.xxx.x, _9948.y < 9.9999997473787516355514526367188e-05f.xxx.y, _9948.z < 9.9999997473787516355514526367188e-05f.xxx.z));\n \t            }\n \t            bool3 _17965 = _21167.xxx;\n-\t            float4 _21564 = float4(_12972, 0.0f);\n-\t            float4 _18330 = float4(float3(_17965.x ? float3(0.0f, 1.0f, 0.0f).x : _11081.x, _17965.y ? float3(0.0f, 1.0f, 0.0f).y : _11081.y, _17965.z ? float3(0.0f, 1.0f, 0.0f).z : _11081.z), 0.0f);\n-\t            float4 _16408[16] = _3448;\n+\t            float4 _25117 = float4(_12972, 0.0f);\n+\t            float4 _24102 = float4(float3(_17965.x ? float3(0.0f, 1.0f, 0.0f).x : _11081.x, _17965.y ? float3(0.0f, 1.0f, 0.0f).y : _11081.y, _17965.z ? float3(0.0f, 1.0f, 0.0f).z : _11081.z), 0.0f);\n \t            float _13151;\n \t            float _16336;\n \t            _13151 = -1000000000.0f;\n@@ -1637,7 +1632,7 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                float _15243 = dot(_16408[_17032] - _21564, _18330);\n+\t                float _15243 = dot(_6603[_17032] - _25117, _24102);\n \t                _16926 = min(_16336, _15243);\n \t                _22843 = max(_13151, _15243);\n \t                _24639 = _17032 + 1;\n@@ -1646,11 +1641,10 @@ CS\n \t                _17032 = _24639;\n \t                continue;\n \t            }\n-\t            float4 _23854[16] = _3448;\n \t            float4 _13152;\n \t            float4 _16337;\n-\t            _13152 = clamp(_21564 + (_18330 * _16336), 0.0f.xxxx, 1.0f.xxxx);\n-\t            _16337 = clamp(_21564 + (_18330 * _13151), 0.0f.xxxx, 1.0f.xxxx);\n+\t            _13152 = clamp(_25117 + (_24102 * _16336), 0.0f.xxxx, 1.0f.xxxx);\n+\t            _16337 = clamp(_25117 + (_24102 * _13151), 0.0f.xxxx, 1.0f.xxxx);\n \t            int _8088;\n \t            float4 _6560;\n \t            float4 _14391;\n@@ -1687,12 +1681,12 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    int _23277 = int((clamp(dot(_23854[_17034] - _13152, _15668) / _7123, 0.0f, 1.0f) * 15.0f) + 0.5f);\n+\t                    int _23277 = int((clamp(dot(_6603[_17034] - _13152, _15668) / _7123, 0.0f, 1.0f) * 15.0f) + 0.5f);\n \t                    if (_23277 == 0)\n \t                    {\n \t                        _13154 = _13153;\n \t                        _16309 = _16308;\n-\t                        _14892 = _17116 + _23854[_17034];\n+\t                        _14892 = _17116 + _6603[_17034];\n \t                        _18361 = _17135 + 1;\n \t                    }\n \t                    else\n@@ -1702,7 +1696,7 @@ CS\n \t                        if (_23277 == 15)\n \t                        {\n \t                            _13213 = _16308 + 1;\n-\t                            _15671 = _13153 + _23854[_17034];\n+\t                            _15671 = _13153 + _6603[_17034];\n \t                        }\n \t                        else\n \t                        {\n@@ -1745,10 +1739,9 @@ CS\n \t                continue;\n \t            }\n \t            float4 _6657 = float4(uint4((clamp(_13152, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n-\t            float4 _19268 = float4(uint4((clamp(_16337, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n-\t            float4 _20506[16] = _3448;\n-\t            float4 _13870 = (_19268 - _6657) * 0.0039215688593685626983642578125f;\n-\t            float4 _18309 = _13870 * (1.0f / (dot(_13870, _13870) + 9.9999997473787516355514526367188e-05f));\n+\t            float4 _7540 = float4(uint4((clamp(_16337, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));\n+\t            float4 _21910 = (_7540 - _6657) * 0.0039215688593685626983642578125f;\n+\t            float4 _18309 = _21910 * (1.0f / (dot(_21910, _21910) + 9.9999997473787516355514526367188e-05f));\n \t            float _17056 = dot(_6657, _18309) * 0.0039215688593685626983642578125f;\n \t            uint2 _13160;\n \t            _13160 = uint2(0u, 0u);\n@@ -1762,7 +1755,7 @@ CS\n \t                    break;\n \t                }\n \t                _9506 = _13160;\n-\t                _9506.x = _13160.x | (uint((15.0f * clamp(dot(_20506[_16219], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16219 * 4));\n+\t                _9506.x = _13160.x | (uint((15.0f * clamp(dot(_6603[_16219], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16219 * 4));\n \t                _8517 = _16219 + 1;\n \t                _13160 = _9506;\n \t                _16219 = _8517;\n@@ -1780,7 +1773,7 @@ CS\n \t                    break;\n \t                }\n \t                _9507 = _13161;\n-\t                _9507.y = _13161.y | (uint((15.0f * clamp(dot(_20506[8 + _16220], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16220 * 4));\n+\t                _9507.y = _13161.y | (uint((15.0f * clamp(dot(_6603[8 + _16220], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16220 * 4));\n \t                _8518 = _16220 + 1;\n \t                _13161 = _9507;\n \t                _16220 = _8518;\n@@ -1797,8 +1790,8 @@ CS\n \t                _21168 = _13161;\n \t            }\n \t            bool4 _19657 = _15645.xxxx;\n-\t            float4 _17593 = float4(_19657.x ? _6657.x : _19268.x, _19657.y ? _6657.y : _19268.y, _19657.z ? _6657.z : _19268.z, _19657.w ? _6657.w : _19268.w);\n-\t            float4 _23068 = float4(_19657.x ? _19268.x : _6657.x, _19657.y ? _19268.y : _6657.y, _19657.z ? _19268.z : _6657.z, _19657.w ? _19268.w : _6657.w);\n+\t            float4 _17593 = float4(_19657.x ? _6657.x : _7540.x, _19657.y ? _6657.y : _7540.y, _19657.z ? _6657.z : _7540.z, _19657.w ? _6657.w : _7540.w);\n+\t            float4 _23069 = float4(_19657.x ? _7540.x : _6657.x, _19657.y ? _7540.y : _6657.y, _19657.z ? _7540.z : _6657.z, _19657.w ? _7540.w : _6657.w);\n \t            uint4 _16338;\n \t            _16338 = uint4(0u, 0u, 0u, 0u);\n \t            int _10589;\n@@ -1849,7 +1842,7 @@ CS\n \t                _17035 = _10589;\n \t                continue;\n \t            }\n-\t            uint _10064 = uint(_23068.x) >> uint(1);\n+\t            uint _10064 = uint(_23069.x) >> uint(1);\n \t            uint4 _16339;\n \t            _16339 = _16338;\n \t            int _10590;\n@@ -1907,23 +1900,23 @@ CS\n \t            uint _20694;\n \t            uint4 _19672;\n \t            uint _13164 = _10065;\n-\t            int _17038 = 14;\n+\t            int _17037 = 14;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17038 < 21))\n+\t                if (!(_17037 < 21))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23706 = uint(_17038 & 31);\n-\t                uint _16838 = min(uint(21 - _17038), (32u - _23706));\n-\t                switch (uint(_17038 >> 5))\n+\t                uint _23706 = uint(_17037 & 31);\n+\t                uint _16838 = min(uint(21 - _17037), (32u - _23706));\n+\t                switch (uint(_17037 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19269 = _16340;\n-\t                        _19269.x = spvBitfieldInsert(_16340.x, _13164, _23706, _16838);\n-\t                        _19672 = _19269;\n+\t                        uint4 _19267 = _16340;\n+\t                        _19267.x = spvBitfieldInsert(_16340.x, _13164, _23706, _16838);\n+\t                        _19672 = _19267;\n \t                        break;\n \t                    }\n \t                    case 1u:\n@@ -1945,43 +1938,43 @@ CS\n \t                    }\n \t                }\n \t                _20694 = _13164 >> _16838;\n-\t                _10591 = _17038 + int(_16838);\n+\t                _10591 = _17037 + int(_16838);\n \t                _13164 = _20694;\n \t                _16340 = _19672;\n-\t                _17038 = _10591;\n+\t                _17037 = _10591;\n \t                continue;\n \t            }\n-\t            uint _10066 = uint(_23068.y) >> uint(1);\n+\t            uint _10066 = uint(_23069.y) >> uint(1);\n \t            uint4 _16341;\n \t            _16341 = _16340;\n \t            int _10592;\n \t            uint _20695;\n \t            uint4 _19673;\n \t            uint _13165 = _10066;\n-\t            int _17039 = 21;\n+\t            int _17038 = 21;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17039 < 28))\n+\t                if (!(_17038 < 28))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23707 = uint(_17039 & 31);\n-\t                uint _16839 = min(uint(28 - _17039), (32u - _23707));\n-\t                switch (uint(_17039 >> 5))\n+\t                uint _23707 = uint(_17038 & 31);\n+\t                uint _16839 = min(uint(28 - _17038), (32u - _23707));\n+\t                switch (uint(_17038 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19271 = _16341;\n-\t                        _19271.x = spvBitfieldInsert(_16341.x, _13165, _23707, _16839);\n-\t                        _19673 = _19271;\n+\t                        uint4 _19269 = _16341;\n+\t                        _19269.x = spvBitfieldInsert(_16341.x, _13165, _23707, _16839);\n+\t                        _19673 = _19269;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19270 = _16341;\n-\t                        _19270.y = spvBitfieldInsert(_16341.y, _13165, _23707, _16839);\n-\t                        _19673 = _19270;\n+\t                        uint4 _19268 = _16341;\n+\t                        _19268.y = spvBitfieldInsert(_16341.y, _13165, _23707, _16839);\n+\t                        _19673 = _19268;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -1996,10 +1989,10 @@ CS\n \t                    }\n \t                }\n \t                _20695 = _13165 >> _16839;\n-\t                _10592 = _17039 + int(_16839);\n+\t                _10592 = _17038 + int(_16839);\n \t                _13165 = _20695;\n \t                _16341 = _19673;\n-\t                _17039 = _10592;\n+\t                _17038 = _10592;\n \t                continue;\n \t            }\n \t            uint _10067 = uint(_17593.y) >> uint(1);\n@@ -2009,30 +2002,30 @@ CS\n \t            uint _20696;\n \t            uint4 _19674;\n \t            uint _13166 = _10067;\n-\t            int _17040 = 28;\n+\t            int _17039 = 28;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17040 < 35))\n+\t                if (!(_17039 < 35))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23708 = uint(_17040 & 31);\n-\t                uint _16840 = min(uint(35 - _17040), (32u - _23708));\n-\t                switch (uint(_17040 >> 5))\n+\t                uint _23708 = uint(_17039 & 31);\n+\t                uint _16840 = min(uint(35 - _17039), (32u - _23708));\n+\t                switch (uint(_17039 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19273 = _16342;\n-\t                        _19273.x = spvBitfieldInsert(_16342.x, _13166, _23708, _16840);\n-\t                        _19674 = _19273;\n+\t                        uint4 _19271 = _16342;\n+\t                        _19271.x = spvBitfieldInsert(_16342.x, _13166, _23708, _16840);\n+\t                        _19674 = _19271;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19272 = _16342;\n-\t                        _19272.y = spvBitfieldInsert(_16342.y, _13166, _23708, _16840);\n-\t                        _19674 = _19272;\n+\t                        uint4 _19270 = _16342;\n+\t                        _19270.y = spvBitfieldInsert(_16342.y, _13166, _23708, _16840);\n+\t                        _19674 = _19270;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2047,43 +2040,43 @@ CS\n \t                    }\n \t                }\n \t                _20696 = _13166 >> _16840;\n-\t                _10593 = _17040 + int(_16840);\n+\t                _10593 = _17039 + int(_16840);\n \t                _13166 = _20696;\n \t                _16342 = _19674;\n-\t                _17040 = _10593;\n+\t                _17039 = _10593;\n \t                continue;\n \t            }\n-\t            uint _10068 = uint(_23068.z) >> uint(1);\n+\t            uint _10068 = uint(_23069.z) >> uint(1);\n \t            uint4 _16343;\n \t            _16343 = _16342;\n \t            int _10594;\n \t            uint _20697;\n \t            uint4 _19675;\n \t            uint _13167 = _10068;\n-\t            int _17041 = 35;\n+\t            int _17040 = 35;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17041 < 42))\n+\t                if (!(_17040 < 42))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23709 = uint(_17041 & 31);\n-\t                uint _16841 = min(uint(42 - _17041), (32u - _23709));\n-\t                switch (uint(_17041 >> 5))\n+\t                uint _23709 = uint(_17040 & 31);\n+\t                uint _16841 = min(uint(42 - _17040), (32u - _23709));\n+\t                switch (uint(_17040 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19275 = _16343;\n-\t                        _19275.x = spvBitfieldInsert(_16343.x, _13167, _23709, _16841);\n-\t                        _19675 = _19275;\n+\t                        uint4 _19273 = _16343;\n+\t                        _19273.x = spvBitfieldInsert(_16343.x, _13167, _23709, _16841);\n+\t                        _19675 = _19273;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19274 = _16343;\n-\t                        _19274.y = spvBitfieldInsert(_16343.y, _13167, _23709, _16841);\n-\t                        _19675 = _19274;\n+\t                        uint4 _19272 = _16343;\n+\t                        _19272.y = spvBitfieldInsert(_16343.y, _13167, _23709, _16841);\n+\t                        _19675 = _19272;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2098,10 +2091,10 @@ CS\n \t                    }\n \t                }\n \t                _20697 = _13167 >> _16841;\n-\t                _10594 = _17041 + int(_16841);\n+\t                _10594 = _17040 + int(_16841);\n \t                _13167 = _20697;\n \t                _16343 = _19675;\n-\t                _17041 = _10594;\n+\t                _17040 = _10594;\n \t                continue;\n \t            }\n \t            uint _10069 = uint(_17593.z) >> uint(1);\n@@ -2111,30 +2104,30 @@ CS\n \t            uint _20698;\n \t            uint4 _19676;\n \t            uint _13168 = _10069;\n-\t            int _17042 = 42;\n+\t            int _17041 = 42;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17042 < 49))\n+\t                if (!(_17041 < 49))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23710 = uint(_17042 & 31);\n-\t                uint _16842 = min(uint(49 - _17042), (32u - _23710));\n-\t                switch (uint(_17042 >> 5))\n+\t                uint _23710 = uint(_17041 & 31);\n+\t                uint _16842 = min(uint(49 - _17041), (32u - _23710));\n+\t                switch (uint(_17041 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19277 = _16344;\n-\t                        _19277.x = spvBitfieldInsert(_16344.x, _13168, _23710, _16842);\n-\t                        _19676 = _19277;\n+\t                        uint4 _19275 = _16344;\n+\t                        _19275.x = spvBitfieldInsert(_16344.x, _13168, _23710, _16842);\n+\t                        _19676 = _19275;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19276 = _16344;\n-\t                        _19276.y = spvBitfieldInsert(_16344.y, _13168, _23710, _16842);\n-\t                        _19676 = _19276;\n+\t                        uint4 _19274 = _16344;\n+\t                        _19274.y = spvBitfieldInsert(_16344.y, _13168, _23710, _16842);\n+\t                        _19676 = _19274;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2149,10 +2142,10 @@ CS\n \t                    }\n \t                }\n \t                _20698 = _13168 >> _16842;\n-\t                _10595 = _17042 + int(_16842);\n+\t                _10595 = _17041 + int(_16842);\n \t                _13168 = _20698;\n \t                _16344 = _19676;\n-\t                _17042 = _10595;\n+\t                _17041 = _10595;\n \t                continue;\n \t            }\n \t            uint4 _16345;\n@@ -2161,30 +2154,30 @@ CS\n \t            uint _20699;\n \t            uint4 _19677;\n \t            uint _13169 = 127u;\n-\t            int _17043 = 49;\n+\t            int _17042 = 49;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17043 < 56))\n+\t                if (!(_17042 < 56))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23711 = uint(_17043 & 31);\n-\t                uint _16843 = min(uint(56 - _17043), (32u - _23711));\n-\t                switch (uint(_17043 >> 5))\n+\t                uint _23711 = uint(_17042 & 31);\n+\t                uint _16843 = min(uint(56 - _17042), (32u - _23711));\n+\t                switch (uint(_17042 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19279 = _16345;\n-\t                        _19279.x = spvBitfieldInsert(_16345.x, _13169, _23711, _16843);\n-\t                        _19677 = _19279;\n+\t                        uint4 _19277 = _16345;\n+\t                        _19277.x = spvBitfieldInsert(_16345.x, _13169, _23711, _16843);\n+\t                        _19677 = _19277;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19278 = _16345;\n-\t                        _19278.y = spvBitfieldInsert(_16345.y, _13169, _23711, _16843);\n-\t                        _19677 = _19278;\n+\t                        uint4 _19276 = _16345;\n+\t                        _19276.y = spvBitfieldInsert(_16345.y, _13169, _23711, _16843);\n+\t                        _19677 = _19276;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2199,10 +2192,10 @@ CS\n \t                    }\n \t                }\n \t                _20699 = _13169 >> _16843;\n-\t                _10596 = _17043 + int(_16843);\n+\t                _10596 = _17042 + int(_16843);\n \t                _13169 = _20699;\n \t                _16345 = _19677;\n-\t                _17043 = _10596;\n+\t                _17042 = _10596;\n \t                continue;\n \t            }\n \t            uint4 _16346;\n@@ -2211,30 +2204,30 @@ CS\n \t            uint _20700;\n \t            uint4 _19678;\n \t            uint _13170 = 127u;\n-\t            int _17044 = 56;\n+\t            int _17043 = 56;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17044 < 63))\n+\t                if (!(_17043 < 63))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23712 = uint(_17044 & 31);\n-\t                uint _16844 = min(uint(63 - _17044), (32u - _23712));\n-\t                switch (uint(_17044 >> 5))\n+\t                uint _23712 = uint(_17043 & 31);\n+\t                uint _16844 = min(uint(63 - _17043), (32u - _23712));\n+\t                switch (uint(_17043 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19282 = _16346;\n-\t                        _19282.x = spvBitfieldInsert(_16346.x, _13170, _23712, _16844);\n-\t                        _19678 = _19282;\n+\t                        uint4 _19279 = _16346;\n+\t                        _19279.x = spvBitfieldInsert(_16346.x, _13170, _23712, _16844);\n+\t                        _19678 = _19279;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19281 = _16346;\n-\t                        _19281.y = spvBitfieldInsert(_16346.y, _13170, _23712, _16844);\n-\t                        _19678 = _19281;\n+\t                        uint4 _19278 = _16346;\n+\t                        _19278.y = spvBitfieldInsert(_16346.y, _13170, _23712, _16844);\n+\t                        _19678 = _19278;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2249,10 +2242,10 @@ CS\n \t                    }\n \t                }\n \t                _20700 = _13170 >> _16844;\n-\t                _10597 = _17044 + int(_16844);\n+\t                _10597 = _17043 + int(_16844);\n \t                _13170 = _20700;\n \t                _16346 = _19678;\n-\t                _17044 = _10597;\n+\t                _17043 = _10597;\n \t                continue;\n \t            }\n \t            uint4 _16347;\n@@ -2261,30 +2254,30 @@ CS\n \t            uint _20701;\n \t            uint4 _19679;\n \t            uint _13171 = 1u;\n-\t            int _17045 = 63;\n+\t            int _17044 = 63;\n \t            [unroll]\n \t            for (;;)\n \t            {\n-\t                if (!(_17045 < 64))\n+\t                if (!(_17044 < 64))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _23713 = uint(_17045 & 31);\n-\t                uint _16845 = min(uint(64 - _17045), (32u - _23713));\n-\t                switch (uint(_17045 >> 5))\n+\t                uint _23713 = uint(_17044 & 31);\n+\t                uint _16845 = min(uint(64 - _17044), (32u - _23713));\n+\t                switch (uint(_17044 >> 5))\n \t                {\n \t                    case 0u:\n \t                    {\n-\t                        uint4 _19285 = _16347;\n-\t                        _19285.x = spvBitfieldInsert(_16347.x, _13171, _23713, _16845);\n-\t                        _19679 = _19285;\n+\t                        uint4 _19283 = _16347;\n+\t                        _19283.x = spvBitfieldInsert(_16347.x, _13171, _23713, _16845);\n+\t                        _19679 = _19283;\n \t                        break;\n \t                    }\n \t                    case 1u:\n \t                    {\n-\t                        uint4 _19284 = _16347;\n-\t                        _19284.y = spvBitfieldInsert(_16347.y, _13171, _23713, _16845);\n-\t                        _19679 = _19284;\n+\t                        uint4 _19282 = _16347;\n+\t                        _19282.y = spvBitfieldInsert(_16347.y, _13171, _23713, _16845);\n+\t                        _19679 = _19282;\n \t                        break;\n \t                    }\n \t                    case 2u:\n@@ -2299,10 +2292,10 @@ CS\n \t                    }\n \t                }\n \t                _20701 = _13171 >> _16845;\n-\t                _10598 = _17045 + int(_16845);\n+\t                _10598 = _17044 + int(_16845);\n \t                _13171 = _20701;\n \t                _16347 = _19679;\n-\t                _17045 = _10598;\n+\t                _17044 = _10598;\n \t                continue;\n \t            }\n \t            uint4 _23136 = _16347;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_dxt5.slang",
          "status": "modified",
          "additions": 27,
          "deletions": 22,
          "changes": 49,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -40,16 +40,16 @@ CS\n \tTexture2D g_tSrc < Attribute(\"SrcTex\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (13848 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (13428 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _990\n \t{\n \t    uint _m0;\n \t    uint _m1;\n \t};\n \t\n-\tstatic const float _570[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1000000.0f };\n-\tstatic const float _2509[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1000000.0f };\n+\tstatic const float _835[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1000000.0f };\n+\tstatic const float _2774[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1000000.0f };\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -170,11 +170,11 @@ CS\n \t        uint _17514 = uint(clamp(_7518, 0.0f, 1.0f) * 31.0f);\n \t        uint _17515 = uint(clamp(_23665, 0.0f, 1.0f) * 63.0f);\n \t        uint _9971 = uint(clamp(_22729, 0.0f, 1.0f) * 31.0f);\n-\t        uint _10217 = (((_17514 + uint(_7518 > _570[_17514])) << uint(11)) | ((_17515 + uint(_23665 > _2509[_17515])) << uint(5))) | (_9971 + uint(_22729 > _570[_9971]));\n+\t        uint _10217 = (((_17514 + uint(_7518 > _835[_17514])) << uint(11)) | ((_17515 + uint(_23665 > _2774[_17515])) << uint(5))) | (_9971 + uint(_22729 > _835[_9971]));\n \t        uint _17516 = uint(clamp(_10163, 0.0f, 1.0f) * 31.0f);\n \t        uint _17517 = uint(clamp(_21065, 0.0f, 1.0f) * 63.0f);\n \t        uint _9972 = uint(clamp(_7478, 0.0f, 1.0f) * 31.0f);\n-\t        uint _23070 = (((_17516 + uint(_10163 > _570[_17516])) << uint(11)) | ((_17517 + uint(_21065 > _2509[_17517])) << uint(5))) | (_9972 + uint(_7478 > _570[_9972]));\n+\t        uint _23070 = (((_17516 + uint(_10163 > _835[_17516])) << uint(11)) | ((_17517 + uint(_21065 > _2774[_17517])) << uint(5))) | (_9972 + uint(_7478 > _835[_9972]));\n \t        bool _22273 = _10217 < _23070;\n \t        _990 _22365 = { _22273 ? _23070 : _10217, _22273 ? _10217 : _23070 };\n \t        _4616[_3122] = _22365;\n@@ -183,20 +183,25 @@ CS\n \t    float3 _17633 = _3401.xyz;\n \t    uint3 _23854[4];\n \t    uint _24547 = (_4616[_3122]._m0 >> uint(11)) & 31u;\n-\t    uint _16188 = (_4616[_3122]._m0 >> uint(5)) & 63u;\n-\t    uint _9953 = (_4616[_3122]._m0) & 31u;\n-\t    _23854[0] = uint3((_24547 << uint(3)) | (_24547 >> uint(2)), (_16188 << uint(2)) | (_16188 >> uint(4)), (_9953 << uint(3)) | (_9953 >> uint(2)));\n+\t    uint _22227 = (_4616[_3122]._m0 >> uint(5)) & 63u;\n+\t    uint _14202 = _4616[_3122]._m0 & 31u;\n+\t    uint _20832 = (_24547 << uint(3)) | (_24547 >> uint(2));\n+\t    uint _20833 = (_22227 << uint(2)) | (_22227 >> uint(4));\n+\t    uint _19321 = (_14202 << uint(3)) | (_14202 >> uint(2));\n+\t    _23854[0] = uint3(_20832, _20833, _19321);\n \t    uint _24548 = (_4616[_3122]._m1 >> uint(11)) & 31u;\n-\t    uint _16189 = (_4616[_3122]._m1 >> uint(5)) & 63u;\n-\t    uint _9954 = (_4616[_3122]._m1) & 31u;\n+\t    uint _22228 = (_4616[_3122]._m1 >> uint(5)) & 63u;\n+\t    uint _14203 = _4616[_3122]._m1 & 31u;\n \t    uint _20834 = (_24548 << uint(3)) | (_24548 >> uint(2));\n-\t    _23854[1] = uint3(_20834, (_16189 << uint(2)) | (_16189 >> uint(4)), (_9954 << uint(3)) | (_9954 >> uint(2)));\n-\t    _23854[2].x = (((43u * _23854[0].x) + (21u * _20834)) + 32u) >> uint(6);\n-\t    _23854[2].y = (((43u * _23854[0].y) + (21u * _23854[1].y)) + 32u) >> uint(6);\n-\t    _23854[2].z = (((43u * _23854[0].z) + (21u * _23854[1].z)) + 32u) >> uint(6);\n-\t    _23854[3].x = (((43u * _23854[1].x) + (21u * _23854[0].x)) + 32u) >> uint(6);\n-\t    _23854[3].y = (((43u * _23854[1].y) + (21u * _23854[0].y)) + 32u) >> uint(6);\n-\t    _23854[3].z = (((43u * _23854[1].z) + (21u * _23854[0].z)) + 32u) >> uint(6);\n+\t    uint _20835 = (_22228 << uint(2)) | (_22228 >> uint(4));\n+\t    uint _19322 = (_14203 << uint(3)) | (_14203 >> uint(2));\n+\t    _23854[1] = uint3(_20834, _20835, _19322);\n+\t    _23854[2].x = (((43u * _20832) + (21u * _20834)) + 32u) >> uint(6);\n+\t    _23854[2].y = (((43u * _20833) + (21u * _20835)) + 32u) >> uint(6);\n+\t    _23854[2].z = (((43u * _19321) + (21u * _19322)) + 32u) >> uint(6);\n+\t    _23854[3].x = (((43u * _20834) + (21u * _20832)) + 32u) >> uint(6);\n+\t    _23854[3].y = (((43u * _20835) + (21u * _20833)) + 32u) >> uint(6);\n+\t    _23854[3].z = (((43u * _19322) + (21u * _19321)) + 32u) >> uint(6);\n \t    uint _11407;\n \t    float3 _20506[4];\n \t    uint _13039 = 0u;\n@@ -238,10 +243,10 @@ CS\n \t    }\n \t    uint _17340 = _3699[_3122];\n \t    int _13195 = int((_8316 * 7u) + uint(int(_11502) - int(_17340 * 7u)));\n-\t    int _24611 = (_13195 >= int(_6776)) ? (-1) : 0;\n-\t    int _15235 = _13195 - int(_6776 & uint(_24611));\n-\t    int _24687 = (_15235 >= int(_7236)) ? (-1) : 0;\n-\t    int _16739 = (-(((_24611 & 4) + (_24687 & 2)) + int((_15235 - int(_7236 & uint(_24687))) >= int(_21936)))) & 7;\n+\t    bool _8011 = _13195 >= int(_6776);\n+\t    int _15235 = _13195 - int(_6776 & uint(_8011 ? (-1) : 0));\n+\t    bool _12850 = _15235 >= int(_7236);\n+\t    int _16739 = (-(((_8011 ? 4 : 0) + (_12850 ? 2 : 0)) + int((_15235 - int(_7236 & uint(_12850 ? (-1) : 0))) >= int(_21936)))) & 7;\n \t    int _22562 = _16739 ^ int(2 > _16739);\n \t    if (_5443 == 5u)\n \t    {"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_stb_dxt5.slang",
          "status": "modified",
          "additions": 68,
          "deletions": 72,
          "changes": 140,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -34,24 +34,24 @@ CS\n \tTexture2D g_tSrc < Attribute(\"SrcTex\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (41180 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (40512 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstatic const uint _2487[32] = { 0u, 8u, 16u, 24u, 33u, 41u, 49u, 57u, 66u, 74u, 82u, 90u, 99u, 107u, 115u, 123u, 132u, 140u, 148u, 156u, 165u, 173u, 181u, 189u, 198u, 206u, 214u, 222u, 231u, 239u, 247u, 255u };\n-\tstatic const uint _1397[64] = { 0u, 4u, 8u, 12u, 16u, 20u, 24u, 28u, 32u, 36u, 40u, 44u, 48u, 52u, 56u, 60u, 65u, 69u, 73u, 77u, 81u, 85u, 89u, 93u, 97u, 101u, 105u, 109u, 113u, 117u, 121u, 125u, 130u, 134u, 138u, 142u, 146u, 150u, 154u, 158u, 162u, 166u, 170u, 174u, 178u, 182u, 186u, 190u, 195u, 199u, 203u, 207u, 211u, 215u, 219u, 223u, 227u, 231u, 235u, 239u, 243u, 247u, 251u, 255u };\n-\tstatic const float _1549[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1.0f };\n-\tstatic const float _1902[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1.0f };\n-\tstatic const int _652[4] = { 3, 0, 2, 1 };\n-\tstatic const int _1536[4] = { 589824, 2304, 262402, 66562 };\n-\tstatic const uint2 _2967[256] = { uint2(0u, 0u), uint2(0u, 0u), uint2(0u, 1u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 0u), uint2(0u, 4u), uint2(2u, 1u), uint2(2u, 1u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(1u, 5u), uint2(3u, 2u), uint2(3u, 2u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(4u, 1u), uint2(4u, 2u), uint2(4u, 2u), uint2(4u, 2u), uint2(3u, 5u), uint2(5u, 1u), uint2(5u, 1u), uint2(5u, 2u), uint2(4u, 4u), uint2(5u, 3u), uint2(5u, 3u), uint2(5u, 3u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 3u), uint2(5u, 5u), uint2(6u, 4u), uint2(6u, 4u), uint2(4u, 8u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 5u), uint2(5u, 9u), uint2(7u, 6u), uint2(7u, 6u), uint2(8u, 4u), uint2(8u, 4u), uint2(8u, 5u), uint2(8u, 5u), uint2(8u, 6u), uint2(8u, 6u), uint2(8u, 6u), uint2(7u, 9u), uint2(9u, 5u), uint2(9u, 5u), uint2(9u, 6u), uint2(8u, 8u), uint2(9u, 7u), uint2(9u, 7u), uint2(9u, 7u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 7u), uint2(9u, 9u), uint2(10u, 8u), uint2(10u, 8u), uint2(8u, 12u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 9u), uint2(9u, 13u), uint2(11u, 10u), uint2(11u, 10u), uint2(12u, 8u), uint2(12u, 8u), uint2(12u, 9u), uint2(12u, 9u), uint2(12u, 10u), uint2(12u, 10u), uint2(12u, 10u), uint2(11u, 13u), uint2(13u, 9u), uint2(13u, 9u), uint2(13u, 10u), uint2(12u, 12u), uint2(13u, 11u), uint2(13u, 11u), uint2(13u, 11u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 11u), uint2(13u, 13u), uint2(14u, 12u), uint2(14u, 12u), uint2(12u, 16u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 13u), uint2(13u, 17u), uint2(15u, 14u), uint2(15u, 14u), uint2(16u, 12u), uint2(16u, 12u), uint2(16u, 13u), uint2(16u, 13u), uint2(16u, 14u), uint2(16u, 14u), uint2(16u, 14u), uint2(15u, 17u), uint2(17u, 13u), uint2(17u, 13u), uint2(17u, 14u), uint2(16u, 16u), uint2(17u, 15u), uint2(17u, 15u), uint2(17u, 15u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 15u), uint2(17u, 17u), uint2(18u, 16u), uint2(18u, 16u), uint2(16u, 20u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 17u), uint2(17u, 21u), uint2(19u, 18u), uint2(19u, 18u), uint2(20u, 16u), uint2(20u, 16u), uint2(20u, 17u), uint2(20u, 17u), uint2(20u, 18u), uint2(20u, 18u), uint2(20u, 18u), uint2(19u, 21u), uint2(21u, 17u), uint2(21u, 17u), uint2(21u, 18u), uint2(20u, 20u), uint2(21u, 19u), uint2(21u, 19u), uint2(21u, 19u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 19u), uint2(21u, 21u), uint2(22u, 20u), uint2(22u, 20u), uint2(20u, 24u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 21u), uint2(21u, 25u), uint2(23u, 22u), uint2(23u, 22u), uint2(24u, 20u), uint2(24u, 20u), uint2(24u, 21u), uint2(24u, 21u), uint2(24u, 22u), uint2(24u, 22u), uint2(24u, 22u), uint2(23u, 25u), uint2(25u, 21u), uint2(25u, 21u), uint2(25u, 22u), uint2(24u, 24u), uint2(25u, 23u), uint2(25u, 23u), uint2(25u, 23u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 23u), uint2(25u, 25u), uint2(26u, 24u), uint2(26u, 24u), uint2(24u, 28u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 25u), uint2(25u, 29u), uint2(27u, 26u), uint2(27u, 26u), uint2(28u, 24u), uint2(28u, 24u), uint2(28u, 25u), uint2(28u, 25u), uint2(28u, 26u), uint2(28u, 26u), uint2(28u, 26u), uint2(27u, 29u), uint2(29u, 25u), uint2(29u, 25u), uint2(29u, 26u), uint2(28u, 28u), uint2(29u, 27u), uint2(29u, 27u), uint2(29u, 27u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 27u), uint2(29u, 29u), uint2(30u, 28u), uint2(30u, 28u), uint2(30u, 28u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 29u), uint2(31u, 29u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 31u), uint2(31u, 31u) };\n-\tstatic const uint2 _929[256] = { uint2(0u, 0u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(5u, 0u), uint2(5u, 1u), uint2(6u, 0u), uint2(6u, 0u), uint2(6u, 1u), uint2(7u, 0u), uint2(7u, 0u), uint2(7u, 1u), uint2(8u, 0u), uint2(8u, 1u), uint2(8u, 1u), uint2(8u, 2u), uint2(9u, 1u), uint2(9u, 2u), uint2(9u, 2u), uint2(9u, 3u), uint2(10u, 2u), uint2(10u, 3u), uint2(10u, 3u), uint2(10u, 4u), uint2(11u, 3u), uint2(11u, 4u), uint2(11u, 4u), uint2(11u, 5u), uint2(12u, 4u), uint2(12u, 5u), uint2(12u, 5u), uint2(12u, 6u), uint2(13u, 5u), uint2(13u, 6u), uint2(8u, 16u), uint2(13u, 7u), uint2(14u, 6u), uint2(14u, 7u), uint2(9u, 17u), uint2(14u, 8u), uint2(15u, 7u), uint2(15u, 8u), uint2(11u, 16u), uint2(15u, 9u), uint2(15u, 10u), uint2(16u, 8u), uint2(16u, 9u), uint2(16u, 10u), uint2(15u, 13u), uint2(17u, 9u), uint2(17u, 10u), uint2(17u, 11u), uint2(15u, 16u), uint2(18u, 10u), uint2(18u, 11u), uint2(18u, 12u), uint2(16u, 16u), uint2(19u, 11u), uint2(19u, 12u), uint2(19u, 13u), uint2(17u, 17u), uint2(20u, 12u), uint2(20u, 13u), uint2(20u, 14u), uint2(19u, 16u), uint2(21u, 13u), uint2(21u, 14u), uint2(21u, 15u), uint2(20u, 17u), uint2(22u, 14u), uint2(22u, 15u), uint2(25u, 10u), uint2(22u, 16u), uint2(23u, 15u), uint2(23u, 16u), uint2(26u, 11u), uint2(23u, 17u), uint2(24u, 16u), uint2(24u, 17u), uint2(27u, 12u), uint2(24u, 18u), uint2(25u, 17u), uint2(25u, 18u), uint2(28u, 13u), uint2(25u, 19u), uint2(26u, 18u), uint2(26u, 19u), uint2(29u, 14u), uint2(26u, 20u), uint2(27u, 19u), uint2(27u, 20u), uint2(30u, 15u), uint2(27u, 21u), uint2(28u, 20u), uint2(28u, 21u), uint2(28u, 21u), uint2(28u, 22u), uint2(29u, 21u), uint2(29u, 22u), uint2(24u, 32u), uint2(29u, 23u), uint2(30u, 22u), uint2(30u, 23u), uint2(25u, 33u), uint2(30u, 24u), uint2(31u, 23u), uint2(31u, 24u), uint2(27u, 32u), uint2(31u, 25u), uint2(31u, 26u), uint2(32u, 24u), uint2(32u, 25u), uint2(32u, 26u), uint2(31u, 29u), uint2(33u, 25u), uint2(33u, 26u), uint2(33u, 27u), uint2(31u, 32u), uint2(34u, 26u), uint2(34u, 27u), uint2(34u, 28u), uint2(32u, 32u), uint2(35u, 27u), uint2(35u, 28u), uint2(35u, 29u), uint2(33u, 33u), uint2(36u, 28u), uint2(36u, 29u), uint2(36u, 30u), uint2(35u, 32u), uint2(37u, 29u), uint2(37u, 30u), uint2(37u, 31u), uint2(36u, 33u), uint2(38u, 30u), uint2(38u, 31u), uint2(41u, 26u), uint2(38u, 32u), uint2(39u, 31u), uint2(39u, 32u), uint2(42u, 27u), uint2(39u, 33u), uint2(40u, 32u), uint2(40u, 33u), uint2(43u, 28u), uint2(40u, 34u), uint2(41u, 33u), uint2(41u, 34u), uint2(44u, 29u), uint2(41u, 35u), uint2(42u, 34u), uint2(42u, 35u), uint2(45u, 30u), uint2(42u, 36u), uint2(43u, 35u), uint2(43u, 36u), uint2(46u, 31u), uint2(43u, 37u), uint2(44u, 36u), uint2(44u, 37u), uint2(44u, 37u), uint2(44u, 38u), uint2(45u, 37u), uint2(45u, 38u), uint2(40u, 48u), uint2(45u, 39u), uint2(46u, 38u), uint2(46u, 39u), uint2(41u, 49u), uint2(46u, 40u), uint2(47u, 39u), uint2(47u, 40u), uint2(43u, 48u), uint2(47u, 41u), uint2(47u, 42u), uint2(48u, 40u), uint2(48u, 41u), uint2(48u, 42u), uint2(47u, 45u), uint2(49u, 41u), uint2(49u, 42u), uint2(49u, 43u), uint2(47u, 48u), uint2(50u, 42u), uint2(50u, 43u), uint2(50u, 44u), uint2(48u, 48u), uint2(51u, 43u), uint2(51u, 44u), uint2(51u, 45u), uint2(49u, 49u), uint2(52u, 44u), uint2(52u, 45u), uint2(52u, 46u), uint2(51u, 48u), uint2(53u, 45u), uint2(53u, 46u), uint2(53u, 47u), uint2(52u, 49u), uint2(54u, 46u), uint2(54u, 47u), uint2(57u, 42u), uint2(54u, 48u), uint2(55u, 47u), uint2(55u, 48u), uint2(58u, 43u), uint2(55u, 49u), uint2(56u, 48u), uint2(56u, 49u), uint2(59u, 44u), uint2(56u, 50u), uint2(57u, 49u), uint2(57u, 50u), uint2(60u, 45u), uint2(57u, 51u), uint2(58u, 50u), uint2(58u, 51u), uint2(61u, 46u), uint2(58u, 52u), uint2(59u, 51u), uint2(59u, 52u), uint2(62u, 47u), uint2(59u, 53u), uint2(60u, 52u), uint2(60u, 53u), uint2(60u, 53u), uint2(60u, 54u), uint2(61u, 53u), uint2(61u, 54u), uint2(61u, 54u), uint2(61u, 55u), uint2(62u, 54u), uint2(62u, 55u), uint2(62u, 55u), uint2(62u, 56u), uint2(63u, 55u), uint2(63u, 56u), uint2(63u, 56u), uint2(63u, 57u), uint2(63u, 58u), uint2(63u, 59u), uint2(63u, 59u), uint2(63u, 60u), uint2(63u, 61u), uint2(63u, 62u), uint2(63u, 62u), uint2(63u, 63u) };\n+\tstatic const uint2 _720[256] = { uint2(0u, 0u), uint2(0u, 0u), uint2(0u, 1u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 0u), uint2(0u, 4u), uint2(2u, 1u), uint2(2u, 1u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(1u, 5u), uint2(3u, 2u), uint2(3u, 2u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(4u, 1u), uint2(4u, 2u), uint2(4u, 2u), uint2(4u, 2u), uint2(3u, 5u), uint2(5u, 1u), uint2(5u, 1u), uint2(5u, 2u), uint2(4u, 4u), uint2(5u, 3u), uint2(5u, 3u), uint2(5u, 3u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 3u), uint2(5u, 5u), uint2(6u, 4u), uint2(6u, 4u), uint2(4u, 8u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 5u), uint2(5u, 9u), uint2(7u, 6u), uint2(7u, 6u), uint2(8u, 4u), uint2(8u, 4u), uint2(8u, 5u), uint2(8u, 5u), uint2(8u, 6u), uint2(8u, 6u), uint2(8u, 6u), uint2(7u, 9u), uint2(9u, 5u), uint2(9u, 5u), uint2(9u, 6u), uint2(8u, 8u), uint2(9u, 7u), uint2(9u, 7u), uint2(9u, 7u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 7u), uint2(9u, 9u), uint2(10u, 8u), uint2(10u, 8u), uint2(8u, 12u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 9u), uint2(9u, 13u), uint2(11u, 10u), uint2(11u, 10u), uint2(12u, 8u), uint2(12u, 8u), uint2(12u, 9u), uint2(12u, 9u), uint2(12u, 10u), uint2(12u, 10u), uint2(12u, 10u), uint2(11u, 13u), uint2(13u, 9u), uint2(13u, 9u), uint2(13u, 10u), uint2(12u, 12u), uint2(13u, 11u), uint2(13u, 11u), uint2(13u, 11u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 11u), uint2(13u, 13u), uint2(14u, 12u), uint2(14u, 12u), uint2(12u, 16u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 13u), uint2(13u, 17u), uint2(15u, 14u), uint2(15u, 14u), uint2(16u, 12u), uint2(16u, 12u), uint2(16u, 13u), uint2(16u, 13u), uint2(16u, 14u), uint2(16u, 14u), uint2(16u, 14u), uint2(15u, 17u), uint2(17u, 13u), uint2(17u, 13u), uint2(17u, 14u), uint2(16u, 16u), uint2(17u, 15u), uint2(17u, 15u), uint2(17u, 15u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 15u), uint2(17u, 17u), uint2(18u, 16u), uint2(18u, 16u), uint2(16u, 20u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 17u), uint2(17u, 21u), uint2(19u, 18u), uint2(19u, 18u), uint2(20u, 16u), uint2(20u, 16u), uint2(20u, 17u), uint2(20u, 17u), uint2(20u, 18u), uint2(20u, 18u), uint2(20u, 18u), uint2(19u, 21u), uint2(21u, 17u), uint2(21u, 17u), uint2(21u, 18u), uint2(20u, 20u), uint2(21u, 19u), uint2(21u, 19u), uint2(21u, 19u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 19u), uint2(21u, 21u), uint2(22u, 20u), uint2(22u, 20u), uint2(20u, 24u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 21u), uint2(21u, 25u), uint2(23u, 22u), uint2(23u, 22u), uint2(24u, 20u), uint2(24u, 20u), uint2(24u, 21u), uint2(24u, 21u), uint2(24u, 22u), uint2(24u, 22u), uint2(24u, 22u), uint2(23u, 25u), uint2(25u, 21u), uint2(25u, 21u), uint2(25u, 22u), uint2(24u, 24u), uint2(25u, 23u), uint2(25u, 23u), uint2(25u, 23u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 23u), uint2(25u, 25u), uint2(26u, 24u), uint2(26u, 24u), uint2(24u, 28u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 25u), uint2(25u, 29u), uint2(27u, 26u), uint2(27u, 26u), uint2(28u, 24u), uint2(28u, 24u), uint2(28u, 25u), uint2(28u, 25u), uint2(28u, 26u), uint2(28u, 26u), uint2(28u, 26u), uint2(27u, 29u), uint2(29u, 25u), uint2(29u, 25u), uint2(29u, 26u), uint2(28u, 28u), uint2(29u, 27u), uint2(29u, 27u), uint2(29u, 27u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 27u), uint2(29u, 29u), uint2(30u, 28u), uint2(30u, 28u), uint2(30u, 28u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 29u), uint2(31u, 29u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 31u), uint2(31u, 31u) };\n+\tstatic const uint2 _1694[256] = { uint2(0u, 0u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(5u, 0u), uint2(5u, 1u), uint2(6u, 0u), uint2(6u, 0u), uint2(6u, 1u), uint2(7u, 0u), uint2(7u, 0u), uint2(7u, 1u), uint2(8u, 0u), uint2(8u, 1u), uint2(8u, 1u), uint2(8u, 2u), uint2(9u, 1u), uint2(9u, 2u), uint2(9u, 2u), uint2(9u, 3u), uint2(10u, 2u), uint2(10u, 3u), uint2(10u, 3u), uint2(10u, 4u), uint2(11u, 3u), uint2(11u, 4u), uint2(11u, 4u), uint2(11u, 5u), uint2(12u, 4u), uint2(12u, 5u), uint2(12u, 5u), uint2(12u, 6u), uint2(13u, 5u), uint2(13u, 6u), uint2(8u, 16u), uint2(13u, 7u), uint2(14u, 6u), uint2(14u, 7u), uint2(9u, 17u), uint2(14u, 8u), uint2(15u, 7u), uint2(15u, 8u), uint2(11u, 16u), uint2(15u, 9u), uint2(15u, 10u), uint2(16u, 8u), uint2(16u, 9u), uint2(16u, 10u), uint2(15u, 13u), uint2(17u, 9u), uint2(17u, 10u), uint2(17u, 11u), uint2(15u, 16u), uint2(18u, 10u), uint2(18u, 11u), uint2(18u, 12u), uint2(16u, 16u), uint2(19u, 11u), uint2(19u, 12u), uint2(19u, 13u), uint2(17u, 17u), uint2(20u, 12u), uint2(20u, 13u), uint2(20u, 14u), uint2(19u, 16u), uint2(21u, 13u), uint2(21u, 14u), uint2(21u, 15u), uint2(20u, 17u), uint2(22u, 14u), uint2(22u, 15u), uint2(25u, 10u), uint2(22u, 16u), uint2(23u, 15u), uint2(23u, 16u), uint2(26u, 11u), uint2(23u, 17u), uint2(24u, 16u), uint2(24u, 17u), uint2(27u, 12u), uint2(24u, 18u), uint2(25u, 17u), uint2(25u, 18u), uint2(28u, 13u), uint2(25u, 19u), uint2(26u, 18u), uint2(26u, 19u), uint2(29u, 14u), uint2(26u, 20u), uint2(27u, 19u), uint2(27u, 20u), uint2(30u, 15u), uint2(27u, 21u), uint2(28u, 20u), uint2(28u, 21u), uint2(28u, 21u), uint2(28u, 22u), uint2(29u, 21u), uint2(29u, 22u), uint2(24u, 32u), uint2(29u, 23u), uint2(30u, 22u), uint2(30u, 23u), uint2(25u, 33u), uint2(30u, 24u), uint2(31u, 23u), uint2(31u, 24u), uint2(27u, 32u), uint2(31u, 25u), uint2(31u, 26u), uint2(32u, 24u), uint2(32u, 25u), uint2(32u, 26u), uint2(31u, 29u), uint2(33u, 25u), uint2(33u, 26u), uint2(33u, 27u), uint2(31u, 32u), uint2(34u, 26u), uint2(34u, 27u), uint2(34u, 28u), uint2(32u, 32u), uint2(35u, 27u), uint2(35u, 28u), uint2(35u, 29u), uint2(33u, 33u), uint2(36u, 28u), uint2(36u, 29u), uint2(36u, 30u), uint2(35u, 32u), uint2(37u, 29u), uint2(37u, 30u), uint2(37u, 31u), uint2(36u, 33u), uint2(38u, 30u), uint2(38u, 31u), uint2(41u, 26u), uint2(38u, 32u), uint2(39u, 31u), uint2(39u, 32u), uint2(42u, 27u), uint2(39u, 33u), uint2(40u, 32u), uint2(40u, 33u), uint2(43u, 28u), uint2(40u, 34u), uint2(41u, 33u), uint2(41u, 34u), uint2(44u, 29u), uint2(41u, 35u), uint2(42u, 34u), uint2(42u, 35u), uint2(45u, 30u), uint2(42u, 36u), uint2(43u, 35u), uint2(43u, 36u), uint2(46u, 31u), uint2(43u, 37u), uint2(44u, 36u), uint2(44u, 37u), uint2(44u, 37u), uint2(44u, 38u), uint2(45u, 37u), uint2(45u, 38u), uint2(40u, 48u), uint2(45u, 39u), uint2(46u, 38u), uint2(46u, 39u), uint2(41u, 49u), uint2(46u, 40u), uint2(47u, 39u), uint2(47u, 40u), uint2(43u, 48u), uint2(47u, 41u), uint2(47u, 42u), uint2(48u, 40u), uint2(48u, 41u), uint2(48u, 42u), uint2(47u, 45u), uint2(49u, 41u), uint2(49u, 42u), uint2(49u, 43u), uint2(47u, 48u), uint2(50u, 42u), uint2(50u, 43u), uint2(50u, 44u), uint2(48u, 48u), uint2(51u, 43u), uint2(51u, 44u), uint2(51u, 45u), uint2(49u, 49u), uint2(52u, 44u), uint2(52u, 45u), uint2(52u, 46u), uint2(51u, 48u), uint2(53u, 45u), uint2(53u, 46u), uint2(53u, 47u), uint2(52u, 49u), uint2(54u, 46u), uint2(54u, 47u), uint2(57u, 42u), uint2(54u, 48u), uint2(55u, 47u), uint2(55u, 48u), uint2(58u, 43u), uint2(55u, 49u), uint2(56u, 48u), uint2(56u, 49u), uint2(59u, 44u), uint2(56u, 50u), uint2(57u, 49u), uint2(57u, 50u), uint2(60u, 45u), uint2(57u, 51u), uint2(58u, 50u), uint2(58u, 51u), uint2(61u, 46u), uint2(58u, 52u), uint2(59u, 51u), uint2(59u, 52u), uint2(62u, 47u), uint2(59u, 53u), uint2(60u, 52u), uint2(60u, 53u), uint2(60u, 53u), uint2(60u, 54u), uint2(61u, 53u), uint2(61u, 54u), uint2(61u, 54u), uint2(61u, 55u), uint2(62u, 54u), uint2(62u, 55u), uint2(62u, 55u), uint2(62u, 56u), uint2(63u, 55u), uint2(63u, 56u), uint2(63u, 56u), uint2(63u, 57u), uint2(63u, 58u), uint2(63u, 59u), uint2(63u, 59u), uint2(63u, 60u), uint2(63u, 61u), uint2(63u, 62u), uint2(63u, 62u), uint2(63u, 63u) };\n+\tstatic const uint _1528[32] = { 0u, 8u, 16u, 24u, 33u, 41u, 49u, 57u, 66u, 74u, 82u, 90u, 99u, 107u, 115u, 123u, 132u, 140u, 148u, 156u, 165u, 173u, 181u, 189u, 198u, 206u, 214u, 222u, 231u, 239u, 247u, 255u };\n+\tstatic const uint _1376[64] = { 0u, 4u, 8u, 12u, 16u, 20u, 24u, 28u, 32u, 36u, 40u, 44u, 48u, 52u, 56u, 60u, 65u, 69u, 73u, 77u, 81u, 85u, 89u, 93u, 97u, 101u, 105u, 109u, 113u, 117u, 121u, 125u, 130u, 134u, 138u, 142u, 146u, 150u, 154u, 158u, 162u, 166u, 170u, 174u, 178u, 182u, 186u, 190u, 195u, 199u, 203u, 207u, 211u, 215u, 219u, 223u, 227u, 231u, 235u, 239u, 243u, 247u, 251u, 255u };\n+\tstatic const int _632[4] = { 3, 0, 2, 1 };\n+\tstatic const int _1520[4] = { 589824, 2304, 262402, 66562 };\n+\tstatic const float _1958[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1.0f };\n+\tstatic const float _1872[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1.0f };\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n \t    uint _Globals_1_g_nMipLevel : packoffset(c0);\n \t};\n \t\n-\tRWTexture2D<uint4> _5094 : register(u158, space0);\n \tTexture2D<float4> g_tSrc : register(t30, space0);\n+\tRWTexture2D<uint4> _5094 : register(u158, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstruct SPIRV_Cross_Input\n@@ -60,9 +60,9 @@ CS\n \t};\n \t\n \tgroupshared uint _3620[64];\n+\tgroupshared uint _4273;\n \tgroupshared uint _3314;\n \tgroupshared uint _5908;\n-\tgroupshared uint _4273;\n \tgroupshared uint _3832[16];\n \t\n \tvoid MainCs_inner()\n@@ -126,8 +126,8 @@ CS\n \t        int _8279 = int(_3620[1]);\n \t        int _8816 = int(_3620[2]);\n \t        _4273 = 2863311530u;\n-\t        _3314 = ((_2967[_8278].x << uint(11)) | (_929[_8279].x << uint(5))) | _2967[_8816].x;\n-\t        _5908 = ((_2967[_8278].y << uint(11)) | (_929[_8279].y << uint(5))) | _2967[_8816].y;\n+\t        _3314 = ((_720[_8278].x << uint(11)) | (_1694[_8279].x << uint(5))) | _720[_8816].x;\n+\t        _5908 = ((_720[_8278].y << uint(11)) | (_1694[_8279].y << uint(5))) | _720[_8816].y;\n \t    }\n \t    else\n \t    {\n@@ -350,29 +350,27 @@ CS\n \t        _5908 = uint(((((_17008 + (_17008 >> 8)) >> 8) << 11) + (((_23420 + (_23420 >> 8)) >> 8) << 5)) + ((_13777 + (_13777 >> 8)) >> 8));\n \t        if (_3314 != _5908)\n \t        {\n-\t            _3832[0] = _2487[int((_3314 & 63488u) >> uint(11))];\n-\t            _3832[1] = _1397[int((_3314 & 2016u) >> uint(5))];\n-\t            _3832[2] = _2487[int((_3314 & 31u))];\n+\t            int _13778 = int((_3314 & 63488u) >> uint(11));\n+\t            _3832[0] = _1528[_13778];\n+\t            _3832[1] = _1376[int((_3314 & 2016u) >> uint(5))];\n+\t            _3832[2] = _1528[int(_3314 & 31u)];\n \t            _3832[3] = 0u;\n-\t            _3832[4] = _2487[int((_5908 & 63488u) >> uint(11))];\n-\t            _3832[5] = _1397[int((_5908 & 2016u) >> uint(5))];\n-\t            _3832[6] = _2487[int((_5908 & 31u))];\n+\t            int _13779 = int((_5908 & 63488u) >> uint(11));\n+\t            _3832[4] = _1528[_13779];\n+\t            _3832[5] = _1376[int((_5908 & 2016u) >> uint(5))];\n+\t            _3832[6] = _1528[int(_5908 & 31u)];\n \t            _3832[7] = 0u;\n-\t            uint _11312 = _3832[0];\n-\t            uint _19082 = _3832[4];\n-\t            uint _11245 = uint(int(((2u * _11312) + _19082) / 3u));\n-\t            _3832[8] = _11245;\n-\t            _3832[9] = _11245;\n-\t            _3832[10] = _11245;\n-\t            uint _11313 = _3832[4];\n-\t            uint _19083 = _3832[0];\n-\t            uint _11246 = uint(int(((2u * _11313) + _19083) / 3u));\n-\t            _3832[12] = _11246;\n-\t            _3832[13] = _11246;\n-\t            _3832[14] = _11246;\n-\t            int _25205 = int(_3832[0] - _3832[4]);\n-\t            int _25206 = int(_3832[1] - _3832[5]);\n-\t            int _15305 = int(_3832[2] - _3832[6]);\n+\t            uint _15604 = ((2u * _1528[_13778]) + _1528[_13779]) / 3u;\n+\t            _3832[8] = _15604;\n+\t            _3832[9] = _15604;\n+\t            _3832[10] = _15604;\n+\t            uint _15605 = ((2u * _1528[_13779]) + _1528[_13778]) / 3u;\n+\t            _3832[12] = _15605;\n+\t            _3832[13] = _15605;\n+\t            _3832[14] = _15605;\n+\t            uint _13799 = _3832[0] - _3832[4];\n+\t            uint _13800 = _3832[1] - _3832[5];\n+\t            uint _22970 = _3832[2] - _3832[6];\n \t            int _9805;\n \t            int _16425[16];\n \t            int _13044 = 0;\n@@ -383,7 +381,7 @@ CS\n \t                    break;\n \t                }\n \t                int _20629 = _13044 * 4;\n-\t                _16425[_13044] = int(((_3620[_20629] * uint(_25205)) + (_3620[_20629 + 1] * uint(_25206))) + (_3620[_20629 + 2] * uint(_15305)));\n+\t                _16425[_13044] = int(((_3620[_20629] * _13799) + (_3620[_20629 + 1] * _13800)) + (_3620[_20629 + 2] * _22970));\n \t                _9805 = _13044 + 1;\n \t                _13044 = _9805;\n \t                continue;\n@@ -398,7 +396,7 @@ CS\n \t                    break;\n \t                }\n \t                int _20630 = _13045 * 4;\n-\t                _16426[_13045] = int(((_3832[_20630] * uint(_25205)) + (_3832[_20630 + 1] * uint(_25206))) + (_3832[_20630 + 2] * uint(_15305)));\n+\t                _16426[_13045] = int(((_3832[_20630] * _13799) + (_3832[_20630 + 1] * _13800)) + (_3832[_20630 + 2] * _22970));\n \t                _9806 = _13045 + 1;\n \t                _13045 = _9806;\n \t                continue;\n@@ -486,8 +484,8 @@ CS\n \t                int _14959 = _17137 >> 4;\n \t                int _25216 = _16309 >> 4;\n \t                int _21980 = _13141 >> 4;\n-\t                _9659 = ((_2967[_14959].x << uint(11)) | (_929[_25216].x << uint(5))) | _2967[_21980].x;\n-\t                _6345 = ((_2967[_14959].y << uint(11)) | (_929[_25216].y << uint(5))) | _2967[_21980].y;\n+\t                _9659 = ((_720[_14959].x << uint(11)) | (_1694[_25216].x << uint(5))) | _720[_21980].x;\n+\t                _6345 = ((_720[_14959].y << uint(11)) | (_1694[_25216].y << uint(5))) | _720[_21980].y;\n \t            }\n \t            else\n \t            {\n@@ -527,10 +525,10 @@ CS\n \t                    int _16530 = int(_3620[_19018]);\n \t                    int _16531 = int(_3620[_19018 + 1]);\n \t                    int _8873 = int(_3620[_19018 + 2]);\n-\t                    _22401 = _16308 + _1536[_12260];\n-\t                    _24675 = _17119 + (_652[_12260] * _16530);\n-\t                    _24676 = _17117 + (_652[_12260] * _16531);\n-\t                    _6296 = _17115 + (_652[_12260] * _8873);\n+\t                    _22401 = _16308 + _1520[_12260];\n+\t                    _24675 = _17119 + (_632[_12260] * _16530);\n+\t                    _24676 = _17117 + (_632[_12260] * _16531);\n+\t                    _6296 = _17115 + (_632[_12260] * _8873);\n \t                    _16975 = _17136 + _16530;\n \t                    _13749 = _17118 + _16531;\n \t                    _15003 = _17116 + _8873;\n@@ -620,47 +618,45 @@ CS\n \t                    _10862 = (_16107 > 1.0f) ? 1.0f : _16107;\n \t                }\n \t                uint _20406 = uint(_10862 * 31.0f);\n-\t                _9659 = (((_20401 + uint(_10857 > _1549[_20401])) << uint(11)) | ((_20402 + uint(_10858 > _1902[_20402])) << uint(5))) | (_20403 + uint(_10859 > _1549[_20403]));\n-\t                _6345 = (((_20404 + uint(_10860 > _1549[_20404])) << uint(11)) | ((_20405 + uint(_10861 > _1902[_20405])) << uint(5))) | (_20406 + uint(_10862 > _1549[_20406]));\n+\t                _9659 = (((_20401 + uint(_10857 > _1958[_20401])) << uint(11)) | ((_20402 + uint(_10858 > _1872[_20402])) << uint(5))) | (_20403 + uint(_10859 > _1958[_20403]));\n+\t                _6345 = (((_20404 + uint(_10860 > _1958[_20404])) << uint(11)) | ((_20405 + uint(_10861 > _1872[_20405])) << uint(5))) | (_20406 + uint(_10862 > _1958[_20406]));\n \t            }\n \t            _5908 = _6345;\n \t            _3314 = _9659;\n-\t            bool _24878;\n+\t            bool _12885;\n \t            if (_16009 != _6345)\n \t            {\n-\t                _24878 = true;\n+\t                _12885 = true;\n \t            }\n \t            else\n \t            {\n-\t                _24878 = _11762 != _9659;\n+\t                _12885 = _11762 != _9659;\n \t            }\n-\t            if (int(_24878) != 0)\n+\t            if (_12885)\n \t            {\n \t                if (_3314 != _5908)\n \t                {\n-\t                    _3832[0] = _2487[int((_3314 & 63488u) >> uint(11))];\n-\t                    _3832[1] = _1397[int((_3314 & 2016u) >> uint(5))];\n-\t                    _3832[2] = _2487[int((_3314 & 31u))];\n+\t                    int _13780 = int((_3314 & 63488u) >> uint(11));\n+\t                    _3832[0] = _1528[_13780];\n+\t                    _3832[1] = _1376[int((_3314 & 2016u) >> uint(5))];\n+\t                    _3832[2] = _1528[int(_3314 & 31u)];\n \t                    _3832[3] = 0u;\n-\t                    _3832[4] = _2487[int((_5908 & 63488u) >> uint(11))];\n-\t                    _3832[5] = _1397[int((_5908 & 2016u) >> uint(5))];\n-\t                    _3832[6] = _2487[int((_5908 & 31u))];\n+\t                    int _13781 = int((_5908 & 63488u) >> uint(11));\n+\t                    _3832[4] = _1528[_13781];\n+\t                    _3832[5] = _1376[int((_5908 & 2016u) >> uint(5))];\n+\t                    _3832[6] = _1528[int(_5908 & 31u)];\n \t                    _3832[7] = 0u;\n-\t                    uint _11314 = _3832[0];\n-\t                    uint _19084 = _3832[4];\n-\t                    uint _11247 = uint(int(((2u * _11314) + _19084) / 3u));\n-\t                    _3832[8] = _11247;\n-\t                    _3832[9] = _11247;\n-\t                    _3832[10] = _11247;\n-\t                    uint _11315 = _3832[4];\n-\t                    uint _19085 = _3832[0];\n-\t                    uint _11248 = uint(int(((2u * _11315) + _19085) / 3u));\n-\t                    _3832[12] = _11248;\n-\t                    _3832[13] = _11248;\n-\t                    _3832[14] = _11248;\n-\t                    int _25207 = int(_3832[0] - _3832[4]);\n-\t                    int _25208 = int(_3832[1] - _3832[5]);\n-\t                    int _15306 = int(_3832[2] - _3832[6]);\n+\t                    uint _15606 = ((2u * _1528[_13780]) + _1528[_13781]) / 3u;\n+\t                    _3832[8] = _15606;\n+\t                    _3832[9] = _15606;\n+\t                    _3832[10] = _15606;\n+\t                    uint _15607 = ((2u * _1528[_13781]) + _1528[_13780]) / 3u;\n+\t                    _3832[12] = _15607;\n+\t                    _3832[13] = _15607;\n+\t                    _3832[14] = _15607;\n+\t                    uint _13801 = _3832[0] - _3832[4];\n+\t                    uint _13802 = _3832[1] - _3832[5];\n+\t                    uint _22971 = _3832[2] - _3832[6];\n \t                    int _9807;\n \t                    int _13047 = 0;\n \t                    for (;;)\n@@ -670,7 +666,7 @@ CS\n \t                            break;\n \t                        }\n \t                        int _20631 = _13047 * 4;\n-\t                        _20506[_13047] = int(((_3620[_20631] * uint(_25207)) + (_3620[_20631 + 1] * uint(_25208))) + (_3620[_20631 + 2] * uint(_15306)));\n+\t                        _20506[_13047] = int(((_3620[_20631] * _13801) + (_3620[_20631 + 1] * _13802)) + (_3620[_20631 + 2] * _22971));\n \t                        _9807 = _13047 + 1;\n \t                        _13047 = _9807;\n \t                        continue;\n@@ -684,7 +680,7 @@ CS\n \t                            break;\n \t                        }\n \t                        int _20632 = _13048 * 4;\n-\t                        _23854[_13048] = int(((_3832[_20632] * uint(_25207)) + (_3832[_20632 + 1] * uint(_25208))) + (_3832[_20632 + 2] * uint(_15306)));\n+\t                        _23854[_13048] = int(((_3832[_20632] * _13801) + (_3832[_20632 + 1] * _13802)) + (_3832[_20632 + 2] * _22971));\n \t                        _9808 = _13048 + 1;\n \t                        _13048 = _9808;\n \t                        continue;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_mipgen.slang",
          "status": "modified",
          "additions": 19,
          "deletions": 19,
          "changes": 38,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -41,11 +41,11 @@ CS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (5172 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer MipConstantBuffer_t : register(b0, space0)\n \t{\n-\t    float _Globals_1_m0 : packoffset(c0);\n-\t    float _Globals_1_m1 : packoffset(c0.y);\n-\t    float2 _Globals_1_m2 : packoffset(c0.z);\n+\t    float MipConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float MipConstantBuffer_t_1_m1 : packoffset(c0.y);\n+\t    float2 MipConstantBuffer_t_1_m2 : packoffset(c0.z);\n \t};\n \t\n \tTexture2D<float4> g_tSrcMip : register(t30, space0);\n@@ -72,8 +72,8 @@ CS\n \t{\n \t    do\n \t    {\n-\t        uint _3962 = uint(_Globals_1_m1);\n-\t        float4 _3401 = g_tSrcMip.SampleLevel(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, (_Globals_1_m2 * (float2(gl_GlobalInvocationID.xy) + 0.5f.xx)).xy, float(uint(_Globals_1_m0)));\n+\t        uint _3962 = uint(MipConstantBuffer_t_1_m1);\n+\t        float4 _3401 = g_tSrcMip.SampleLevel(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, (MipConstantBuffer_t_1_m2 * (float2(gl_GlobalInvocationID.xy) + 0.5f.xx)).xy, float(uint(MipConstantBuffer_t_1_m0)));\n \t        _3764[gl_GlobalInvocationID.xy] = _3401;\n \t        if (_3962 == 1u)\n \t        {\n@@ -87,11 +87,11 @@ CS\n \t        float4 _7078;\n \t        if ((gl_LocalInvocationIndex & 9u) == 0u)\n \t        {\n-\t            uint _14126 = gl_LocalInvocationIndex + 1u;\n-\t            float _17363 = _4128[_14126];\n-\t            float _24369 = _4117[_14126];\n-\t            float _24370 = _4112[_14126];\n-\t            float _23047 = _4111[_14126];\n+\t            uint _11704 = gl_LocalInvocationIndex + 1u;\n+\t            float _17363 = _4128[_11704];\n+\t            float _24369 = _4117[_11704];\n+\t            float _24370 = _4112[_11704];\n+\t            float _23047 = _4111[_11704];\n \t            uint _18005 = gl_LocalInvocationIndex + 8u;\n \t            float _17364 = _4128[_18005];\n \t            float _24371 = _4117[_18005];\n@@ -122,11 +122,11 @@ CS\n \t        float4 _7079;\n \t        if ((gl_LocalInvocationIndex & 27u) == 0u)\n \t        {\n-\t            uint _11704 = gl_LocalInvocationIndex + 2u;\n-\t            float _17366 = _4128[_11704];\n-\t            float _24375 = _4117[_11704];\n-\t            float _24376 = _4112[_11704];\n-\t            float _23049 = _4111[_11704];\n+\t            uint _11705 = gl_LocalInvocationIndex + 2u;\n+\t            float _17366 = _4128[_11705];\n+\t            float _24375 = _4117[_11705];\n+\t            float _24376 = _4112[_11705];\n+\t            float _23049 = _4111[_11705];\n \t            uint _18007 = gl_LocalInvocationIndex + 16u;\n \t            float _17367 = _4128[_18007];\n \t            float _24377 = _4117[_18007];\n@@ -156,10 +156,10 @@ CS\n \t        GroupMemoryBarrierWithGroupSync();\n \t        if (gl_LocalInvocationIndex == 0u)\n \t        {\n-\t            uint _11705 = gl_LocalInvocationIndex + 4u;\n+\t            uint _11706 = gl_LocalInvocationIndex + 4u;\n \t            uint _18009 = gl_LocalInvocationIndex + 32u;\n \t            uint _18010 = gl_LocalInvocationIndex + 36u;\n-\t            _3767[gl_GlobalInvocationID.xy / uint2(8u, 8u)] = (((_7079 + float4(_4128[_11705], _4117[_11705], _4112[_11705], _4111[_11705])) + float4(_4128[_18009], _4117[_18009], _4112[_18009], _4111[_18009])) + float4(_4128[_18010], _4117[_18010], _4112[_18010], _4111[_18010])) * 0.25f;\n+\t            _3767[gl_GlobalInvocationID.xy / uint2(8u, 8u)] = (((_7079 + float4(_4128[_11706], _4117[_11706], _4112[_11706], _4111[_11706])) + float4(_4128[_18009], _4117[_18009], _4112[_18009], _4111[_18009])) + float4(_4128[_18010], _4117[_18010], _4112[_18010], _4111[_18010])) * 0.25f;\n \t        }\n \t        break;\n \t    } while(false);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_parallel_sort.slang",
          "status": "modified",
          "additions": 39,
          "deletions": 19,
          "changes": 58,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -44,7 +44,7 @@ CS\n \tRWStructuredBuffer SrcPayload < Attribute(\"SrcPayload\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3904 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3920 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1059\n \t{\n@@ -56,14 +56,24 @@ CS\n \t    uint _m5;\n \t};\n \t\n+\tstruct _1060\n+\t{\n+\t    uint _m0;\n+\t    int _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t};\n+\t\n \tRWByteAddressBuffer undetermined : register(u158, space0);\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n \t    uint _Globals_1_CShiftBit : packoffset(c0.z);\n \t};\n \t\n-\tRWByteAddressBuffer undetermined_1 : register(u163, space0);\n-\tRWByteAddressBuffer undetermined_2 : register(u159, space0);\n+\tRWByteAddressBuffer undetermined_1 : register(u159, space0);\n+\tRWByteAddressBuffer undetermined_2 : register(u163, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_LocalInvocationID;\n@@ -77,10 +87,20 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    uint _8524 = undetermined.Load(0);\n-\t    int _24369 = int(undetermined.Load(4));\n-\t    uint _24370 = undetermined.Load(8);\n-\t    uint _24371 = undetermined.Load(12);\n+\t    _1060 _22394;\n+\t    _22394._m0 = undetermined.Load(0);\n+\t    _22394._m1 = int(undetermined.Load(4));\n+\t    _22394._m2 = undetermined.Load(8);\n+\t    _22394._m3 = undetermined.Load(12);\n+\t    _22394._m4 = undetermined.Load(16);\n+\t    _22394._m5 = undetermined.Load(20);\n+\t    _1059 _20228;\n+\t    _20228._m0 = _22394._m0;\n+\t    _20228._m1 = _22394._m1;\n+\t    _20228._m2 = _22394._m2;\n+\t    _20228._m3 = _22394._m3;\n+\t    _20228._m4 = _22394._m4;\n+\t    _20228._m5 = _22394._m5;\n \t    int _23262;\n \t    int _13039 = 0;\n \t    for (;;)\n@@ -95,9 +115,9 @@ CS\n \t        continue;\n \t    }\n \t    GroupMemoryBarrierWithGroupSync();\n-\t    uint _11457 = uint(512 * _24369) * gl_WorkGroupID.x;\n-\t    uint _23756 = uint(_24369);\n-\t    uint _21416 = _24370 - _24371;\n+\t    uint _11457 = uint(512 * _20228._m1) * gl_WorkGroupID.x;\n+\t    uint _23756 = uint(_20228._m1);\n+\t    uint _21416 = _20228._m2 - _20228._m3;\n \t    uint _10913;\n \t    uint _17551;\n \t    if (gl_WorkGroupID.x >= _21416)\n@@ -113,7 +133,7 @@ CS\n \t    uint _8896 = _17551 + gl_LocalInvocationID.x;\n \t    uint _14392;\n \t    uint _23448;\n-\t    uint _20578[4];\n+\t    uint _19506[4];\n \t    uint _13155 = _8896;\n \t    uint _16208 = 0u;\n \t    for (;;)\n@@ -122,10 +142,10 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        _20578[0] = undetermined_2.Load(_13155 * 4 + 0);\n-\t        _20578[1] = undetermined_2.Load((_13155 + 128u) * 4 + 0);\n-\t        _20578[2] = undetermined_2.Load((_13155 + 256u) * 4 + 0);\n-\t        _20578[3] = undetermined_2.Load((_13155 + 384u) * 4 + 0);\n+\t        _19506[0] = undetermined_1.Load(_13155 * 4 + 0);\n+\t        _19506[1] = undetermined_1.Load((_13155 + 128u) * 4 + 0);\n+\t        _19506[2] = undetermined_1.Load((_13155 + 256u) * 4 + 0);\n+\t        _19506[3] = undetermined_1.Load((_13155 + 384u) * 4 + 0);\n \t        uint _8087;\n \t        uint _14382;\n \t        uint _13156 = _13155;\n@@ -136,10 +156,10 @@ CS\n \t            {\n \t                break;\n \t            }\n-\t            if (_13156 < _8524)\n+\t            if (_13156 < _20228._m0)\n \t            {\n \t                uint _10058;\n-\t                InterlockedAdd(_5770[(((_20578[_16209] >> _Globals_1_CShiftBit) & 15u) * 128u) + gl_LocalInvocationID.x], 1u, _10058);\n+\t                InterlockedAdd(_5770[(((_19506[_16209] >> _Globals_1_CShiftBit) & 15u) * 128u) + gl_LocalInvocationID.x], 1u, _10058);\n \t                _14382 = _13156 + 128u;\n \t            }\n \t            else\n@@ -177,7 +197,7 @@ CS\n \t            _16210 = _8559;\n \t            continue;\n \t        }\n-\t        undetermined_1.Store(((gl_LocalInvocationID.x * _24370) + gl_WorkGroupID.x) * 4 + 0, _13157);\n+\t        undetermined_2.Store(((gl_LocalInvocationID.x * _20228._m2) + gl_WorkGroupID.x) * 4 + 0, _13157);\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cs_parallel_sort_onesweep.slang",
          "status": "modified",
          "additions": 29,
          "deletions": 17,
          "changes": 46,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -39,7 +39,7 @@ CS\n \tRWStructuredBuffer b_passHist < Attribute(\"PassHistBuffer\"); >;\n \tRWStructuredBuffer b_sort < Attribute(\"SortBuffer\"); >;\n \tRWStructuredBuffer b_sortPayload < Attribute(\"PayloadBuffer\"); >;\n-\tStructuredBuffer g_constantBuffer < Attribute(\"DispatchArgBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_constantBuffer < Attribute(\"DispatchArgBuffer\"); >;\n \tcbuffer g_consts < Source(ExternalDescSet); Attribute(\"g_consts\"); >;\n \tcbuffer g_consts < Source(ExternalDescSet); Attribute(\"g_consts\"); >;\n \tRWStructuredBuffer g_dispatchBuffer < Attribute(\"DispatchArgBuffer\"); >;\n@@ -51,17 +51,23 @@ CS\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1968 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2064 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _990\n \t{\n \t    uint _m0;\n \t    uint _m1;\n \t};\n \t\n-\tstruct _417\n+\tstruct _991\n \t{\n-\t    _990 _m0[4];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t};\n+\t\n+\tstruct _1464\n+\t{\n+\t    _991 _m0[4];\n \t};\n \t\n \tstruct _1002\n@@ -71,21 +77,21 @@ CS\n \t    uint _m2;\n \t};\n \t\n-\tstruct _1281\n+\tstruct _2304\n \t{\n \t    _1002 _m0[4];\n \t};\n \t\n-\tstruct _2601\n+\tstruct _1742\n \t{\n-\t    _417 _m0;\n-\t    _1281 _m1;\n+\t    _1464 _m0;\n+\t    _2304 _m1;\n \t};\n \t\n \tByteAddressBuffer g_constantBuffer : register(t30, space0);\n-\tRWByteAddressBuffer undetermined : register(u162, space0);\n-\tgloballycoherent RWByteAddressBuffer undetermined_1 : register(u164, space0);\n-\tgloballycoherent RWByteAddressBuffer undetermined_2 : register(u163, space0);\n+\tgloballycoherent RWByteAddressBuffer undetermined : register(u163, space0);\n+\tRWByteAddressBuffer undetermined_1 : register(u162, space0);\n+\tgloballycoherent RWByteAddressBuffer undetermined_2 : register(u164, space0);\n \tcbuffer _981_4645\n \t{\n \t    uint _4645_m0 : packoffset(c0);\n@@ -100,27 +106,33 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    uint _19822 = g_constantBuffer.Load(_4645_m0 * 8 + 4) * 1024u;\n+\t    _991 _8162;\n+\t    _8162._m0 = g_constantBuffer.Load(_4645_m0 * 8 + 0);\n+\t    _8162._m1 = g_constantBuffer.Load(_4645_m0 * 8 + 4);\n+\t    _990 _21197;\n+\t    _21197._m0 = _8162._m0;\n+\t    _21197._m1 = _8162._m1;\n+\t    uint _17622 = _21197._m1 * 1024u;\n \t    uint _4283;\n \t    uint _13039 = gl_GlobalInvocationID.x;\n \t    for (;;)\n \t    {\n-\t        if (!(_13039 < _19822))\n+\t        if (!(_13039 < _17622))\n \t        {\n \t            break;\n \t        }\n-\t        undetermined_2.Store(_13039 * 4 + 0, 0u);\n+\t        undetermined.Store(_13039 * 4 + 0, 0u);\n \t        _4283 = _13039 + 65536u;\n \t        _13039 = _4283;\n \t        continue;\n \t    }\n \t    if (gl_GlobalInvocationID.x < 1024u)\n \t    {\n-\t        undetermined.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);\n+\t        undetermined_1.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);\n \t    }\n \t    if (gl_GlobalInvocationID.x < 4u)\n \t    {\n-\t        undetermined_1.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);\n+\t        undetermined_2.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cstest.slang",
          "status": "modified",
          "additions": 25,
          "deletions": 7,
          "changes": 32,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: cs\n }\n@@ -37,8 +37,8 @@ CS\n \tDynamicComboRule( Requires( D_INLINE_RTX_TEST, D_TEST_VARIANT=0 ) );\n \tDynamicComboRule( Requires( D_INLINE_RTX_TEST_VARIANT, D_INLINE_RTX_TEST=1 ) );\n \t\n-\tStructuredBuffer Buffer0 < Attribute(\"Buffer0\"); SrgbRead(false); >;\n-\tStructuredBuffer Buffer1 < Attribute(\"Buffer1\"); SrgbRead(false); >;\n+\tStructuredBuffer Buffer0 < Attribute(\"Buffer0\"); >;\n+\tStructuredBuffer Buffer1 < Attribute(\"Buffer1\"); >;\n \tBuffer Buffer2 < Attribute(\"Buffer2\"); SrgbRead(false); >;\n \tcbuffer Dimensions_t < Attribute(\"Dimensions_t\"); >;\n \tRWTexture2D<float4> OutputTexture < Attribute(\"OutputUAV\"); >;\n@@ -56,9 +56,15 @@ CS\n \t    float4 _m1;\n \t};\n \t\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tstruct _1081\n \t{\n-\t    uint _Globals_1_m0 : packoffset(c0);\n+\t    float4 _m0;\n+\t    float4 _m1;\n+\t};\n+\t\n+\tcbuffer Dimensions_t : register(b0, space0)\n+\t{\n+\t    uint Dimensions_t_1_m0 : packoffset(c0);\n \t};\n \t\n \tByteAddressBuffer Buffer0 : register(t30, space0);\n@@ -74,8 +80,20 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    uint _7595 = (gl_GlobalInvocationID.y * _Globals_1_m0) + gl_GlobalInvocationID.x;\n-\t    _3407[gl_GlobalInvocationID.xy] = ((asfloat(Buffer0.Load4(_7595 * 32 + 0)) + asfloat(Buffer0.Load4(_7595 * 32 + 16))) + (asfloat(Buffer1.Load4(_7595 * 32 + 0)) + asfloat(Buffer1.Load4(_7595 * 32 + 16)))) + undetermined_unexpectedTypeId410_1047.Load(int(_7595));\n+\t    uint _7519 = (gl_GlobalInvocationID.y * Dimensions_t_1_m0) + gl_GlobalInvocationID.x;\n+\t    _1081 _17001;\n+\t    _17001._m0 = asfloat(Buffer0.Load4(_7519 * 32 + 0));\n+\t    _17001._m1 = asfloat(Buffer0.Load4(_7519 * 32 + 16));\n+\t    _1080 _20228;\n+\t    _20228._m0 = _17001._m0;\n+\t    _20228._m1 = _17001._m1;\n+\t    _1081 _14579;\n+\t    _14579._m0 = asfloat(Buffer1.Load4(_7519 * 32 + 0));\n+\t    _14579._m1 = asfloat(Buffer1.Load4(_7519 * 32 + 16));\n+\t    _1080 _20229;\n+\t    _20229._m0 = _14579._m0;\n+\t    _20229._m1 = _14579._m1;\n+\t    _3407[gl_GlobalInvocationID.xy] = ((_20228._m0 + _20228._m1) + (_20229._m0 + _20229._m1)) + undetermined_unexpectedTypeId410_1047.Load(int(_7519));\n \t}\n \t\n \t[numthreads(32, 32, 1)]"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cull_aggregate_fragments.slang",
          "status": "modified",
          "additions": 138,
          "deletions": 78,
          "changes": 216,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -30,45 +30,42 @@ CS\n {\n \tStaticCombo( S_SUBGROUP_WAVE_OPS, 0..1 );\n \tStaticCombo( S_REVERSE_DEPTH_BUFFER, 0..1 );\n-\tStaticCombo( S_SUPPORTS_DX_11_1, 0, Sys( 13 ) );\n-\tDynamicCombo( D_PASS, 0..3 );\n+\tStaticCombo( S_SUPPORTS_DX_11_1, 0, Sys( 11 ) );\n+\tDynamicCombo( D_PASS, 0..2 );\n \tDynamicCombo( D_OCCLUSION_CULLING, 0..1 );\n \tDynamicCombo( D_VOLUME_CULLER, 0..1 );\n-\tDynamicCombo( D_VIS_CULLING, 0..1 );\n \tDynamicCombo( D_SUPPORTS_MESH_SHADER, 0..1 );\n \tDynamicCombo( D_DEBUG_OUTPUT_STATS, 0..1 );\n \tDynamicCombo( D_DEBUG_DRAW_MESHLETS, 0..1 );\n+\tDynamicComboRule( Requires( D_SUPPORTS_MESH_SHADER, S_SUBGROUP_WAVE_OPS ) );\n \t\n \tcbuffer GpuVolumeCullerPlanes_t < Attribute(\"GpuVolumeCullerPlanes_t\"); >;\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_CullRequests < Attribute(\"CullRequests\"); SrgbRead(false); >;\n \tRWStructuredBuffer g_CullStats < Attribute(\"FragmentStats\"); >;\n \tRWBuffer<float4> g_DebugMeshletDrawArgs < Attribute(\"DebugMeshletDrawArgs\"); >;\n \tRWBuffer<float4> g_DrawArgs < Attribute(\"FragmentDrawArgs\"); >;\n-\tStructuredBuffer g_FragmentData < Attribute(\"FragmentBounds\"); SrgbRead(false); >;\n-\tByteAddressBuffer g_InputIndices < Attribute(\"InputIndices\"); SrgbRead(false); >;\n+\tStructuredBuffer g_FragmentCullRequests < Attribute(\"FragmentCullRequests\"); >;\n+\tStructuredBuffer g_FragmentData < Attribute(\"FragmentBounds\"); >;\n+\tByteAddressBuffer g_InputIndices < Attribute(\"InputIndices\"); >;\n \tRWStructuredBuffer g_MSIndirectDispatchArgs < Attribute(\"MSIndirectDispatchArgs\"); >;\n \tRWStructuredBuffer g_MSIndirectDispatchArgsRecull < Attribute(\"MSIndirectDispatchArgsRecull\"); >;\n-\tStructuredBuffer g_MeshletData < Attribute(\"MeshletData\"); SrgbRead(false); >;\n+\tByteAddressBuffer g_MeshletData < Attribute(\"MeshletData\"); >;\n \tRWByteAddressBuffer g_OutputIndices < Attribute(\"OutputIndices\"); >;\n \tRWStructuredBuffer g_RWMeshletBuffer < Source(ExternalDescSet); >;\n \tRWBuffer<float4> g_RecullDispatchArgs < Attribute(\"RecullDispatchArgs\"); >;\n \tRWBuffer<float4> g_RecullDrawArgs < Attribute(\"FragmentRecullDrawArgs\"); >;\n-\tBuffer g_RecullRequestCount < Attribute(\"RecullRequestCount\"); SrgbRead(false); >;\n-\tRWBuffer<float4> g_RecullRequestCount < Attribute(\"RecullRequestCount\"); >;\n+\tStructuredBuffer g_RecullRequests < Attribute(\"RecullRequests\"); >;\n \tRWStructuredBuffer g_RecullRequests < Attribute(\"RecullRequests\"); >;\n-\tBuffer g_VisBits < Attribute(\"VisBits\"); SrgbRead(false); >;\n \tbool g_bBackfaceCulling < Attribute(\"BackfaceCulling\"); UiType(CheckBox); >;\n \tbool g_bDrawAllMeshlets < Attribute(\"DebugDrawAllMeshlets\"); UiType(CheckBox); >;\n \tbool g_bOrthographicView < Attribute(\"OrthographicView\"); UiType(CheckBox); >;\n \tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n \tfloat4x4 g_mDepthPyramidProjFromWorld < Attribute(\"DepthPyramidProjFromWorld\"); >;\n-\tint g_nCullRequests < Attribute(\"NumCullRequests\"); UiType(Slider); >;\n \tint g_nDepthPyramidHeight < Attribute(\"DepthPyramidHeight\"); UiType(Slider); >;\n \tint g_nDepthPyramidMaxMip < Attribute(\"DepthPyramidMaxMip\"); UiType(Slider); >;\n \tint g_nDepthPyramidWidth < Attribute(\"DepthPyramidWidth\"); UiType(Slider); >;\n-\tint g_nNumAggregates < Attribute(\"NumAggregates\"); UiType(Slider); >;\n-\tint g_nNumFragments < Attribute(\"NumFragments\"); UiType(Slider); >;\n+\tint g_nFragmentCullRequests < Attribute(\"NumFragmentRequests\"); UiType(Slider); >;\n+\tint g_nMeshletCullRequests < Attribute(\"NumMeshletCullRequests\"); UiType(Slider); >;\n \tTexture2D g_tDepthPyramid < Attribute(\"DepthPyramid\"); SrgbRead(false); >;\n \tfloat3 g_vCullCameraForwardWs < Attribute(\"CullCameraForwardWs\"); UiType(VectorText); >;\n \tfloat3 g_vCullCameraPositionWs < Attribute(\"CullCameraPositionWs\"); UiType(VectorText); >;\n@@ -82,17 +79,17 @@ CS\n \tfloat4 g_vFrustumPlane5 < Attribute(\"FrustumPlane5\"); UiType(VectorText); >;\n \t\n \t#if (S_SUPPORTS_DX_11_1 == 0)\n-\t\tBuffer g_RecullRequestCount < Attribute(\"RecullRequestCount\"); SrgbRead(false); >;\n-\t\tRWBuffer<float4> g_RecullRequestCount < Attribute(\"RecullRequestCount\"); >;\n+\t\tStructuredBuffer g_RecullRequests < Attribute(\"RecullRequests\"); >;\n+\t\tRWStructuredBuffer g_RecullRequests < Attribute(\"RecullRequests\"); >;\n \t#endif\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vCullCameraPositionWs) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (8960 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (9864 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_EXT_control_flow_attributes)\n@@ -109,15 +106,27 @@ CS\n \t#endif\n \tlayout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in;\n \t\n-\tstruct _1017\n+\tstruct _1107\n \t{\n \t    uint _m0;\n \t    uint _m1;\n \t    uint _m2;\n \t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    uint _m7;\n \t};\n \t\n-\tstruct _1107\n+\tstruct _1098\n+\t{\n+\t    vec3 _m0;\n+\t    int _m1;\n+\t    vec3 _m2;\n+\t    uint _m3;\n+\t};\n+\t\n+\tstruct _1108\n \t{\n \t    uint _m0;\n \t    uint _m1;\n@@ -129,15 +138,15 @@ CS\n \t    uint _m7;\n \t};\n \t\n-\tstruct _1095\n+\tstruct _1099\n \t{\n \t    vec3 _m0;\n-\t    uint _m1;\n+\t    int _m1;\n \t    vec3 _m2;\n \t    uint _m3;\n \t};\n \t\n-\tstruct _1996\n+\tstruct _2037\n \t{\n \t    vec3 g_vCullCameraForwardWs;\n \t    vec3 g_vCullCameraPositionWs;\n@@ -147,34 +156,35 @@ CS\n \t    vec4 g_vFrustumPlane3;\n \t    vec4 g_vFrustumPlane4;\n \t    vec4 g_vFrustumPlane5;\n-\t    uint g_nCullRequests;\n+\t    uint g_nFragmentCullRequests;\n+\t    uint g_nMeshletCullRequests;\n \t    int g_bBackfaceCulling;\n \t    int g_bOrthographicView;\n \t};\n \t\n-\tlayout(set = 0) uniform _1996 _Globals_;\n+\tlayout(set = 0) uniform _2037 _Globals_;\n \t\n-\tlayout(set = 0, binding = 35, std430) readonly buffer g_CullRequests\n+\tlayout(set = 0, binding = 33, std430) readonly buffer g_FragmentCullRequests\n \t{\n-\t    _1017 _m0[];\n-\t} g_CullRequests_1;\n+\t    _1108 _m0[];\n+\t} g_FragmentCullRequests_1;\n \t\n-\tlayout(set = 0, binding = 34, std430) readonly buffer g_MeshletData\n+\tlayout(set = 0, binding = 32, std430) readonly buffer g_MeshletData\n \t{\n-\t    _1107 _m0[];\n+\t    uint _m0[];\n \t} g_MeshletData_1;\n \t\n-\tlayout(set = 0, binding = 33, std430) readonly buffer g_FragmentData\n+\tlayout(set = 0, binding = 31, std430) readonly buffer g_FragmentData\n \t{\n-\t    _1095 _m0[];\n+\t    _1099 _m0[];\n \t} g_FragmentData_1;\n \t\n-\tlayout(set = 0, binding = 36, std430) readonly buffer g_InputIndices\n+\tlayout(set = 0, binding = 34, std430) readonly buffer g_InputIndices\n \t{\n \t    uint _m0[];\n \t} g_InputIndices_1;\n \t\n-\tlayout(set = 0, binding = 165, std430) buffer undetermined\n+\tlayout(set = 0, binding = 164, std430) buffer undetermined\n \t{\n \t    uint _m0[];\n \t} undetermined_1;\n@@ -183,76 +193,126 @@ CS\n \t\n \tvoid main()\n \t{\n-\t    if (gl_GlobalInvocationID.x < _Globals_.g_nCullRequests)\n+\t    if (gl_GlobalInvocationID.x < _Globals_.g_nMeshletCullRequests)\n \t    {\n-\t        uint _8600 = g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m0;\n-\t        uint _23745 = g_MeshletData_1._m0[_8600]._m0;\n-\t        uint _4523 = (_23745 >> uint(7)) & 127u;\n-\t        uint _5882 = _4523 + (_4523 & 1u);\n-\t        uint _13328 = g_MeshletData_1._m0[_8600]._m7;\n-\t        uint _5395 = _13328 & 16777215u;\n-\t        vec3 _10538 = mix(g_FragmentData_1._m0[_5395]._m0.xyz, g_FragmentData_1._m0[_5395]._m2.xyz, vec3(float((g_MeshletData_1._m0[_8600]._m4) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m4 >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m4 >> uint(20)) & 1023u) * 0.000977517105638980865478515625));\n-\t        vec3 _23228 = mix(g_FragmentData_1._m0[_5395]._m0.xyz, g_FragmentData_1._m0[_5395]._m2.xyz, vec3(float((g_MeshletData_1._m0[_8600]._m5) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m5 >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m5 >> uint(20)) & 1023u) * 0.000977517105638980865478515625));\n-\t        uint _24909 = g_MeshletData_1._m0[_8600]._m1;\n-\t        uint _13546 = g_FragmentData_1._m0[_5395]._m1;\n-\t        uint _17363 = g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m2;\n+\t        uint _16208;\n+\t        _16208 = 0u;\n+\t        uint _18463;\n+\t        uint _19349;\n+\t        uint _13155 = _Globals_.g_nFragmentCullRequests;\n+\t        for (;;)\n+\t        {\n+\t            if (!((_16208 + 1u) < _13155))\n+\t            {\n+\t                break;\n+\t            }\n+\t            uint _3189 = (_16208 + _13155) >> uint(1);\n+\t            _1107 _22071;\n+\t            _22071._m0 = g_FragmentCullRequests_1._m0[_3189]._m0;\n+\t            _22071._m1 = g_FragmentCullRequests_1._m0[_3189]._m1;\n+\t            _22071._m2 = g_FragmentCullRequests_1._m0[_3189]._m2;\n+\t            _22071._m3 = g_FragmentCullRequests_1._m0[_3189]._m3;\n+\t            _22071._m4 = g_FragmentCullRequests_1._m0[_3189]._m4;\n+\t            _22071._m5 = g_FragmentCullRequests_1._m0[_3189]._m5;\n+\t            _22071._m6 = g_FragmentCullRequests_1._m0[_3189]._m6;\n+\t            _22071._m7 = g_FragmentCullRequests_1._m0[_3189]._m7;\n+\t            bool _17766 = _22071._m3 <= gl_GlobalInvocationID.x;\n+\t            _19349 = _17766 ? _13155 : _3189;\n+\t            _18463 = _17766 ? _3189 : _16208;\n+\t            _13155 = _19349;\n+\t            _16208 = _18463;\n+\t            continue;\n+\t        }\n+\t        _1107 _20228;\n+\t        _20228._m0 = g_FragmentCullRequests_1._m0[_16208]._m0;\n+\t        _20228._m1 = g_FragmentCullRequests_1._m0[_16208]._m1;\n+\t        _20228._m2 = g_FragmentCullRequests_1._m0[_16208]._m2;\n+\t        _20228._m3 = g_FragmentCullRequests_1._m0[_16208]._m3;\n+\t        _20228._m4 = g_FragmentCullRequests_1._m0[_16208]._m4;\n+\t        _20228._m5 = g_FragmentCullRequests_1._m0[_16208]._m5;\n+\t        _20228._m6 = g_FragmentCullRequests_1._m0[_16208]._m6;\n+\t        _20228._m7 = g_FragmentCullRequests_1._m0[_16208]._m7;\n+\t        uint _5517 = gl_GlobalInvocationID.x - _20228._m3;\n+\t        if (_5517 == 0u)\n+\t        {\n+\t            uint _8597 = _20228._m2 * 5u;\n+\t            imageStore(_4767, int(_8597 + 1u), uvec4(1u));\n+\t            imageStore(_4767, int(_8597 + 2u), uvec4(_20228._m4));\n+\t            imageStore(_4767, int(_8597 + 3u), uvec4(_20228._m5));\n+\t            imageStore(_4767, int(_8597 + 4u), uvec4(_20228._m6));\n+\t        }\n+\t        uint _17109 = (_20228._m0 + _5517) * 32u;\n+\t        uint _6233 = g_MeshletData_1._m0[_17109 / 4u];\n+\t        uint _6234 = g_MeshletData_1._m0[(_17109 + 4u) / 4u];\n+\t        uint _6752 = (_17109 + 12u) / 4u;\n+\t        uint _6753 = (_17109 + 16u) / 4u;\n+\t        uint _6754 = (_17109 + 20u) / 4u;\n+\t        uint _18023 = _6233 >> uint(7);\n+\t        uint _5882 = (_18023 & 127u) + (_18023 & 1u);\n+\t        _1098 _20229;\n+\t        _20229._m0 = g_FragmentData_1._m0[_20228._m7]._m0;\n+\t        _20229._m1 = g_FragmentData_1._m0[_20228._m7]._m1;\n+\t        _20229._m2 = g_FragmentData_1._m0[_20228._m7]._m2;\n+\t        _20229._m3 = g_FragmentData_1._m0[_20228._m7]._m3;\n+\t        vec3 _11811 = mix(_20229._m0.xyz, _20229._m2.xyz, vec3(float(g_MeshletData_1._m0[_6753] & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6753] >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6753] >> uint(20)) & 1023u) * 0.000977517105638980865478515625));\n+\t        vec3 _12834 = mix(_20229._m0.xyz, _20229._m2.xyz, vec3(float(g_MeshletData_1._m0[_6754] & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6754] >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6754] >> uint(20)) & 1023u) * 0.000977517105638980865478515625));\n \t        vec4 _20578[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);\n-\t        float _13155;\n-\t        _13155 = 100000000.0;\n+\t        float _13156;\n+\t        _13156 = 100000000.0;\n \t        float _6414;\n-\t        int _8899;\n-\t        int _16208 = 0;\n+\t        int _8900;\n+\t        int _16209 = 0;\n \t        for (;;)\n \t        {\n-\t            if (!(_16208 < 6))\n+\t            if (!(_16209 < 6))\n \t            {\n \t                break;\n \t            }\n-\t            _6414 = min(_13155, dot(mix(_10538, _23228, greaterThan(_20578[_16208].xyz, vec3(0.0))), _20578[_16208].xyz) + _20578[_16208].w);\n-\t            _8899 = _16208 + 1;\n-\t            _13155 = _6414;\n-\t            _16208 = _8899;\n+\t            _6414 = min(_13156, dot(mix(_11811, _12834, greaterThan(_20578[_16209].xyz, vec3(0.0))), _20578[_16209].xyz) + _20578[_16209].w);\n+\t            _8900 = _16209 + 1;\n+\t            _13156 = _6414;\n+\t            _16209 = _8900;\n \t            continue;\n \t        }\n-\t        bool _9364 = (_13155 < 0.0) ? false : true;\n+\t        bool _10462 = !(_13156 < 0.0);\n \t        bool _12885;\n \t        if (_Globals_.g_bBackfaceCulling != 0)\n \t        {\n \t            bool _24742;\n \t            do\n \t            {\n-\t                vec3 _10254 = vec3(float(int(((g_MeshletData_1._m0[_8600]._m3) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(8)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(16)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625);\n-\t                float _15712 = float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(24)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625;\n+\t                vec3 _10254 = vec3(float(int((g_MeshletData_1._m0[_6752] & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_6752] >> uint(8)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_6752] >> uint(16)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625);\n+\t                float _15712 = float(int(((g_MeshletData_1._m0[_6752] >> uint(24)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625;\n \t                if (_Globals_.g_bOrthographicView != 0)\n \t                {\n \t                    _24742 = dot(_Globals_.g_vCullCameraForwardWs.xyz, _10254) > _15712;\n \t                    break;\n \t                }\n \t                else\n \t                {\n-\t                    vec3 _16593 = ((_10538 + _23228) * 0.5) - _Globals_.g_vCullCameraPositionWs.xyz;\n-\t                    _24742 = dot(_16593, _10254) > ((_15712 * length(_16593)) + (length(_23228 - _10538) * 0.5));\n+\t                    vec3 _16593 = ((_11811 + _12834) * 0.5) - _Globals_.g_vCullCameraPositionWs.xyz;\n+\t                    _24742 = dot(_16593, _10254) > ((_15712 * length(_16593)) + (length(_12834 - _11811) * 0.5));\n \t                    break;\n \t                }\n \t                break; // unreachable workaround\n \t            } while(false);\n-\t            _12885 = _24742 ? false : _9364;\n+\t            _12885 = _24742 ? false : _10462;\n \t        }\n \t        else\n \t        {\n-\t            _12885 = _9364;\n+\t            _12885 = _10462;\n \t        }\n \t        if (_12885)\n \t        {\n-\t            uint _18763 = imageAtomicAdd(_4767, int(g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m1 * 5u), _5882 * 3u);\n+\t            uint _18763 = imageAtomicAdd(_4767, int(_20228._m2 * 5u), _5882 * 3u);\n \t            uint _14025 = _5882 * 6u;\n \t            uint _16134 = _14025 / 128u;\n \t            uint _10045 = (_14025 % 128u) / 16u;\n \t            uint _11906 = (_14025 % 16u) / 4u;\n \t            uint _13136;\n \t            uint _16324;\n-\t            _13136 = (_18763 + _17363) * 2u;\n-\t            _16324 = (_24909 + _13546) * 2u;\n+\t            _13136 = (_18763 + _20228._m4) * 2u;\n+\t            _16324 = ((_6234 * 3u) + uint(_20229._m1)) * 2u;\n \t            uint _14167;\n \t            uint _16273;\n \t            uint _21149;\n@@ -275,14 +335,14 @@ CS\n \t                    }\n \t                    uint _9984 = _13039 * 16u;\n \t                    uint _23357 = _16324 + _9984;\n-\t                    uint _6234 = g_InputIndices_1._m0[(_23357 + 4u) / 4u];\n-\t                    uint _6235 = g_InputIndices_1._m0[(_23357 + 8u) / 4u];\n-\t                    uint _6236 = g_InputIndices_1._m0[(_23357 + 12u) / 4u];\n-\t                    uint _20861 = _13136 + _9984;\n-\t                    undetermined_1._m0[_20861 / 4u] = g_InputIndices_1._m0[_23357 / 4u];\n-\t                    undetermined_1._m0[(_20861 + 4u) / 4u] = _6234;\n-\t                    undetermined_1._m0[(_20861 + 8u) / 4u] = _6235;\n-\t                    undetermined_1._m0[(_20861 + 12u) / 4u] = _6236;\n+\t                    uint _6238 = g_InputIndices_1._m0[(_23357 + 4u) / 4u];\n+\t                    uint _6239 = g_InputIndices_1._m0[(_23357 + 8u) / 4u];\n+\t                    uint _6240 = g_InputIndices_1._m0[(_23357 + 12u) / 4u];\n+\t                    uint _20865 = _13136 + _9984;\n+\t                    undetermined_1._m0[_20865 / 4u] = g_InputIndices_1._m0[_23357 / 4u];\n+\t                    undetermined_1._m0[(_20865 + 4u) / 4u] = _6238;\n+\t                    undetermined_1._m0[(_20865 + 8u) / 4u] = _6239;\n+\t                    undetermined_1._m0[(_20865 + 12u) / 4u] = _6240;\n \t                    _23262 = _13039 + 1u;\n \t                    _13039 = _23262;\n \t                    continue;\n@@ -310,12 +370,12 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                uint _6238 = g_InputIndices_1._m0[(_13137 + 4u) / 4u];\n-\t                uint _6239 = g_InputIndices_1._m0[(_13137 + 8u) / 4u];\n+\t                uint _6242 = g_InputIndices_1._m0[(_13137 + 4u) / 4u];\n+\t                uint _6243 = g_InputIndices_1._m0[(_13137 + 8u) / 4u];\n \t                uint _22955 = g_InputIndices_1._m0[(_13137 + 12u) / 4u];\n \t                undetermined_1._m0[_16325 / 4u] = g_InputIndices_1._m0[_13137 / 4u];\n-\t                undetermined_1._m0[(_16325 + 4u) / 4u] = _6238;\n-\t                undetermined_1._m0[(_16325 + 8u) / 4u] = _6239;\n+\t                undetermined_1._m0[(_16325 + 4u) / 4u] = _6242;\n+\t                undetermined_1._m0[(_16325 + 8u) / 4u] = _6243;\n \t                undetermined_1._m0[(_16325 + 12u) / 4u] = _22955;\n \t                _22844 = _13137 + 16u;\n \t                _8018 = _16325 + 16u;\n@@ -338,7 +398,7 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                undetermined_1._m0[_13138 / 4u] = g_InputIndices_1._m0[uint(int(_16326)) / 4u];\n+\t                undetermined_1._m0[_13138 / 4u] = g_InputIndices_1._m0[_16326 / 4u];\n \t                _22845 = _16326 + 4u;\n \t                _8019 = _13138 + 4u;\n \t                _14169 = _17019 + 1u;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/cull_instanced_meshes.slang",
          "status": "modified",
          "additions": 96,
          "deletions": 86,
          "changes": 182,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -41,15 +41,15 @@ CS\n \t\n \tcbuffer GpuVolumeCullerPlanes_t < Attribute(\"GpuVolumeCullerPlanes_t\"); >;\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_CullRequests < Attribute(\"CullRequests\"); SrgbRead(false); >;\n+\tStructuredBuffer g_CullRequests < Attribute(\"CullRequests\"); >;\n \tRWStructuredBuffer g_CullStats < Attribute(\"CullStats\"); >;\n-\tByteAddressBuffer g_InstanceData < Attribute(\"InstanceData\"); SrgbRead(false); >;\n+\tByteAddressBuffer g_InstanceData < Attribute(\"InstanceData\"); >;\n \tRWBuffer<float4> g_InstancedDrawArgs < Attribute(\"IndirectDrawBuffer\"); >;\n-\tStructuredBuffer g_MeshData < Attribute(\"MeshData\"); SrgbRead(false); >;\n+\tStructuredBuffer g_MeshData < Attribute(\"MeshData\"); >;\n \tRWStructuredBuffer g_RWInstanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tRWStructuredBuffer g_RWTransformBuffer < Attribute(\"TransformBuffer\"); >;\n \tBuffer g_VisBits < Attribute(\"VisBits\"); SrgbRead(false); >;\n-\tStructuredBuffer g_VisNodes < Attribute(\"VisNodes\"); SrgbRead(false); >;\n+\tStructuredBuffer g_VisNodes < Attribute(\"VisNodes\"); >;\n \tbool g_bCullViewOrthographic < Attribute(\"CullViewIsOrthographic\"); UiType(CheckBox); >;\n \tbool g_bEnableDensityCulling < Attribute(\"g_bEnableDensityCulling\"); UiType(CheckBox); >;\n \tbool g_bEnableFrustumCulling < Attribute(\"g_bEnableFrustumCulling\"); UiType(CheckBox); >;\n@@ -70,7 +70,7 @@ CS\n \tint g_nTreeTraversalSeed < Attribute(\"VisTreeTraversalSeed\"); UiType(Slider); >;\n \tint g_nVisInternalTreeExtent < Attribute(\"VisInternalTreeExtent\"); UiType(Slider); >;\n \tint g_nVisualizeSceneObjectsMode < Attribute(\"VisualizeSceneObjectsMode\"); UiType(Slider); >;\n-\tStructuredBuffer g_prevFrameTransformBuffer < Attribute(\"PrevFrameTransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_prevFrameTransformBuffer < Attribute(\"PrevFrameTransformBuffer\"); >;\n \tTexture2D g_tDepthPyramid < Attribute(\"DepthPyramid\"); SrgbRead(false); >;\n \tfloat3 g_vCullViewOrigin < Attribute(\"CullViewOrigin\"); UiType(VectorText); >;\n \tfloat3 g_vDepthPyramidCameraOffset < Attribute(\"DepthPyramidCameraOffset\"); UiType(VectorText); >;\n@@ -86,21 +86,34 @@ CS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vFrustumPlane0) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (13476 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (13372 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n+\t#extension GL_EXT_scalar_block_layout : require\n+\t#if defined(GL_EXT_control_flow_attributes)\n+\t#extension GL_EXT_control_flow_attributes : require\n+\t#define SPIRV_CROSS_FLATTEN [[flatten]]\n+\t#define SPIRV_CROSS_BRANCH [[dont_flatten]]\n+\t#define SPIRV_CROSS_UNROLL [[unroll]]\n+\t#define SPIRV_CROSS_LOOP [[dont_unroll]]\n+\t#else\n+\t#define SPIRV_CROSS_FLATTEN\n+\t#define SPIRV_CROSS_BRANCH\n+\t#define SPIRV_CROSS_UNROLL\n+\t#define SPIRV_CROSS_LOOP\n+\t#endif\n \tlayout(local_size_x = 192, local_size_y = 1, local_size_z = 1) in;\n \t\n-\tstruct _2517\n+\tstruct _2523\n \t{\n \t    uint _m0[8];\n \t};\n \t\n-\tstruct _2116\n+\tstruct _2176\n \t{\n \t    uint _m0;\n \t    uint _m1;\n@@ -110,52 +123,46 @@ CS\n \t    int _m5;\n \t    uint _m6;\n \t    uint _m7;\n-\t    _2517 _m8;\n+\t    _2523 _m8;\n \t};\n \t\n-\tstruct _323\n+\tstruct _71\n \t{\n \t    vec4 _m0[2];\n \t};\n \t\n-\tstruct _2086\n+\tstruct _1906\n \t{\n \t    uvec4 _m0[2];\n \t};\n \t\n-\tstruct _1947\n+\tstruct _2035\n \t{\n-\t    _2517 _m0[8];\n+\t    _2523 _m0[8];\n \t};\n \t\n-\tstruct _2964\n+\tstruct _1967\n \t{\n \t    vec3 _m0;\n \t    uint _m1;\n \t    vec3 _m2;\n \t    uint _m3;\n-\t    _323 _m4;\n-\t    _2086 _m5;\n+\t    _71 _m4;\n+\t    _1906 _m5;\n \t    float _m6;\n \t    float _m7;\n \t    float _m8;\n \t    float _m9;\n \t    float _m10;\n-\t    uint _m11;\n+\t    _2523 _m11;\n \t    uint _m12;\n \t    float _m13;\n-\t    uvec4 _m14;\n-\t    _1947 _m15;\n+\t    _2035 _m14;\n \t};\n \t\n-\tstruct _449\n+\tstruct _1119\n \t{\n-\t    vec4 _m0[3];\n-\t};\n-\t\n-\tstruct _1857\n-\t{\n-\t    _449 _m0;\n+\t    mat3x4 _m0;\n \t};\n \t\n \tstruct _1125\n@@ -194,24 +201,24 @@ CS\n \t\n \tlayout(set = 0, binding = 36, std430) readonly buffer g_CullRequests\n \t{\n-\t    _2116 _m0[];\n+\t    _2176 _m0[];\n \t} g_CullRequests_1;\n \t\n-\tlayout(set = 0, binding = 35, std430) readonly buffer g_MeshData\n+\tlayout(set = 0, binding = 35, scalar) readonly buffer g_MeshData\n \t{\n-\t    _2964 _m0[];\n+\t    _1967 _m0[];\n \t} g_MeshData_1;\n \t\n-\tlayout(set = 4, binding = 167, std430) buffer undetermined\n-\t{\n-\t    _1857 _m0[];\n-\t} undetermined_1;\n-\t\n \tlayout(set = 0, binding = 37, std430) readonly buffer g_InstanceData\n \t{\n \t    uint _m0[];\n \t} g_InstanceData_1;\n \t\n+\tlayout(set = 4, binding = 167, std430) buffer undetermined\n+\t{\n+\t    _1119 _m0[];\n+\t} undetermined_1;\n+\t\n \tlayout(set = 4, binding = 163, std430) buffer undetermined_2\n \t{\n \t    _1125 _m0[];\n@@ -224,40 +231,41 @@ CS\n \t    if (gl_WorkGroupID.x < _Globals_.g_nCullRequests)\n \t    {\n \t        uint _13724 = gl_WorkGroupID.x + _Globals_.g_nFirstCullRequest;\n-\t        uint _24369 = g_CullRequests_1._m0[_13724]._m2;\n-\t        uint _24445 = g_CullRequests_1._m0[_13724]._m3;\n+\t        uint _5056 = g_CullRequests_1._m0[_13724]._m2;\n+\t        uint _5611 = g_CullRequests_1._m0[_13724]._m3;\n \t        uint _6493 = g_CullRequests_1._m0[_13724]._m0;\n \t        bool _3779 = (_6493 & 2147483648u) != 0u;\n-\t        uint _7126 = g_CullRequests_1._m0[_13724]._m1;\n+\t        uint _5516 = g_CullRequests_1._m0[_13724]._m1;\n \t        uint _13546 = g_CullRequests_1._m0[_13724]._m4;\n \t        uint _5325 = _13546 + gl_LocalInvocationID.x;\n-\t        uint _13687;\n+\t        uint _25111;\n \t        if (g_CullRequests_1._m0[_13724]._m5 == (-1))\n \t        {\n-\t            _13687 = 4294967295u;\n+\t            _25111 = 4294967295u;\n \t        }\n \t        else\n \t        {\n-\t            _13687 = uint(g_CullRequests_1._m0[_13724]._m5) + gl_LocalInvocationID.x;\n+\t            _25111 = uint(g_CullRequests_1._m0[_13724]._m5) + gl_LocalInvocationID.x;\n \t        }\n \t        bool _12888;\n \t        if (gl_LocalInvocationID.x < (_6493 & 1073741823u))\n \t        {\n \t            float _10932;\n \t            mat3x4 _15345;\n+\t            SPIRV_CROSS_BRANCH\n \t            if (_3779)\n \t            {\n-\t                uint _23357 = _24445 + (gl_LocalInvocationID.x * 24u);\n-\t                vec4 _22004 = uintBitsToFloat(uvec4(g_InstanceData_1._m0[_23357 / 4u], g_InstanceData_1._m0[(_23357 + 4u) / 4u], g_InstanceData_1._m0[(_23357 + 8u) / 4u], g_InstanceData_1._m0[(_23357 + 12u) / 4u]));\n-\t                uint _23043 = uint(int(_23357 + 16u)) / 4u;\n-\t                float _5062 = _22004.w;\n-\t                float _9551 = (float((g_InstanceData_1._m0[_23043]) & 2047u) * 0.00097703956998884677886962890625) - 1.0;\n-\t                float _9552 = (float((g_InstanceData_1._m0[_23043] >> uint(11)) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _8154 = (float((g_InstanceData_1._m0[_23043] >> uint(21)) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                uint _23357 = _5611 + (gl_LocalInvocationID.x * 24u);\n+\t                vec4 _22194 = uintBitsToFloat(uvec4(g_InstanceData_1._m0[_23357 / 4u], g_InstanceData_1._m0[(_23357 + 4u) / 4u], g_InstanceData_1._m0[(_23357 + 8u) / 4u], g_InstanceData_1._m0[(_23357 + 12u) / 4u]));\n+\t                uint _15590 = (_23357 + 16u) / 4u;\n+\t                float _5062 = _22194.w;\n+\t                float _9551 = (float(g_InstanceData_1._m0[_15590] & 2047u) * 0.00097703956998884677886962890625) - 1.0;\n+\t                float _9552 = (float((g_InstanceData_1._m0[_15590] >> uint(11)) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _8154 = (float((g_InstanceData_1._m0[_15590] >> uint(21)) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n \t                float _23665 = _9551 * _9551;\n \t                float _7156 = _9552 * _9552;\n \t                float _9141 = _8154 * _8154;\n-\t                float _13552 = sqrt(1.0 - min(0.999998986721038818359375, (_23665 + _7156) + _9141)) * (((g_InstanceData_1._m0[_23043] & 2147483648u) != 0u) ? (-1.0) : 1.0);\n+\t                float _13552 = sqrt(1.0 - min(0.999998986721038818359375, (_23665 + _7156) + _9141)) * (((g_InstanceData_1._m0[_15590] & 2147483648u) != 0u) ? (-1.0) : 1.0);\n \t                float _20691 = 2.0 * _7156;\n \t                float _10559 = 2.0 * _9141;\n \t                float _10213 = 2.0 * _9551;\n@@ -270,16 +278,16 @@ CS\n \t                float _8562 = _20640 * _8154;\n \t                float _20055 = _10213 * _13552;\n \t                _10932 = _5062;\n-\t                _15345 = mat3x4(vec4(vec3((1.0 - _20691) - _10559, _20716 - _22675, _10214 + _22014) * _5062, _22004.x), vec4(vec3(_20716 + _22675, _23221 - _10559, _8562 - _20055) * _5062, _22004.y), vec4(vec3(_10214 - _22014, _8562 + _20055, _23221 - _20691) * _5062, _22004.z));\n+\t                _15345 = mat3x4(vec4(vec3((1.0 - _20691) - _10559, _20716 - _22675, _10214 + _22014) * _5062, _22194.x), vec4(vec3(_20716 + _22675, _23221 - _10559, _8562 - _20055) * _5062, _22194.y), vec4(vec3(_10214 - _22014, _8562 + _20055, _23221 - _20691) * _5062, _22194.z));\n \t            }\n \t            else\n \t            {\n-\t                _10932 = sqrt(max(dot(undetermined_1._m0[_5325]._m0._m0[0].xyz, undetermined_1._m0[_5325]._m0._m0[0].xyz), max(dot(undetermined_1._m0[_5325]._m0._m0[1].xyz, undetermined_1._m0[_5325]._m0._m0[1].xyz), dot(undetermined_1._m0[_5325]._m0._m0[2].xyz, undetermined_1._m0[_5325]._m0._m0[2].xyz))));\n-\t                _15345 = mat3x4(undetermined_1._m0[_5325]._m0._m0[0], undetermined_1._m0[_5325]._m0._m0[1], undetermined_1._m0[_5325]._m0._m0[2]);\n+\t                _10932 = sqrt(max(dot(undetermined_1._m0[_5325]._m0[0].xyz, undetermined_1._m0[_5325]._m0[0].xyz), max(dot(undetermined_1._m0[_5325]._m0[1].xyz, undetermined_1._m0[_5325]._m0[1].xyz), dot(undetermined_1._m0[_5325]._m0[2].xyz, undetermined_1._m0[_5325]._m0[2].xyz))));\n+\t                _15345 = undetermined_1._m0[_5325]._m0;\n \t            }\n-\t            vec3 _6370 = (g_MeshData_1._m0[_24369]._m0 + g_MeshData_1._m0[_24369]._m2) * 0.5;\n-\t            vec3 _17098 = g_MeshData_1._m0[_24369]._m2 - _6370;\n-\t            vec3 _11242 = (vec4(_6370, 1.0) * _15345).xyz;\n+\t            vec3 _6371 = (g_MeshData_1._m0[_5056]._m0 + g_MeshData_1._m0[_5056]._m2) * 0.5;\n+\t            vec3 _17098 = g_MeshData_1._m0[_5056]._m2 - _6371;\n+\t            vec3 _11242 = (vec4(_6371, 1.0) * _15345).xyz;\n \t            float _8996 = _17098.x;\n \t            float _15046 = _17098.y;\n \t            float _17230 = _17098.z;\n@@ -289,7 +297,7 @@ CS\n \t            bool _12885;\n \t            if (_Globals_.g_bEnableFrustumCulling != 0)\n \t            {\n-\t                vec4 _20198[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);\n+\t                vec4 _20578[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);\n \t                float _13155;\n \t                _13155 = 100000000.0;\n \t                float _6414;\n@@ -301,7 +309,7 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    _6414 = min(_13155, dot(mix(_11144, _8008, greaterThan(_20198[_16208].xyz, vec3(0.0))), _20198[_16208].xyz) + _20198[_16208].w);\n+\t                    _6414 = min(_13155, dot(mix(_11144, _8008, greaterThan(_20578[_16208].xyz, vec3(0.0))), _20578[_16208].xyz) + _20578[_16208].w);\n \t                    _8899 = _16208 + 1;\n \t                    _13155 = _6414;\n \t                    _16208 = _8899;\n@@ -323,8 +331,8 @@ CS\n \t                bool _7462;\n \t                do\n \t                {\n-\t                    vec3 _11387 = (_11144 + _8008) * 0.5;\n-\t                    float _20801 = _10932 * g_MeshData_1._m0[_24369]._m7;\n+\t                    vec3 _23075 = (_11144 + _8008) * 0.5;\n+\t                    float _10825 = _10932 * g_MeshData_1._m0[_5056]._m7;\n \t                    bool _12886;\n \t                    if (_Globals_.g_bEnableSizeCulling != 0)\n \t                    {\n@@ -336,27 +344,27 @@ CS\n \t                            {\n \t                                if (_Globals_.g_bCullViewOrthographic != 0)\n \t                                {\n-\t                                    _20091 = (2.0 * _20801) * _Globals_.g_fRootViewOrthoInvWidth;\n+\t                                    _20091 = (2.0 * _10825) * _Globals_.g_fRootViewOrthoInvWidth;\n \t                                    break;\n \t                                }\n \t                                else\n \t                                {\n-\t                                    float _23997 = length(_11387 - _Globals_.g_vCullViewOrigin);\n-\t                                    if (_23997 <= _20801)\n+\t                                    float _23997 = length(_23075 - _Globals_.g_vCullViewOrigin);\n+\t                                    if (_23997 <= _10825)\n \t                                    {\n \t                                        _20091 = 1.0;\n \t                                        break;\n \t                                    }\n \t                                    else\n \t                                    {\n-\t                                        _20091 = clamp(_20801 / (_23997 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);\n+\t                                        _20091 = clamp(_10825 / (_23997 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);\n \t                                        break;\n \t                                    }\n \t                                    break; // unreachable workaround\n \t                                }\n \t                                break; // unreachable workaround\n \t                            } while(false);\n-\t                            if (_20091 < (_Globals_.g_fCullViewSizeThreshold * g_MeshData_1._m0[_24369]._m6))\n+\t                            if (_20091 < (_Globals_.g_fCullViewSizeThreshold * g_MeshData_1._m0[_5056]._m6))\n \t                            {\n \t                                _12501 = true;\n \t                                break;\n@@ -381,39 +389,40 @@ CS\n \t                        bool _12502;\n \t                        do\n \t                        {\n-\t                            if (g_MeshData_1._m0[_24369]._m8 > 0.0)\n+\t                            SPIRV_CROSS_BRANCH\n+\t                            if (g_MeshData_1._m0[_5056]._m8 > 0.0)\n \t                            {\n-\t                                float _17253;\n+\t                                float _20092;\n \t                                do\n \t                                {\n \t                                    if (_Globals_.g_bCullViewOrthographic != 0)\n \t                                    {\n-\t                                        _17253 = (2.0 * _20801) * _Globals_.g_fRootViewOrthoInvWidth;\n+\t                                        _20092 = (2.0 * _10825) * _Globals_.g_fRootViewOrthoInvWidth;\n \t                                        break;\n \t                                    }\n \t                                    else\n \t                                    {\n-\t                                        float _23998 = length(_11387 - _Globals_.g_vCullViewOrigin);\n-\t                                        if (_23998 <= _20801)\n+\t                                        float _23998 = length(_23075 - _Globals_.g_vCullViewOrigin);\n+\t                                        if (_23998 <= _10825)\n \t                                        {\n-\t                                            _17253 = 1.0;\n+\t                                            _20092 = 1.0;\n \t                                            break;\n \t                                        }\n \t                                        else\n \t                                        {\n-\t                                            _17253 = clamp(_20801 / (_23998 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);\n+\t                                            _20092 = clamp(_10825 / (_23998 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);\n \t                                            break;\n \t                                        }\n \t                                        break; // unreachable workaround\n \t                                    }\n \t                                    break; // unreachable workaround\n \t                                } while(false);\n-\t                                uint _12240 = gl_LocalInvocationID.x + (g_CullRequests_1._m0[_13724]._m7 & 65535u);\n-\t                                uint _7414 = _12240 + 374761393u;\n+\t                                uint _24669 = gl_LocalInvocationID.x + (g_CullRequests_1._m0[_13724]._m7 & 65535u);\n+\t                                uint _7414 = _24669 + 374761393u;\n \t                                uint _17451 = 668265263u * ((_7414 << uint(17)) | (_7414 >> uint(15)));\n \t                                uint _17202 = 2246822519u * (_17451 ^ (_17451 >> uint(15)));\n \t                                uint _17204 = 3266489917u * (_17202 ^ (_17202 >> uint(13)));\n-\t                                _12502 = (_17253 + (((float(_17204 ^ (_17204 >> uint(16))) * 2.3283064365386962890625e-10) * (float(_12240) / float(g_CullRequests_1._m0[_13724]._m7 >> uint(16)))) * g_MeshData_1._m0[_24369]._m10)) < g_MeshData_1._m0[_24369]._m9;\n+\t                                _12502 = (_20092 + (((float(_17204 ^ (_17204 >> uint(16))) * 2.3283064365386962890625e-10) * (float(_24669) / float(g_CullRequests_1._m0[_13724]._m7 >> uint(16)))) * g_MeshData_1._m0[_5056]._m10)) < g_MeshData_1._m0[_5056]._m9;\n \t                                break;\n \t                            }\n \t                            _12502 = false;\n@@ -435,9 +444,10 @@ CS\n \t                } while(false);\n \t                _7251 = !_7462;\n \t            }\n+\t            SPIRV_CROSS_BRANCH\n \t            if (_3779 ? _7251 : false)\n \t            {\n-\t                undetermined_1._m0[_5325]._m0 = _449(vec4[](_15345[0], _15345[1], _15345[2]));\n+\t                undetermined_1._m0[_5325]._m0 = _15345;\n \t            }\n \t            _12888 = _7251;\n \t        }\n@@ -447,36 +457,36 @@ CS\n \t        }\n \t        if (_12888)\n \t        {\n-\t            uint _8369 = g_MeshData_1._m0[_24369]._m12;\n-\t            uint _6371 = _8369 & 15u;\n-\t            uint _3737 = imageAtomicAdd(_5506, int((_7126 * 5u) + 1u), 1u);\n+\t            uint _8369 = g_MeshData_1._m0[_5056]._m12;\n+\t            uint _6372 = _8369 & 15u;\n+\t            uint _3737 = imageAtomicAdd(_5506, int((_5516 * 5u) + 1u), 1u);\n \t            uint _24498 = g_CullRequests_1._m0[_13724]._m6;\n \t            uint _3056 = _24498 + _3737;\n \t            uint _5186;\n \t            uint _13039 = 1u;\n \t            for (;;)\n \t            {\n-\t                if (!(_13039 < _6371))\n+\t                if (!(_13039 < _6372))\n \t                {\n \t                    break;\n \t                }\n-\t                uint _17760 = imageAtomicAdd(_5506, int(((_7126 + (_13039 * 2u)) * 5u) + 1u), 1u);\n+\t                uint _17760 = imageAtomicAdd(_5506, int(((_5516 + (_13039 * 2u)) * 5u) + 1u), 1u);\n \t                _5186 = _13039 + 1u;\n \t                _13039 = _5186;\n \t                continue;\n \t            }\n-\t            uint _12699;\n+\t            uint _9848;\n \t            if (_3779)\n \t            {\n-\t                _12699 = (_24445 + (gl_LocalInvocationID.x * 24u)) + 20u;\n+\t                _9848 = (_5611 + (gl_LocalInvocationID.x * 24u)) + 20u;\n \t            }\n \t            else\n \t            {\n-\t                _12699 = _24445 + (gl_LocalInvocationID.x * 4u);\n+\t                _9848 = _5611 + (gl_LocalInvocationID.x * 4u);\n \t            }\n-\t            undetermined_3._m0[_3056]._m0 = g_InstanceData_1._m0[uint(int(_12699)) / 4u];\n+\t            undetermined_3._m0[_3056]._m0 = g_InstanceData_1._m0[_9848 / 4u];\n \t            undetermined_3._m0[_3056]._m1 = _5325;\n-\t            undetermined_3._m0[_3056]._m2 = uint(int(_13687));\n+\t            undetermined_3._m0[_3056]._m2 = _25111;\n \t            undetermined_3._m0[_3056]._m3 = 4294967295u;\n \t            undetermined_3._m0[_3056]._m4 = 4294967295u;\n \t            undetermined_3._m0[_3056]._m5 = 0u;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/debug_show_texture.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/debug_wireframe_2d.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/depth_only.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 22,
          "changes": 67,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -62,9 +62,9 @@ VS\n \t\n \tcbuffer FFDTransforms_t < Attribute(\"FFDTransforms_t\"); >;\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Foliage Animation\n \tfloat g_flBendScale < Default(0.1); UiType(Slider); UiGroup(\"Foliage Animation\"); >;\n@@ -76,7 +76,7 @@ VS\n \tfloat g_flWindSpeed < Default(1); Range(0, 5); UiType(Slider); UiGroup(\"Foliage Animation\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2204 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -90,26 +90,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1066\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _81\n+\tstruct _1126\n \t{\n-\t    _1066 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1192\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1192 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n@@ -134,16 +141,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1066 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3 _19498 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n-\t    _24787.y = -_24787.y;\n-\t    gl_Position = _24787;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _19498 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n+\t    _19149.y = -_19149.y;\n+\t    gl_Position = _19149;\n \t    gl_ClipDistance[0] = dot(float4(_19498, 1.0f), PerViewConstantBuffer_t_1_m1);\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/depth_only_foliage.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 22,
          "changes": 67,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -54,8 +54,8 @@ VS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Foliage Animation\n \tfloat g_flBendScale < Default(0.1); UiType(Slider); UiGroup(\"Foliage Animation\"); >;\n@@ -67,7 +67,7 @@ VS\n \tfloat g_flWindSpeed < Default(1); Range(0, 5); UiType(Slider); UiGroup(\"Foliage Animation\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2204 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -81,26 +81,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _940\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2839\n+\tstruct _1126\n \t{\n-\t    _940 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1066\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1066 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n@@ -125,16 +132,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _940 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3 _19498 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n-\t    _24787.y = -_24787.y;\n-\t    gl_Position = _24787;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _19498 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n+\t    _19149.y = -_19149.y;\n+\t    gl_Position = _19149;\n \t    gl_ClipDistance[0] = dot(float4(_19498, 1.0f), PerViewConstantBuffer_t_1_m1);\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/depth_pyramid_cs.slang",
          "status": "modified",
          "additions": 57,
          "deletions": 49,
          "changes": 106,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -39,7 +39,7 @@ CS\n \tTexture2D g_tInputDepth < Attribute(\"Dummy\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (20072 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (19340 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _981\n \t{\n@@ -54,8 +54,8 @@ CS\n \t};\n \t\n \tTexture2D<float4> g_tInputDepth : register(t30, space3);\n-\tRWTexture2D<float4> _5785[13] : register(u160, space3);\n \tgloballycoherent RWTexture2D<float4> _4300 : register(u159, space3);\n+\tRWTexture2D<float4> _5785[13] : register(u160, space3);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint gl_LocalInvocationIndex;\n@@ -80,8 +80,8 @@ CS\n \t        int2 _17277;\n \t        int _22460;\n \t        uint _17662 = gl_LocalInvocationIndex % 64u;\n-\t        uint _18055 = ((_17662 & 1u) | (((_17662 >> 2u) & 7u) & 4294967294u)) + (8u * ((gl_LocalInvocationIndex >> uint(6)) % 2u));\n-\t        uint _21604 = ((((_17662 >> 1u) & 3u) & 3u) | (((_17662 >> 3u) & 7u) & 4294967292u)) + (8u * (gl_LocalInvocationIndex >> uint(7)));\n+\t        uint _18055 = ((_17662 & 1u) | ((_17662 >> 2u) & 6u)) + (8u * ((gl_LocalInvocationIndex >> uint(6)) % 2u));\n+\t        uint _21604 = (((_17662 >> 1u) & 3u) | ((_17662 >> 3u) & 4u)) + (8u * (gl_LocalInvocationIndex >> uint(7)));\n \t        do\n \t        {\n \t            _6312 = gl_WorkGroupID.xy;\n@@ -91,30 +91,34 @@ CS\n \t            _10507 = _21604 * 2u;\n \t            _12461 = int(_10507);\n \t            _17277 = int2(_22460, _12461);\n+\t            int2 _16450 = _15224 + _17277;\n \t            int2 _20613 = int2(_6312 * uint2(32u, 32u));\n \t            int _18838 = int(_18055);\n \t            int _8296 = int(_21604);\n \t            _16009 = int2(_18838, _8296);\n-\t            float4 _20198[4];\n-\t            uint2 _19109 = uint2(_15224 + _17277);\n-\t            float4 _13482 = max(max(g_tInputDepth.Load(int3(int3(int2(_19109), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n-\t            _20198[0] = _13482;\n+\t            float4 _20274[4];\n+\t            uint2 _19109 = uint2(_16450);\n+\t            float4 _13482 = max(max(g_tInputDepth.Load(int3(int3(_16450, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n+\t            _20274[0] = _13482;\n \t            _5785[1u][uint2(_20613 + _16009)] = _13482.x.xxxx;\n \t            int _15894 = int(_11495 + 32u);\n+\t            int2 _17142 = _15224 + int2(_15894, _12461);\n \t            int _16683 = int(_18055 + 16u);\n-\t            uint2 _19110 = uint2(_15224 + int2(_15894, _12461));\n-\t            float4 _14603 = max(max(g_tInputDepth.Load(int3(int3(int2(_19110), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n-\t            _20198[1] = _14603;\n+\t            uint2 _19110 = uint2(_17142);\n+\t            float4 _14603 = max(max(g_tInputDepth.Load(int3(int3(_17142, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n+\t            _20274[1] = _14603;\n \t            _5785[1u][uint2(_20613 + int2(_16683, _8296))] = _14603.x.xxxx;\n \t            int _15895 = int(_10507 + 32u);\n+\t            int2 _17143 = _15224 + int2(_22460, _15895);\n \t            int _16684 = int(_21604 + 16u);\n-\t            uint2 _19111 = uint2(_15224 + int2(_22460, _15895));\n-\t            float4 _14604 = max(max(g_tInputDepth.Load(int3(int3(int2(_19111), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n-\t            _20198[2] = _14604;\n+\t            uint2 _19111 = uint2(_17143);\n+\t            float4 _14604 = max(max(g_tInputDepth.Load(int3(int3(_17143, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n+\t            _20274[2] = _14604;\n \t            _5785[1u][uint2(_20613 + int2(_18838, _16684))] = _14604.x.xxxx;\n-\t            uint2 _19112 = uint2(_15224 + int2(_15894, _15895));\n-\t            float4 _14605 = max(max(g_tInputDepth.Load(int3(int3(int2(_19112), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n-\t            _20198[3] = _14605;\n+\t            int2 _21502 = _15224 + int2(_15894, _15895);\n+\t            uint2 _19112 = uint2(_21502);\n+\t            float4 _14605 = max(max(g_tInputDepth.Load(int3(int3(_21502, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));\n+\t            _20274[3] = _14605;\n \t            _5785[1u][uint2(_20613 + int2(_16683, _16684))] = _14605.x.xxxx;\n \t            if (_5474_m0 <= 1u)\n \t            {\n@@ -128,15 +132,15 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                _3286[_18055 + (16u * _21604)] = _20198[_13039].x;\n+\t                _3286[_18055 + (16u * _21604)] = _20274[_13039].x;\n \t                GroupMemoryBarrierWithGroupSync();\n \t                if (gl_LocalInvocationIndex < 64u)\n \t                {\n \t                    uint _21225 = _11495 + 1u;\n \t                    uint _17922 = _21604 * 32u;\n \t                    uint _12552 = 16u * (_10507 + 1u);\n \t                    float4 _14755 = max(max(_3286[_11495 + _17922].xxxx, _3286[_21225 + _17922].xxxx), max(_3286[_11495 + _12552].xxxx, _3286[_21225 + _12552].xxxx));\n-\t                    _20198[_13039] = _14755;\n+\t                    _20274[_13039] = _14755;\n \t                    _5785[2u][uint2(int2(_6312 * uint2(16u, 16u)) + int2(int(_18055 + uint((_13039 - 2 * (_13039 / 2)) * 8)), int(_21604 + uint((_13039 / 2) * 8))))] = _14755.x.xxxx;\n \t                }\n \t                GroupMemoryBarrierWithGroupSync();\n@@ -147,12 +151,12 @@ CS\n \t            if (gl_LocalInvocationIndex < 64u)\n \t            {\n \t                uint _17259 = 16u * _21604;\n-\t                _3286[_18055 + _17259] = _20198[0].x;\n+\t                _3286[_18055 + _17259] = _20274[0].x;\n \t                uint _15354 = _18055 + 8u;\n-\t                _3286[_15354 + _17259] = _20198[1].x;\n+\t                _3286[_15354 + _17259] = _20274[1].x;\n \t                uint _17034 = 16u * (_21604 + 8u);\n-\t                _3286[_18055 + _17034] = _20198[2].x;\n-\t                _3286[_15354 + _17034] = _20198[3].x;\n+\t                _3286[_18055 + _17034] = _20274[2].x;\n+\t                _3286[_15354 + _17034] = _20274[3].x;\n \t            }\n \t            break;\n \t        } while(false);\n@@ -210,7 +214,7 @@ CS\n \t            GroupMemoryBarrierWithGroupSync();\n \t            if (gl_LocalInvocationIndex < 1u)\n \t            {\n-\t                _4300[uint2(int2(_6312))] = max(max(_3286[0u].xxxx, _3286[1u].xxxx), max(_3286[2u].xxxx, _3286[3u].xxxx)).x.xxxx;\n+\t                _4300[_6312] = max(max(_3286[0u].xxxx, _3286[1u].xxxx), max(_3286[2u].xxxx, _3286[3u].xxxx)).x.xxxx;\n \t            }\n \t            break;\n \t        } while(false);\n@@ -241,41 +245,45 @@ CS\n \t            int _19466 = int(_12251);\n \t            uint _10508 = _21604 * 4u;\n \t            int _12385 = int(_10508);\n-\t            uint2 _11848 = uint2(int2(_19466, _12385));\n-\t            float4 _21178 = _4300[int2(uint2(int2(_11848)))];\n-\t            float4 _21179 = _4300[int2(uint2(int2(_11848 + uint2(0u, 1u))))];\n-\t            float4 _21180 = _4300[int2(uint2(int2(_11848 + uint2(1u, 0u))))];\n-\t            float4 _21181 = _4300[int2(uint2(int2(_11848 + uint2(1u, 1u))))];\n-\t            float4 _14084 = max(max(_21178.x.xxxx, _21179.x.xxxx), max(_21180.x.xxxx, _21181.x.xxxx));\n+\t            int2 _17893 = int2(_19466, _12385);\n+\t            uint2 _11848 = uint2(_17893);\n+\t            float4 _17947 = _4300[_17893];\n+\t            float4 _21178 = _4300[int2(_11848 + uint2(0u, 1u))];\n+\t            float4 _21179 = _4300[int2(_11848 + uint2(1u, 0u))];\n+\t            float4 _21180 = _4300[int2(_11848 + uint2(1u, 1u))];\n+\t            float4 _14084 = max(max(_17947.x.xxxx, _21178.x.xxxx), max(_21179.x.xxxx, _21180.x.xxxx));\n \t            _5785[7u][uint2(_17277)] = _14084.x.xxxx;\n \t            _21382 = _12251 + 2u;\n \t            int _15896 = int(_21382);\n+\t            int2 _20356 = int2(_15896, _12385);\n \t            _16998 = _11495 + 1u;\n \t            int _10180 = int(_16998);\n-\t            uint2 _11849 = uint2(int2(_15896, _12385));\n-\t            float4 _21182 = _4300[int2(uint2(int2(_11849)))];\n-\t            float4 _21183 = _4300[int2(uint2(int2(_11849 + uint2(0u, 1u))))];\n-\t            float4 _21184 = _4300[int2(uint2(int2(_11849 + uint2(1u, 0u))))];\n-\t            float4 _21185 = _4300[int2(uint2(int2(_11849 + uint2(1u, 1u))))];\n-\t            float4 _22131 = max(max(_21182.x.xxxx, _21183.x.xxxx), max(_21184.x.xxxx, _21185.x.xxxx));\n+\t            uint2 _11849 = uint2(_20356);\n+\t            float4 _17948 = _4300[_20356];\n+\t            float4 _21181 = _4300[int2(_11849 + uint2(0u, 1u))];\n+\t            float4 _21182 = _4300[int2(_11849 + uint2(1u, 0u))];\n+\t            float4 _21183 = _4300[int2(_11849 + uint2(1u, 1u))];\n+\t            float4 _22131 = max(max(_17948.x.xxxx, _21181.x.xxxx), max(_21182.x.xxxx, _21183.x.xxxx));\n \t            _5785[7u][uint2(int2(_10180, _12461))] = _22131.x.xxxx;\n \t            _21383 = _10508 + 2u;\n \t            int _15897 = int(_21383);\n+\t            int2 _20357 = int2(_19466, _15897);\n \t            _16999 = _10507 + 1u;\n \t            int _10181 = int(_16999);\n-\t            uint2 _11850 = uint2(int2(_19466, _15897));\n-\t            float4 _21186 = _4300[int2(uint2(int2(_11850)))];\n-\t            float4 _21187 = _4300[int2(uint2(int2(_11850 + uint2(0u, 1u))))];\n-\t            float4 _21188 = _4300[int2(uint2(int2(_11850 + uint2(1u, 0u))))];\n-\t            float4 _21189 = _4300[int2(uint2(int2(_11850 + uint2(1u, 1u))))];\n-\t            float4 _22132 = max(max(_21186.x.xxxx, _21187.x.xxxx), max(_21188.x.xxxx, _21189.x.xxxx));\n+\t            uint2 _11850 = uint2(_20357);\n+\t            float4 _17949 = _4300[_20357];\n+\t            float4 _21184 = _4300[int2(_11850 + uint2(0u, 1u))];\n+\t            float4 _21185 = _4300[int2(_11850 + uint2(1u, 0u))];\n+\t            float4 _21186 = _4300[int2(_11850 + uint2(1u, 1u))];\n+\t            float4 _22132 = max(max(_17949.x.xxxx, _21184.x.xxxx), max(_21185.x.xxxx, _21186.x.xxxx));\n \t            _5785[7u][uint2(int2(_22460, _10181))] = _22132.x.xxxx;\n-\t            uint2 _8647 = uint2(int2(_15896, _15897));\n-\t            float4 _21190 = _4300[int2(uint2(int2(_8647)))];\n-\t            float4 _21191 = _4300[int2(uint2(int2(_8647 + uint2(0u, 1u))))];\n-\t            float4 _21192 = _4300[int2(uint2(int2(_8647 + uint2(1u, 0u))))];\n-\t            float4 _21193 = _4300[int2(uint2(int2(_8647 + uint2(1u, 1u))))];\n-\t            float4 _22133 = max(max(_21190.x.xxxx, _21191.x.xxxx), max(_21192.x.xxxx, _21193.x.xxxx));\n+\t            int2 _22601 = int2(_15896, _15897);\n+\t            uint2 _8647 = uint2(_22601);\n+\t            float4 _17950 = _4300[_22601];\n+\t            float4 _21187 = _4300[int2(_8647 + uint2(0u, 1u))];\n+\t            float4 _21188 = _4300[int2(_8647 + uint2(1u, 0u))];\n+\t            float4 _21189 = _4300[int2(_8647 + uint2(1u, 1u))];\n+\t            float4 _22133 = max(max(_17950.x.xxxx, _21187.x.xxxx), max(_21188.x.xxxx, _21189.x.xxxx));\n \t            _5785[7u][uint2(int2(_10180, _10181))] = _22133.x.xxxx;\n \t            if (_5474_m0 <= 7u)\n \t            {"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/downsample.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/downsample_bloomthreshold.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -94,7 +94,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vInvTexDim) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -88,15 +88,15 @@ PS\n \tTexture2D g_tDepth < Attribute(\"DepthBuffer\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (932 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (924 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space1)\n \t{\n \t    int _Globals_1_g_nDownsampleRatioW : packoffset(c0);\n \t    int _Globals_1_g_nDownsampleRatioH : packoffset(c0.y);\n \t};\n \t\n-\tTexture2DMS<float4> g_tDepth_unexpectedTypeId438_1075 : register(t30, space1);\n+\tTexture2DMS<float4> g_tDepth : register(t30, space1);\n \t\n \tstatic float4 gl_FragCoord;\n \tstatic float gl_FragDepth;\n@@ -112,7 +112,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    gl_FragDepth = g_tDepth_unexpectedTypeId438_1075.Load((int2(gl_FragCoord.xy).xy * int2(_Globals_1_g_nDownsampleRatioW, _Globals_1_g_nDownsampleRatioH)).xy, 0).x;\n+\t    gl_FragDepth = g_tDepth.Load((int2(gl_FragCoord.xy).xy * int2(_Globals_1_g_nDownsampleRatioW, _Globals_1_g_nDownsampleRatioH)).xy, 0).x;\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth_cs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth_singlepass_cs.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -50,7 +50,7 @@ CS\n \tfloat2 g_vInvSrcSize < Attribute(\"InvSrcSize\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3132 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3116 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -71,7 +71,7 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    int2 _5754 = (int2(uint2((((gl_LocalInvocationID.x) & 1u) | (((gl_LocalInvocationID.x >> uint(3)) & 3u) << uint(1))) | (((gl_LocalInvocationID.x >> uint(7)) & 1u) << uint(3)), ((gl_LocalInvocationID.x >> uint(1)) & 3u) | (((gl_LocalInvocationID.x >> uint(5)) & 3u) << uint(2)))) * int2(4, 4)) + int2(gl_WorkGroupID.xy * uint2(64u, 64u));\n+\t    int2 _5754 = (int2(uint2(((gl_LocalInvocationID.x & 1u) | (((gl_LocalInvocationID.x >> uint(3)) & 3u) << uint(1))) | (((gl_LocalInvocationID.x >> uint(7)) & 1u) << uint(3)), ((gl_LocalInvocationID.x >> uint(1)) & 3u) | (((gl_LocalInvocationID.x >> uint(5)) & 3u) << uint(2)))) * int2(4, 4)) + int2(gl_WorkGroupID.xy * uint2(64u, 64u));\n \t    float2 _11517 = float2(_5754) * _Globals_1_g_vInvSrcSize;\n \t    float4 _24999 = g_tSrcDepth.GatherRed(AddressU_Clamp_AddressV_Clamp_AllowGlobalMipBiasOverride_0_Filter_MinMagMipPoint, _11517, int2(1, 1));\n \t    float4 _25000 = g_tSrcDepth.GatherRed(AddressU_Clamp_AddressV_Clamp_AllowGlobalMipBiasOverride_0_Filter_MinMagMipPoint, _11517, int2(3, 1));"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/error.slang",
          "status": "modified",
          "additions": 46,
          "deletions": 23,
          "changes": 69,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -39,11 +39,11 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2856 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2172 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -57,27 +57,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _856\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2671\n+\tstruct _1126\n \t{\n-\t    _856 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _982 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -100,16 +107,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _856 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _23913 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _18275 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = frac(((vPositionOs.x + vPositionOs.y) + vPositionOs.z) * 100.09999847412109375f);\n-\t    _23913.y = -_23913.y;\n-\t    gl_Position = _23913;\n+\t    _18275.y = -_18275.y;\n+\t    gl_Position = _18275;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/fsr2_compute_reactive_mask.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/fsr_upscale.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/fxaa_cs.slang",
          "status": "modified",
          "additions": 24,
          "deletions": 25,
          "changes": 49,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -43,7 +43,7 @@ CS\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (6448 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (6368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _6;\n \t\n@@ -82,12 +82,11 @@ CS\n \t        uint2 _3873 = gl_GlobalInvocationID.xy + FxaaConstants_t_1_m2;\n \t        if (gl_LocalInvocationIndex < 50u)\n \t        {\n-\t            int2 _7300 = int2(((FxaaConstants_t_1_m2 + uint2(gl_LocalInvocationIndex % 10u, gl_LocalInvocationIndex / 10u)) + (gl_WorkGroupID.xy * uint2(8u, 8u))) - uint2(1u, 1u));\n-\t            uint2 _9338 = uint2(_7300);\n-\t            float _21479 = log2(1.0f + (dot(g_tColor.Load(int3(_9338, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;\n-\t            _4695[_9338] = _21479.x;\n+\t            uint2 _19079 = ((FxaaConstants_t_1_m2 + uint2(gl_LocalInvocationIndex % 10u, gl_LocalInvocationIndex / 10u)) + (gl_WorkGroupID.xy * uint2(8u, 8u))) - uint2(1u, 1u);\n+\t            float _21479 = log2(1.0f + (dot(g_tColor.Load(int3(_19079, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;\n+\t            _4695[_19079] = _21479.x;\n \t            _5396[gl_LocalInvocationIndex] = _21479;\n-\t            uint2 _19343 = uint2(_7300 + int2(0, 5));\n+\t            uint2 _19343 = uint2(int2(_19079) + int2(0, 5));\n \t            float _21480 = log2(1.0f + (dot(g_tColor.Load(int3(_19343, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;\n \t            _4695[_19343] = _21480.x;\n \t            _5396[gl_LocalInvocationIndex + 50u] = _21480;\n@@ -104,40 +103,40 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        uint _14389 = _4614 - 11u;\n+\t        uint _16811 = _4614 - 11u;\n \t        uint _13650 = _4614 + 4294967287u;\n \t        uint _13651 = _4614 + 9u;\n \t        uint _13652 = _4614 + 11u;\n \t        float _4332 = _5396[_10215] + _5396[_13649];\n \t        float _4366 = _5396[_16333] + _5396[_13648];\n-\t        float _4079 = _5396[_14389] + _5396[_13651];\n+\t        float _4079 = _5396[_16811] + _5396[_13651];\n \t        float _3549 = _5396[_13650] + _5396[_13652];\n \t        float _15085 = 2.0f * _4459;\n-\t        bool _17147 = ((abs(_4079 - (2.0f * _5396[_16333])) + (abs(_4332 - _15085) * 2.0f)) + abs(_3549 - (2.0f * _5396[_13648]))) >= ((abs((_5396[_13651] + _5396[_13652]) - (2.0f * _5396[_13649])) + (abs(_4366 - _15085) * 2.0f)) + abs((_5396[_14389] + _5396[_13650]) - (2.0f * _5396[_10215])));\n+\t        bool _17147 = ((abs(_4079 - (2.0f * _5396[_16333])) + (abs(_4332 - _15085) * 2.0f)) + abs(_3549 - (2.0f * _5396[_13648]))) >= ((abs((_5396[_13651] + _5396[_13652]) - (2.0f * _5396[_13649])) + (abs(_4366 - _15085) * 2.0f)) + abs((_5396[_16811] + _5396[_13650]) - (2.0f * _5396[_10215])));\n \t        uint _5884 = uint(int(abs((_17147 ? _5396[_13649] : _5396[_13648]) - _4459) >= abs((_17147 ? _5396[_10215] : _5396[_16333]) - _4459)));\n \t        uint _4421 = (((_3873.y << uint(20)) | (_3873.x << uint(8))) | (uint(clamp((pow(smoothstep(0.0f, 1.0f, abs((((((_4332 + _4366) * 2.0f) + _4079) + _3549) * 0.083333335816860198974609375f) - _4459) / _4466), 2.0f) * FxaaConstants_t_1_m1) * 2.0f, 0.0f, 1.0f) * 254.0f) & 254u)) | _5884;\n \t        if (_17147)\n \t        {\n-\t            uint _4591;\n-\t            InterlockedAdd(_5959[0u], 1u, _4591);\n-\t            _3823[_4591] = _4421.x;\n-\t            float4 _17883 = g_tColor.Load(int3(uint2(int2(_3873 + uint2(0u, (2u * _5884) - 1u))), 0));\n-\t            uint _16573 = 3u * _4591;\n-\t            _5402[_16573] = _17883.x.x;\n-\t            _5402[_16573 + 1u] = _17883.y.x;\n-\t            _5402[_16573 + 2u] = _17883.z.x;\n+\t            uint _7294;\n+\t            InterlockedAdd(_5959[0u], 1u, _7294);\n+\t            _3823[_7294] = _4421.x;\n+\t            float4 _14651 = g_tColor.Load(int3(_3873 + uint2(0u, (2u * _5884) - 1u), 0));\n+\t            uint _16572 = 3u * _7294;\n+\t            _5402[_16572] = _14651.x.x;\n+\t            _5402[_16572 + 1u] = _14651.y.x;\n+\t            _5402[_16572 + 2u] = _14651.z.x;\n \t        }\n \t        else\n \t        {\n \t            uint _6241;\n \t            InterlockedAdd(_5959[1u], 1u, _6241);\n-\t            uint _17386 = FxaaConstants_t_1_m3 - _6241;\n-\t            _3823[_17386] = _4421.x;\n-\t            float4 _17882 = g_tColor.Load(int3(uint2(int2(_3873 + uint2((2u * _5884) - 1u, 0u))), 0));\n-\t            uint _16572 = 3u * _17386;\n-\t            _5402[_16572] = _17882.x.x;\n-\t            _5402[_16572 + 1u] = _17882.y.x;\n-\t            _5402[_16572 + 2u] = _17882.z.x;\n+\t            uint _4591 = FxaaConstants_t_1_m3 - _6241;\n+\t            _3823[_4591] = _4421.x;\n+\t            float4 _14652 = g_tColor.Load(int3(_3873 + uint2((2u * _5884) - 1u, 0u), 0));\n+\t            uint _16573 = 3u * _4591;\n+\t            _5402[_16573] = _14652.x.x;\n+\t            _5402[_16573 + 1u] = _14652.y.x;\n+\t            _5402[_16573 + 2u] = _14652.z.x;\n \t        }\n \t        break;\n \t    } while(false);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/gaussian_bloom_blur.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/general_filter.slang",
          "status": "modified",
          "additions": 8,
          "deletions": 13,
          "changes": 21,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -99,30 +99,25 @@ PS\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2236 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _226\n-\t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n-\tstruct _352\n+\tstruct _268\n \t{\n \t    float4 _m0[32];\n \t};\n \t\n \tcbuffer FilterTaps_t : register(b2, space1)\n \t{\n \t    float4 FilterTaps_t_1_m0 : packoffset(c0);\n-\t    _226 FilterTaps_t_1_m1 : packoffset(c2);\n-\t    _352 FilterTaps_t_1_m2 : packoffset(c6);\n+\t    column_major float4x4 FilterTaps_t_1_m1 : packoffset(c2);\n+\t    _268 FilterTaps_t_1_m2 : packoffset(c6);\n \t};\n \t\n \tTexture2D<float4> g_tInputTexture : register(t30, space1);\n \tSamplerState Filter_MinMagLinearMipPoint : register(s14, space1);\n \t\n-\tstatic float4 output_0;\n \tstatic float2 input_0;\n+\tstatic float4 output_0;\n \t\n \tstruct PS_INPUT\n \t{\n@@ -155,7 +150,7 @@ PS\n \t        _16208 = _18752;\n \t        continue;\n \t    }\n-\t    output_0 = mul(float4x4(float4(FilterTaps_t_1_m1._m0[0].x, FilterTaps_t_1_m1._m0[1].x, FilterTaps_t_1_m1._m0[2].x, FilterTaps_t_1_m1._m0[3].x), float4(FilterTaps_t_1_m1._m0[0].y, FilterTaps_t_1_m1._m0[1].y, FilterTaps_t_1_m1._m0[2].y, FilterTaps_t_1_m1._m0[3].y), float4(FilterTaps_t_1_m1._m0[0].z, FilterTaps_t_1_m1._m0[1].z, FilterTaps_t_1_m1._m0[2].z, FilterTaps_t_1_m1._m0[3].z), float4(FilterTaps_t_1_m1._m0[0].w, FilterTaps_t_1_m1._m0[1].w, FilterTaps_t_1_m1._m0[2].w, FilterTaps_t_1_m1._m0[3].w)), _13155);\n+\t    output_0 = mul(FilterTaps_t_1_m1, _13155);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/generate_relaxed_cones.slang",
          "status": "modified",
          "additions": 13,
          "deletions": 13,
          "changes": 26,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -38,7 +38,7 @@ CS\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (6740 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (6708 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -47,10 +47,10 @@ CS\n \t    uint _Globals_1_g_nMipCount : packoffset(c1.y);\n \t};\n \t\n-\tRWTexture2D<uint> _5369 : register(u158, space0);\n \tTexture2D<float4> g_tHeightmap : register(t30, space0);\n \tSamplerState AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint : register(s14, space0);\n \tSamplerState AddressU_Wrap_AddressV_Wrap_Filter_MinMagLinearMipPoint : register(s15, space0);\n+\tRWTexture2D<uint> _5369 : register(u158, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_LocalInvocationID;\n@@ -72,7 +72,7 @@ CS\n \t        _4495 = 255u;\n \t    }\n \t    GroupMemoryBarrierWithGroupSync();\n-\t    int2 _9524 = int2(gl_WorkGroupID.xy);\n+\t    int2 _10133 = int2(gl_WorkGroupID.xy);\n \t    uint _6475;\n \t    float _11901;\n \t    float _13155 = 1.0f;\n@@ -83,11 +83,11 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        float2 _16123 = (float2(_9524) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;\n+\t        float2 _16123 = (float2(_10133) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;\n \t        float4 _11160 = g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _16123, 0.0f);\n \t        float _17197 = _11160.x;\n \t        uint2 _13520 = _16208.xx;\n-\t        float _17362 = -length(float2(int2(2, 2) << int2(_13520)) * _Globals_1_g_vImageDimensions.zw);\n+\t        float _24380 = length(float2(int2(2, 2) << int2(_13520)) * _Globals_1_g_vImageDimensions.zw);\n \t        int _12501;\n \t        if (_16208 != 0u)\n \t        {\n@@ -121,16 +121,16 @@ CS\n \t                    _14382 = _13156;\n \t                    break;\n \t                }\n-\t                float2 _6348 = (float2((_9524 & int2(-4, -4)) + ((_9763 + int2(2, 2)) << int2(_13520))) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;\n-\t                float _15526 = _17197 - g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _6348, float(_16208 + 2u)).x;\n+\t                float2 _6348 = (float2((_10133 & int2(-4, -4)) + ((_9763 + int2(2, 2)) << int2(_13520))) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;\n+\t                float _10682 = _17197 - g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _6348, float(_16208 + 2u)).x;\n \t                float _23727;\n-\t                if (_15526 <= 0.0f)\n+\t                if (_10682 <= 0.0f)\n \t                {\n \t                    _23727 = 1.0f;\n \t                }\n \t                else\n \t                {\n-\t                    _23727 = (_Globals_1_g_fWidthScale * (length(_16123.xy - _6348.xy) + _17362)) / _15526;\n+\t                    _23727 = (_Globals_1_g_fWidthScale * (length(_16123.xy - _6348.xy) - _24380)) / _10682;\n \t                }\n \t                uint _12502;\n \t                if (_23727 < _13155)\n@@ -187,11 +187,11 @@ CS\n \t                    {\n \t                        break;\n \t                    }\n-\t                    int2 _15209 = (_9524 & int2(-4, -4)) + ((_24144 + int2(_16212, _16211)) << int2(_13520));\n+\t                    int2 _15209 = (_10133 & int2(-4, -4)) + ((_24144 + int2(_16212, _16211)) << int2(_13520));\n \t                    float _20773;\n \t                    do\n \t                    {\n-\t                        if (all(bool2(_9524.x == _15209.x, _9524.y == _15209.y)))\n+\t                        if (all(bool2(_10133.x == _15209.x, _10133.y == _15209.y)))\n \t                        {\n \t                            _20773 = 1.0f;\n \t                            break;\n@@ -256,7 +256,7 @@ CS\n \t    }\n \t    if (_17840)\n \t    {\n-\t        _5369[uint2(_9524)] = _4495.x;\n+\t        _5369[gl_WorkGroupID.xy] = _4495.x;\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/generic.slang",
          "status": "modified",
          "additions": 178,
          "deletions": 125,
          "changes": 303,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -81,9 +81,9 @@ VS\n \tDynamicComboRule( Allow1( S_TRANSLUCENT, D_MORPH ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Normal Map\n \tfloat2 g_vNormalTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup(\"Normal Map\"); >;\n@@ -93,7 +93,7 @@ VS\n \tfloat2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup(\"Color/40\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5760 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (5068 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -107,26 +107,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1444\n+\tstruct _1126\n \t{\n-\t    float4 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _836\n+\tstruct _1119\n \t{\n-\t    _1444 _m0;\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _1570\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1570 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n@@ -141,11 +148,11 @@ VS\n \t\n \tstatic float4 gl_Position;\n \tstatic float gl_ClipDistance[1];\n-\tstatic float3 vPositionOs;\n-\tstatic float2 vTexCoord;\n-\tstatic float3 vNormalOs;\n-\tstatic float4 vTangentUOs_flTangentVSign;\n-\tstatic uint nInstanceIdx;\n+\tstatic uint vPositionOs;\n+\tstatic float3 vTexCoord;\n+\tstatic float2 vNormalOs;\n+\tstatic float3 vTangentUOs_flTangentVSign;\n+\tstatic float4 nInstanceIdx;\n \tstatic float3 output_0;\n \tstatic float4 output_1;\n \tstatic float3 output_2;\n@@ -154,11 +161,11 @@ VS\n \t\n \tstruct VS_INPUT\n \t{\n-\t    float3 vPositionOs : TEXCOORD0;\n-\t    float2 vTexCoord : TEXCOORD1;\n-\t    float3 vNormalOs : TEXCOORD2;\n-\t    float4 vTangentUOs_flTangentVSign : TEXCOORD3;\n-\t    uint nInstanceIdx : TEXCOORD4;\n+\t    float3 vTexCoord : TEXCOORD0;\n+\t    float2 vNormalOs : TEXCOORD1;\n+\t    float3 vTangentUOs_flTangentVSign : TEXCOORD2;\n+\t    float4 nInstanceIdx : TEXCOORD3;\n+\t    uint vPositionOs : TEXCOORD4;\n \t};\n \t\n \tstruct PS_INPUT\n@@ -174,7 +181,25 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(vPositionOs * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(vPositionOs * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(vPositionOs * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(vPositionOs * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(vPositionOs * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(vPositionOs * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(vPositionOs * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(vPositionOs * 32 + 28));\n+\t    _1125 _22470;\n+\t    _22470._m0 = _24007._m0;\n+\t    _22470._m1 = _24007._m1;\n+\t    _22470._m2 = _24007._m2;\n+\t    _22470._m3 = _24007._m3;\n+\t    _22470._m4 = _24007._m4;\n+\t    _22470._m5 = _24007._m5;\n+\t    _22470._m6 = _24007._m6;\n+\t    _22470._m7 = _24007._m7;\n+\t    float4 _23812 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -205,25 +230,22 @@ VS\n \t    {\n \t        _19302 = _7676.z;\n \t    }\n-\t    _1444 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _11198 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));\n-\t    float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_22470._m1 * 48 + 0), g_transformBuffer.Load4(_22470._m1 * 48 + 16), g_transformBuffer.Load4(_22470._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _11198 = normalize(mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)));\n+\t    float3 _12861 = mul(_19848._m0, float4(nInstanceIdx.xyz, 0.0f)).xyz;\n \t    float3 _24912 = _11198.xyz;\n-\t    float3 _19938 = mul(_14817, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n+\t    float3 _19938 = mul(_19848._m0, float4(vTexCoord.xyz, 1.0f));\n+\t    float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n \t    output_0 = _11198;\n-\t    output_1 = float4((vTexCoord.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy, ((vTexCoord.xy * _Globals_1_g_vNormalTexCoordScale.xy) * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy);\n+\t    output_1 = float4((vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy, ((vNormalOs.xy * _Globals_1_g_vNormalTexCoordScale.xy) * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy);\n \t    output_2 = _19938;\n \t    output_3 = float4(_21354, _21355, _19302, _23812.w);\n-\t    output_4 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);\n-\t    _23894.y = -_23894.y;\n-\t    gl_Position = _23894;\n+\t    output_4 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), nInstanceIdx.w);\n+\t    _18256.y = -_18256.y;\n+\t    gl_Position = _18256;\n \t    gl_ClipDistance[0] = dot(float4(_19938.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t\n@@ -296,10 +318,13 @@ PS\n \tRenderState(StencilPassOp, 2);\n \tRenderState(StencilRef, 1);\n \tRenderState(StencilWriteMask, 1);\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n+\tfloat g_flCubeMapBlur < UiType(Slider); Expression((thisAmount*9)+1); >;\n+\tint g_nEnvMapIndex < Attribute(\"EnvMapIndex\"); UiType(Slider); >;\n \tTexture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;\n \tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, PreserveCoverage(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n+\tTextureCubeArray g_tEnvLightProbes < Attribute(\"EnvMapArray\"); SrgbRead(true); >;\n \tTexture2D g_tMetalnessReflectanceFresnel < Channel(R, Box(TextureMetalness), Linear); Channel(G, Box(TextureReflectance), Linear); OutputFormat(DXT1); SrgbRead(false); >;\n \tTexture2D g_tNormal < Channel(AG, MipNormal(TextureNormal), Linear); OutputFormat(DXT5); SrgbRead(false); >;\n \tTexture2D g_tRoughness < Channel(RGBA, AnisoNormal(TextureNormal, TextureGlossiness), Linear); OutputFormat(DXT5); SrgbRead(false); >;\n@@ -335,126 +360,137 @@ PS\n \tfloat g_flAlphaTestReference < Default(0.5); Range(0.01, 0.99); UiType(Slider); UiGroup(\"Translucent\"); >;\n \tfloat g_flOpacityScale < Default(1); UiType(Slider); UiGroup(\"Translucent\"); >;\n \t\n-\t#if (S_RENDER_BACKFACES == 0)\n-\t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n-\t#endif\n+\t// Cube Map\n+\tfloat g_flCubeMapBlurAmount < Default(1); Range(0, 2); UiType(Slider); UiGroup(\"Cube Map,40/30\"); >;\n+\t\n \t#if (S_TRANSLUCENT == 1)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n-\t#if (S_ALPHA_TEST == 0)\n-\t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n-\t#endif\n-\t#if (S_MODE_TOOLS_WIREFRAME == 0)\n+\t#if (S_OVERLAY == 1)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n-\t#if (S_SPECULAR_CUBE_MAP == 0)\n+\t#if (S_ALPHA_TEST == 0)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n \t#if (S_UNLIT == 0)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n-\t#if (S_OVERLAY == 1)\n+\t#if (S_MODE_TOOLS_WIREFRAME == 0)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n \t#if (S_TOOLS_ENABLED == 0)\n \t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t#endif\n-\t\n-\t// SPIR-V reflection failed for backend HLSL:\n-\t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vColorTint) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n-\t// Re-attempting reflection with the GLSL backend.\n+\t#if (S_RENDER_BACKFACES == 0)\n+\t\tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n+\t#endif\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5912 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n-\t\n-\t#version 460\n+\t// SPIR-V source (5896 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tvec3 _2;\n-\tvec4 _3;\n+\tstatic float3 _2;\n+\tstatic float4 _3;\n \t\n-\tstruct _1077\n+\tcbuffer _Globals_ : register(b0, space1)\n \t{\n-\t    float g_flBumpStrength;\n-\t    vec3 g_vColorTint;\n-\t    vec2 g_vRoughnessScaleAndBias;\n+\t    float _Globals_1_g_flBumpStrength : packoffset(c0.w);\n+\t    float3 _Globals_1_g_vColorTint : packoffset(c1);\n+\t    float2 _Globals_1_g_vRoughnessScaleAndBias : packoffset(c3.y);\n \t};\n \t\n-\tlayout(set = 1) uniform _1077 _Globals_;\n-\t\n-\tstruct _1017\n+\tcbuffer RoughnessLightingGlobalsCB_t : register(b3, space1)\n \t{\n-\t    vec4 _m0;\n+\t    float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);\n \t};\n \t\n-\tlayout(set = 1) uniform _1017 RoughnessLightingGlobalsCB_t;\n-\t\n-\tstruct _1227\n+\tcbuffer PerViewConstantBuffer_t : register(b1, space1)\n \t{\n-\t    float _m0;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    float _m5;\n-\t    float _m6;\n+\t    float PerViewConstantBuffer_t_1_m0 : packoffset(c18);\n+\t    float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);\n+\t    float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);\n+\t    float PerViewConstantBuffer_t_1_m4 : packoffset(c32);\n+\t    float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);\n+\t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n-\tlayout(set = 1) uniform _1227 PerViewConstantBuffer_t;\n-\t\n-\tstruct _1065\n+\tcbuffer SunLightShaderParamsCB_t : register(b4, space1)\n \t{\n-\t    vec4 _m0;\n-\t    vec3 _m1;\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n-\tlayout(set = 1) uniform _1065 SunLightShaderParamsCB;\n+\tTexture2D<float4> g_tColor : register(t32, space1);\n+\tSamplerState DefaultSamplerState_0 : register(s16, space1);\n+\tTexture2D<float4> g_tNormal : register(t33, space1);\n+\tTexture2D<float4> g_tRoughness : register(t34, space1);\n \t\n-\tlayout(set = 1, binding = 31) uniform texture2D g_tColor;\n-\tlayout(set = 1, binding = 15) uniform sampler DefaultSamplerState_0;\n-\tlayout(set = 1, binding = 32) uniform texture2D g_tNormal;\n-\tlayout(set = 1, binding = 33) uniform texture2D g_tRoughness;\n+\tstatic float3 input_0;\n+\tstatic float4 input_1;\n+\tstatic float4 input_2;\n+\tstatic float4 input_3;\n+\tstatic float3 input_4;\n+\tstatic float4 output_0;\n \t\n-\tlayout(location = 0) in vec3 input_0;\n-\tlayout(location = 1) in vec4 input_1;\n-\tlayout(location = 3) in vec4 input_2;\n-\tlayout(location = 4) in vec4 input_3;\n-\tlayout(location = 2) in vec3 input_4;\n-\tlayout(location = 0) out vec4 output_0;\n+\tstruct PS_INPUT\n+\t{\n+\t    float3 input_0 : TEXCOORD0;\n+\t    float4 input_1 : TEXCOORD1;\n+\t    float3 input_4 : TEXCOORD2;\n+\t    float4 input_2 : TEXCOORD3;\n+\t    float4 input_3 : TEXCOORD4;\n+\t};\n \t\n-\tvoid main()\n+\tstruct PS_OUTPUT\n \t{\n-\t    vec2 _7707 = (texture(sampler2D(g_tNormal, DefaultSamplerState_0), input_1.zw).wy * 2.0) - vec2(1.0);\n+\t    float4 output_0 : SV_Target0;\n+\t};\n+\t\n+\tvoid MainPs_inner()\n+\t{\n+\t    float2 _7707 = (g_tNormal.Sample(DefaultSamplerState_0, input_1.zw).wy * 2.0f) - 1.0f.xx;\n \t    float _9481 = _7707.x;\n-\t    vec3 _22101;\n+\t    float3 _22101;\n \t    _22101.x = _9481;\n \t    float _21775 = _7707.y;\n \t    _22101.y = _21775;\n-\t    vec3 _19739 = vec3(_9481, _21775, sqrt(clamp(1.0 - dot(_22101.xy, _22101.xy), 0.0, 1.0)));\n+\t    float3 _19739 = float3(_9481, _21775, sqrt(clamp(1.0f - dot(_22101.xy, _22101.xy), 0.0f, 1.0f)));\n \t    _19739.y = -_21775;\n-\t    vec3 _24157 = _19739.xyz;\n-\t    vec2 _11003 = _19739.xy * _Globals_.g_flBumpStrength;\n+\t    float3 _24157 = _19739.xyz;\n+\t    float2 _11003 = _19739.xy * _Globals_1_g_flBumpStrength;\n \t    _24157.x = _11003.x;\n \t    _24157.y = _11003.y;\n-\t    vec3 _23712 = normalize(_24157.xyz);\n-\t    vec4 _3401 = texture(sampler2D(g_tRoughness, DefaultSamplerState_0), input_1.xy);\n-\t    vec3 _14744 = normalize((((normalize(input_3.xyz).xyz * _23712.x).xyz + ((normalize(cross(normalize(input_0.xyz).xyz, input_3.xyz)) * input_3.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;\n-\t    vec3 _23378 = saturate(_14744);\n-\t    vec3 _23904 = saturate(-_14744);\n-\t    float _7186 = (1.0 - min(1.0, ((((_3401.z + _3401.w) * 0.5) * _Globals_.g_vRoughnessScaleAndBias.x) + _Globals_.g_vRoughnessScaleAndBias.y) + ((_3401.x + _3401.y) * 0.5))) * 0.800000011920928955078125;\n-\t    vec3 _21103 = ((RoughnessLightingGlobalsCB_t._m0.xyz * (dot(vec3(0.60000002384185791015625, 0.4000000059604644775390625, 1.0), _23378 * _23378) + dot(vec3(0.60000002384185791015625, 0.4000000059604644775390625, 0.20000000298023223876953125), _23904 * _23904))).xyz + ((SunLightShaderParamsCB._m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB._m1.xyz), 0.0, 1.0), _7186 + 0.60000002384185791015625) * ((_7186 + 1.60000002384185791015625) * 0.5))) * 1.0)).xyz * ((texture(sampler2D(g_tColor, DefaultSamplerState_0), input_1.xy).xyz * _Globals_.g_vColorTint.xyz) * input_2.xyz).xyz;\n-\t    vec4 _13888;\n+\t    float3 _23712 = normalize(_24157.xyz);\n+\t    float4 _3401 = g_tRoughness.Sample(DefaultSamplerState_0, input_1.xy);\n+\t    float3 _14744 = normalize((((normalize(input_3.xyz).xyz * _23712.x).xyz + ((normalize(cross(normalize(input_0.xyz).xyz, input_3.xyz)) * input_3.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;\n+\t    float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n+\t    float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n+\t    float _7186 = (1.0f - min(1.0f, ((((_3401.z + _3401.w) * 0.5f) * _Globals_1_g_vRoughnessScaleAndBias.x) + _Globals_1_g_vRoughnessScaleAndBias.y) + ((_3401.x + _3401.y) * 0.5f))) * 0.800000011920928955078125f;\n+\t    float3 _21103 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), _7186 + 0.60000002384185791015625f) * ((_7186 + 1.60000002384185791015625f) * 0.5f))) * 1.0f)).xyz * ((g_tColor.Sample(DefaultSamplerState_0, input_1.xy).xyz * _Globals_1_g_vColorTint.xyz) * input_2.xyz).xyz;\n+\t    float4 _13888;\n \t    _13888.x = _21103.x;\n \t    _13888.y = _21103.y;\n \t    _13888.z = _21103.z;\n-\t    vec3 _19800 = mix(_13888.xyz, PerViewConstantBuffer_t._m2.xyz, vec3(clamp(min(PerViewConstantBuffer_t._m5, pow(clamp((distance(input_4.xyz, PerViewConstantBuffer_t._m1.xyz) * PerViewConstantBuffer_t._m4) + PerViewConstantBuffer_t._m3, 0.0, 1.0), PerViewConstantBuffer_t._m6)), 0.0, 1.0)));\n-\t    vec4 _17842;\n+\t    float3 _19800 = lerp(_13888.xyz, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_4.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);\n+\t    float4 _17842;\n \t    _17842.x = _19800.x;\n \t    _17842.y = _19800.y;\n \t    _17842.z = _19800.z;\n-\t    output_0 = vec4(_17842.xyz * PerViewConstantBuffer_t._m0, 1.0);\n+\t    output_0 = float4(_17842.xyz * PerViewConstantBuffer_t_1_m0, 1.0f);\n \t}\n \t\n+\tPS_OUTPUT MainPs(PS_INPUT stage_input)\n+\t{\n+\t    input_0 = stage_input.input_0;\n+\t    input_1 = stage_input.input_1;\n+\t    input_2 = stage_input.input_2;\n+\t    input_3 = stage_input.input_3;\n+\t    input_4 = stage_input.input_4;\n+\t    MainPs_inner();\n+\t    PS_OUTPUT stage_output;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n \t\n \t// ---------  SPIRV -> HLSL end  --------- \n \t\n@@ -483,56 +519,73 @@ PS\n \t#if (S_TRANSLUCENT == 1)\n \t\tBoolAttribute(translucent, true);\n \t#endif\n-\t#if (S_UNLIT == 0)\n+\t#if (S_SPECULAR_CUBE_MAP == 1)\n+\t\tBoolAttribute(environmentmapped, true);\n+\t#endif\n+\t#if (S_SPECULAR_CUBE_MAP == 0)\n \t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n-\t#if (S_TRANSLUCENT == 0)\n-\t\tTextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);\n-\t\tFloat3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);\n-\t\tFloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);\n-\t\tBoolAttribute(ForwardLayerOnly, true);\n-\t\tBoolAttribute(mapbuilder_donotcollapse, true);\n+\t#if (S_OVERLAY == 1)\n+\t\tBoolAttribute(translucent, true);\n+\t\tBoolAttribute(overlay, true);\n \t#endif\n \t#if (S_SELF_ILLUM == 0)\n \t\tBoolAttribute(translucent, true);\n+\t\tBoolAttribute(overlay, true);\n+\t#endif\n+\t#if (S_UNLIT == 0)\n+\t\tBoolAttribute(translucent, true);\n+\t\tBoolAttribute(overlay, true);\n \t#endif\n-\t#if (S_SPECULAR_CUBE_MAP == 0)\n+\t#if (S_TOOLS_ENABLED == 0)\n+\t\tBoolAttribute(translucent, true);\n+\t\tBoolAttribute(overlay, true);\n+\t#endif\n+\t#if (S_SPECULAR == 1)\n \t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n \t#if (S_MODE_TOOLS_WIREFRAME == 0)\n \t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n+\t#if (S_RENDER_BACKFACES == 1)\n+\t\tTextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);\n+\t\tFloat3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);\n+\t\tFloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);\n+\t\tBoolAttribute(ForwardLayerOnly, true);\n+\t\tBoolAttribute(mapbuilder_donotcollapse, true);\n+\t#endif\n \t#if (S_OVERLAY == 0)\n \t\tTextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);\n \t\tFloat3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);\n \t\tFloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);\n \t\tBoolAttribute(ForwardLayerOnly, true);\n \t\tBoolAttribute(mapbuilder_donotcollapse, true);\n \t#endif\n-\t#if (S_OVERLAY == 1)\n-\t\tBoolAttribute(translucent, true);\n-\t\tBoolAttribute(overlay, true);\n+\t#if (S_TRANSLUCENT == 0)\n+\t\tTextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);\n+\t\tFloat3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);\n+\t\tFloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);\n+\t\tBoolAttribute(ForwardLayerOnly, true);\n+\t\tBoolAttribute(mapbuilder_donotcollapse, true);\n \t#endif\n \t#if (S_RENDER_BACKFACES == 0)\n \t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n-\t#if (S_TOOLS_ENABLED == 0)\n+\t#if (S_ALPHA_TEST == 0)\n \t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n-\t#if (S_RENDER_BACKFACES == 1)\n+\t#if (S_SPECULAR == 0)\n \t\tTextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);\n \t\tFloat3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);\n \t\tFloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);\n+\t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(ForwardLayerOnly, true);\n \t\tBoolAttribute(mapbuilder_donotcollapse, true);\n-\t#endif\n-\t#if (S_ALPHA_TEST == 0)\n-\t\tBoolAttribute(translucent, true);\n \t\tBoolAttribute(overlay, true);\n \t#endif\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/gpu_debug_draw2d.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/gpu_debug_draw3d.slang",
          "status": "modified",
          "additions": 9,
          "deletions": 14,
          "changes": 23,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -38,17 +38,12 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1592 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (988 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _394\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n-\tcbuffer _Globals_ : register(b0, space0)\n-\t{\n-\t    _394 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -71,10 +66,10 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _7941 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(vPosition.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n+\t    float4 _21374 = mul(PerViewConstantBuffer_t_1_m0, (float4(vPosition.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = vColor;\n-\t    _7941.y = -_7941.y;\n-\t    gl_Position = _7941;\n+\t    _21374.y = -_21374.y;\n+\t    gl_Position = _21374;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/gpu_vis_update_node_visibility.slang",
          "status": "modified",
          "additions": 17,
          "deletions": 8,
          "changes": 25,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -30,16 +30,21 @@ CS\n {\n \t\n \tRWBuffer<float4> g_RWVisBits < Attribute(\"VisBits\"); >;\n-\tStructuredBuffer g_VisRegions < Attribute(\"VisRegions\"); SrgbRead(false); >;\n+\tStructuredBuffer g_VisRegions < Attribute(\"VisRegions\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1612 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1640 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _981\n \t{\n \t    uint _m0;\n \t};\n \t\n+\tstruct _982\n+\t{\n+\t    uint _m0;\n+\t};\n+\t\n \tByteAddressBuffer g_VisRegions : register(t33, space0);\n \tRWBuffer<uint> _3898 : register(u158, space0);\n \t\n@@ -53,21 +58,25 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    uint _17382 = (gl_WorkGroupID.x * 128u) + gl_LocalInvocationID.x;\n+\t    uint _8548 = (gl_WorkGroupID.x * 128u) + gl_LocalInvocationID.x;\n \t    uint _4283;\n \t    uint _4901;\n-\t    uint _13155 = _17382;\n+\t    uint _13155 = _8548;\n \t    uint _16208 = 0u;\n \t    for (;;)\n \t    {\n \t        if (!(_16208 < 2u))\n \t        {\n \t            break;\n \t        }\n-\t        uint _25020 = g_VisRegions.Load(_13155 * 4 + 0) & 4095u;\n-\t        if ((_3898[int(_25020 / 32u)].xxxx.x & (1u << (_25020 % 32u))) != 0u)\n+\t        _982 _10769;\n+\t        _10769._m0 = g_VisRegions.Load(_13155 * 4 + 0);\n+\t        _981 _22470;\n+\t        _22470._m0 = _10769._m0;\n+\t        uint _22552 = _22470._m0 & 4095u;\n+\t        if ((_3898[int(_22552 / 32u)].xxxx.x & (1u << (_22552 % 32u))) != 0u)\n \t        {\n-\t            uint _13532 = g_VisRegions.Load(_13155 * 4 + 0) >> uint(12);\n+\t            uint _13532 = _22470._m0 >> uint(12);\n \t            uint _6313;\n \t            InterlockedOr(_3898[_13532 / 32u], 1u << (_13532 % 32u), _6313);\n \t        }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/grasstile.slang",
          "status": "modified",
          "additions": 64,
          "deletions": 45,
          "changes": 109,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_41\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -48,25 +48,25 @@ VS\n \tcbuffer GrassParamsPerQuadSlice_t < Attribute(\"GrassParamsPerQuadSlice_t\"); >;\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tDensityArray < Attribute(\"DensityArray\"); SrgbRead(false); >;\n \tTexture2D g_tHeightArray < Attribute(\"HeightArray\"); SrgbRead(false); >;\n \tTexture2D g_tSkewBrightness < Attribute(\"SkewBrightness\"); SrgbRead(false); >;\n \tTexture2D g_tTintArray < Attribute(\"TintArray\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \tfloat3 g_vFadeParams < Default3(1000, 1500, 1); Attribute(\"FadeParams\"); UiType(VectorText); >;\n \tfloat3 g_vWindDir < Default2(0.707, 0.707); Attribute(\"WindDir\"); UiType(VectorText); >;\n \tfloat3 g_vWindOffset < Default3(0.25, 0.2, 0.21); Attribute(\"WindOffset\"); UiType(VectorText); >;\n \tfloat4 g_vWindStrengthFreqMulHighStrength < Default4(0.25, 0.03, 0.003, 0.25); Attribute(\"WindStrengthFreq\"); UiType(VectorText); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vWindDir) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (9776 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (9200 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n@@ -82,24 +82,31 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1654\n+\tstruct _1119\n \t{\n-\t    vec4 _m0[3];\n+\t    mat3x4 _m0;\n \t};\n \t\n-\tstruct _1256\n+\tstruct _1126\n \t{\n-\t    _1654 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _533\n+\tstruct _1120\n \t{\n-\t    vec4 _m0[8];\n+\t    mat3x4 _m0;\n \t};\n \t\n-\tstruct _1780\n+\tstruct _113\n \t{\n-\t    vec4 _m0[4];\n+\t    vec4 _m0[8];\n \t};\n \t\n \tvec3 _3;\n@@ -108,24 +115,24 @@ VS\n \t\n \tlayout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer\n \t{\n-\t    _1125 _m0[];\n+\t    _1126 _m0[];\n \t} g_instanceBuffer_1;\n \t\n \tlayout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer\n \t{\n-\t    _1256 _m0[];\n+\t    _1120 _m0[];\n \t} g_transformBuffer_1;\n \t\n-\tstruct _2442\n+\tstruct _64\n \t{\n-\t    _533 _m0;\n-\t    _533 _m1;\n-\t    _533 _m2;\n-\t    _533 _m3;\n-\t    _533 _m4;\n+\t    _113 _m0;\n+\t    _113 _m1;\n+\t    _113 _m2;\n+\t    _113 _m3;\n+\t    _113 _m4;\n \t};\n \t\n-\tlayout(set = 0) uniform _2442 GrassParamsPerQuadSlice_t;\n+\tlayout(set = 0) uniform _64 GrassParamsPerQuadSlice_t;\n \t\n \tstruct _1209\n \t{\n@@ -137,14 +144,14 @@ VS\n \t\n \tlayout(set = 0) uniform _1209 _Globals_;\n \t\n-\tstruct _1635\n+\tstruct _1288\n \t{\n-\t    _1780 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t    vec3 _m2;\n \t};\n \t\n-\tlayout(set = 0) uniform _1635 PerViewConstantBuffer_t;\n+\tlayout(set = 0) uniform _1288 PerViewConstantBuffer_t;\n \t\n \tlayout(set = 0, binding = 35) uniform texture2D g_tDensityArray;\n \tlayout(set = 0, binding = 14) uniform sampler AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear;\n@@ -168,7 +175,18 @@ VS\n \t\n \tvoid main()\n \t{\n-\t    vec4 _10881 = fract(vSide_Top_Right.xyzw + (saturate(vSide_Top_Right.xyzw * 1000000.0) * ((g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0].w * 0.013698630034923553466796875) + (g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1].w * 0.005181347019970417022705078125))));\n+\t    _1125 _19924;\n+\t    _19924._m0 = g_instanceBuffer_1._m0[vDensityMask]._m0;\n+\t    _19924._m1 = g_instanceBuffer_1._m0[vDensityMask]._m1;\n+\t    _19924._m2 = g_instanceBuffer_1._m0[vDensityMask]._m2;\n+\t    _19924._m3 = g_instanceBuffer_1._m0[vDensityMask]._m3;\n+\t    _19924._m4 = g_instanceBuffer_1._m0[vDensityMask]._m4;\n+\t    _19924._m5 = g_instanceBuffer_1._m0[vDensityMask]._m5;\n+\t    _19924._m6 = g_instanceBuffer_1._m0[vDensityMask]._m6;\n+\t    _19924._m7 = g_instanceBuffer_1._m0[vDensityMask]._m7;\n+\t    _1119 _20228;\n+\t    _20228._m0 = g_transformBuffer_1._m0[_19924._m1]._m0;\n+\t    vec4 _10881 = fract(vSide_Top_Right.xyzw + (saturate(vSide_Top_Right.xyzw * 1000000.0) * ((_20228._m0[0].w * 0.013698630034923553466796875) + (_20228._m0[1].w * 0.005181347019970417022705078125))));\n \t    float _21853 = abs(nInstanceIdx.x);\n \t    vec2 _10547 = (vUStart_VStart_UVScale_GrassQuadU.xy + (vec2(_21853, nInstanceIdx.y) * vUStart_VStart_UVScale_GrassQuadU.z)).xy;\n \t    vec4 _10799 = textureLod(sampler2D(g_tHeightArray, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_1), _10547, 0.0);\n@@ -186,25 +204,26 @@ VS\n \t    int _18779 = int(vUStart_VStart_UVScale_GrassQuadU.w);\n \t    vec4 _7832 = saturate(_13292);\n \t    float _15699 = dot(mix(GrassParamsPerQuadSlice_t._m1._m0[_18779], GrassParamsPerQuadSlice_t._m2._m0[_18779], vec4(vPositionOs.y)), _7832) * _14802;\n-\t    vec3 _13005 = ((vec3(_22101.xy, 0.0) * mat3(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0].xyz, g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1].xyz, g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[2].xyz)).xyz * _Globals_.g_vFadeParams.z).xyz;\n+\t    vec3 _13005 = ((vec3(_22101.xy, 0.0) * mat3(_20228._m0[0].xyz, _20228._m0[1].xyz, _20228._m0[2].xyz)).xyz * _Globals_.g_vFadeParams.z).xyz;\n \t    float _11300 = length(_13005);\n \t    vec3 _18636 = vec3(_11300);\n+\t    vec2 _13842 = vec3(256.0 * (_21853 - 0.5), 256.0 * (nInstanceIdx.y - 0.5), _17919).xy + ((_24823.xy * (0.5 * _24664.x)) * (dot(GrassParamsPerQuadSlice_t._m0._m0[_18779], _7832) * _14802));\n \t    float _6967 = dot(vec4(0.0, 1.0, 2.0, 3.0), _7832);\n \t    float _23131 = vUStart_VStart_UVScale_GrassQuadU.w * 0.125;\n \t    vec2 _10633;\n \t    if ((float(int(sign(nInstanceIdx.x))) * (dot(GrassParamsPerQuadSlice_t._m4._m0[_18779], _7832) * _14802)) > 0.0)\n \t    {\n-\t        vec2 _10181;\n-\t        _10181.x = _23131 + (((1.0 - vPositionOs.x) + _6967) * 0.03125);\n-\t        _10633 = _10181;\n+\t        vec2 _10180;\n+\t        _10180.x = _23131 + (((1.0 - vPositionOs.x) + _6967) * 0.03125);\n+\t        _10633 = _10180;\n \t    }\n \t    else\n \t    {\n-\t        vec2 _10180;\n-\t        _10180.x = _23131 + ((vPositionOs.x + _6967) * 0.03125);\n-\t        _10633 = _10180;\n+\t        vec2 _10181;\n+\t        _10181.x = _23131 + ((vPositionOs.x + _6967) * 0.03125);\n+\t        _10633 = _10181;\n \t    }\n-\t    vec3 _13631 = (vec4(vec3(vec3(256.0 * (_21853 - 0.5), 256.0 * (nInstanceIdx.y - 0.5), _17919).xy + ((_24823.xy * (0.5 * _24664.x)) * (dot(GrassParamsPerQuadSlice_t._m0._m0[_18779], _7832) * _14802)), _17919 + ((_18203 * _15699) * (1.0 - _11300))).xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[2])).xyz;\n+\t    vec3 _13631 = (vec4(vec3(_13842, _17919 + ((_18203 * _15699) * (1.0 - _11300))).xyz, 1.0) * _20228._m0).xyz;\n \t    vec3 _6344 = _13631;\n \t    _6344.z = 0.0;\n \t    vec3 _7692 = (_6344.xyz * _Globals_.g_vWindStrengthFreqMulHighStrength.yyy) + _Globals_.g_vWindOffset.xyz;\n@@ -216,14 +235,14 @@ VS\n \t    vec4 _21368 = abs((fract((fract(vec4(_20211, _7692.yz, dot(_20488.xyz, vec3(1.0))).xyzw * vec4(0.5, 1.0, 0.5, 1.5)) * 2.0) + vec4(-0.5)) * 2.0) - vec4(1.0));\n \t    vec3 _9428 = mix((_Globals_.g_vWindDir * (dot((((_21368 * _21368) * (vec4(3.0) - (_21368 * 2.0))) * vec4(1.0, 0.5, 0.25, 0.0500000007450580596923828125)).xyzw, vec4(1.0)) * _Globals_.g_vWindStrengthFreqMulHighStrength.x)) * (dot(GrassParamsPerQuadSlice_t._m3._m0[_18779], _7832) * _14802), (_13005 / _18636).xyz, _18636) * _18203;\n \t    vec3 _15100 = _13631 + (_9428 * _15699);\n-\t    vec4 _23552 = (vec4(_15100.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n+\t    vec4 _17914 = (vec4(_15100.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = _15100;\n \t    output_1 = mix(cross(vec3(0.0, 0.0, 1.0), _24823).xyz, (vec3(0.0, 0.0, 1.0) + _9428.xyz).xyz, vec3(0.800000011920928955078125));\n \t    output_2 = vec2(_10633.x, 1.0 - _18203);\n \t    output_3 = vec3(textureLod(sampler2D(g_tTintArray, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_3), _10547, 0.0).xyz);\n \t    output_4 = vec3(_12684.z, 1.0 - clamp((length((_13631 - PerViewConstantBuffer_t._m2).xyz) - _Globals_.g_vFadeParams.x) / _Globals_.g_vFadeParams.y, 0.0, 1.0), 0.0);\n-\t    _23552.y = -_23552.y;\n-\t    gl_Position = _23552;\n+\t    _17914.y = -_17914.y;\n+\t    gl_Position = _17914;\n \t}\n \t\n \t\n@@ -244,22 +263,22 @@ PS\n \t\n \tRenderState(DepthEnable, exists(ATTRIBUTE[e75c960c]) ? ATTRIBUTE[e75c960c] : True);\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \tfloat g_flAlphaTestThreshold < Default(0.3); UiType(Slider); >;\n \tTexture2D g_tGrassQuadArray < Attribute(\"GrassQuadArray\"); SrgbRead(true); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2736 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2752 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer RoughnessLightingGlobalsCB_t : register(b3, space1)\n \t{\n \t    float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b4, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b4, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \tTexture2D<float4> g_tGrassQuadArray : register(t31, space1);\n@@ -291,7 +310,7 @@ PS\n \t    float3 _14744 = normalize(input_0.xyz).xyz;\n \t    float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n \t    float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n-\t    output_0 = float4(float4(((_19372.xyz * input_2.xyz) * lerp(0.0f.xxx, 1.0f.xxx, (clamp(input_3.x, 0.0f, 0.699999988079071044921875f) * 1.4285714626312255859375f).xxx).xyz) * input_3.x, _14493).xyz * ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _14493);\n+\t    output_0 = float4(float4(((_19372.xyz * input_2.xyz) * lerp(0.0f.xxx, 1.0f.xxx, (clamp(input_3.x, 0.0f, 0.699999988079071044921875f) * 1.4285714626312255859375f).xxx).xyz) * input_3.x, _14493).xyz * ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _14493);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/grasstile_preview.slang",
          "status": "modified",
          "additions": 54,
          "deletions": 32,
          "changes": 86,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_41\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -46,11 +46,11 @@ VS\n \tDynamicCombo( D_BAKE_GRASS, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2372 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -64,27 +64,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1570\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _1088\n+\tstruct _1126\n \t{\n-\t    _1570 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1696\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1696 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -115,20 +122,35 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1570 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _11684 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _19956 = mul(_11684, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23552 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = normalize(mul(_11684, float4(vNormalOs.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _20190;\n+\t    _20190._m0 = _8152._m0;\n+\t    float3 _19956 = mul(_20190._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _17914 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(_20190._m0, float4(vNormalOs.xyz, 0.0f)));\n \t    output_1 = vTexCoord;\n \t    output_2 = _19956;\n-\t    _23552.y = -_23552.y;\n-\t    gl_Position = _23552;\n+\t    _17914.y = -_17914.y;\n+\t    gl_Position = _17914;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -158,7 +180,7 @@ PS\n \tDynamicCombo( D_BAKE_GRASS, 0..1 );\n \t\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \tTexture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;\n \t\n \t// Color\n@@ -174,7 +196,7 @@ PS\n \tfloat g_flGrassHeightMax < Default(55); Range(1, 256); UiType(Slider); UiGroup(\"GrassSize/30\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2672 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _3;\n \t\n@@ -188,10 +210,10 @@ PS\n \t    float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b3, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b3, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \tTexture2D<float4> g_tColor : register(t30, space1);\n@@ -225,7 +247,7 @@ PS\n \t    float3 _14744 = normalize((input_0.xyz * (gl_FrontFacing ? 1.0f : (-1.0f))).xyz).xyz;\n \t    float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n \t    float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n-\t    output_0 = float4(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * _23714.xyz, _3401.w);\n+\t    output_0 = float4(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * _23714.xyz, _3401.w);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/imageformat_test.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/imgui.slang",
          "status": "modified",
          "additions": 8,
          "deletions": 8,
          "changes": 16,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -117,12 +117,12 @@ PS\n \t    int _Globals_1_g_ArrayArrayIndex : packoffset(c1.z);\n \t};\n \t\n-\tTexture2DArray<float4> g_texArray_unexpectedTypeId470_1107 : register(t32, space1);\n-\tSamplerState Filter_MinMagMipLinear : register(s16, space1);\n+\tTexture2D<float4> g_tex2D : register(t30, space1);\n+\tSamplerState Filter_MinMagMipLinear : register(s14, space1);\n \tTexture3D<float4> g_tex3D : register(t31, space1);\n \tSamplerState Filter_MinMagMipLinear_1 : register(s15, space1);\n-\tTexture2D<float4> g_tex2D : register(t30, space1);\n-\tSamplerState Filter_MinMagMipLinear_2 : register(s14, space1);\n+\tTexture2DArray<float4> g_texArray : register(t32, space1);\n+\tSamplerState Filter_MinMagMipLinear_2 : register(s16, space1);\n \t\n \tstatic float2 input_0;\n \tstatic float4 input_1;\n@@ -144,7 +144,7 @@ PS\n \t    float4 _21709;\n \t    if (_Globals_1_g_nTexType == 0)\n \t    {\n-\t        _21709 = g_tex2D.Sample(Filter_MinMagMipLinear_2, input_0.xy);\n+\t        _21709 = g_tex2D.Sample(Filter_MinMagMipLinear, input_0.xy);\n \t    }\n \t    else\n \t    {\n@@ -158,7 +158,7 @@ PS\n \t            float4 _12501;\n \t            if (_Globals_1_g_nTexType == 2)\n \t            {\n-\t                _12501 = g_texArray_unexpectedTypeId470_1107.Sample(Filter_MinMagMipLinear, float3(input_0.xy, float(_Globals_1_g_ArrayArrayIndex)).xyz);\n+\t                _12501 = g_texArray.Sample(Filter_MinMagMipLinear_2, float3(input_0.xy, float(_Globals_1_g_ArrayArrayIndex)).xyz);\n \t            }\n \t            else\n \t            {"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/imgui_srgb.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -114,7 +114,7 @@ PS\n \t\n \tTexture2D<float4> g_texture : register(t30, space1);\n \tSamplerState Filter_MinMagMipLinear : register(s14, space1);\n-\tTexture2DArray<float4> g_textureArray_unexpectedTypeId470_1107 : register(t31, space1);\n+\tTexture2DArray<float4> g_textureArray : register(t31, space1);\n \tSamplerState Filter_MinMagMipLinear_1 : register(s15, space1);\n \t\n \tstatic float2 input_0;\n@@ -138,7 +138,7 @@ PS\n \t    float4 _20655;\n \t    if (_Globals_1_g_ArrayIndex != (-1))\n \t    {\n-\t        _20655 = g_textureArray_unexpectedTypeId470_1107.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);\n+\t        _20655 = g_textureArray.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);\n \t    }\n \t    else\n \t    {"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/implicit_surface.slang",
          "status": "modified",
          "additions": 117,
          "deletions": 86,
          "changes": 203,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -33,11 +33,11 @@ CS\n \tDynamicCombo( D_FIELD_MODE, 0..1 );\n \tDynamicCombo( D_PER_PARTICLE_RADIUS, 0..1 );\n \t\n-\tStructuredBuffer g_DispatchBuffer < Attribute(\"DispatchBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_DispatchBuffer < Attribute(\"DispatchBuffer\"); >;\n \tRWByteAddressBuffer g_IndexBuffer < Attribute(\"IndexBuffer\"); >;\n \tRWBuffer<float4> g_IndirectDrawArgs < Attribute(\"IndirectDrawArgs\"); >;\n \tBuffer g_LookupTables < Attribute(\"LookupTables\"); SrgbRead(false); >;\n-\tStructuredBuffer g_Particles < Attribute(\"ParticleBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_Particles < Attribute(\"ParticleBuffer\"); >;\n \tRWByteAddressBuffer g_VertexBuffer < Attribute(\"VertexBuffer\"); >;\n \tfloat g_fIsosurfaceThreshold < Attribute(\"IsosurfaceThreshold\"); UiType(Slider); >;\n \tint g_nBrickHeight < Attribute(\"BrickHeight\"); UiType(Slider); >;\n@@ -53,11 +53,11 @@ CS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 5 (name: g_vBlobulatorConstants) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (17228 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (17084 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \tlayout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;\n@@ -80,11 +80,23 @@ CS\n \t    uint _m1;\n \t};\n \t\n+\tstruct _1023\n+\t{\n+\t    vec3 _m0;\n+\t    float _m1;\n+\t};\n+\t\n+\tstruct _992\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t};\n+\t\n \tuint _4;\n \t\n \tlayout(set = 0, binding = 31, std430) readonly buffer g_DispatchBuffer\n \t{\n-\t    _990 _m0[];\n+\t    _991 _m0[];\n \t} g_DispatchBuffer_1;\n \t\n \tstruct _1529\n@@ -105,7 +117,7 @@ CS\n \t\n \tlayout(set = 0, binding = 32, std430) readonly buffer g_Particles\n \t{\n-\t    _1022 _m0[];\n+\t    _1023 _m0[];\n \t} g_Particles_1;\n \t\n \tlayout(set = 0, binding = 159, std430) buffer undetermined\n@@ -118,23 +130,25 @@ CS\n \t    uint _m0[];\n \t} undetermined_3;\n \t\n-\tlayout(set = 0, binding = 30) uniform usamplerBuffer undetermined_4;\n+\tlayout(set = 0, binding = 30) uniform usamplerBuffer undetermined_unexpectedTypeId408_1045;\n \tlayout(set = 0, binding = 158, r32ui) uniform uimageBuffer _4008;\n \t\n \tshared uint _5696;\n \tshared uint _5501;\n \tshared float _3739[64][2];\n-\tshared _991 _3560[49];\n+\tshared _992 _3560[49];\n \tshared uint _4676[49];\n \t\n \tvoid main()\n \t{\n-\t    uint _10312 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m1;\n-\t    uint _15781 = _10312 >> uint(16);\n-\t    uint _7912 = _10312 & 65535u;\n+\t    _990 _20228;\n+\t    _20228._m0 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0;\n+\t    _20228._m1 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m1;\n+\t    uint _15978 = _20228._m1 >> uint(16);\n+\t    uint _9584 = _20228._m1 & 65535u;\n \t    uint _5563 = (gl_LocalInvocationID.y * 8u) + gl_LocalInvocationID.x;\n-\t    vec3 _23073 = _Globals_.g_vSystemOrigin + (_Globals_.g_vSystemStepSize * vec3(uvec3(((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0) & 1023u) * 7u, ((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0 >> uint(10)) & 1023u) * 7u, ((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0 >> uint(20)) & 4095u) * 4u)));\n-\t    vec3 _6302 = _23073 + vec3(_Globals_.g_vSystemStepSize.xy * vec2(gl_LocalInvocationID.xy), 0.0);\n+\t    vec3 _22446 = _Globals_.g_vSystemOrigin + (_Globals_.g_vSystemStepSize * vec3(uvec3((_20228._m0 & 1023u) * 7u, ((_20228._m0 >> uint(10)) & 1023u) * 7u, ((_20228._m0 >> uint(20)) & 4095u) * 4u)));\n+\t    vec3 _6302 = _22446 + vec3(_Globals_.g_vSystemStepSize.xy * vec2(gl_LocalInvocationID.xy), 0.0);\n \t    bool _8412 = all(equal(gl_LocalInvocationID.xy, uvec2(0u)));\n \t    if (_8412)\n \t    {\n@@ -145,42 +159,45 @@ CS\n \t    _13155 = 0.0;\n \t    uint _14722;\n \t    float _20258;\n-\t    uint _16208 = _15781;\n+\t    uint _16208 = _15978;\n \t    for (;;)\n \t    {\n-\t        if (!(_16208 < _7912))\n+\t        if (!(_16208 < _9584))\n \t        {\n \t            break;\n \t        }\n-\t        vec3 _12928 = _6302 - g_Particles_1._m0[_16208]._m0;\n-\t        float _18342 = dot(_12928, _12928);\n+\t        _1022 _20229;\n+\t        _20229._m0 = g_Particles_1._m0[_16208]._m0;\n+\t        _20229._m1 = g_Particles_1._m0[_16208]._m1;\n+\t        vec3 _20252 = _6302 - _20229._m0;\n+\t        float _21558 = dot(_20252, _20252);\n \t        float _11237;\n-\t        if (_18342 <= _Globals_.g_vBlobulatorConstants.x)\n+\t        if (_21558 <= _Globals_.g_vBlobulatorConstants.x)\n \t        {\n-\t            float _19902 = _18342 * _Globals_.g_vBlobulatorConstants.y;\n+\t            float _19902 = _21558 * _Globals_.g_vBlobulatorConstants.y;\n \t            _11237 = (0.25 + (_19902 * _19902)) - _19902;\n \t        }\n \t        else\n \t        {\n \t            _11237 = 0.0;\n \t        }\n-\t        _20258 = _13155 + (_11237 * g_Particles_1._m0[_16208]._m1);\n+\t        _20258 = _13155 + (_11237 * _20229._m1);\n \t        _14722 = _16208 + 1u;\n \t        _13155 = _20258;\n \t        _16208 = _14722;\n \t        continue;\n \t    }\n \t    _3739[_5563][0] = (_13155 - _Globals_.g_fIsosurfaceThreshold) * (-1.0);\n-\t    vec3 _13136;\n+\t    vec3 _13137;\n \t    vec3 _16305;\n-\t    _13136 = _23073;\n+\t    _13137 = _22446;\n \t    _16305 = _6302;\n \t    uint _4300;\n \t    vec3 _14716;\n \t    vec3 _19764;\n \t    uint _13039;\n \t    uint _17017 = 1u;\n-\t    uint _17133 = _15781;\n+\t    uint _17133 = _15978;\n \t    for (;;)\n \t    {\n \t        if (!(_17017 <= _Globals_.g_nBrickHeight))\n@@ -192,9 +209,12 @@ CS\n \t        for (;;)\n \t        {\n \t            bool _12885;\n-\t            if (_13039 < _7912)\n+\t            if (_13039 < _9584)\n \t            {\n-\t                _12885 = (g_Particles_1._m0[_13039]._m0.z + _Globals_.g_vBlobulatorConstants.w) < _16305.z;\n+\t                _1022 _20230;\n+\t                _20230._m0 = g_Particles_1._m0[_13039]._m0;\n+\t                _20230._m1 = g_Particles_1._m0[_13039]._m1;\n+\t                _12885 = (_20230._m0.z + _Globals_.g_vBlobulatorConstants.w) < _16305.z;\n \t            }\n \t            else\n \t            {\n@@ -208,8 +228,8 @@ CS\n \t            _13039 = _23989;\n \t            continue;\n \t        }\n-\t        _14716 = _13136;\n-\t        _14716.z = _13136.z + _Globals_.g_vSystemStepSize.z;\n+\t        _14716 = _13137;\n+\t        _14716.z = _13137.z + _Globals_.g_vSystemStepSize.z;\n \t        _19764 = _16305;\n \t        _19764.z = _16305.z + _Globals_.g_vSystemStepSize.z;\n \t        float _13156;\n@@ -219,23 +239,26 @@ CS\n \t        uint _16209 = _13039;\n \t        for (;;)\n \t        {\n-\t            if (!(_16209 < _7912))\n+\t            if (!(_16209 < _9584))\n \t            {\n \t                break;\n \t            }\n-\t            vec3 _12929 = _19764 - g_Particles_1._m0[_16209]._m0;\n-\t            float _18343 = dot(_12929, _12929);\n+\t            _1022 _20231;\n+\t            _20231._m0 = g_Particles_1._m0[_16209]._m0;\n+\t            _20231._m1 = g_Particles_1._m0[_16209]._m1;\n+\t            vec3 _20253 = _19764 - _20231._m0;\n+\t            float _21559 = dot(_20253, _20253);\n \t            float _11238;\n-\t            if (_18343 <= _Globals_.g_vBlobulatorConstants.x)\n+\t            if (_21559 <= _Globals_.g_vBlobulatorConstants.x)\n \t            {\n-\t                float _19903 = _18343 * _Globals_.g_vBlobulatorConstants.y;\n+\t                float _19903 = _21559 * _Globals_.g_vBlobulatorConstants.y;\n \t                _11238 = (0.25 + (_19903 * _19903)) - _19903;\n \t            }\n \t            else\n \t            {\n \t                _11238 = 0.0;\n \t            }\n-\t            _20259 = _13156 + (_11238 * g_Particles_1._m0[_16209]._m1);\n+\t            _20259 = _13156 + (_11238 * _20231._m1);\n \t            _14723 = _16209 + 1u;\n \t            _13156 = _20259;\n \t            _16209 = _14723;\n@@ -251,7 +274,7 @@ CS\n \t            uint _7596 = (_11305.y * 8u) + _11305.x;\n \t            uvec2 _11306 = gl_LocalInvocationID.xy + uvec2(1u);\n \t            uint _7597 = (_11306.y * 8u) + _11306.x;\n-\t            uvec4 _9781 = texelFetch(undetermined_4, int(_Globals_.g_nClassDataOffset + (((((((((floatBitsToUint(_3739[_5563][0u]) & 2147483648u) >> uint(31)) | ((floatBitsToUint(_3739[_7595][0u]) & 2147483648u) >> uint(30))) | ((floatBitsToUint(_3739[_7596][0u]) & 2147483648u) >> uint(29))) | ((floatBitsToUint(_3739[_7597][0u]) & 2147483648u) >> uint(28))) | ((floatBitsToUint(_3739[_5563][1u]) & 2147483648u) >> uint(27))) | ((floatBitsToUint(_3739[_7595][1u]) & 2147483648u) >> uint(26))) | ((floatBitsToUint(_3739[_7596][1u]) & 2147483648u) >> uint(25))) | ((floatBitsToUint(_3739[_7597][1u]) & 2147483648u) >> uint(24)))));\n+\t            uvec4 _9781 = texelFetch(undetermined_unexpectedTypeId408_1045, int(_Globals_.g_nClassDataOffset + (((((((((floatBitsToUint(_3739[_5563][0u]) & 2147483648u) >> uint(31)) | ((floatBitsToUint(_3739[_7595][0u]) & 2147483648u) >> uint(30))) | ((floatBitsToUint(_3739[_7596][0u]) & 2147483648u) >> uint(29))) | ((floatBitsToUint(_3739[_7597][0u]) & 2147483648u) >> uint(28))) | ((floatBitsToUint(_3739[_5563][1u]) & 2147483648u) >> uint(27))) | ((floatBitsToUint(_3739[_7595][1u]) & 2147483648u) >> uint(26))) | ((floatBitsToUint(_3739[_7596][1u]) & 2147483648u) >> uint(25))) | ((floatBitsToUint(_3739[_7597][1u]) & 2147483648u) >> uint(24)))));\n \t            uint _16997 = _9781.x;\n \t            uint _24537 = (_16997 >> uint(4)) & 15u;\n \t            uint _23149 = (_16997 >> uint(8)) & 15u;\n@@ -281,9 +304,8 @@ CS\n \t            }\n \t        }\n \t        barrier();\n-\t        uint _18165 = (8u * gl_LocalInvocationID.y) + gl_LocalInvocationID.x;\n-\t        uint _24510 = _5501 - 1u;\n-\t        uint _13205 = _24510 | (_24510 >> uint(1));\n+\t        uint _18293 = _5501 - 1u;\n+\t        uint _13205 = _18293 | (_18293 >> uint(1));\n \t        uint _25270 = _13205 | (_13205 >> uint(2));\n \t        uint _25271 = _25270 | (_25270 >> uint(4));\n \t        uint _25272 = _25271 | (_25271 >> uint(8));\n@@ -298,8 +320,8 @@ CS\n \t            {\n \t                break;\n \t            }\n-\t            uint _4009 = _13040 + (_18165 >> _7125);\n-\t            uint _3354 = _18165 & _14175;\n+\t            uint _4009 = _13040 + (_5563 >> _7125);\n+\t            uint _3354 = _5563 & _14175;\n \t            if (_4009 >= _5696)\n \t            {\n \t                break;\n@@ -311,16 +333,19 @@ CS\n \t            if (_3354 < ((_3560[_4009]._m0 >> uint(4)) & 15u))\n \t            {\n \t                vec3 _4278 = _14716 + vec3(vec2(_5072) * _Globals_.g_vSystemStepSize.xy, 0.0);\n-\t                uvec4 _8451 = texelFetch(undetermined_4, int((_Globals_.g_nVertexDataOffset + (_4688 * 12u)) + _3354));\n-\t                uint _10036 = _8451.x;\n-\t                uint _4758 = (_10036) & 15u;\n-\t                uint _4759 = (_10036 >> uint(4)) & 15u;\n-\t                uvec2 _7087 = _5072 + uvec3((_4758) & 1u, (_4758 >> uint(1)) & 1u, _4).xy;\n-\t                uvec2 _7088 = _5072 + uvec3((_4759) & 1u, (_4759 >> uint(1)) & 1u, _4).xy;\n+\t                uvec4 _9876 = texelFetch(undetermined_unexpectedTypeId408_1045, int((_Globals_.g_nVertexDataOffset + (_4688 * 12u)) + _3354));\n+\t                uint _16037 = _9876.x;\n+\t                uint _4758 = _16037 & 15u;\n+\t                uint _18698 = _16037 >> uint(4);\n+\t                uint _4759 = _18698 & 15u;\n+\t                uint _14643 = _16037 & 1u;\n+\t                uvec2 _7087 = _5072 + uvec3(_14643, (_4758 >> uint(1)) & 1u, _4).xy;\n+\t                uint _16065 = _18698 & 1u;\n+\t                uvec2 _7088 = _5072 + uvec3(_16065, (_4759 >> uint(1)) & 1u, _4).xy;\n \t                uint _16749 = uint(int(_4759 >= 4u));\n \t                uint _7599 = (_7088.y * 8u) + _7088.x;\n \t                vec3 _19688;\n-\t                if ((_4758 & 1u) != 0u)\n+\t                if (_14643 != 0u)\n \t                {\n \t                    vec3 _6984 = _4278;\n \t                    _6984.x = _4278.x + _Globals_.g_vSystemStepSize.x;\n@@ -331,7 +356,7 @@ CS\n \t                    _19688 = _4278;\n \t                }\n \t                vec3 _19689;\n-\t                if ((_4758 & 2u) != 0u)\n+\t                if ((_16037 & 2u) != 0u)\n \t                {\n \t                    vec3 _6985 = _19688;\n \t                    _6985.y = _19688.y + _Globals_.g_vSystemStepSize.y;\n@@ -341,51 +366,51 @@ CS\n \t                {\n \t                    _19689 = _19688;\n \t                }\n-\t                vec3 _19690;\n-\t                if ((_4758 & 4u) != 0u)\n+\t                vec3 _6905;\n+\t                if ((_16037 & 4u) != 0u)\n \t                {\n \t                    vec3 _6986 = _19689;\n \t                    _6986.z = _19689.z + _Globals_.g_vSystemStepSize.z;\n-\t                    _19690 = _6986;\n+\t                    _6905 = _6986;\n \t                }\n \t                else\n \t                {\n-\t                    _19690 = _19689;\n+\t                    _6905 = _19689;\n \t                }\n-\t                vec3 _19691;\n-\t                if ((_4759 & 1u) != 0u)\n+\t                vec3 _19690;\n+\t                if (_16065 != 0u)\n \t                {\n \t                    vec3 _6987 = _4278;\n \t                    _6987.x = _4278.x + _Globals_.g_vSystemStepSize.x;\n-\t                    _19691 = _6987;\n+\t                    _19690 = _6987;\n \t                }\n \t                else\n \t                {\n-\t                    _19691 = _4278;\n+\t                    _19690 = _4278;\n \t                }\n-\t                vec3 _19692;\n-\t                if ((_4759 & 2u) != 0u)\n+\t                vec3 _19691;\n+\t                if ((_18698 & 2u) != 0u)\n \t                {\n-\t                    vec3 _6988 = _19691;\n-\t                    _6988.y = _19691.y + _Globals_.g_vSystemStepSize.y;\n-\t                    _19692 = _6988;\n+\t                    vec3 _6988 = _19690;\n+\t                    _6988.y = _19690.y + _Globals_.g_vSystemStepSize.y;\n+\t                    _19691 = _6988;\n \t                }\n \t                else\n \t                {\n-\t                    _19692 = _19691;\n+\t                    _19691 = _19690;\n \t                }\n \t                vec3 _18229;\n-\t                if ((_4759 & 4u) != 0u)\n+\t                if ((_18698 & 4u) != 0u)\n \t                {\n-\t                    vec3 _6989 = _19692;\n-\t                    _6989.z = _19692.z + _Globals_.g_vSystemStepSize.z;\n+\t                    vec3 _6989 = _19691;\n+\t                    _6989.z = _19691.z + _Globals_.g_vSystemStepSize.z;\n \t                    _18229 = _6989;\n \t                }\n \t                else\n \t                {\n-\t                    _18229 = _19692;\n+\t                    _18229 = _19691;\n \t                }\n-\t                vec3 _12090 = mix(_18229, _19690, vec3(_3739[_7599][_16749] / (_3739[_7599][_16749] - _3739[(_7087.y * 8u) + _7087.x][uint(int(_4758 >= 4u))])));\n+\t                vec3 _12090 = mix(_18229, _6905, vec3(_3739[_7599][_16749] / (_3739[_7599][_16749] - _3739[(_7087.y * 8u) + _7087.x][uint(int(_4758 >= 4u))])));\n \t                _12090.z = _12090.z - _Globals_.g_vSystemStepSize.z;\n \t                vec3 _13157;\n \t                _13157 = vec3(0.0);\n@@ -394,23 +419,26 @@ CS\n \t                uint _16210 = _13039;\n \t                for (;;)\n \t                {\n-\t                    if (!(_16210 < _7912))\n+\t                    if (!(_16210 < _9584))\n \t                    {\n \t                        break;\n \t                    }\n-\t                    vec3 _12930 = _12090 - g_Particles_1._m0[_16210]._m0;\n-\t                    float _18344 = dot(_12930, _12930);\n+\t                    _1022 _20232;\n+\t                    _20232._m0 = g_Particles_1._m0[_16210]._m0;\n+\t                    _20232._m1 = g_Particles_1._m0[_16210]._m1;\n+\t                    vec3 _20254 = _12090 - _20232._m0;\n+\t                    float _21560 = dot(_20254, _20254);\n \t                    float _11484;\n-\t                    if (_18344 <= _Globals_.g_vBlobulatorConstants.x)\n+\t                    if (_21560 <= _Globals_.g_vBlobulatorConstants.x)\n \t                    {\n-\t                        float _19904 = _18344 * _Globals_.g_vBlobulatorConstants.y;\n+\t                        float _19904 = _21560 * _Globals_.g_vBlobulatorConstants.y;\n \t                        _11484 = (0.25 + (_19904 * _19904)) - _19904;\n \t                    }\n \t                    else\n \t                    {\n \t                        _11484 = 0.0;\n \t                    }\n-\t                    _23944 = _13157 + (_12930 * (_11484 * g_Particles_1._m0[_16210]._m1));\n+\t                    _23944 = _13157 + (_20254 * (_11484 * _20232._m1));\n \t                    _18752 = _16210 + 1u;\n \t                    _13157 = _23944;\n \t                    _16210 = _18752;\n@@ -427,7 +455,7 @@ CS\n \t                {\n \t                    _19321 = (vec2(1.0) - abs(_19000.yx)) * mix(vec2(-1.0), vec2(1.0), greaterThanEqual(_19000.xy, vec2(0.0)));\n \t                }\n-\t                uint _13526 = (_4676[(_22527 * 7u) + _23151] + ((_10036 >> uint(12)) & 15u)) * 16u;\n+\t                uint _13526 = (_4676[(_22527 * 7u) + _23151] + ((_16037 >> uint(12)) & 15u)) * 16u;\n \t                uvec3 _9171 = floatBitsToUint(_12090);\n \t                undetermined_1._m0[_13526 / 4u] = _9171.x;\n \t                undetermined_1._m0[(_13526 + 4u) / 4u] = _9171.y;\n@@ -436,11 +464,14 @@ CS\n \t            }\n \t            if (_3354 < ((_3560[_4009]._m0 >> uint(8)) & 15u))\n \t            {\n-\t                uvec4 _3401 = texelFetch(undetermined_4, int((_Globals_.g_nTriangleDataOffset + (_4688 * 5u)) + _3354));\n-\t                uint _10037 = _3401.x;\n-\t                uint _5913 = (_10037 >> uint(24)) & 3u;\n-\t                uint _5914 = (_10037 >> uint(26)) & 3u;\n-\t                uint _5915 = (_10037 >> uint(28)) & 3u;\n+\t                uvec4 _3401 = texelFetch(undetermined_unexpectedTypeId408_1045, int((_Globals_.g_nTriangleDataOffset + (_4688 * 5u)) + _3354));\n+\t                uint _16038 = _3401.x;\n+\t                uint _16517 = _16038 >> uint(24);\n+\t                uint _5913 = _16517 & 3u;\n+\t                uint _16518 = _16038 >> uint(26);\n+\t                uint _5914 = _16518 & 3u;\n+\t                uint _16088 = _16038 >> uint(28);\n+\t                uint _5915 = _16088 & 3u;\n \t                uint _7601 = uint(int(_23151 > 0u) | ((_22527 > 0u) ? 2 : 0));\n \t                bool _12887;\n \t                if (_5913 != 0u)\n@@ -454,7 +485,7 @@ CS\n \t                uvec2 _23168;\n \t                if (_12887)\n \t                {\n-\t                    _23168 = uvec2(_23151 - ((_5913) & 1u), _22527 - ((_5913 >> uint(1)) & 1u));\n+\t                    _23168 = uvec2(_23151 - (_16517 & 1u), _22527 - ((_5913 >> uint(1)) & 1u));\n \t                }\n \t                else\n \t                {\n@@ -472,7 +503,7 @@ CS\n \t                uvec2 _23169;\n \t                if (_12888)\n \t                {\n-\t                    _23169 = uvec2(_23151 - ((_5914) & 1u), _22527 - ((_5914 >> uint(1)) & 1u));\n+\t                    _23169 = uvec2(_23151 - (_16518 & 1u), _22527 - ((_5914 >> uint(1)) & 1u));\n \t                }\n \t                else\n \t                {\n@@ -490,16 +521,16 @@ CS\n \t                uvec2 _23170;\n \t                if (_12889)\n \t                {\n-\t                    _23170 = uvec2(_23151 - ((_5915) & 1u), _22527 - ((_5915 >> uint(1)) & 1u));\n+\t                    _23170 = uvec2(_23151 - (_16088 & 1u), _22527 - ((_5915 >> uint(1)) & 1u));\n \t                }\n \t                else\n \t                {\n \t                    _23170 = _5072;\n \t                }\n \t                uint _20110 = (_3560[_4009]._m1 + (_3354 * 3u)) * 4u;\n-\t                undetermined_3._m0[_20110 / 4u] = (_12887 ? ((_10037 >> uint(12)) & 15u) : ((_10037) & 15u)) + _4676[(_23168.y * 7u) + _23168.x];\n-\t                undetermined_3._m0[(_20110 + 4u) / 4u] = (_12888 ? ((_10037 >> uint(16)) & 15u) : ((_10037 >> uint(4)) & 15u)) + _4676[(_23169.y * 7u) + _23169.x];\n-\t                undetermined_3._m0[(_20110 + 8u) / 4u] = (_12889 ? ((_10037 >> uint(20)) & 15u) : ((_10037 >> uint(8)) & 15u)) + _4676[(_23170.y * 7u) + _23170.x];\n+\t                undetermined_3._m0[_20110 / 4u] = (_12887 ? ((_16038 >> uint(12)) & 15u) : (_16038 & 15u)) + _4676[(_23168.y * 7u) + _23168.x];\n+\t                undetermined_3._m0[(_20110 + 4u) / 4u] = (_12888 ? ((_16038 >> uint(16)) & 15u) : ((_16038 >> uint(4)) & 15u)) + _4676[(_23169.y * 7u) + _23169.x];\n+\t                undetermined_3._m0[(_20110 + 8u) / 4u] = (_12889 ? ((_16038 >> uint(20)) & 15u) : ((_16038 >> uint(8)) & 15u)) + _4676[(_23170.y * 7u) + _23170.x];\n \t            }\n \t            _3750 = _13040 + _4097;\n \t            _13040 = _3750;\n@@ -513,7 +544,7 @@ CS\n \t            _5501 = 0u;\n \t        }\n \t        _4300 = _17017 + 1u;\n-\t        _13136 = _14716;\n+\t        _13137 = _14716;\n \t        _16305 = _19764;\n \t        _17133 = _13039;\n \t        _17017 = _4300;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/lightmap_generate_small_chart_samples.slang",
          "status": "modified",
          "additions": 32,
          "deletions": 20,
          "changes": 52,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: cs\n }\n@@ -29,12 +29,12 @@ COMMON\n CS\n {\n \t\n-\tStructuredBuffer g_ChartInfo < Attribute(\"g_ChartInfo\"); SrgbRead(false); >;\n+\tStructuredBuffer g_ChartInfo < Attribute(\"g_ChartInfo\"); >;\n \tRWStructuredBuffer g_LightmapSamples < Attribute(\"g_LightmapSamples\"); >;\n \tTexture2D g_LuxelChartIDs < Attribute(\"g_LuxelChartIDs\"); SrgbRead(false); >;\n-\tStructuredBuffer g_TriangleArea < Attribute(\"g_TriangleArea\"); SrgbRead(false); >;\n-\tStructuredBuffer g_TriangleListForThreadGroup < Attribute(\"g_TriangleListForThreadGroup\"); SrgbRead(false); >;\n-\tByteAddressBuffer g_Vertices < Attribute(\"g_Vertices\"); SrgbRead(false); >;\n+\tStructuredBuffer g_TriangleArea < Attribute(\"g_TriangleArea\"); >;\n+\tStructuredBuffer g_TriangleListForThreadGroup < Attribute(\"g_TriangleListForThreadGroup\"); >;\n+\tByteAddressBuffer g_Vertices < Attribute(\"g_Vertices\"); >;\n \tint g_nLightmapBlockRectWidth < Attribute(\"g_nLightmapBlockRectWidth\"); UiType(Slider); >;\n \tint g_nLightmapBlockRectX < Attribute(\"g_nLightmapBlockRectX\"); UiType(Slider); >;\n \tint g_nLightmapBlockRectY < Attribute(\"g_nLightmapBlockRectY\"); UiType(Slider); >;\n@@ -47,7 +47,7 @@ CS\n \tint g_nVertexStride < Attribute(\"g_nVertexStride\"); UiType(Slider); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (18500 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (18644 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1531\n \t{\n@@ -61,6 +61,12 @@ CS\n \t    uint _m7;\n \t};\n \t\n+\tstruct _990\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t};\n+\t\n \tstruct _1532\n \t{\n \t    float4 _m0;\n@@ -73,7 +79,7 @@ CS\n \t    uint _m7;\n \t};\n \t\n-\tstruct _990\n+\tstruct _991\n \t{\n \t    uint _m0;\n \t    uint _m1;\n@@ -98,11 +104,11 @@ CS\n \t\n \tByteAddressBuffer g_TriangleListForThreadGroup : register(t31, space0);\n \tRWByteAddressBuffer undetermined : register(u158, space0);\n-\tByteAddressBuffer g_ChartInfo : register(t33, space0);\n+\tByteAddressBuffer g_TriangleArea : register(t32, space0);\n \tByteAddressBuffer g_Vertices : register(t30, space0);\n \tByteAddressBuffer g_Vertices_1 : register(t30, space0);\n-\tByteAddressBuffer g_TriangleArea : register(t32, space0);\n-\tTexture2D<uint4> g_LuxelChartIDs_unexpectedTypeId404_1041 : register(t34, space0);\n+\tByteAddressBuffer g_ChartInfo : register(t33, space0);\n+\tTexture2D<uint4> g_LuxelChartIDs : register(t34, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_GlobalInvocationID;\n@@ -124,7 +130,7 @@ CS\n \t        uint _5156 = gl_WorkGroupID.x + (gl_WorkGroupID.y * uint(_Globals_1_g_nLightmapBlockRectWidth / 8));\n \t        int _6540 = int(g_TriangleListForThreadGroup.Load(_5156 * 4 + 0));\n \t        uint _13648 = _5156 + 1u;\n-\t        int _15017 = int(g_TriangleListForThreadGroup.Load(_13648 * 4 + 0));\n+\t        int _18397 = int(g_TriangleListForThreadGroup.Load(_13648 * 4 + 0));\n \t        uint _5963 = (gl_GlobalInvocationID.y * uint(_Globals_1_g_nLightmapBlockRectWidth)) + gl_GlobalInvocationID.x;\n \t        undetermined.Store4(_5963 * 96 + 0, asuint(0.0f.xxxx));\n \t        undetermined.Store4(_5963 * 96 + 16, asuint(0.0f.xxxx));\n@@ -134,7 +140,8 @@ CS\n \t        undetermined.Store2(_5963 * 96 + 80, asuint((-1.0f).xx));\n \t        undetermined.Store(_5963 * 96 + 88, uint(0));\n \t        undetermined.Store(_5963 * 96 + 92, 0u);\n-\t        if (_6540 >= _15017)\n+\t        [branch]\n+\t        if (_6540 >= _18397)\n \t        {\n \t            break;\n \t        }\n@@ -227,7 +234,7 @@ CS\n \t            int _17020 = _6540;\n \t            for (;;)\n \t            {\n-\t                if (!(_17020 < _15017))\n+\t                if (!(_17020 < _18397))\n \t                {\n \t                    break;\n \t                }\n@@ -378,10 +385,10 @@ CS\n \t                _16886.x = _22590.x;\n \t                _16886.y = _22590.y;\n \t                _16886.z = _22590.z;\n-\t                float2 _15794 = ((float2(asfloat(g_Vertices.Load((_19607 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_19607 + 4u) / 4u) * 4 + 0))) * _15062) + (float2(asfloat(g_Vertices.Load((_18788 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18788 + 4u) / 4u) * 4 + 0))) * _11861)) + (float2(asfloat(g_Vertices.Load((_18790 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18790 + 4u) / 4u) * 4 + 0))) * _16310);\n-\t                _1531 _12437 = { _20493, 0.0f.xxxx, _20494, _16886, ((float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_Vertices_1.Load(_19813 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _15062) + (float4((_23177 * cos(_23967)) + (cross(_21002, _23177) * sin(_23967)), ((g_Vertices_1.Load(_19815 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _11861)) + (float4((_23178 * cos(_23968)) + (cross(_21003, _23178) * sin(_23968)), ((g_Vertices_1.Load(_19817 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _16310), _15794, 0, 0u };\n-\t                _5633[gl_LocalInvocationIndex] = _12437;\n-\t                _5704[gl_LocalInvocationIndex] = int2(_15794.xy * float2(int2(_Globals_1_g_nLightmapWidth, _Globals_1_g_nLightmapHeight)));\n+\t                float2 _16199 = ((float2(asfloat(g_Vertices.Load((_19607 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_19607 + 4u) / 4u) * 4 + 0))) * _15062) + (float2(asfloat(g_Vertices.Load((_18788 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18788 + 4u) / 4u) * 4 + 0))) * _11861)) + (float2(asfloat(g_Vertices.Load((_18790 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18790 + 4u) / 4u) * 4 + 0))) * _16310);\n+\t                _1531 _21868 = { _20493, 0.0f.xxxx, _20494, _16886, ((float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_Vertices_1.Load(_19813 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _15062) + (float4((_23177 * cos(_23967)) + (cross(_21002, _23177) * sin(_23967)), ((g_Vertices_1.Load(_19815 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _11861)) + (float4((_23178 * cos(_23968)) + (cross(_21003, _23178) * sin(_23968)), ((g_Vertices_1.Load(_19817 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _16310), _16199, 0, 0u };\n+\t                _5633[gl_LocalInvocationIndex] = _21868;\n+\t                _5704[gl_LocalInvocationIndex] = int2(_16199.xy * float2(int2(_Globals_1_g_nLightmapWidth, _Globals_1_g_nLightmapHeight)));\n \t            }\n \t            GroupMemoryBarrierWithGroupSync();\n \t            uint2 _16326;\n@@ -597,7 +604,7 @@ CS\n \t            _17017 = _13142;\n \t            continue;\n \t        }\n-\t        uint4 _3401 = g_LuxelChartIDs_unexpectedTypeId404_1041.Load(int3(gl_GlobalInvocationID.xy, 0));\n+\t        uint4 _3401 = g_LuxelChartIDs.Load(int3(gl_GlobalInvocationID.xy, 0));\n \t        uint _17171 = _3401.x;\n \t        bool _12885;\n \t        if (_17119.w != 0.0f)\n@@ -622,15 +629,20 @@ CS\n \t            _13639.x = _24205;\n \t            _13639.y = _21816;\n \t            _13639.z = _21832;\n-\t            uint _9062 = g_ChartInfo.Load(_17171 * 8 + 4);\n+\t            _991 _10574;\n+\t            _10574._m0 = g_ChartInfo.Load(_17171 * 8 + 0);\n+\t            _10574._m1 = g_ChartInfo.Load(_17171 * 8 + 4);\n+\t            _990 _19867;\n+\t            _19867._m0 = _10574._m0;\n+\t            _19867._m1 = _10574._m1;\n \t            undetermined.Store4(_5963 * 96 + 0, asuint(_17119));\n \t            undetermined.Store4(_5963 * 96 + 16, asuint(_13639));\n \t            undetermined.Store4(_5963 * 96 + 32, asuint(_16887));\n \t            undetermined.Store4(_5963 * 96 + 48, asuint(_16305));\n \t            undetermined.Store4(_5963 * 96 + 64, asuint(float4(normalize(_17116.xyz), float(int(sign(_17116.w))))));\n \t            undetermined.Store2(_5963 * 96 + 80, asuint(_17114));\n \t            undetermined.Store(_5963 * 96 + 88, uint(_17115));\n-\t            undetermined.Store(_5963 * 96 + 92, _9062);\n+\t            undetermined.Store(_5963 * 96 + 92, _19867._m1);\n \t        }\n \t        break;\n \t    } while(false);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/lightmap_rasterize.slang",
          "status": "modified",
          "additions": 23,
          "deletions": 23,
          "changes": 46,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n@@ -135,15 +135,15 @@ VS\n GS\n {\n \t\n-\tStructuredBuffer g_ChartIDs < Attribute(\"g_ChartIDs\"); SrgbRead(false); >;\n+\tStructuredBuffer g_ChartIDs < Attribute(\"g_ChartIDs\"); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3388 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3404 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \tlayout(triangles) in;\n@@ -167,9 +167,6 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    vec4 _12827 = gl_in[0].gl_Position;\n-\t    vec4 _12828 = gl_in[1].gl_Position;\n-\t    vec4 _21734 = gl_in[2].gl_Position;\n \t    vec3 _7777 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));\n \t    uint _11093 = uint(gl_PrimitiveIDIn);\n \t    uvec2 _16324;\n@@ -193,39 +190,42 @@ GS\n \t        _17017 = _6352;\n \t        continue;\n \t    }\n-\t    float _18134 = float(_16324.x & 1048575u) * 9.5367431640625e-07;\n-\t    vec4 _11679 = _12827;\n-\t    _11679.z = _18134;\n+\t    float _21748 = float(_16324.x & 1048575u) * 9.5367431640625e-07;\n+\t    vec4 _9829 = gl_in[0].gl_Position;\n+\t    vec4 _12875 = _9829;\n+\t    _12875.z = _21748;\n \t    output_0 = input_0[0];\n \t    output_1 = input_1[0];\n \t    output_2 = _7777;\n \t    output_3 = input_2[0];\n \t    output_4 = input_3[0];\n \t    output_5 = g_ChartIDs_1._m0[_11093];\n-\t    _11679.y = -_12827.y;\n-\t    gl_Position = _11679;\n+\t    _12875.y = -_9829.y;\n+\t    gl_Position = _12875;\n \t    EmitVertex();\n-\t    vec4 _18816 = _12828;\n-\t    _18816.z = _18134;\n+\t    vec4 _9830 = gl_in[1].gl_Position;\n+\t    vec4 _12876 = _9830;\n+\t    _12876.z = _21748;\n \t    output_0 = input_0[1];\n \t    output_1 = input_1[1];\n \t    output_2 = _7777;\n \t    output_3 = input_2[1];\n \t    output_4 = input_3[1];\n \t    output_5 = g_ChartIDs_1._m0[_11093];\n-\t    _18816.y = -_12828.y;\n-\t    gl_Position = _18816;\n+\t    _12876.y = -_9830.y;\n+\t    gl_Position = _12876;\n \t    EmitVertex();\n-\t    vec4 _18817 = _21734;\n-\t    _18817.z = _18134;\n+\t    vec4 _9831 = gl_in[2].gl_Position;\n+\t    vec4 _12877 = _9831;\n+\t    _12877.z = _21748;\n \t    output_0 = input_0[2];\n \t    output_1 = input_1[2];\n \t    output_2 = _7777;\n \t    output_3 = input_2[2];\n \t    output_4 = input_3[2];\n \t    output_5 = g_ChartIDs_1._m0[_11093];\n-\t    _18817.y = -_21734.y;\n-\t    gl_Position = _18817;\n+\t    _12877.y = -_9831.y;\n+\t    gl_Position = _12877;\n \t    EmitVertex();\n \t    EndPrimitive();\n \t}\n@@ -242,15 +242,15 @@ PS\n \tDynamicCombo( D_REVERSE_DEPTH, 0..1 );\n \tDynamicComboRule( Requires( D_REVERSE_DEPTH, D_PASS=0 ) );\n \t\n-\tStructuredBuffer g_ChartInfo < Attribute(\"g_ChartInfo\"); SrgbRead(false); >;\n+\tStructuredBuffer g_ChartInfo < Attribute(\"g_ChartInfo\"); >;\n \tRWStructuredBuffer g_LightmapSamples < Attribute(\"g_LightmapSamples\"); >;\n \tTexture2D g_LuxelChartIDs < Attribute(\"g_LuxelChartIDs\"); SrgbRead(false); >;\n \tint g_nSampleStride < Attribute(\"g_nSampleStride\"); UiType(Slider); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (768 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tTexture2D<uint4> g_LuxelChartIDs_unexpectedTypeId404_1041 : register(t30, space1);\n+\tTexture2D<uint4> g_LuxelChartIDs : register(t30, space1);\n \t\n \tstatic float4 gl_FragCoord;\n \tstatic uint input_0;\n@@ -269,7 +269,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    if (input_0 != g_LuxelChartIDs_unexpectedTypeId404_1041.Load(int3(uint2(gl_FragCoord.xy), 0)).x)\n+\t    if (input_0 != g_LuxelChartIDs.Load(int3(uint2(gl_FragCoord.xy), 0)).x)\n \t    {\n \t        discard;\n \t    }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/lightmap_test_converged.slang",
          "status": "modified",
          "additions": 11,
          "deletions": 11,
          "changes": 22,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: cs\n }\n@@ -33,15 +33,15 @@ CS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tRWTexture3D<float4> g_BlockConverged < Attribute(\"g_BlockConverged\"); >;\n-\tStructuredBuffer g_LpvLuxels < Attribute(\"g_LpvLuxels\"); SrgbRead(false); >;\n-\tStructuredBuffer g_Luxels < Attribute(\"g_Luxels\"); SrgbRead(false); >;\n-\tStructuredBuffer g_VertexLightSamples < Attribute(\"g_VertexLightSamples\"); SrgbRead(false); >;\n+\tStructuredBuffer g_LpvLuxels < Attribute(\"g_LpvLuxels\"); >;\n+\tStructuredBuffer g_Luxels < Attribute(\"g_Luxels\"); >;\n+\tStructuredBuffer g_VertexLightSamples < Attribute(\"g_VertexLightSamples\"); >;\n \tfloat g_flErrorTolerance < Attribute(\"g_flErrorTolerance\"); UiType(Slider); >;\n \tint g_nBlockHeight < Attribute(\"g_nBlockHeight\"); UiType(Slider); >;\n \tint g_nBlockWidth < Attribute(\"g_nBlockWidth\"); UiType(Slider); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2992 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _427\n \t{\n@@ -81,12 +81,12 @@ CS\n \t\n \tvoid MainCs_inner()\n \t{\n-\t    bool _7078;\n+\t    bool _24472;\n \t    do\n \t    {\n \t        if (_Globals_1_g_flErrorTolerance <= 0.0f)\n \t        {\n-\t            _7078 = false;\n+\t            _24472 = false;\n \t            break;\n \t        }\n \t        uint _15834 = uint(_Globals_1_g_nBlockWidth);\n@@ -95,14 +95,14 @@ CS\n \t        int _12919 = WaveActiveSum(int(_6817));\n \t        if (_12919 == 0)\n \t        {\n-\t            _7078 = true;\n+\t            _24472 = true;\n \t            break;\n \t        }\n \t        else\n \t        {\n \t            if (_12919 <= 2)\n \t            {\n-\t                _7078 = false;\n+\t                _24472 = false;\n \t                break;\n \t            }\n \t        }\n@@ -118,12 +118,12 @@ CS\n \t        float _22462 = dot(_20940.xyz, float3(0.2125000059604644775390625f, 0.7153999805450439453125f, 0.07209999859333038330078125f));\n \t        float _18595 = float(_12919);\n \t        float _12151 = WaveActiveSum(_22462) / _18595;\n-\t        _7078 = !(sqrt(abs((WaveActiveSum(_22462 * _22462) / _18595) - (_12151 * _12151))) > (_12151 * _Globals_1_g_flErrorTolerance));\n+\t        _24472 = !(sqrt(abs((WaveActiveSum(_22462 * _22462) / _18595) - (_12151 * _12151))) > (_12151 * _Globals_1_g_flErrorTolerance));\n \t        break;\n \t    } while(false);\n \t    if (gl_LocalInvocationIndex == 0u)\n \t    {\n-\t        _3474[gl_GlobalInvocationID / uint3(4u, 4u, 1u)] = uint(int(_7078)).x;\n+\t        _3474[gl_GlobalInvocationID / uint3(4u, 4u, 1u)] = uint(int(_24472)).x;\n \t    }\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/lightmap_vertexlight_reduce.slang",
          "status": "modified",
          "additions": 23,
          "deletions": 10,
          "changes": 33,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: cs\n }\n@@ -32,26 +32,31 @@ CS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tRWStructuredBuffer g_Result < Attribute(\"g_Result\"); >;\n-\tStructuredBuffer g_VertexLightSamples < Attribute(\"g_VertexLightSamples\"); SrgbRead(false); >;\n+\tStructuredBuffer g_VertexLightSamples < Attribute(\"g_VertexLightSamples\"); >;\n \tint g_nBlockWidth < Attribute(\"g_nBlockWidth\"); UiType(Slider); >;\n \tint g_nVertexCount < Attribute(\"g_nVertexCount\"); UiType(Slider); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4132 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4192 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1017\n \t{\n \t    float4 _m0;\n \t};\n \t\n+\tstruct _1018\n+\t{\n+\t    float4 _m0;\n+\t};\n+\t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n \t    uint _Globals_1_g_nVertexCount : packoffset(c0);\n \t    int _Globals_1_g_nBlockWidth : packoffset(c0.y);\n \t};\n \t\n-\tRWByteAddressBuffer undetermined : register(u158, space0);\n \tByteAddressBuffer g_VertexLightSamples : register(t30, space0);\n+\tRWByteAddressBuffer undetermined : register(u158, space0);\n \t\n \tstatic uint3 gl_GlobalInvocationID;\n \tstruct SPIRV_Cross_Input\n@@ -94,8 +99,12 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                uint2 _5745 = (_9668.xy * uint2(4u, 4u)) + uint2(_16209, _16208);\n-\t                _3273 = _13156 + asfloat(g_VertexLightSamples.Load4(((_5745.y * _16799) + _5745.x) * 16 + 0)).xyz;\n+\t                uint2 _6349 = (_9668.xy * uint2(4u, 4u)) + uint2(_16209, _16208);\n+\t                _1018 _17001;\n+\t                _17001._m0 = asfloat(g_VertexLightSamples.Load4(((_6349.y * _16799) + _6349.x) * 16 + 0));\n+\t                _1017 _20190;\n+\t                _20190._m0 = _17001._m0;\n+\t                _3273 = _13156 + _20190._m0.xyz;\n \t                _9913 = _16209 + 1u;\n \t                _13156 = _3273;\n \t                _16209 = _9913;\n@@ -132,10 +141,14 @@ CS\n \t                        _7956_ladder_break = true;\n \t                        break;\n \t                    }\n-\t                    uint2 _6349 = (_9668.xy * uint2(4u, 4u)) + uint2(_16211, _16210);\n-\t                    float3 _20166 = max(0.0f.xxx, asfloat(g_VertexLightSamples.Load4(((_6349.y * _16799) + _6349.x) * 16 + 0)).xyz);\n+\t                    uint2 _5745 = (_9668.xy * uint2(4u, 4u)) + uint2(_16211, _16210);\n+\t                    _1018 _17002;\n+\t                    _17002._m0 = asfloat(g_VertexLightSamples.Load4(((_5745.y * _16799) + _5745.x) * 16 + 0));\n+\t                    _1017 _20191;\n+\t                    _20191._m0 = _17002._m0;\n+\t                    float3 _23379 = max(0.0f.xxx, _20191._m0.xyz);\n \t                    float3 _9380 = _13088 * 8.0f;\n-\t                    if (any(bool3(_20166.x > _9380.x, _20166.y > _9380.y, _20166.z > _9380.z)))\n+\t                    if (any(bool3(_23379.x > _9380.x, _23379.y > _9380.y, _23379.z > _9380.z)))\n \t                    {\n \t                        _14382 = _13158;\n \t                        break;\n@@ -144,7 +157,7 @@ CS\n \t                    float _17497 = sqrt(_21157.x);\n \t                    float _15049 = _21157.y;\n \t                    float3 _10701 = float3(1.0f - _17497, _17497 * (1.0f - _15049), _17497 * _15049);\n-\t                    _14382 = _13158 + (float4(_20166, 1.0f) * _10701[_23446]);\n+\t                    _14382 = _13158 + (float4(_23379, 1.0f) * _10701[_23446]);\n \t                    break;\n \t                } while(false);\n \t                if (_7956_ladder_break)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/lpv_debug_grid.slang",
          "status": "modified",
          "additions": 54,
          "deletions": 32,
          "changes": 86,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = false;\n \tVersion = 1;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n@@ -42,11 +42,11 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1512 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1432 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -60,14 +60,26 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1150\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _248\n+\tstruct _1126\n \t{\n-\t    _1150 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n+\t};\n+\t\n+\tstruct _1120\n+\t{\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n@@ -90,13 +102,29 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1150 _25207;\n-\t    [unroll]\n-\t    for (int _0ident = 0; _0ident < 3; _0ident++)\n-\t    {\n-\t        _25207._m0[_0ident] = asfloat(g_transformBuffer.Load4(_0ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    output_0 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _20190;\n+\t    _20190._m0 = _8152._m0;\n+\t    output_0 = mul(_20190._m0, float4(vPositionOs.xyz, 1.0f));\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -130,30 +158,25 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3480 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2876 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \tlayout(points) in;\n \tlayout(max_vertices = 4, triangle_strip) out;\n \t\n-\tstruct _394\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tstruct _1954\n+\tstruct _1368\n \t{\n-\t    _394 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t    vec3 _m2;\n \t    vec3 _m3;\n \t};\n \t\n-\tlayout(set = 2) uniform _1954 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1368 PerViewConstantBuffer_t;\n \t\n \tstruct _1032\n \t{\n@@ -179,31 +202,30 @@ GS\n \t    vec3 _8702 = PerViewConstantBuffer_t._m3 * _13108;\n \t    vec3 _7336 = (_21046 + _8702).xyz;\n \t    vec4 _21447 = PerViewConstantBuffer_t._m1 * 1.0;\n-\t    mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t    vec4 _7230 = (vec4(_7336, 1.0) + _21447).xyzw * _15571;\n+\t    vec4 _20663 = (vec4(_7336, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = _7336 - undetermined._m0.xyz;\n \t    output_1 = _9918;\n-\t    _7230.y = -_7230.y;\n-\t    gl_Position = _7230;\n+\t    _20663.y = -_20663.y;\n+\t    gl_Position = _20663;\n \t    EmitVertex();\n \t    vec3 _24428 = PerViewConstantBuffer_t._m3 * _25224;\n \t    vec3 _8552 = (_21046 + _24428).xyz;\n-\t    vec4 _18907 = (vec4(_8552, 1.0) + _21447).xyzw * _15571;\n+\t    vec4 _18907 = (vec4(_8552, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = _8552 - undetermined._m0.xyz;\n \t    output_1 = _9918;\n \t    _18907.y = -_18907.y;\n \t    gl_Position = _18907;\n \t    EmitVertex();\n \t    vec3 _15138 = _16500 + (_11686 * _13108);\n \t    vec3 _7753 = (_15138 + _8702).xyz;\n-\t    vec4 _18908 = (vec4(_7753, 1.0) + _21447).xyzw * _15571;\n+\t    vec4 _18908 = (vec4(_7753, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = _7753 - undetermined._m0.xyz;\n \t    output_1 = _9918;\n \t    _18908.y = -_18908.y;\n \t    gl_Position = _18908;\n \t    EmitVertex();\n \t    vec3 _18190 = (_15138 + _24428).xyz;\n-\t    vec4 _18909 = (vec4(_18190, 1.0) + _21447).xyzw * _15571;\n+\t    vec4 _18909 = (vec4(_18190, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = _18190 - undetermined._m0.xyz;\n \t    output_1 = _9918;\n \t    _18909.y = -_18909.y;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/minimap_fow.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/morph_composite.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/msaa_resolve.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 2;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -92,7 +92,7 @@ PS\n \tfloat2 g_vSourceOffset < Attribute(\"SourceOffset\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1732 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _3;\n \t\n@@ -101,7 +101,7 @@ PS\n \t    float2 _Globals_1_g_vSourceOffset : packoffset(c7.z);\n \t};\n \t\n-\tTexture2DMS<float4> g_tSourceMsaa_unexpectedTypeId438_1075 : register(t31, space1);\n+\tTexture2DMS<float4> g_tSourceMsaa : register(t31, space1);\n \t\n \tstatic float4 gl_FragCoord;\n \tstatic float4 output_0;\n@@ -129,7 +129,7 @@ PS\n \t        {\n \t            break;\n \t        }\n-\t        float4 _3401 = g_tSourceMsaa_unexpectedTypeId438_1075.Load(int2((gl_FragCoord.xy - _Globals_1_g_vSourceOffset.xy).xy), _16208);\n+\t        float4 _3401 = g_tSourceMsaa.Load(int2((gl_FragCoord.xy - _Globals_1_g_vSourceOffset.xy).xy), _16208);\n \t        float3 _12039 = clamp(_3401.xyz, 0.0f.xxx, 65504.0f.xxx);\n \t        float4 _13514;\n \t        _13514.x = _12039.x;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/msaa_resolve_cs.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -36,10 +36,10 @@ CS\n \tTexture2D g_tSourceMsaa < Attribute(\"InputTexture\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1668 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1676 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n+\tTexture2DMS<float4> g_tSourceMsaa : register(t30, space0);\n \tRWTexture2D<float4> _3407 : register(u158, space0);\n-\tTexture2DMS<float4> g_tSourceMsaa_unexpectedTypeId438_1075 : register(t30, space0);\n \t\n \tstatic uint3 gl_GlobalInvocationID;\n \tstruct SPIRV_Cross_Input\n@@ -60,7 +60,7 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        float4 _3401 = g_tSourceMsaa_unexpectedTypeId438_1075.Load(int2(gl_GlobalInvocationID.xy), int(_16208));\n+\t        float4 _3401 = g_tSourceMsaa.Load(int2(gl_GlobalInvocationID.xy), int(_16208));\n \t        _10794 = _13155.xyz + (_3401.xyz * (0.5f / (max(_3401.x, max(_3401.y, _3401.z)) + 1.0f))).xyz;\n \t        _9913 = _16208 + 1u;\n \t        _13155 = _10794;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/nonmsaa_resolve.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 2;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/occlusion.slang",
          "status": "modified",
          "additions": 9,
          "deletions": 14,
          "changes": 23,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -39,17 +39,12 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1488 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (884 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _436\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n-\tcbuffer _Globals_ : register(b0, space0)\n-\t{\n-\t    _436 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -68,9 +63,9 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _24787 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(m_vPositionWs.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    _24787.y = -_24787.y;\n-\t    gl_Position = _24787;\n+\t    float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(m_vPositionWs.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _19149.y = -_19149.y;\n+\t    gl_Position = _19149;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/panorama.slang",
          "status": "modified",
          "additions": 11,
          "deletions": 1,
          "changes": 12,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -35,6 +35,9 @@ struct VS_INPUT\n \n VS\n {\n+\tDynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );\n+\t\n+\tfloat2 g_vTexture4Scale < Default2(1, 1); Attribute(\"Texture4Scale\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (576 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n@@ -91,9 +94,15 @@ VS\n \n PS\n {\n+\tDynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );\n \tDynamicCombo( D_TEXTURETYPE, 0..7 );\n \tDynamicCombo( D_FAST_BLUR_SAMPLES, 0..8 );\n+\tDynamicCombo( D_RESOLVE_DESTINATION, 0..2 );\n+\tDynamicCombo( D_MSAA_SAMPLES, 0..3 );\n \tDynamicComboRule( Requires( D_FAST_BLUR_SAMPLES, D_TEXTURETYPE=6 ) );\n+\tDynamicComboRule( Requires( D_MSAA_SAMPLES, D_RESOLVE_DESTINATION=2 ) );\n+\tDynamicComboRule( Allow1( D_RESOLVE_DESTINATION, D_TEXTURETYPE ) );\n+\tDynamicComboRule( Allow1( D_RESOLVE_DESTINATION, D_DSTCOLOR_BLENDMODE ) );\n \t\n \tcbuffer FastBlurFilterParams_t < Attribute(\"FastBlurFilterParams_t\"); >;\n \tfloat g_flBlurSigma < Attribute(\"BlurSigma\"); UiType(Slider); >;\n@@ -102,6 +111,7 @@ PS\n \tTexture2D g_tTexture1 < Attribute(\"Texture1\"); SrgbRead(false); >;\n \tTexture2D g_tTexture2 < Attribute(\"Texture2\"); SrgbRead(false); >;\n \tTexture2D g_tTexture3 < Attribute(\"Texture3\"); SrgbRead(false); >;\n+\tTexture2D g_tTexture4 < Attribute(\"Texture4\"); SrgbRead(false); >;\n \tfloat2 g_vBlurMultiplyVec < Default(0); Attribute(\"BlurMultiplyVec\"); UiType(VectorText); >;\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/panorama_fancyquad.slang",
          "status": "modified",
          "additions": 31,
          "deletions": 26,
          "changes": 57,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -41,6 +41,9 @@ struct VS_INPUT\n \n VS\n {\n+\tDynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );\n+\t\n+\tfloat2 g_vTexture4Scale < Default2(1, 1); Attribute(\"Texture4Scale\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (1176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n@@ -139,6 +142,7 @@ VS\n \n PS\n {\n+\tDynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );\n \tDynamicCombo( D_USERADIALGRADIENT, 0..1 );\n \tDynamicCombo( D_USEOUTERCORNER, 0..1 );\n \tDynamicCombo( D_USEINNERCORNER, 0..1 );\n@@ -153,24 +157,25 @@ PS\n \tTexture2D g_tTexture0 < Attribute(\"Texture0\"); SrgbRead(true); >;\n \tTexture2D g_tTexture1 < Attribute(\"Texture1\"); SrgbRead(true); >;\n \tTexture2D g_tTexture3 < Attribute(\"Texture3\"); SrgbRead(true); >;\n+\tTexture2D g_tTexture4 < Attribute(\"Texture4\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (5928 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer FancyQuadCoreConstants_t : register(b0, space1)\n \t{\n-\t    float _Globals_1_m0 : packoffset(c6.z);\n-\t    int _Globals_1_m1 : packoffset(c7.y);\n-\t    int _Globals_1_m2 : packoffset(c7.z);\n-\t    int _Globals_1_m3 : packoffset(c7.w);\n-\t    float _Globals_1_m4 : packoffset(c9.y);\n-\t    float _Globals_1_m5 : packoffset(c9.z);\n-\t    int _Globals_1_m6 : packoffset(c9.w);\n+\t    float FancyQuadCoreConstants_t_1_m0 : packoffset(c6.z);\n+\t    int FancyQuadCoreConstants_t_1_m1 : packoffset(c7.y);\n+\t    int FancyQuadCoreConstants_t_1_m2 : packoffset(c7.z);\n+\t    int FancyQuadCoreConstants_t_1_m3 : packoffset(c7.w);\n+\t    float FancyQuadCoreConstants_t_1_m4 : packoffset(c9.y);\n+\t    float FancyQuadCoreConstants_t_1_m5 : packoffset(c9.z);\n+\t    int FancyQuadCoreConstants_t_1_m6 : packoffset(c9.w);\n \t};\n \t\n \tSamplerState DefaultSamplerState_0 : register(s14, space1);\n-\tTexture2D<float4> g_tLinearTexture0 : register(t34, space1);\n \tTexture2D<float4> g_tTexture0 : register(t30, space1);\n+\tTexture2D<float4> g_tLinearTexture0 : register(t34, space1);\n \tTexture2D<float4> g_tTexture3 : register(t33, space1);\n \tTexture2D<float4> g_tTexture1 : register(t31, space1);\n \t\n@@ -198,13 +203,13 @@ PS\n \t    float2 _13829 = ddx(input_0.xy);\n \t    float2 _9944 = ddy(input_0.xy);\n \t    bool _12885;\n-\t    if (_Globals_1_m3 == 1)\n+\t    if (FancyQuadCoreConstants_t_1_m3 == 1)\n \t    {\n \t        _12885 = true;\n \t    }\n \t    else\n \t    {\n-\t        _12885 = _Globals_1_m3 == 2;\n+\t        _12885 = FancyQuadCoreConstants_t_1_m3 == 2;\n \t    }\n \t    float4 _7078;\n \t    if (_12885)\n@@ -214,7 +219,7 @@ PS\n \t    else\n \t    {\n \t        float4 _12502;\n-\t        if (_Globals_1_m3 == 3)\n+\t        if (FancyQuadCoreConstants_t_1_m3 == 3)\n \t        {\n \t            float4 _11198 = g_tTexture0.SampleGrad(DefaultSamplerState_0, input_0.xy, _13829, _9944);\n \t            float _14685 = _11198.w;\n@@ -226,15 +231,15 @@ PS\n \t        }\n \t        else\n \t        {\n-\t            bool _21124 = _Globals_1_m3 == 4;\n+\t            bool _23546 = FancyQuadCoreConstants_t_1_m3 == 4;\n \t            bool _12886;\n-\t            if (_21124)\n+\t            if (_23546)\n \t            {\n \t                _12886 = true;\n \t            }\n \t            else\n \t            {\n-\t                _12886 = _21124;\n+\t                _12886 = _23546;\n \t            }\n \t            float4 _12501;\n \t            if (_12886)\n@@ -292,7 +297,7 @@ PS\n \t        _7078 = _12502;\n \t    }\n \t    float4 _19017;\n-\t    if (_Globals_1_m3 == 2)\n+\t    if (FancyQuadCoreConstants_t_1_m3 == 2)\n \t    {\n \t        float3 _16714 = _7078.xyz * _7078.w;\n \t        float4 _8673 = _7078;\n@@ -306,14 +311,14 @@ PS\n \t        _19017 = _7078;\n \t    }\n \t    float4 _21709;\n-\t    if (_Globals_1_m1 == 2)\n+\t    if (FancyQuadCoreConstants_t_1_m1 == 2)\n \t    {\n \t        _21709 = _19017 * g_tTexture3.SampleLevel(DefaultSamplerState_0, float2((clamp(input_0.z, 0.0f, 1.0f) * 0.9990234375f) + 0.00048828125f, 0.0f), 0.0f);\n \t    }\n \t    else\n \t    {\n \t        float4 _12503;\n-\t        if (_Globals_1_m1 == 1)\n+\t        if (FancyQuadCoreConstants_t_1_m1 == 1)\n \t        {\n \t            _12503 = _19017 * lerp(input_1, input_2, clamp(input_0.z, 0.0f, 1.0f).xxxx);\n \t        }\n@@ -324,12 +329,12 @@ PS\n \t        _21709 = _12503;\n \t    }\n \t    float4 _19306;\n-\t    if (_Globals_1_m2 != 0)\n+\t    if (FancyQuadCoreConstants_t_1_m2 != 0)\n \t    {\n \t        float4 _19068 = g_tTexture1.Sample(DefaultSamplerState_0, input_3.xy);\n \t        float _17476 = _19068.w;\n \t        float _21710;\n-\t        if (_Globals_1_m6 != 0)\n+\t        if (FancyQuadCoreConstants_t_1_m6 != 0)\n \t        {\n \t            _21710 = _17476 * dot(g_tTexture1.Sample(DefaultSamplerState_0, input_3.xy).xyz, float3(0.2125000059604644775390625f, 0.7153999805450439453125f, 0.07209999859333038330078125f));\n \t        }\n@@ -338,26 +343,26 @@ PS\n \t            _21710 = _17476;\n \t        }\n \t        float _21711;\n-\t        if (_21710 < _Globals_1_m4)\n+\t        if (_21710 < FancyQuadCoreConstants_t_1_m4)\n \t        {\n \t            _21711 = 0.0f;\n \t        }\n \t        else\n \t        {\n \t            float _12504;\n-\t            if (_21710 < _Globals_1_m5)\n+\t            if (_21710 < FancyQuadCoreConstants_t_1_m5)\n \t            {\n-\t                _12504 = (_21710 - _Globals_1_m4) / (_Globals_1_m5 - _Globals_1_m4);\n+\t                _12504 = (_21710 - FancyQuadCoreConstants_t_1_m4) / (FancyQuadCoreConstants_t_1_m5 - FancyQuadCoreConstants_t_1_m4);\n \t            }\n \t            else\n \t            {\n \t                _12504 = 1.0f;\n \t            }\n \t            _21711 = _12504;\n \t        }\n-\t        float _6837 = abs(_Globals_1_m0);\n+\t        float _6837 = abs(FancyQuadCoreConstants_t_1_m0);\n \t        float _11659;\n-\t        if (_Globals_1_m0 > 0.0f)\n+\t        if (FancyQuadCoreConstants_t_1_m0 > 0.0f)\n \t        {\n \t            _11659 = _21711;\n \t        }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/physics_wireframe.slang",
          "status": "modified",
          "additions": 47,
          "deletions": 24,
          "changes": 71,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -48,11 +48,11 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2912 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2228 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -66,27 +66,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1150\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _248\n+\tstruct _1126\n \t{\n-\t    _1150 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1276\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1276 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -117,19 +124,35 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1150 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3 _19956 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _19956 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = vColor;\n \t    output_1 = vNormalOs;\n \t    output_2 = _19956;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/post_process.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -136,7 +136,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vViewFadeColor) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/refract.slang",
          "status": "modified",
          "additions": 48,
          "deletions": 26,
          "changes": 74,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -55,15 +55,15 @@ VS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Texture Transform\n \tfloat2 g_vSecondaryTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup(\"Texture Transform\"); >;\n \tfloat2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup(\"Texture Transform\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3844 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3160 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -77,26 +77,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1402\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _752\n+\tstruct _1126\n \t{\n-\t    _1402 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1528\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1528 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -137,25 +144,40 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1402 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _14293 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));\n-\t    float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _14293 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));\n+\t    float3 _12861 = mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;\n \t    float3 _24912 = _14293.xyz;\n-\t    float3 _19956 = mul(_14817, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    float3 _19956 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    float4 _12868 = float4(vTexCoord, 0.0f, 1.0f);\n \t    output_0 = _14293;\n \t    output_1 = float2(dot(_12868, float4(_Globals_1_g_vTexCoordScale.x, 0.0f, 0.0f, 0.0f)), dot(_12868, float4(0.0f, _Globals_1_g_vTexCoordScale.y, 0.0f, 0.0f)));\n \t    output_2 = _19956;\n \t    output_3 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -207,7 +229,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vFBCopyTextureRect) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rendergraph_test.slang",
          "status": "added",
          "additions": 84,
          "deletions": 0,
          "changes": 84,
          "patch": "@@ -0,0 +1,84 @@\n+//=================================================================================================\n+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io\n+//=================================================================================================\n+HEADER\n+{\n+\tDescription = \"Rendergraph test\";\n+\tDevShader = true;\n+\tVersion = 0;\n+\t\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n+\t// Programs: cs\n+}\n+\n+MODES\n+{\n+\tDefault();\n+}\n+\n+FEATURES\n+{\n+}\n+\n+COMMON\n+{\n+\t#include \"system.fxc\"\n+}\n+\n+CS\n+{\n+\tDynamicCombo( D_PASS, 0..1 );\n+\t\n+\tStructuredBuffer g_ForkBuffer_0 < Attribute(\"ForkBuffer_0\"); >;\n+\tStructuredBuffer g_ForkBuffer_1 < Attribute(\"ForkBuffer_1\"); >;\n+\tStructuredBuffer g_ForkBuffer_2 < Attribute(\"ForkBuffer_2\"); >;\n+\tStructuredBuffer g_ForkBuffer_3 < Attribute(\"ForkBuffer_3\"); >;\n+\tStructuredBuffer g_InputBuffer < Attribute(\"InputBuffer\"); >;\n+\tRWStructuredBuffer g_OutputBuffer < Attribute(\"OutputBuffer\"); >;\n+\tint g_nBranchCount < Attribute(\"BranchCount\"); UiType(Slider); >;\n+\tint g_nBranchOffset < Attribute(\"BranchOffset\"); UiType(Slider); >;\n+\tint g_nElementCount < Attribute(\"ElementCount\"); UiType(Slider); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (1144 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tcbuffer _Globals_ : register(b0, space0)\n+\t{\n+\t    int _Globals_1_g_nElementCount : packoffset(c0);\n+\t    int _Globals_1_g_nBranchOffset : packoffset(c0.y);\n+\t};\n+\t\n+\tRWByteAddressBuffer undetermined : register(u158, space0);\n+\tByteAddressBuffer g_InputBuffer : register(t30, space0);\n+\t\n+\tstatic uint3 gl_GlobalInvocationID;\n+\tstruct SPIRV_Cross_Input\n+\t{\n+\t    uint3 gl_GlobalInvocationID : SV_DispatchThreadID;\n+\t};\n+\t\n+\tvoid MainCs_inner()\n+\t{\n+\t    do\n+\t    {\n+\t        if (gl_GlobalInvocationID.x >= uint(_Globals_1_g_nElementCount))\n+\t        {\n+\t            break;\n+\t        }\n+\t        undetermined.Store(gl_GlobalInvocationID.x * 4 + 0, g_InputBuffer.Load(gl_GlobalInvocationID.x * 4 + 0) + uint(_Globals_1_g_nBranchOffset));\n+\t        break;\n+\t    } while(false);\n+\t}\n+\t\n+\t[numthreads(64, 1, 1)]\n+\tvoid MainCs(SPIRV_Cross_Input stage_input)\n+\t{\n+\t    gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;\n+\t    MainCs_inner();\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rendermicrobenchmark.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/reset_draw_params_cs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_binlights.slang",
          "status": "modified",
          "additions": 2200,
          "deletions": 2061,
          "changes": 4261,
          "patch": null
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_debug_visualization.slang",
          "status": "modified",
          "additions": 174,
          "deletions": 173,
          "changes": 347,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: rtx\n }\n@@ -32,11 +32,11 @@ RTX\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL: 5319\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (16184 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (15512 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_AMD_gpu_shader_half_float)\n@@ -52,36 +52,31 @@ RTX\n \t\n \tstruct MaterialDataMinimal_t\n \t{\n-\t    f16vec3 vMaterialBits;\n-\t    float16_t _m1;\n-\t    f16vec3 _m2;\n-\t    float16_t _m3;\n-\t    f16vec3 _m4;\n-\t    float16_t _m5;\n-\t    uint _m6;\n-\t    f16vec4 _m7;\n+\t    f16vec3 vNormalWs;\n+\t    float16_t flMetalness;\n+\t    f16vec3 vAlbedo;\n+\t    float16_t flRoughness;\n+\t    f16vec3 vEmissive;\n+\t    float16_t flReflectance;\n+\t    uint nMaterialTypeAndFlags;\n+\t    f16vec4 vMaterialBits;\n \t};\n \t\n \tstruct Payload_t\n \t{\n-\t    vec3 material;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    int _m5;\n-\t    bool _m6;\n-\t    MaterialDataMinimal_t _m7;\n+\t    vec3 vSmoothPositionWs;\n+\t    vec3 vFaceNormalWs;\n+\t    vec3 vInterpolatedNormalWs;\n+\t    float flHitT;\n+\t    float flOpacityRng;\n+\t    int nInstance;\n+\t    bool bFlippedNormal;\n+\t    MaterialDataMinimal_t material;\n \t};\n \t\n-\tstruct _MatrixStorage_float4x4_ColMajornatural\n-\t{\n-\t    vec4 data[4];\n-\t};\n-\t\n-\tstruct _MatrixStorage_float4x3_ColMajornatural\n+\tstruct PayloadShadow_t\n \t{\n-\t    vec4 data[3];\n+\t    float m_flVisibility;\n \t};\n \t\n \tstruct SceneGlobalInfoGPU_t_natural\n@@ -92,27 +87,22 @@ RTX\n \t    vec4 m_vLocalLightMinBounds;\n \t    vec4 m_vLocalLightMaxBounds;\n \t    ivec4 m_vLightBinCellCount_nLightCount;\n-\t    _MatrixStorage_float4x3_ColMajornatural m_mIBLTransformI;\n+\t    mat4x3 m_mIBLTransformI;\n \t    vec4 m_vIBLCubeMapScale;\n \t    ivec4 m_vIBLParams;\n \t    ivec4 m_vBrdfLUTs;\n \t};\n \t\n-\tstruct PayloadShadow_t\n-\t{\n-\t    float m_flVisibility;\n-\t};\n-\t\n-\tvec4 _133;\n+\tvec4 _128;\n \t\n \tlayout(set = 3, binding = 37, std430) readonly buffer StructuredBuffer\n \t{\n-\t    SceneGlobalInfoGPU_t_natural _m0[];\n+\t    layout(row_major) SceneGlobalInfoGPU_t_natural _member0[];\n \t} g_SceneGlobalInfo;\n \t\n \tlayout(push_constant, std430) uniform PushConstants_t_t_natural\n \t{\n-\t    _MatrixStorage_float4x4_ColMajornatural m_mInvViewProj;\n+\t    layout(row_major) mat4 m_mInvViewProj;\n \t    vec4 m_vCameraOrigin;\n \t    vec4 m_vRandomOffsets;\n \t    ivec4 m_nIntParams;\n@@ -122,22 +112,22 @@ RTX\n \tlayout(set = 6, binding = 161) uniform readonly image3D g_RandomSamples;\n \tlayout(location = 0) rayPayloadEXT Payload_t p;\n \tlayout(set = 3, binding = 30) uniform accelerationStructureEXT g_AccelStruct;\n+\tlayout(location = 1) rayPayloadEXT PayloadShadow_t p_1;\n \tlayout(set = 4, binding = 46) uniform textureCube g_bindless_TextureCube[65536];\n \tlayout(set = 3, binding = 14) uniform sampler g_Sampler;\n-\tlayout(location = 1) rayPayloadEXT PayloadShadow_t p_1;\n \tlayout(set = 6, binding = 159) uniform image2D g_VarianceImage;\n \t\n \tvoid main()\n \t{\n-\t    vec2 _219 = (((vec2(gl_LaunchIDEXT.xy) + PushConstants_t.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);\n-\t    _219.y = -_219.y;\n-\t    vec4 _225 = mat4(vec4(PushConstants_t.m_mInvViewProj.data[0].x, PushConstants_t.m_mInvViewProj.data[1].x, PushConstants_t.m_mInvViewProj.data[2].x, PushConstants_t.m_mInvViewProj.data[3].x), vec4(PushConstants_t.m_mInvViewProj.data[0].y, PushConstants_t.m_mInvViewProj.data[1].y, PushConstants_t.m_mInvViewProj.data[2].y, PushConstants_t.m_mInvViewProj.data[3].y), vec4(PushConstants_t.m_mInvViewProj.data[0].z, PushConstants_t.m_mInvViewProj.data[1].z, PushConstants_t.m_mInvViewProj.data[2].z, PushConstants_t.m_mInvViewProj.data[3].z), vec4(PushConstants_t.m_mInvViewProj.data[0].w, PushConstants_t.m_mInvViewProj.data[1].w, PushConstants_t.m_mInvViewProj.data[2].w, PushConstants_t.m_mInvViewProj.data[3].w)) * vec4(_219.xy, 0.0, 1.0);\n-\t    vec3 _229 = _225.xyz / vec3(_225.w);\n-\t    vec4 _231;\n-\t    _231.x = _229.x;\n-\t    _231.y = _229.y;\n-\t    _231.z = _229.z;\n-\t    vec3 _240 = normalize(_231.xyz - PushConstants_t.m_vCameraOrigin.xyz);\n+\t    vec2 _199 = (((vec2(gl_LaunchIDEXT.xy) + PushConstants_t.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);\n+\t    _199.y = -_199.y;\n+\t    vec4 _205 = PushConstants_t.m_mInvViewProj * vec4(_199.xy, 0.0, 1.0);\n+\t    vec3 _209 = _205.xyz / vec3(_205.w);\n+\t    vec4 _211;\n+\t    _211.x = _209.x;\n+\t    _211.y = _209.y;\n+\t    _211.z = _209.z;\n+\t    vec3 _220 = normalize(_211.xyz - PushConstants_t.m_vCameraOrigin.xyz);\n \t    vec4 vCurrentSample;\n \t    if (PushConstants_t.m_nIntParams.y > 0)\n \t    {\n@@ -147,95 +137,101 @@ RTX\n \t    {\n \t        vCurrentSample = vec4(0.0);\n \t    }\n-\t    uvec3 _255 = uvec3(imageSize(g_RandomSamples));\n-\t    ivec3 _175;\n-\t    ivec3 _258 = _175;\n-\t    _258.x = int(_255.x);\n-\t    _258.y = int(_255.y);\n-\t    _258.z = int(_255.z);\n-\t    _175 = _258;\n-\t    ivec2 _267 = ivec2(gl_LaunchIDEXT.xy) - _258.xy * (ivec2(gl_LaunchIDEXT.xy) / _258.xy);\n-\t    f16vec3 _276 = f16vec3(vec3(0.0));\n-\t    vec3 _154;\n-\t    p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _154, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_267.xy, 1)))).xy.y, -1, false, MaterialDataMinimal_t(_276, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _276, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t    traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PushConstants_t.m_vCameraOrigin.xyz, 0.0, _240, 56755.83984375, 0);\n-\t    vec3 _153 = p.material;\n-\t    vec3 _152 = p._m1;\n-\t    float _151 = p._m3;\n-\t    f16vec3 _142 = p._m7.vMaterialBits;\n-\t    float16_t _141 = p._m7._m1;\n-\t    f16vec3 _140 = p._m7._m2;\n-\t    float16_t _139 = p._m7._m3;\n-\t    f16vec3 _138 = p._m7._m4;\n-\t    float16_t _137 = p._m7._m5;\n-\t    uint _136 = p._m7._m6;\n-\t    f16vec4 _135 = p._m7._m7;\n+\t    uvec3 _235 = uvec3(imageSize(g_RandomSamples));\n+\t    ivec3 _181;\n+\t    ivec3 _238 = _181;\n+\t    _238.x = int(_235.x);\n+\t    _238.y = int(_235.y);\n+\t    _238.z = int(_235.z);\n+\t    _181 = _238;\n+\t    ivec2 _247 = ivec2(gl_LaunchIDEXT.xy) - _238.xy * (ivec2(gl_LaunchIDEXT.xy) / _238.xy);\n+\t    f16vec3 _254 = f16vec3(vec3(0.0));\n+\t    vec3 _157;\n+\t    p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _157, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(_247.xy, 1)).xy.y, -1, false, MaterialDataMinimal_t(_254, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _254, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t    traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PushConstants_t.m_vCameraOrigin.xyz, 0.0, _220, 56755.83984375, 0);\n+\t    vec3 _156 = p.vSmoothPositionWs;\n+\t    vec3 _155 = p.vFaceNormalWs;\n+\t    float _154 = p.flHitT;\n+\t    f16vec3 _137 = p.material.vNormalWs;\n+\t    float16_t _136 = p.material.flMetalness;\n+\t    f16vec3 _135 = p.material.vAlbedo;\n+\t    float16_t _134 = p.material.flRoughness;\n+\t    f16vec3 _133 = p.material.vEmissive;\n+\t    float16_t _132 = p.material.flReflectance;\n+\t    uint _131 = p.material.nMaterialTypeAndFlags;\n+\t    f16vec4 _130 = p.material.vMaterialBits;\n \t    vec3 vNewSample;\n-\t    if (p._m5 != (-1))\n+\t    if (p.nInstance != (-1))\n \t    {\n+\t        vec3 _153 = PushConstants_t.m_vCameraOrigin.xyz;\n+\t        vec3 _152 = _220;\n \t        do\n \t        {\n-\t            vec3 _156 = (PushConstants_t.m_vCameraOrigin.xyz + (_240 * _151)) + (_152 * ((abs(PushConstants_t.m_vCameraOrigin.xyz) + vec3(abs(_151))) * 9.9999997473787516355514526367188e-05));\n-\t            vec3 _155 = _152;\n-\t            bool _168;\n+\t            vec3 _160 = _156;\n+\t            vec3 _159 = _155;\n+\t            float _158 = _154;\n+\t            f16vec3 _146 = _137;\n+\t            vec3 _162 = (_153 + (_152 * _158)) + (_159 * ((abs(_153) + vec3(abs(_158))) * 9.9999997473787516355514526367188e-05));\n+\t            vec3 _161 = _159;\n+\t            bool _180;\n \t            if (false)\n \t            {\n-\t                _168 = any(notEqual(_153, vec3(3.4028234663852885981170418348452e+38)));\n+\t                _180 = any(notEqual(_160, vec3(3.4028234663852885981170418348452e+38)));\n \t            }\n \t            else\n \t            {\n-\t                _168 = false;\n+\t                _180 = false;\n \t            }\n-\t            vec3 _474 = _153 - _156;\n-\t            float _475 = length(_474);\n-\t            vec3 _159 = _156;\n-\t            float _158 = 0.0;\n-\t            vec3 _157 = vec4(_474 / vec3(_475), _475).xyz;\n-\t            float _167;\n-\t            if (_168)\n+\t            vec3 _313 = _160 - _162;\n+\t            float _314 = length(_313);\n+\t            vec3 _165 = _162;\n+\t            float _164 = 0.0;\n+\t            vec3 _163 = vec4(_313 / vec3(_314), _314).xyz;\n+\t            float _179;\n+\t            if (_180)\n \t            {\n-\t                _167 = _475;\n+\t                _179 = _314;\n \t            }\n \t            else\n \t            {\n-\t                _167 = 0.0;\n+\t                _179 = 0.0;\n \t            }\n \t            p_1 = PayloadShadow_t(1.0);\n-\t            traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _159, _158, _157, _167, 1);\n-\t            if (_168)\n+\t            traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _165, _164, _163, _179, 1);\n+\t            if (_180)\n \t            {\n-\t                _167 = p_1.m_flVisibility;\n+\t                _179 = p_1.m_flVisibility;\n \t            }\n \t            else\n \t            {\n-\t                _167 = 0.0;\n+\t                _179 = 0.0;\n \t            }\n-\t            if (_167 == 1.0)\n+\t            if (_179 == 1.0)\n \t            {\n-\t                _156 = _153;\n-\t                _155 = vec3(_142);\n+\t                _162 = _160;\n+\t                _161 = vec3(_146);\n \t            }\n-\t            vec3 _160;\n-\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _160, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_142, _141, _140, _139, _138, _137, _136, _135));\n-\t            traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _156 - ((_155 * 0.5) * 0.5), 0.0, _155, 0.5, 0);\n-\t            f16vec3 _150 = p._m7.vMaterialBits;\n-\t            float16_t _149 = p._m7._m1;\n-\t            f16vec3 _148 = p._m7._m2;\n-\t            float16_t _147 = p._m7._m3;\n-\t            f16vec3 _146 = p._m7._m4;\n-\t            float16_t _145 = p._m7._m5;\n-\t            uint _144 = p._m7._m6;\n-\t            f16vec4 _143 = p._m7._m7;\n-\t            if (p._m5 != (-1))\n+\t            vec3 _166;\n+\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _166, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_137, _136, _135, _134, _133, _132, _131, _130));\n+\t            traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _162 - ((_161 * 0.5) * 0.5), 0.0, _161, 0.5, 0);\n+\t            f16vec3 _145 = p.material.vNormalWs;\n+\t            float16_t _144 = p.material.flMetalness;\n+\t            f16vec3 _143 = p.material.vAlbedo;\n+\t            float16_t _142 = p.material.flRoughness;\n+\t            f16vec3 _141 = p.material.vEmissive;\n+\t            float16_t _140 = p.material.flReflectance;\n+\t            uint _139 = p.material.nMaterialTypeAndFlags;\n+\t            f16vec4 _138 = p.material.vMaterialBits;\n+\t            if (p.nInstance != (-1))\n \t            {\n-\t                _142 = _150;\n-\t                _141 = _149;\n-\t                _140 = _148;\n-\t                _139 = _147;\n-\t                _138 = _146;\n \t                _137 = _145;\n \t                _136 = _144;\n \t                _135 = _143;\n+\t                _134 = _142;\n+\t                _133 = _141;\n+\t                _132 = _140;\n+\t                _131 = _139;\n+\t                _130 = _138;\n \t                break;\n \t            }\n \t            else\n@@ -244,136 +240,141 @@ RTX\n \t            }\n \t            break;\n \t        } while(false);\n-\t        vec3 _161 = (PushConstants_t.m_vCameraOrigin.xyz + (_240 * _151)) + (_152 * ((abs(PushConstants_t.m_vCameraOrigin.xyz) + vec3(abs(_151))) * 9.9999997473787516355514526367188e-05));\n-\t        bool _166;\n+\t        vec3 _151 = PushConstants_t.m_vCameraOrigin.xyz;\n+\t        vec3 _150 = _220;\n+\t        vec3 _149 = _156;\n+\t        vec3 _148 = _155;\n+\t        float _147 = _154;\n+\t        vec3 _167 = (_151 + (_150 * _147)) + (_148 * ((abs(_151) + vec3(abs(_147))) * 9.9999997473787516355514526367188e-05));\n+\t        bool _178;\n \t        if (true)\n \t        {\n-\t            _166 = any(notEqual(_153, vec3(3.4028234663852885981170418348452e+38)));\n+\t            _178 = any(notEqual(_149, vec3(3.4028234663852885981170418348452e+38)));\n \t        }\n \t        else\n \t        {\n-\t            _166 = false;\n+\t            _178 = false;\n \t        }\n-\t        vec3 _564 = _153 - _161;\n-\t        float _565 = length(_564);\n-\t        vec3 _164 = _161;\n-\t        float _163 = 0.0;\n-\t        vec3 _162 = vec4(_564 / vec3(_565), _565).xyz;\n-\t        float _165;\n-\t        if (_166)\n+\t        vec3 _410 = _149 - _167;\n+\t        float _411 = length(_410);\n+\t        vec3 _170 = _167;\n+\t        float _169 = 0.0;\n+\t        vec3 _168 = vec4(_410 / vec3(_411), _411).xyz;\n+\t        float _177;\n+\t        if (_178)\n \t        {\n-\t            _165 = _565;\n+\t            _177 = _411;\n \t        }\n \t        else\n \t        {\n-\t            _165 = 0.0;\n+\t            _177 = 0.0;\n \t        }\n \t        p_1 = PayloadShadow_t(1.0);\n-\t        traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _164, _163, _162, _165, 1);\n-\t        if (_166)\n+\t        traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _170, _169, _168, _177, 1);\n+\t        if (_178)\n \t        {\n-\t            _165 = p_1.m_flVisibility;\n+\t            _177 = p_1.m_flVisibility;\n \t        }\n \t        else\n \t        {\n-\t            _165 = 0.0;\n+\t            _177 = 0.0;\n \t        }\n-\t        if (_165 == 1.0)\n+\t        if (_177 == 1.0)\n \t        {\n-\t            _161 = _153;\n+\t            _167 = _149;\n \t        }\n-\t        vNewSample = vec3(_140);\n+\t        vNewSample = vec3(_135);\n \t    }\n \t    else\n \t    {\n-\t        vec2 _170 = imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_267.xy, 2)))).xy;\n-\t        bool _171;\n-\t        if (_240.z < 0.0)\n+\t        vec2 _172 = imageLoad(g_RandomSamples, ivec3(_247.xy, 2)).xy;\n+\t        bool _173;\n+\t        if (_220.z < 0.0)\n \t        {\n-\t            float _172 = _170.y;\n-\t            bool _169;\n+\t            float _174 = _172.y;\n+\t            bool _171;\n \t            do\n \t            {\n-\t                if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w <= 0.0)\n+\t                if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w <= 0.0)\n \t                {\n-\t                    _169 = false;\n+\t                    _171 = false;\n \t                    break;\n \t                }\n-\t                if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w >= 1.0)\n+\t                if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w >= 1.0)\n \t                {\n-\t                    _169 = true;\n+\t                    _171 = true;\n \t                    break;\n \t                }\n-\t                if (_172 < g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w)\n+\t                if (_174 < g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w)\n \t                {\n-\t                    _172 = min(_172 / g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);\n-\t                    _169 = true;\n+\t                    _174 = min(_174 / g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);\n+\t                    _171 = true;\n \t                    break;\n \t                }\n-\t                _172 = min((_172 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);\n-\t                _169 = false;\n+\t                _174 = min((_174 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);\n+\t                _171 = false;\n \t                break;\n \t            } while(false);\n-\t            vec2 _341 = _170;\n-\t            _341.y = _172;\n-\t            _170 = _341;\n-\t            _171 = _169;\n+\t            vec2 _474 = _172;\n+\t            _474.y = _174;\n+\t            _172 = _474;\n+\t            _173 = _171;\n \t        }\n \t        else\n \t        {\n-\t            _171 = false;\n+\t            _173 = false;\n \t        }\n-\t        vec3 _173;\n-\t        vec3 _174;\n-\t        if (_171)\n+\t        vec3 _175;\n+\t        vec3 _176;\n+\t        if (_173)\n \t        {\n-\t            float _349 = sqrt(_170.y);\n-\t            float _351 = 6.283185482025146484375 * _170.x;\n-\t            _173 = vec3(cos(_351) * _349, sin(_351) * _349, sqrt(max(0.0, 1.0 - _170.y)));\n-\t            _174 = g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.xyz;\n+\t            float _482 = sqrt(_172.y);\n+\t            float _484 = 6.283185482025146484375 * _172.x;\n+\t            _175 = vec3(cos(_484) * _482, sin(_484) * _482, sqrt(max(0.0, 1.0 - _172.y)));\n+\t            _176 = g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.xyz;\n \t        }\n \t        else\n \t        {\n-\t            _173 = _240;\n-\t            _174 = vec3(0.0);\n+\t            _175 = _220;\n+\t            _176 = vec3(0.0);\n \t        }\n-\t        if (g_SceneGlobalInfo._m0[0].m_vIBLParams.y >= 0)\n+\t        if (g_SceneGlobalInfo._member0[0].m_vIBLParams.y >= 0)\n \t        {\n-\t            vec4 _418 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._m0[0].m_vIBLParams.y], g_Sampler), normalize(mat4x3(vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].x), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].y), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].z), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].w)) * vec4(_173, 0.0)), 0.0);\n-\t            if (dot(_418.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.w)\n+\t            vec4 _524 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._member0[0].m_vIBLParams.y], g_Sampler), normalize(g_SceneGlobalInfo._member0[0].m_mIBLTransformI * vec4(_175, 0.0)), 0.0);\n+\t            if (dot(_524.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.w)\n \t            {\n-\t                _174 += (g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.xyz * _418.xyz);\n+\t                _176 += (g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.xyz * _524.xyz);\n \t            }\n \t        }\n \t        else\n \t        {\n-\t            _174 += g_SceneGlobalInfo._m0[0].m_vSkyColor.xyz;\n+\t            _176 += g_SceneGlobalInfo._member0[0].m_vSkyColor.xyz;\n \t        }\n \t        if (false)\n \t        {\n-\t            _174 *= g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.w;\n+\t            _176 *= g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.w;\n \t        }\n-\t        if (_171)\n+\t        if (_173)\n \t        {\n-\t            _174 *= g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.xyz;\n+\t            _176 *= g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.xyz;\n \t        }\n-\t        vNewSample = _174;\n+\t        vNewSample = _176;\n \t    }\n-\t    vec4 _599 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);\n-\t    imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _599);\n-\t    vec2 _176;\n+\t    vec4 _567 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);\n+\t    imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _567);\n+\t    vec2 _182;\n \t    if (PushConstants_t.m_nIntParams.y == 0)\n \t    {\n-\t        _176 = vec2(0.0);\n+\t        _182 = vec2(0.0);\n \t    }\n \t    else\n \t    {\n-\t        _176 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;\n+\t        _182 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;\n \t    }\n-\t    float _616 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));\n-\t    float _621 = _616 - _176.x;\n-\t    float _623 = _176.x + (_621 / _599.w);\n-\t    imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_623, _176.y + (_621 * (_616 - _623))), 0.0, 0.0));\n+\t    float _584 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));\n+\t    float _589 = _584 - _182.x;\n+\t    float _591 = _182.x + (_589 / _567.w);\n+\t    imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_591, _182.y + (_589 * (_584 - _591))), 0.0, 0.0));\n \t}\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_default_hitgroup.slang",
          "status": "modified",
          "additions": 343,
          "deletions": 309,
          "changes": 652,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: rtx\n }\n@@ -33,11 +33,11 @@ RTX\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL: 5326\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (27728 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (29288 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require\n@@ -52,9 +52,16 @@ RTX\n \t#extension GL_EXT_ray_tracing : require\n \t#extension GL_EXT_nonuniform_qualifier : require\n \t\n-\tstruct BuiltInTriangleIntersectionAttributes\n+\tstruct PackedRtxInstanceData_t_natural_logical\n \t{\n-\t    vec2 barycentrics;\n+\t    uint nSrgbColor;\n+\t    uint nTriangleGeometry;\n+\t    uint nMaterialData;\n+\t    uint nMaterialFlags_nInstanceFlags;\n+\t    float fEmissiveBoost;\n+\t    uint nInstanceFlags;\n+\t    uint _pad1;\n+\t    uint _pad2;\n \t};\n \t\n \tstruct PackedRtxInstanceData_t_natural\n@@ -85,31 +92,36 @@ RTX\n \t    _Array_natural_vector_int_4_8 m_vColorFieldInfo;\n \t};\n \t\n+\tstruct BuiltInTriangleIntersectionAttributes\n+\t{\n+\t    vec2 barycentrics;\n+\t};\n+\t\n \tstruct MaterialDataMinimal_t\n \t{\n-\t    f16vec3 vMaterialBits;\n-\t    float16_t _m1;\n-\t    f16vec3 _m2;\n-\t    float16_t _m3;\n-\t    f16vec3 _m4;\n-\t    float16_t _m5;\n-\t    uint _m6;\n-\t    f16vec4 _m7;\n+\t    f16vec3 vNormalWs;\n+\t    float16_t flMetalness;\n+\t    f16vec3 vAlbedo;\n+\t    float16_t flRoughness;\n+\t    f16vec3 vEmissive;\n+\t    float16_t flReflectance;\n+\t    uint nMaterialTypeAndFlags;\n+\t    f16vec4 vMaterialBits;\n \t};\n \t\n \tstruct Payload_t\n \t{\n-\t    vec3 material;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    int _m5;\n-\t    bool _m6;\n-\t    MaterialDataMinimal_t _m7;\n+\t    vec3 vSmoothPositionWs;\n+\t    vec3 vFaceNormalWs;\n+\t    vec3 vInterpolatedNormalWs;\n+\t    float flHitT;\n+\t    float flOpacityRng;\n+\t    int nInstance;\n+\t    bool bFlippedNormal;\n+\t    MaterialDataMinimal_t material;\n \t};\n \t\n-\tuint _193;\n+\tuint _199;\n \t\n \tstruct PayloadShadow_t\n \t{\n@@ -118,459 +130,481 @@ RTX\n \t\n \tlayout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer\n \t{\n-\t    PackedRtxInstanceData_t_natural _m0[];\n+\t    PackedRtxInstanceData_t_natural _member0[];\n \t} g_instanceBuffer;\n \t\n \tlayout(set = 3, binding = 34, std430) readonly buffer g_MaterialData\n \t{\n-\t    float _m0[];\n+\t    float _member0[];\n \t} g_MaterialData_1;\n \t\n \tlayout(set = 3, binding = 34, std430) readonly buffer g_MaterialData_2\n \t{\n-\t    int _m0[];\n+\t    int _member0[];\n \t} g_MaterialData_3;\n \t\n \tlayout(set = 3, binding = 31, std430) readonly buffer g_Geometries\n \t{\n-\t    GeometryInfo_t_natural _m0[];\n+\t    GeometryInfo_t_natural _member0[];\n \t} g_Geometries_1;\n \t\n \tlayout(set = 3, binding = 33, std430) readonly buffer g_Indices\n \t{\n-\t    uint _m0[];\n+\t    uint _member0[];\n \t} g_Indices_1[];\n \t\n \tlayout(set = 3, binding = 32, std430) readonly buffer g_Vertices\n \t{\n-\t    float _m0[];\n+\t    float _member0[];\n \t} g_Vertices_1[];\n \t\n \tlayout(set = 3, binding = 32, std430) readonly buffer g_Vertices_2\n \t{\n-\t    uint _m0[];\n+\t    uint _member0[];\n \t} g_Vertices_3[];\n \t\n-\thitAttributeEXT BuiltInTriangleIntersectionAttributes _20;\n-\tlayout(location = 0) rayPayloadInEXT Payload_t _19;\n+\thitAttributeEXT BuiltInTriangleIntersectionAttributes attrs;\n+\tlayout(location = 0) rayPayloadInEXT Payload_t payload;\n \tlayout(set = 4, binding = 46) uniform texture2D g_bindless_Texture2D[65536];\n \tlayout(set = 3, binding = 14) uniform sampler g_Sampler;\n \t\n \tvoid main()\n \t{\n-\t    vec3 _211 = vec3(g_MaterialData_1._m0[g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData / 4u], g_MaterialData_1._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 4u) / 4u], g_MaterialData_1._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 8u) / 4u]);\n-\t    int _210 = g_MaterialData_3._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 16u) / 4u];\n-\t    int _209 = g_MaterialData_3._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 24u) / 4u];\n-\t    uvec3 _245;\n+\t    PackedRtxInstanceData_t_natural_logical _260;\n+\t    _260.nSrgbColor = g_instanceBuffer._member0[uint(gl_InstanceID)].nSrgbColor;\n+\t    _260.nTriangleGeometry = g_instanceBuffer._member0[uint(gl_InstanceID)].nTriangleGeometry;\n+\t    _260.nMaterialData = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialData;\n+\t    _260.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialFlags_nInstanceFlags;\n+\t    _260.fEmissiveBoost = g_instanceBuffer._member0[uint(gl_InstanceID)].fEmissiveBoost;\n+\t    _260.nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nInstanceFlags;\n+\t    _260._pad1 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad1;\n+\t    _260._pad2 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad2;\n+\t    uint _218 = _260.nMaterialData;\n+\t    vec3 _221 = vec3(g_MaterialData_1._member0[_218 / 4u], g_MaterialData_1._member0[(_218 + 4u) / 4u], g_MaterialData_1._member0[(_218 + 8u) / 4u]);\n+\t    int _220 = g_MaterialData_3._member0[(_218 + 16u) / 4u];\n+\t    int _219 = g_MaterialData_3._member0[(_218 + 24u) / 4u];\n+\t    uvec3 _253;\n \t    do\n \t    {\n-\t        if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.w == 4)\n+\t        if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.w == 4)\n \t        {\n-\t            uint _321 = (12u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);\n-\t            _245 = uvec3(g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_321 / 4u], g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[(_321 + 4u) / 4u], g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[(_321 + 8u) / 4u]);\n+\t            uint _333 = (12u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);\n+\t            _253 = uvec3(g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_333 / 4u], g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[(_333 + 4u) / 4u], g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[(_333 + 8u) / 4u]);\n \t            break;\n \t        }\n \t        else\n \t        {\n-\t            uint _296 = (6u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);\n-\t            uint _297 = _296 & 4294967292u;\n-\t            uint _298 = _297 / 4u;\n-\t            uint _302 = (_297 + 4u) / 4u;\n-\t            uint _307 = (g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_298] & 4294901760u) >> uint(16);\n-\t            uint _308 = g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_302] & 65535u;\n-\t            uvec3 _246;\n-\t            if (_296 == _297)\n+\t            uint _306 = (6u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);\n+\t            uint _307 = _306 & 4294967292u;\n+\t            uint _308 = _307 / 4u;\n+\t            uint _312 = (_307 + 4u) / 4u;\n+\t            uint _317 = (g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_308] & 4294901760u) >> uint(16);\n+\t            uint _318 = g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_312] & 65535u;\n+\t            uvec3 _254;\n+\t            if (_306 == _307)\n \t            {\n-\t                _246 = uvec3(g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_298] & 65535u, _307, _308);\n+\t                _254 = uvec3(g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_308] & 65535u, _317, _318);\n \t            }\n \t            else\n \t            {\n-\t                _246 = uvec3(_307, _308, (g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_302] & 4294901760u) >> uint(16));\n+\t                _254 = uvec3(_317, _318, (g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_312] & 4294901760u) >> uint(16));\n \t            }\n-\t            _245 = _246;\n+\t            _253 = _254;\n \t            break;\n \t        }\n \t        break;\n \t    } while(false);\n-\t    uint _336 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.x);\n-\t    uvec3 _344 = (uvec3(uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.x)) * _245) + uvec3(uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.x));\n-\t    uint _345 = _344.x;\n-\t    vec3 _208 = vec3(g_Vertices_1[_336]._m0[_345 / 4u], g_Vertices_1[_336]._m0[(_345 + 4u) / 4u], g_Vertices_1[_336]._m0[(_345 + 8u) / 4u]);\n-\t    uint _358 = _344.y;\n-\t    vec3 _207 = vec3(g_Vertices_1[_336]._m0[_358 / 4u], g_Vertices_1[_336]._m0[(_358 + 4u) / 4u], g_Vertices_1[_336]._m0[(_358 + 8u) / 4u]);\n-\t    uint _371 = _344.z;\n-\t    vec3 _206 = vec3(g_Vertices_1[_336]._m0[_371 / 4u], g_Vertices_1[_336]._m0[(_371 + 4u) / 4u], g_Vertices_1[_336]._m0[(_371 + 8u) / 4u]);\n-\t    vec3 _203;\n-\t    vec3 _204;\n-\t    vec3 _205;\n-\t    if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y != 0)\n+\t    uint _59 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.x);\n+\t    uvec3 _363 = (uvec3(uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.x)) * _253) + uvec3(uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.x));\n+\t    uint _364 = _363.x;\n+\t    vec3 _217 = vec3(g_Vertices_1[_59]._member0[_364 / 4u], g_Vertices_1[_59]._member0[(_364 + 4u) / 4u], g_Vertices_1[_59]._member0[(_364 + 8u) / 4u]);\n+\t    uint _377 = _363.y;\n+\t    vec3 _216 = vec3(g_Vertices_1[_59]._member0[_377 / 4u], g_Vertices_1[_59]._member0[(_377 + 4u) / 4u], g_Vertices_1[_59]._member0[(_377 + 8u) / 4u]);\n+\t    uint _390 = _363.z;\n+\t    vec3 _215 = vec3(g_Vertices_1[_59]._member0[_390 / 4u], g_Vertices_1[_59]._member0[(_390 + 4u) / 4u], g_Vertices_1[_59]._member0[(_390 + 8u) / 4u]);\n+\t    vec3 _212;\n+\t    vec3 _213;\n+\t    vec3 _214;\n+\t    if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y != 0)\n \t    {\n-\t        ivec4 _238 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;\n-\t        uint _395 = uint(_238[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z]);\n-\t        uint _397 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z);\n-\t        ivec4 _236 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;\n-\t        ivec4 _237 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;\n-\t        uvec3 _408 = (uvec3(uint(_236[_397])) * _245) + uvec3(uint(_237[_397]) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.x));\n-\t        if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 6)\n+\t        ivec4 _246 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;\n+\t        uint _61 = uint(_246[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z]);\n+\t        uint _418 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z);\n+\t        ivec4 _244 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;\n+\t        ivec4 _245 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;\n+\t        uvec3 _434 = (uvec3(uint(_244[_418])) * _253) + uvec3(uint(_245[_418]) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.x));\n+\t        if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 6)\n \t        {\n-\t            uint _652 = _408.x;\n-\t            _205 = vec3(g_Vertices_1[_395]._m0[_652 / 4u], g_Vertices_1[_395]._m0[(_652 + 4u) / 4u], g_Vertices_1[_395]._m0[(_652 + 8u) / 4u]);\n-\t            uint _665 = _408.y;\n-\t            _204 = vec3(g_Vertices_1[_395]._m0[_665 / 4u], g_Vertices_1[_395]._m0[(_665 + 4u) / 4u], g_Vertices_1[_395]._m0[(_665 + 8u) / 4u]);\n-\t            uint _678 = _408.z;\n-\t            _203 = vec3(g_Vertices_1[_395]._m0[_678 / 4u], g_Vertices_1[_395]._m0[(_678 + 4u) / 4u], g_Vertices_1[_395]._m0[(_678 + 8u) / 4u]);\n+\t            uint _675 = _434.x;\n+\t            _214 = vec3(g_Vertices_1[_61]._member0[_675 / 4u], g_Vertices_1[_61]._member0[(_675 + 4u) / 4u], g_Vertices_1[_61]._member0[(_675 + 8u) / 4u]);\n+\t            uint _688 = _434.y;\n+\t            _213 = vec3(g_Vertices_1[_61]._member0[_688 / 4u], g_Vertices_1[_61]._member0[(_688 + 4u) / 4u], g_Vertices_1[_61]._member0[(_688 + 8u) / 4u]);\n+\t            uint _701 = _434.z;\n+\t            _212 = vec3(g_Vertices_1[_61]._member0[_701 / 4u], g_Vertices_1[_61]._member0[(_701 + 4u) / 4u], g_Vertices_1[_61]._member0[(_701 + 8u) / 4u]);\n \t        }\n \t        else\n \t        {\n-\t            if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 17)\n+\t            if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 17)\n \t            {\n-\t                uint _525 = _408.x;\n-\t                uvec2 _532 = uvec2(g_Vertices_3[_395]._m0[_525 / 4u], _193);\n-\t                uint _533 = _408.y;\n-\t                uvec2 _199 = uvec2(g_Vertices_3[_395]._m0[_533 / 4u], g_Vertices_3[_395]._m0[(_533 + 4u) / 4u]);\n-\t                uint _542 = _408.z;\n-\t                uvec2 _198 = uvec2(g_Vertices_3[_395]._m0[_542 / 4u], g_Vertices_3[_395]._m0[(_542 + 4u) / 4u]);\n-\t                uint _551 = _532.x;\n-\t                vec2 _561 = ((vec2(float((_551) & 65535u), float((_551 >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n-\t                float _562 = _561.x;\n-\t                float _567 = (1.0 - abs(_562)) - abs(_561.y);\n-\t                vec3 _568 = vec3(_562, _561.y, _567);\n-\t                float _570 = saturate(-_567);\n-\t                vec2 _576 = _561 + mix(vec2(_570), vec2(-_570), greaterThanEqual(_561, vec2(0.0)));\n-\t                _568.x = _576.x;\n-\t                _568.y = _576.y;\n-\t                vec3 _242 = normalize(_568);\n-\t                _205 = _242;\n-\t                vec2 _595 = ((vec2(float((_199.x) & 65535u), float((_199.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n-\t                float _596 = _595.x;\n-\t                float _601 = (1.0 - abs(_596)) - abs(_595.y);\n-\t                vec3 _602 = vec3(_596, _595.y, _601);\n-\t                float _604 = saturate(-_601);\n-\t                vec2 _610 = _595 + mix(vec2(_604), vec2(-_604), greaterThanEqual(_595, vec2(0.0)));\n-\t                _602.x = _610.x;\n-\t                _602.y = _610.y;\n-\t                vec3 _243 = normalize(_602);\n-\t                _204 = _243;\n-\t                vec2 _629 = ((vec2(float((_198.x) & 65535u), float((_198.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n-\t                float _630 = _629.x;\n-\t                float _635 = (1.0 - abs(_630)) - abs(_629.y);\n-\t                vec3 _636 = vec3(_630, _629.y, _635);\n-\t                float _638 = saturate(-_635);\n-\t                vec2 _644 = _629 + mix(vec2(_638), vec2(-_638), greaterThanEqual(_629, vec2(0.0)));\n-\t                _636.x = _644.x;\n-\t                _636.y = _644.y;\n-\t                vec3 _244 = normalize(_636);\n-\t                _203 = _244;\n+\t                uint _551 = _434.x;\n+\t                uvec2 _558 = uvec2(g_Vertices_3[_61]._member0[_551 / 4u], _199);\n+\t                uint _559 = _434.y;\n+\t                uvec2 _205 = uvec2(g_Vertices_3[_61]._member0[_559 / 4u], g_Vertices_3[_61]._member0[(_559 + 4u) / 4u]);\n+\t                uint _568 = _434.z;\n+\t                uvec2 _204 = uvec2(g_Vertices_3[_61]._member0[_568 / 4u], g_Vertices_3[_61]._member0[(_568 + 4u) / 4u]);\n+\t                uint _577 = _558.x;\n+\t                vec2 _586 = ((vec2(float(_577 & 65535u), float((_577 >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n+\t                float _587 = _586.x;\n+\t                float _592 = (1.0 - abs(_587)) - abs(_586.y);\n+\t                vec3 _593 = vec3(_587, _586.y, _592);\n+\t                float _595 = saturate(-_592);\n+\t                vec2 _601 = _586 + mix(vec2(_595), vec2(-_595), greaterThanEqual(_586, vec2(0.0)));\n+\t                _593.x = _601.x;\n+\t                _593.y = _601.y;\n+\t                vec3 _247 = normalize(_593);\n+\t                _214 = _247;\n+\t                vec2 _619 = ((vec2(float(_205.x & 65535u), float((_205.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n+\t                float _620 = _619.x;\n+\t                float _625 = (1.0 - abs(_620)) - abs(_619.y);\n+\t                vec3 _626 = vec3(_620, _619.y, _625);\n+\t                float _628 = saturate(-_625);\n+\t                vec2 _634 = _619 + mix(vec2(_628), vec2(-_628), greaterThanEqual(_619, vec2(0.0)));\n+\t                _626.x = _634.x;\n+\t                _626.y = _634.y;\n+\t                vec3 _248 = normalize(_626);\n+\t                _213 = _248;\n+\t                vec2 _652 = ((vec2(float(_204.x & 65535u), float((_204.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);\n+\t                float _653 = _652.x;\n+\t                float _658 = (1.0 - abs(_653)) - abs(_652.y);\n+\t                vec3 _659 = vec3(_653, _652.y, _658);\n+\t                float _661 = saturate(-_658);\n+\t                vec2 _667 = _652 + mix(vec2(_661), vec2(-_661), greaterThanEqual(_652, vec2(0.0)));\n+\t                _659.x = _667.x;\n+\t                _659.y = _667.y;\n+\t                vec3 _249 = normalize(_659);\n+\t                _212 = _249;\n \t            }\n \t            else\n \t            {\n-\t                uint _418 = _408.x / 4u;\n-\t                float _427 = (float((g_Vertices_3[_395]._m0[_418] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _430 = (float((g_Vertices_3[_395]._m0[_418] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _434 = (1.0 - abs(_427)) - abs(_430);\n-\t                vec3 _435 = vec3(_427, _430, _434);\n-\t                float _437 = saturate(-_434);\n-\t                vec2 _438 = vec2(_427, _430);\n-\t                vec2 _444 = _438 + mix(vec2(_437), vec2(-_437), greaterThanEqual(_438, vec2(0.0)));\n-\t                _435.x = _444.x;\n-\t                _435.y = _444.y;\n-\t                vec3 _239 = normalize(_435);\n-\t                _205 = _239;\n-\t                uint _454 = _408.y / 4u;\n-\t                float _463 = (float((g_Vertices_3[_395]._m0[_454] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _466 = (float((g_Vertices_3[_395]._m0[_454] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _470 = (1.0 - abs(_463)) - abs(_466);\n-\t                vec3 _471 = vec3(_463, _466, _470);\n-\t                float _473 = saturate(-_470);\n-\t                vec2 _474 = vec2(_463, _466);\n-\t                vec2 _480 = _474 + mix(vec2(_473), vec2(-_473), greaterThanEqual(_474, vec2(0.0)));\n-\t                _471.x = _480.x;\n-\t                _471.y = _480.y;\n-\t                vec3 _240 = normalize(_471);\n-\t                _204 = _240;\n-\t                uint _490 = _408.z / 4u;\n-\t                float _499 = (float((g_Vertices_3[_395]._m0[_490] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _502 = (float((g_Vertices_3[_395]._m0[_490] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n-\t                float _506 = (1.0 - abs(_499)) - abs(_502);\n-\t                vec3 _507 = vec3(_499, _502, _506);\n-\t                float _509 = saturate(-_506);\n-\t                vec2 _510 = vec2(_499, _502);\n-\t                vec2 _516 = _510 + mix(vec2(_509), vec2(-_509), greaterThanEqual(_510, vec2(0.0)));\n-\t                _507.x = _516.x;\n-\t                _507.y = _516.y;\n-\t                vec3 _241 = normalize(_507);\n-\t                _203 = _241;\n+\t                uint _444 = _434.x / 4u;\n+\t                float _453 = (float((g_Vertices_3[_61]._member0[_444] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _456 = (float((g_Vertices_3[_61]._member0[_444] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _460 = (1.0 - abs(_453)) - abs(_456);\n+\t                vec3 _461 = vec3(_453, _456, _460);\n+\t                float _463 = saturate(-_460);\n+\t                vec2 _464 = vec2(_453, _456);\n+\t                vec2 _470 = _464 + mix(vec2(_463), vec2(-_463), greaterThanEqual(_464, vec2(0.0)));\n+\t                _461.x = _470.x;\n+\t                _461.y = _470.y;\n+\t                vec3 _250 = normalize(_461);\n+\t                _214 = _250;\n+\t                uint _480 = _434.y / 4u;\n+\t                float _489 = (float((g_Vertices_3[_61]._member0[_480] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _492 = (float((g_Vertices_3[_61]._member0[_480] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _496 = (1.0 - abs(_489)) - abs(_492);\n+\t                vec3 _497 = vec3(_489, _492, _496);\n+\t                float _499 = saturate(-_496);\n+\t                vec2 _500 = vec2(_489, _492);\n+\t                vec2 _506 = _500 + mix(vec2(_499), vec2(-_499), greaterThanEqual(_500, vec2(0.0)));\n+\t                _497.x = _506.x;\n+\t                _497.y = _506.y;\n+\t                vec3 _251 = normalize(_497);\n+\t                _213 = _251;\n+\t                uint _516 = _434.z / 4u;\n+\t                float _525 = (float((g_Vertices_3[_61]._member0[_516] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _528 = (float((g_Vertices_3[_61]._member0[_516] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;\n+\t                float _532 = (1.0 - abs(_525)) - abs(_528);\n+\t                vec3 _533 = vec3(_525, _528, _532);\n+\t                float _535 = saturate(-_532);\n+\t                vec2 _536 = vec2(_525, _528);\n+\t                vec2 _542 = _536 + mix(vec2(_535), vec2(-_535), greaterThanEqual(_536, vec2(0.0)));\n+\t                _533.x = _542.x;\n+\t                _533.y = _542.y;\n+\t                vec3 _252 = normalize(_533);\n+\t                _212 = _252;\n \t            }\n \t        }\n \t    }\n \t    else\n \t    {\n-\t        _205 = vec3(0.0);\n-\t        _204 = vec3(0.0);\n-\t        _203 = vec3(0.0);\n+\t        _214 = vec3(0.0);\n+\t        _213 = vec3(0.0);\n+\t        _212 = vec3(0.0);\n \t    }\n-\t    vec2 _202 = vec2(0.0);\n-\t    vec2 _201 = vec2(0.0);\n-\t    vec2 _200 = vec2(0.0);\n-\t    if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y != 0)\n+\t    vec2 _211 = vec2(0.0);\n+\t    vec2 _210 = vec2(0.0);\n+\t    vec2 _209 = vec2(0.0);\n+\t    if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y != 0)\n \t    {\n-\t        ivec4 _235 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;\n-\t        uint _703 = uint(_235[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z]);\n-\t        uint _705 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z);\n-\t        ivec4 _233 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;\n-\t        ivec4 _234 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;\n-\t        uvec3 _716 = (uvec3(uint(_233[_705])) * _245) + uvec3(uint(_234[_705]) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].x));\n-\t        if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 16)\n+\t        ivec4 _243 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;\n+\t        uint _65 = uint(_243[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z]);\n+\t        uint _730 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z);\n+\t        ivec4 _241 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;\n+\t        ivec4 _242 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;\n+\t        uvec3 _746 = (uvec3(uint(_241[_730])) * _253) + uvec3(uint(_242[_730]) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].x));\n+\t        if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 16)\n \t        {\n-\t            uint _851 = _716.x;\n-\t            _202 = vec2(g_Vertices_1[_703]._m0[_851 / 4u], g_Vertices_1[_703]._m0[(_851 + 4u) / 4u]);\n-\t            uint _860 = _716.y;\n-\t            _201 = vec2(g_Vertices_1[_703]._m0[_860 / 4u], g_Vertices_1[_703]._m0[(_860 + 4u) / 4u]);\n-\t            uint _869 = _716.z;\n-\t            _200 = vec2(g_Vertices_1[_703]._m0[_869 / 4u], g_Vertices_1[_703]._m0[(_869 + 4u) / 4u]);\n+\t            uint _878 = _746.x;\n+\t            _211 = vec2(g_Vertices_1[_65]._member0[_878 / 4u], g_Vertices_1[_65]._member0[(_878 + 4u) / 4u]);\n+\t            uint _887 = _746.y;\n+\t            _210 = vec2(g_Vertices_1[_65]._member0[_887 / 4u], g_Vertices_1[_65]._member0[(_887 + 4u) / 4u]);\n+\t            uint _896 = _746.z;\n+\t            _209 = vec2(g_Vertices_1[_65]._member0[_896 / 4u], g_Vertices_1[_65]._member0[(_896 + 4u) / 4u]);\n \t        }\n \t        else\n \t        {\n-\t            if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 34)\n+\t            if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 34)\n \t            {\n-\t                uint _822 = _716.x / 4u;\n-\t                _202 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_822], g_Vertices_3[_703]._m0[_822] >> uint(16)) & uvec2(65535u))));\n-\t                uint _832 = _716.y / 4u;\n-\t                _201 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_832], g_Vertices_3[_703]._m0[_832] >> uint(16)) & uvec2(65535u))));\n-\t                uint _842 = _716.z / 4u;\n-\t                _200 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_842], g_Vertices_3[_703]._m0[_842] >> uint(16)) & uvec2(65535u))));\n+\t                uint _849 = _746.x / 4u;\n+\t                _211 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_849], g_Vertices_3[_65]._member0[_849] >> uint(16)) & uvec2(65535u))));\n+\t                uint _859 = _746.y / 4u;\n+\t                _210 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_859], g_Vertices_3[_65]._member0[_859] >> uint(16)) & uvec2(65535u))));\n+\t                uint _869 = _746.z / 4u;\n+\t                _209 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_869], g_Vertices_3[_65]._member0[_869] >> uint(16)) & uvec2(65535u))));\n \t            }\n \t            else\n \t            {\n-\t                if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 37)\n+\t                if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 37)\n \t                {\n-\t                    uint _729 = _716.x / 4u;\n-\t                    uint _733 = (g_Vertices_3[_703]._m0[_729] & 65535u);\n-\t                    int _232;\n-\t                    if (_733 > 32767u)\n+\t                    uint _759 = _746.x / 4u;\n+\t                    uint _762 = g_Vertices_3[_65]._member0[_759] & 65535u;\n+\t                    int _240;\n+\t                    if (_762 > 32767u)\n \t                    {\n-\t                        _232 = int(4294901760u | _733);\n+\t                        _240 = int(4294901760u | _762);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _232 = int(_733);\n+\t                        _240 = int(_762);\n \t                    }\n-\t                    uint _746 = (g_Vertices_3[_703]._m0[_729] & 4294901760u) >> uint(16);\n-\t                    int _231;\n-\t                    if (_746 > 32767u)\n+\t                    uint _775 = (g_Vertices_3[_65]._member0[_759] & 4294901760u) >> uint(16);\n+\t                    int _239;\n+\t                    if (_775 > 32767u)\n \t                    {\n-\t                        _231 = int(4294901760u | _746);\n+\t                        _239 = int(4294901760u | _775);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _231 = int(_746);\n+\t                        _239 = int(_775);\n \t                    }\n-\t                    _202 = vec2(max(float(_232) * 3.0518509447574615478515625e-05, -1.0), max(float(_231) * 3.0518509447574615478515625e-05, -1.0));\n-\t                    uint _760 = _716.y / 4u;\n-\t                    uint _764 = (g_Vertices_3[_703]._m0[_760] & 65535u);\n-\t                    int _230;\n-\t                    if (_764 > 32767u)\n+\t                    _211 = vec2(max(float(_240) * 3.0518509447574615478515625e-05, -1.0), max(float(_239) * 3.0518509447574615478515625e-05, -1.0));\n+\t                    uint _789 = _746.y / 4u;\n+\t                    uint _792 = g_Vertices_3[_65]._member0[_789] & 65535u;\n+\t                    int _238;\n+\t                    if (_792 > 32767u)\n \t                    {\n-\t                        _230 = int(4294901760u | _764);\n+\t                        _238 = int(4294901760u | _792);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _230 = int(_764);\n+\t                        _238 = int(_792);\n \t                    }\n-\t                    uint _777 = (g_Vertices_3[_703]._m0[_760] & 4294901760u) >> uint(16);\n-\t                    int _229;\n-\t                    if (_777 > 32767u)\n+\t                    uint _805 = (g_Vertices_3[_65]._member0[_789] & 4294901760u) >> uint(16);\n+\t                    int _237;\n+\t                    if (_805 > 32767u)\n \t                    {\n-\t                        _229 = int(4294901760u | _777);\n+\t                        _237 = int(4294901760u | _805);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _229 = int(_777);\n+\t                        _237 = int(_805);\n \t                    }\n-\t                    _201 = vec2(max(float(_230) * 3.0518509447574615478515625e-05, -1.0), max(float(_229) * 3.0518509447574615478515625e-05, -1.0));\n-\t                    uint _791 = _716.z / 4u;\n-\t                    uint _795 = (g_Vertices_3[_703]._m0[_791] & 65535u);\n-\t                    int _228;\n-\t                    if (_795 > 32767u)\n+\t                    _210 = vec2(max(float(_238) * 3.0518509447574615478515625e-05, -1.0), max(float(_237) * 3.0518509447574615478515625e-05, -1.0));\n+\t                    uint _819 = _746.z / 4u;\n+\t                    uint _822 = g_Vertices_3[_65]._member0[_819] & 65535u;\n+\t                    int _236;\n+\t                    if (_822 > 32767u)\n \t                    {\n-\t                        _228 = int(4294901760u | _795);\n+\t                        _236 = int(4294901760u | _822);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _228 = int(_795);\n+\t                        _236 = int(_822);\n \t                    }\n-\t                    uint _808 = (g_Vertices_3[_703]._m0[_791] & 4294901760u) >> uint(16);\n-\t                    int _227;\n-\t                    if (_808 > 32767u)\n+\t                    uint _835 = (g_Vertices_3[_65]._member0[_819] & 4294901760u) >> uint(16);\n+\t                    int _235;\n+\t                    if (_835 > 32767u)\n \t                    {\n-\t                        _227 = int(4294901760u | _808);\n+\t                        _235 = int(4294901760u | _835);\n \t                    }\n \t                    else\n \t                    {\n-\t                        _227 = int(_808);\n+\t                        _235 = int(_835);\n \t                    }\n-\t                    _200 = vec2(max(float(_228) * 3.0518509447574615478515625e-05, -1.0), max(float(_227) * 3.0518509447574615478515625e-05, -1.0));\n+\t                    _209 = vec2(max(float(_236) * 3.0518509447574615478515625e-05, -1.0), max(float(_235) * 3.0518509447574615478515625e-05, -1.0));\n \t                }\n \t            }\n \t        }\n \t    }\n-\t    vec4 _905 = vec4(uvec4((g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 255u), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 65280u) >> uint(8), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 16711680u) >> uint(16), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n-\t    vec4 _226 = _905;\n-\t    vec3 _906 = _905.xyz;\n-\t    vec3 _907 = _906 * vec3(0.077399380505084991455078125);\n-\t    vec3 _910 = pow((_906 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));\n-\t    float _223;\n-\t    if (_905.x <= 0.040449999272823333740234375)\n+\t    PackedRtxInstanceData_t_natural_logical _922;\n+\t    _922.nSrgbColor = g_instanceBuffer._member0[uint(gl_InstanceID)].nSrgbColor;\n+\t    _922.nTriangleGeometry = g_instanceBuffer._member0[uint(gl_InstanceID)].nTriangleGeometry;\n+\t    _922.nMaterialData = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialData;\n+\t    _922.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialFlags_nInstanceFlags;\n+\t    _922.fEmissiveBoost = g_instanceBuffer._member0[uint(gl_InstanceID)].fEmissiveBoost;\n+\t    _922.nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nInstanceFlags;\n+\t    _922._pad1 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad1;\n+\t    _922._pad2 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad2;\n+\t    vec4 _933 = vec4(uvec4(_922.nSrgbColor & 255u, (_922.nSrgbColor & 65280u) >> uint(8), (_922.nSrgbColor & 16711680u) >> uint(16), (_922.nSrgbColor & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n+\t    vec4 _234 = _933;\n+\t    vec3 _934 = _933.xyz;\n+\t    vec3 _935 = _934 * vec3(0.077399380505084991455078125);\n+\t    vec3 _938 = pow((_934 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));\n+\t    float _231;\n+\t    if (_933.x <= 0.040449999272823333740234375)\n \t    {\n-\t        _223 = _907.x;\n+\t        _231 = _935.x;\n \t    }\n \t    else\n \t    {\n-\t        _223 = _910.x;\n+\t        _231 = _938.x;\n \t    }\n-\t    float _224;\n-\t    if (_905.y <= 0.040449999272823333740234375)\n+\t    float _232;\n+\t    if (_933.y <= 0.040449999272823333740234375)\n \t    {\n-\t        _224 = _907.y;\n+\t        _232 = _935.y;\n \t    }\n \t    else\n \t    {\n-\t        _224 = _910.y;\n+\t        _232 = _938.y;\n \t    }\n-\t    float _225;\n-\t    if (_905.z <= 0.040449999272823333740234375)\n+\t    float _233;\n+\t    if (_933.z <= 0.040449999272823333740234375)\n \t    {\n-\t        _225 = _907.z;\n+\t        _233 = _935.z;\n \t    }\n \t    else\n \t    {\n-\t        _225 = _910.z;\n+\t        _233 = _938.z;\n \t    }\n-\t    vec3 _935 = vec3(_223, _224, _225);\n-\t    vec4 _937 = _226;\n-\t    _937.x = _935.x;\n-\t    _937.y = _935.y;\n-\t    _937.z = _935.z;\n-\t    _226 = _937;\n-\t    f16vec3 _944 = f16vec3(vec3(0.0));\n-\t    _19._m7 = MaterialDataMinimal_t(_944, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _944, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0)));\n-\t    _19._m3 = gl_RayTmaxEXT;\n-\t    vec3 _222;\n+\t    vec3 _963 = vec3(_231, _232, _233);\n+\t    vec4 _965 = _234;\n+\t    _965.x = _963.x;\n+\t    _965.y = _963.y;\n+\t    _965.z = _963.z;\n+\t    _234 = _965;\n+\t    f16vec3 _972 = f16vec3(vec3(0.0));\n+\t    payload.material = MaterialDataMinimal_t(_972, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _972, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0)));\n+\t    payload.flHitT = gl_RayTmaxEXT;\n+\t    vec3 _208 = _214;\n+\t    vec3 _207 = _213;\n+\t    vec3 _206 = _212;\n+\t    vec3 _230;\n \t    do\n \t    {\n-\t        vec3 _964 = ((_205 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_204 * _20.barycentrics.x)) + (_203 * _20.barycentrics.y);\n-\t        if (all(equal(_964, vec3(0.0))))\n+\t        vec3 _996 = ((_208 * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_207 * attrs.barycentrics.x)) + (_206 * attrs.barycentrics.y);\n+\t        if (all(equal(_996, vec3(0.0))))\n \t        {\n-\t            _222 = vec3(0.0);\n+\t            _230 = vec3(0.0);\n \t            break;\n \t        }\n-\t        mat3x4 _970 = transpose(gl_WorldToObjectEXT);\n-\t        mat3 _221;\n-\t        mat3 _973 = _221;\n-\t        _973[0] = _970[0].xyz;\n-\t        _973[1] = _970[1].xyz;\n-\t        _973[2] = _970[2].xyz;\n-\t        _221 = _973;\n-\t        _222 = normalize(_973 * _964);\n+\t        mat3x4 _1002 = transpose(gl_WorldToObjectEXT);\n+\t        mat3 _229;\n+\t        mat3 _1005 = _229;\n+\t        _1005[0] = _1002[0].xyz;\n+\t        _1005[1] = _1002[1].xyz;\n+\t        _1005[2] = _1002[2].xyz;\n+\t        _229 = _1005;\n+\t        _230 = normalize(_1005 * _996);\n \t        break;\n \t    } while(false);\n-\t    f16vec3 _984 = f16vec3(_222);\n-\t    _19._m7.vMaterialBits = _984;\n-\t    _19._m2 = vec3(_984);\n-\t    mat3x4 _995 = transpose(gl_WorldToObjectEXT);\n-\t    mat3 _220;\n-\t    mat3 _998 = _220;\n-\t    _998[0] = _995[0].xyz;\n-\t    _998[1] = _995[1].xyz;\n-\t    _998[2] = _995[2].xyz;\n-\t    _220 = _998;\n-\t    _19._m1 = normalize(_998 * cross(_207 - _208, _206 - _208));\n-\t    if ((_209 & 1) != 0)\n+\t    f16vec3 _1016 = f16vec3(_230);\n+\t    payload.material.vNormalWs = _1016;\n+\t    payload.vInterpolatedNormalWs = vec3(_1016);\n+\t    mat3x4 _1027 = transpose(gl_WorldToObjectEXT);\n+\t    mat3 _228;\n+\t    mat3 _1030 = _228;\n+\t    _1030[0] = _1027[0].xyz;\n+\t    _1030[1] = _1027[1].xyz;\n+\t    _1030[2] = _1027[2].xyz;\n+\t    _228 = _1030;\n+\t    payload.vFaceNormalWs = normalize(_1030 * cross(_216 - _217, _215 - _217));\n+\t    if ((_219 & 1) != 0)\n \t    {\n \t        if (gl_HitKindEXT == 255u)\n \t        {\n-\t            _19._m1 = -_19._m1;\n-\t            _19._m2 = -_19._m2;\n-\t            _19._m7.vMaterialBits = -_19._m7.vMaterialBits;\n-\t            _19._m6 = true;\n+\t            payload.vFaceNormalWs = -payload.vFaceNormalWs;\n+\t            payload.vInterpolatedNormalWs = -payload.vInterpolatedNormalWs;\n+\t            payload.material.vNormalWs = -payload.material.vNormalWs;\n+\t            payload.bFlippedNormal = true;\n \t        }\n \t    }\n-\t    vec3 _1036 = normalize(cross(_207 - _208, _206 - _208));\n-\t    vec3 _212[3] = vec3[](_205, _204, _203);\n-\t    vec3 _213[3] = vec3[](_208, _207, _206);\n-\t    vec3 _1045 = ((_208 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_207 * _20.barycentrics.x)) + (_206 * _20.barycentrics.y);\n-\t    vec3 _214[3];\n-\t    _214[0] = _1045 - (_205 * dot(_1045 - _208, _205));\n-\t    _214[1] = _1045 - (_204 * dot(_1045 - _207, _204));\n-\t    _214[2] = _1045 - (_203 * dot(_1045 - _206, _203));\n-\t    vec3 _1073 = ((_214[0] * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_214[1] * _20.barycentrics.x)) + (_214[2] * _20.barycentrics.y);\n-\t    vec3 _215[3];\n-\t    _215[0] = cross(_208 - _207, _1036);\n-\t    _215[1] = cross(_207 - _206, _1036);\n-\t    _215[2] = cross(_206 - _208, _1036);\n-\t    float _216 = dot(_1073 - _1045, _1036);\n-\t    vec3 _217 = _1073;\n-\t    int _218 = 0;\n+\t    vec3 _1068 = normalize(cross(_216 - _217, _215 - _217));\n+\t    vec3 _255[3] = vec3[](_217, _216, _215);\n+\t    vec3 _256[3] = vec3[](_214, _213, _212);\n+\t    vec3 _1084 = ((_255[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_255[1] * attrs.barycentrics.x)) + (_255[2] * attrs.barycentrics.y);\n+\t    vec3 _222[3];\n+\t    _222[0] = _1084 - (_256[0] * dot(_1084 - _255[0], _256[0]));\n+\t    _222[1] = _1084 - (_256[1] * dot(_1084 - _255[1], _256[1]));\n+\t    _222[2] = _1084 - (_256[2] * dot(_1084 - _255[2], _256[2]));\n+\t    vec3 _1124 = ((_222[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_222[1] * attrs.barycentrics.x)) + (_222[2] * attrs.barycentrics.y);\n+\t    vec3 _223[3];\n+\t    _223[0] = cross(_255[0] - _255[1], _1068);\n+\t    _223[1] = cross(_255[1] - _255[2], _1068);\n+\t    _223[2] = cross(_255[2] - _255[0], _1068);\n+\t    float _224 = dot(_1124 - _1084, _1068);\n+\t    vec3 _225 = _1124;\n+\t    int _226 = 0;\n \t    for (;;)\n \t    {\n-\t        bool _1089_ladder_break = false;\n+\t        bool _1140_ladder_break = false;\n \t        do\n \t        {\n-\t            if (!(_218 < 3))\n+\t            if (!(_226 < 3))\n \t            {\n-\t                _1089_ladder_break = true;\n+\t                _1140_ladder_break = true;\n \t                break;\n \t            }\n-\t            if (_216 > 0.00999999977648258209228515625)\n+\t            if (_224 > 0.00999999977648258209228515625)\n \t            {\n-\t                _1089_ladder_break = true;\n+\t                _1140_ladder_break = true;\n \t                break;\n \t            }\n-\t            if (dot(_215[_218], _215[_218]) == 0.0)\n+\t            if (dot(_223[_226], _223[_226]) == 0.0)\n \t            {\n \t                break;\n \t            }\n-\t            _215[_218] = normalize(_215[_218]);\n-\t            int _219 = 0;\n+\t            _223[_226] = normalize(_223[_226]);\n+\t            int _227 = 0;\n \t            for (;;)\n \t            {\n-\t                if (!(_219 < 3))\n+\t                if (!(_227 < 3))\n \t                {\n \t                    break;\n \t                }\n-\t                vec3 _1127 = _212[_219] - (_215[_218] * dot(_215[_218], _212[_219]));\n-\t                _214[_219] = _1045 - (_1127 * dot(_1045 - _213[_219], _1127));\n-\t                _219++;\n+\t                vec3 _1178 = _256[_227] - (_223[_226] * dot(_223[_226], _256[_227]));\n+\t                _222[_227] = _1084 - (_1178 * dot(_1084 - _255[_227], _1178));\n+\t                _227++;\n \t                continue;\n \t            }\n-\t            vec3 _1151 = ((_214[0] * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_214[1] * _20.barycentrics.x)) + (_214[2] * _20.barycentrics.y);\n-\t            _216 = dot(_1151 - _1045, _1036);\n-\t            _217 = _1151;\n+\t            vec3 _1202 = ((_222[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_222[1] * attrs.barycentrics.x)) + (_222[2] * attrs.barycentrics.y);\n+\t            _224 = dot(_1202 - _1084, _1068);\n+\t            _225 = _1202;\n \t            break;\n \t        } while(false);\n-\t        if (_1089_ladder_break)\n+\t        if (_1140_ladder_break)\n \t        {\n \t            break;\n \t        }\n-\t        _218++;\n+\t        _226++;\n \t        continue;\n \t    }\n-\t    if (!(_216 > 0.00999999977648258209228515625))\n+\t    if (!(_224 > 0.00999999977648258209228515625))\n \t    {\n-\t        _217 = vec3(3.4028234663852885981170418348452e+38);\n+\t        _225 = vec3(3.4028234663852885981170418348452e+38);\n \t    }\n-\t    _19.material = _217;\n-\t    if (any(notEqual(_217, vec3(3.4028234663852885981170418348452e+38))))\n+\t    payload.vSmoothPositionWs = _225;\n+\t    if (any(notEqual(_225, vec3(3.4028234663852885981170418348452e+38))))\n \t    {\n-\t        _19.material = gl_ObjectToWorldEXT * vec4(_19.material.xyz, 1.0);\n+\t        payload.vSmoothPositionWs = gl_ObjectToWorldEXT * vec4(payload.vSmoothPositionWs.xyz, 1.0);\n \t    }\n-\t    _19._m7._m2 = f16vec3(_211);\n-\t    if (_210 >= 0)\n+\t    payload.material.vAlbedo = f16vec3(_221);\n+\t    if (_220 >= 0)\n \t    {\n-\t        _19._m7._m2 = f16vec3(textureLod(sampler2D(g_bindless_Texture2D[uint(_210)], g_Sampler), ((_202 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_201 * _20.barycentrics.x)) + (_200 * _20.barycentrics.y), 0.0).xyz);\n+\t        payload.material.vAlbedo = f16vec3(textureLod(sampler2D(g_bindless_Texture2D[uint(_220)], g_Sampler), ((_211 * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_210 * attrs.barycentrics.x)) + (_209 * attrs.barycentrics.y), 0.0).xyz);\n \t    }\n-\t    _19._m7._m2 *= f16vec3(_937.xyz);\n-\t    _19._m5 = int(uint(gl_InstanceID));\n+\t    payload.material.vAlbedo *= f16vec3(_965.xyz);\n+\t    payload.nInstance = int(uint(gl_InstanceID));\n \t}\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_generate_scrambled_halton_samples.slang",
          "status": "modified",
          "additions": 5555,
          "deletions": 5555,
          "changes": 11110,
          "patch": null
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_pathtracer.slang",
          "status": "modified",
          "additions": 174,
          "deletions": 173,
          "changes": 347,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: rtx\n }\n@@ -39,11 +39,11 @@ RTX\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL: 5319\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (16572 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (15900 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_AMD_gpu_shader_half_float)\n@@ -59,36 +59,31 @@ RTX\n \t\n \tstruct MaterialDataMinimal_t\n \t{\n-\t    f16vec3 vMaterialBits;\n-\t    float16_t _m1;\n-\t    f16vec3 _m2;\n-\t    float16_t _m3;\n-\t    f16vec3 _m4;\n-\t    float16_t _m5;\n-\t    uint _m6;\n-\t    f16vec4 _m7;\n+\t    f16vec3 vNormalWs;\n+\t    float16_t flMetalness;\n+\t    f16vec3 vAlbedo;\n+\t    float16_t flRoughness;\n+\t    f16vec3 vEmissive;\n+\t    float16_t flReflectance;\n+\t    uint nMaterialTypeAndFlags;\n+\t    f16vec4 vMaterialBits;\n \t};\n \t\n \tstruct Payload_t\n \t{\n-\t    vec3 material;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    int _m5;\n-\t    bool _m6;\n-\t    MaterialDataMinimal_t _m7;\n+\t    vec3 vSmoothPositionWs;\n+\t    vec3 vFaceNormalWs;\n+\t    vec3 vInterpolatedNormalWs;\n+\t    float flHitT;\n+\t    float flOpacityRng;\n+\t    int nInstance;\n+\t    bool bFlippedNormal;\n+\t    MaterialDataMinimal_t material;\n \t};\n \t\n-\tstruct _MatrixStorage_float4x4_ColMajornatural\n-\t{\n-\t    vec4 data[4];\n-\t};\n-\t\n-\tstruct _MatrixStorage_float4x3_ColMajornatural\n+\tstruct PayloadShadow_t\n \t{\n-\t    vec4 data[3];\n+\t    float m_flVisibility;\n \t};\n \t\n \tstruct SceneGlobalInfoGPU_t_natural\n@@ -99,27 +94,22 @@ RTX\n \t    vec4 m_vLocalLightMinBounds;\n \t    vec4 m_vLocalLightMaxBounds;\n \t    ivec4 m_vLightBinCellCount_nLightCount;\n-\t    _MatrixStorage_float4x3_ColMajornatural m_mIBLTransformI;\n+\t    mat4x3 m_mIBLTransformI;\n \t    vec4 m_vIBLCubeMapScale;\n \t    ivec4 m_vIBLParams;\n \t    ivec4 m_vBrdfLUTs;\n \t};\n \t\n-\tstruct PayloadShadow_t\n-\t{\n-\t    float m_flVisibility;\n-\t};\n-\t\n-\tvec4 _134;\n+\tvec4 _129;\n \t\n \tlayout(set = 3, binding = 37, std430) readonly buffer StructuredBuffer\n \t{\n-\t    SceneGlobalInfoGPU_t_natural _m0[];\n+\t    layout(row_major) SceneGlobalInfoGPU_t_natural _member0[];\n \t} g_SceneGlobalInfo;\n \t\n \tlayout(push_constant, std430) uniform PathTracePushConstants_t_natural\n \t{\n-\t    _MatrixStorage_float4x4_ColMajornatural m_mInvViewProj;\n+\t    layout(row_major) mat4 m_mInvViewProj;\n \t    vec4 m_vCameraOrigin;\n \t    vec4 m_vRandomOffsets;\n \t    uint m_nSamplerDimensionCount;\n@@ -132,22 +122,22 @@ RTX\n \tlayout(set = 6, binding = 161) uniform readonly image3D g_RandomSamples;\n \tlayout(location = 0) rayPayloadEXT Payload_t p;\n \tlayout(set = 3, binding = 30) uniform accelerationStructureEXT g_AccelStruct;\n+\tlayout(location = 1) rayPayloadEXT PayloadShadow_t p_1;\n \tlayout(set = 4, binding = 46) uniform textureCube g_bindless_TextureCube[65536];\n \tlayout(set = 3, binding = 14) uniform sampler g_Sampler;\n-\tlayout(location = 1) rayPayloadEXT PayloadShadow_t p_1;\n \tlayout(set = 6, binding = 159) uniform image2D g_VarianceImage;\n \t\n \tvoid main()\n \t{\n-\t    vec2 _220 = (((vec2(gl_LaunchIDEXT.xy) + PathTracePushConstants.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);\n-\t    _220.y = -_220.y;\n-\t    vec4 _226 = mat4(vec4(PathTracePushConstants.m_mInvViewProj.data[0].x, PathTracePushConstants.m_mInvViewProj.data[1].x, PathTracePushConstants.m_mInvViewProj.data[2].x, PathTracePushConstants.m_mInvViewProj.data[3].x), vec4(PathTracePushConstants.m_mInvViewProj.data[0].y, PathTracePushConstants.m_mInvViewProj.data[1].y, PathTracePushConstants.m_mInvViewProj.data[2].y, PathTracePushConstants.m_mInvViewProj.data[3].y), vec4(PathTracePushConstants.m_mInvViewProj.data[0].z, PathTracePushConstants.m_mInvViewProj.data[1].z, PathTracePushConstants.m_mInvViewProj.data[2].z, PathTracePushConstants.m_mInvViewProj.data[3].z), vec4(PathTracePushConstants.m_mInvViewProj.data[0].w, PathTracePushConstants.m_mInvViewProj.data[1].w, PathTracePushConstants.m_mInvViewProj.data[2].w, PathTracePushConstants.m_mInvViewProj.data[3].w)) * vec4(_220.xy, 0.0, 1.0);\n-\t    vec3 _230 = _226.xyz / vec3(_226.w);\n-\t    vec4 _232;\n-\t    _232.x = _230.x;\n-\t    _232.y = _230.y;\n-\t    _232.z = _230.z;\n-\t    vec3 _241 = normalize(_232.xyz - PathTracePushConstants.m_vCameraOrigin.xyz);\n+\t    vec2 _200 = (((vec2(gl_LaunchIDEXT.xy) + PathTracePushConstants.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);\n+\t    _200.y = -_200.y;\n+\t    vec4 _206 = PathTracePushConstants.m_mInvViewProj * vec4(_200.xy, 0.0, 1.0);\n+\t    vec3 _210 = _206.xyz / vec3(_206.w);\n+\t    vec4 _212;\n+\t    _212.x = _210.x;\n+\t    _212.y = _210.y;\n+\t    _212.z = _210.z;\n+\t    vec3 _221 = normalize(_212.xyz - PathTracePushConstants.m_vCameraOrigin.xyz);\n \t    int nSampleCount = int(PathTracePushConstants.m_nSampleCount);\n \t    vec4 vCurrentSample;\n \t    if (nSampleCount > 0)\n@@ -158,95 +148,101 @@ RTX\n \t    {\n \t        vCurrentSample = vec4(0.0);\n \t    }\n-\t    uvec3 _258 = uvec3(imageSize(g_RandomSamples));\n-\t    ivec3 _176;\n-\t    ivec3 _261 = _176;\n-\t    _261.x = int(_258.x);\n-\t    _261.y = int(_258.y);\n-\t    _261.z = int(_258.z);\n-\t    _176 = _261;\n-\t    ivec2 _270 = ivec2(gl_LaunchIDEXT.xy) - _261.xy * (ivec2(gl_LaunchIDEXT.xy) / _261.xy);\n-\t    f16vec3 _279 = f16vec3(vec3(0.0));\n-\t    vec3 _155;\n-\t    p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _155, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_270.xy, 1)))).xy.y, -1, false, MaterialDataMinimal_t(_279, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _279, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t    traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PathTracePushConstants.m_vCameraOrigin.xyz, 0.0, _241, 56755.83984375, 0);\n-\t    vec3 _154 = p.material;\n-\t    vec3 _153 = p._m1;\n-\t    float _152 = p._m3;\n-\t    f16vec3 _143 = p._m7.vMaterialBits;\n-\t    float16_t _142 = p._m7._m1;\n-\t    f16vec3 _141 = p._m7._m2;\n-\t    float16_t _140 = p._m7._m3;\n-\t    f16vec3 _139 = p._m7._m4;\n-\t    float16_t _138 = p._m7._m5;\n-\t    uint _137 = p._m7._m6;\n-\t    f16vec4 _136 = p._m7._m7;\n+\t    uvec3 _238 = uvec3(imageSize(g_RandomSamples));\n+\t    ivec3 _182;\n+\t    ivec3 _241 = _182;\n+\t    _241.x = int(_238.x);\n+\t    _241.y = int(_238.y);\n+\t    _241.z = int(_238.z);\n+\t    _182 = _241;\n+\t    ivec2 _250 = ivec2(gl_LaunchIDEXT.xy) - _241.xy * (ivec2(gl_LaunchIDEXT.xy) / _241.xy);\n+\t    f16vec3 _257 = f16vec3(vec3(0.0));\n+\t    vec3 _158;\n+\t    p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _158, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(_250.xy, 1)).xy.y, -1, false, MaterialDataMinimal_t(_257, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _257, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t    traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PathTracePushConstants.m_vCameraOrigin.xyz, 0.0, _221, 56755.83984375, 0);\n+\t    vec3 _157 = p.vSmoothPositionWs;\n+\t    vec3 _156 = p.vFaceNormalWs;\n+\t    float _155 = p.flHitT;\n+\t    f16vec3 _138 = p.material.vNormalWs;\n+\t    float16_t _137 = p.material.flMetalness;\n+\t    f16vec3 _136 = p.material.vAlbedo;\n+\t    float16_t _135 = p.material.flRoughness;\n+\t    f16vec3 _134 = p.material.vEmissive;\n+\t    float16_t _133 = p.material.flReflectance;\n+\t    uint _132 = p.material.nMaterialTypeAndFlags;\n+\t    f16vec4 _131 = p.material.vMaterialBits;\n \t    vec3 vNewSample;\n-\t    if (p._m5 != (-1))\n+\t    if (p.nInstance != (-1))\n \t    {\n+\t        vec3 _154 = PathTracePushConstants.m_vCameraOrigin.xyz;\n+\t        vec3 _153 = _221;\n \t        do\n \t        {\n-\t            vec3 _157 = (PathTracePushConstants.m_vCameraOrigin.xyz + (_241 * _152)) + (_153 * ((abs(PathTracePushConstants.m_vCameraOrigin.xyz) + vec3(abs(_152))) * 9.9999997473787516355514526367188e-05));\n-\t            vec3 _156 = _153;\n-\t            bool _169;\n+\t            vec3 _161 = _157;\n+\t            vec3 _160 = _156;\n+\t            float _159 = _155;\n+\t            f16vec3 _147 = _138;\n+\t            vec3 _163 = (_154 + (_153 * _159)) + (_160 * ((abs(_154) + vec3(abs(_159))) * 9.9999997473787516355514526367188e-05));\n+\t            vec3 _162 = _160;\n+\t            bool _181;\n \t            if (false)\n \t            {\n-\t                _169 = any(notEqual(_154, vec3(3.4028234663852885981170418348452e+38)));\n+\t                _181 = any(notEqual(_161, vec3(3.4028234663852885981170418348452e+38)));\n \t            }\n \t            else\n \t            {\n-\t                _169 = false;\n+\t                _181 = false;\n \t            }\n-\t            vec3 _477 = _154 - _157;\n-\t            float _478 = length(_477);\n-\t            vec3 _160 = _157;\n-\t            float _159 = 0.0;\n-\t            vec3 _158 = vec4(_477 / vec3(_478), _478).xyz;\n-\t            float _168;\n-\t            if (_169)\n+\t            vec3 _316 = _161 - _163;\n+\t            float _317 = length(_316);\n+\t            vec3 _166 = _163;\n+\t            float _165 = 0.0;\n+\t            vec3 _164 = vec4(_316 / vec3(_317), _317).xyz;\n+\t            float _180;\n+\t            if (_181)\n \t            {\n-\t                _168 = _478;\n+\t                _180 = _317;\n \t            }\n \t            else\n \t            {\n-\t                _168 = 0.0;\n+\t                _180 = 0.0;\n \t            }\n \t            p_1 = PayloadShadow_t(1.0);\n-\t            traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _160, _159, _158, _168, 1);\n-\t            if (_169)\n+\t            traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _166, _165, _164, _180, 1);\n+\t            if (_181)\n \t            {\n-\t                _168 = p_1.m_flVisibility;\n+\t                _180 = p_1.m_flVisibility;\n \t            }\n \t            else\n \t            {\n-\t                _168 = 0.0;\n+\t                _180 = 0.0;\n \t            }\n-\t            if (_168 == 1.0)\n+\t            if (_180 == 1.0)\n \t            {\n-\t                _157 = _154;\n-\t                _156 = vec3(_143);\n+\t                _163 = _161;\n+\t                _162 = vec3(_147);\n \t            }\n-\t            vec3 _161;\n-\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _161, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_143, _142, _141, _140, _139, _138, _137, _136));\n-\t            traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _157 - ((_156 * 0.5) * 0.5), 0.0, _156, 0.5, 0);\n-\t            f16vec3 _151 = p._m7.vMaterialBits;\n-\t            float16_t _150 = p._m7._m1;\n-\t            f16vec3 _149 = p._m7._m2;\n-\t            float16_t _148 = p._m7._m3;\n-\t            f16vec3 _147 = p._m7._m4;\n-\t            float16_t _146 = p._m7._m5;\n-\t            uint _145 = p._m7._m6;\n-\t            f16vec4 _144 = p._m7._m7;\n-\t            if (p._m5 != (-1))\n+\t            vec3 _167;\n+\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _167, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_138, _137, _136, _135, _134, _133, _132, _131));\n+\t            traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _163 - ((_162 * 0.5) * 0.5), 0.0, _162, 0.5, 0);\n+\t            f16vec3 _146 = p.material.vNormalWs;\n+\t            float16_t _145 = p.material.flMetalness;\n+\t            f16vec3 _144 = p.material.vAlbedo;\n+\t            float16_t _143 = p.material.flRoughness;\n+\t            f16vec3 _142 = p.material.vEmissive;\n+\t            float16_t _141 = p.material.flReflectance;\n+\t            uint _140 = p.material.nMaterialTypeAndFlags;\n+\t            f16vec4 _139 = p.material.vMaterialBits;\n+\t            if (p.nInstance != (-1))\n \t            {\n-\t                _143 = _151;\n-\t                _142 = _150;\n-\t                _141 = _149;\n-\t                _140 = _148;\n-\t                _139 = _147;\n \t                _138 = _146;\n \t                _137 = _145;\n \t                _136 = _144;\n+\t                _135 = _143;\n+\t                _134 = _142;\n+\t                _133 = _141;\n+\t                _132 = _140;\n+\t                _131 = _139;\n \t                break;\n \t            }\n \t            else\n@@ -255,47 +251,52 @@ RTX\n \t            }\n \t            break;\n \t        } while(false);\n-\t        vec3 _162 = (PathTracePushConstants.m_vCameraOrigin.xyz + (_241 * _152)) + (_153 * ((abs(PathTracePushConstants.m_vCameraOrigin.xyz) + vec3(abs(_152))) * 9.9999997473787516355514526367188e-05));\n-\t        bool _167;\n+\t        vec3 _152 = PathTracePushConstants.m_vCameraOrigin.xyz;\n+\t        vec3 _151 = _221;\n+\t        vec3 _150 = _157;\n+\t        vec3 _149 = _156;\n+\t        float _148 = _155;\n+\t        vec3 _168 = (_152 + (_151 * _148)) + (_149 * ((abs(_152) + vec3(abs(_148))) * 9.9999997473787516355514526367188e-05));\n+\t        bool _179;\n \t        if (true)\n \t        {\n-\t            _167 = any(notEqual(_154, vec3(3.4028234663852885981170418348452e+38)));\n+\t            _179 = any(notEqual(_150, vec3(3.4028234663852885981170418348452e+38)));\n \t        }\n \t        else\n \t        {\n-\t            _167 = false;\n+\t            _179 = false;\n \t        }\n-\t        vec3 _567 = _154 - _162;\n-\t        float _568 = length(_567);\n-\t        vec3 _165 = _162;\n-\t        float _164 = 0.0;\n-\t        vec3 _163 = vec4(_567 / vec3(_568), _568).xyz;\n-\t        float _166;\n-\t        if (_167)\n+\t        vec3 _413 = _150 - _168;\n+\t        float _414 = length(_413);\n+\t        vec3 _171 = _168;\n+\t        float _170 = 0.0;\n+\t        vec3 _169 = vec4(_413 / vec3(_414), _414).xyz;\n+\t        float _178;\n+\t        if (_179)\n \t        {\n-\t            _166 = _568;\n+\t            _178 = _414;\n \t        }\n \t        else\n \t        {\n-\t            _166 = 0.0;\n+\t            _178 = 0.0;\n \t        }\n \t        p_1 = PayloadShadow_t(1.0);\n-\t        traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _165, _164, _163, _166, 1);\n-\t        if (_167)\n+\t        traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _171, _170, _169, _178, 1);\n+\t        if (_179)\n \t        {\n-\t            _166 = p_1.m_flVisibility;\n+\t            _178 = p_1.m_flVisibility;\n \t        }\n \t        else\n \t        {\n-\t            _166 = 0.0;\n+\t            _178 = 0.0;\n \t        }\n-\t        if (_166 == 1.0)\n+\t        if (_178 == 1.0)\n \t        {\n-\t            _162 = _154;\n+\t            _168 = _150;\n \t        }\n \t        if (int(PathTracePushConstants.m_nBounceToShow) < 1)\n \t        {\n-\t            vNewSample = vec3(_139);\n+\t            vNewSample = vec3(_134);\n \t        }\n \t        else\n \t        {\n@@ -304,94 +305,94 @@ RTX\n \t    }\n \t    else\n \t    {\n-\t        vec2 _171 = imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_270.xy, 2)))).xy;\n-\t        bool _172;\n-\t        if (_241.z < 0.0)\n+\t        vec2 _173 = imageLoad(g_RandomSamples, ivec3(_250.xy, 2)).xy;\n+\t        bool _174;\n+\t        if (_221.z < 0.0)\n \t        {\n-\t            float _173 = _171.y;\n-\t            bool _170;\n+\t            float _175 = _173.y;\n+\t            bool _172;\n \t            do\n \t            {\n-\t                if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w <= 0.0)\n+\t                if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w <= 0.0)\n \t                {\n-\t                    _170 = false;\n+\t                    _172 = false;\n \t                    break;\n \t                }\n-\t                if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w >= 1.0)\n+\t                if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w >= 1.0)\n \t                {\n-\t                    _170 = true;\n+\t                    _172 = true;\n \t                    break;\n \t                }\n-\t                if (_173 < g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w)\n+\t                if (_175 < g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w)\n \t                {\n-\t                    _173 = min(_173 / g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);\n-\t                    _170 = true;\n+\t                    _175 = min(_175 / g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);\n+\t                    _172 = true;\n \t                    break;\n \t                }\n-\t                _173 = min((_173 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);\n-\t                _170 = false;\n+\t                _175 = min((_175 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);\n+\t                _172 = false;\n \t                break;\n \t            } while(false);\n-\t            vec2 _344 = _171;\n-\t            _344.y = _173;\n-\t            _171 = _344;\n-\t            _172 = _170;\n+\t            vec2 _481 = _173;\n+\t            _481.y = _175;\n+\t            _173 = _481;\n+\t            _174 = _172;\n \t        }\n \t        else\n \t        {\n-\t            _172 = false;\n+\t            _174 = false;\n \t        }\n-\t        vec3 _174;\n-\t        vec3 _175;\n-\t        if (_172)\n+\t        vec3 _176;\n+\t        vec3 _177;\n+\t        if (_174)\n \t        {\n-\t            float _352 = sqrt(_171.y);\n-\t            float _354 = 6.283185482025146484375 * _171.x;\n-\t            _174 = vec3(cos(_354) * _352, sin(_354) * _352, sqrt(max(0.0, 1.0 - _171.y)));\n-\t            _175 = g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.xyz;\n+\t            float _489 = sqrt(_173.y);\n+\t            float _491 = 6.283185482025146484375 * _173.x;\n+\t            _176 = vec3(cos(_491) * _489, sin(_491) * _489, sqrt(max(0.0, 1.0 - _173.y)));\n+\t            _177 = g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.xyz;\n \t        }\n \t        else\n \t        {\n-\t            _174 = _241;\n-\t            _175 = vec3(0.0);\n+\t            _176 = _221;\n+\t            _177 = vec3(0.0);\n \t        }\n-\t        if (g_SceneGlobalInfo._m0[0].m_vIBLParams.y >= 0)\n+\t        if (g_SceneGlobalInfo._member0[0].m_vIBLParams.y >= 0)\n \t        {\n-\t            vec4 _421 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._m0[0].m_vIBLParams.y], g_Sampler), normalize(mat4x3(vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].x), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].y), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].z), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].w)) * vec4(_174, 0.0)), 0.0);\n-\t            if (dot(_421.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.w)\n+\t            vec4 _531 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._member0[0].m_vIBLParams.y], g_Sampler), normalize(g_SceneGlobalInfo._member0[0].m_mIBLTransformI * vec4(_176, 0.0)), 0.0);\n+\t            if (dot(_531.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.w)\n \t            {\n-\t                _175 += (g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.xyz * _421.xyz);\n+\t                _177 += (g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.xyz * _531.xyz);\n \t            }\n \t        }\n \t        else\n \t        {\n-\t            _175 += g_SceneGlobalInfo._m0[0].m_vSkyColor.xyz;\n+\t            _177 += g_SceneGlobalInfo._member0[0].m_vSkyColor.xyz;\n \t        }\n \t        if (false)\n \t        {\n-\t            _175 *= g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.w;\n+\t            _177 *= g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.w;\n \t        }\n-\t        if (_172)\n+\t        if (_174)\n \t        {\n-\t            _175 *= g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.xyz;\n+\t            _177 *= g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.xyz;\n \t        }\n-\t        vNewSample = _175;\n+\t        vNewSample = _177;\n \t    }\n-\t    vec4 _606 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);\n-\t    imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _606);\n-\t    vec2 _177;\n+\t    vec4 _574 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);\n+\t    imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _574);\n+\t    vec2 _183;\n \t    if (nSampleCount == 0)\n \t    {\n-\t        _177 = vec2(0.0);\n+\t        _183 = vec2(0.0);\n \t    }\n \t    else\n \t    {\n-\t        _177 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;\n+\t        _183 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;\n \t    }\n-\t    float _623 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));\n-\t    float _628 = _623 - _177.x;\n-\t    float _630 = _177.x + (_628 / _606.w);\n-\t    imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_630, _177.y + (_628 * (_623 - _630))), 0.0, 0.0));\n+\t    float _591 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));\n+\t    float _596 = _591 - _183.x;\n+\t    float _598 = _183.x + (_596 / _574.w);\n+\t    imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_598, _183.y + (_596 * (_591 - _598))), 0.0, 0.0));\n \t}\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lightmap.slang",
          "status": "modified",
          "additions": 3222,
          "deletions": 2997,
          "changes": 6219,
          "patch": null
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lightmap_sample_validation.slang",
          "status": "modified",
          "additions": 385,
          "deletions": 285,
          "changes": 670,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: rtx\n }\n@@ -31,11 +31,11 @@ RTX\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL: 5319\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (19628 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (21784 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_AMD_gpu_shader_half_float)\n@@ -48,7 +48,7 @@ RTX\n \t#extension GL_EXT_shader_16bit_storage : require\n \t#extension GL_EXT_ray_tracing : require\n \t\n-\tstruct LightmapSample_t_natural\n+\tstruct LightmapSample_t_natural_logical\n \t{\n \t    vec4 m_vPositionWs;\n \t    vec4 m_vShadingNormalWs_vTransmissiveR;\n@@ -62,26 +62,50 @@ RTX\n \t\n \tstruct MaterialDataMinimal_t\n \t{\n-\t    f16vec3 vMaterialBits;\n-\t    float16_t _m1;\n-\t    f16vec3 _m2;\n-\t    float16_t _m3;\n-\t    f16vec3 _m4;\n-\t    float16_t _m5;\n-\t    uint _m6;\n-\t    f16vec4 _m7;\n+\t    f16vec3 vNormalWs;\n+\t    float16_t flMetalness;\n+\t    f16vec3 vAlbedo;\n+\t    float16_t flRoughness;\n+\t    f16vec3 vEmissive;\n+\t    float16_t flReflectance;\n+\t    uint nMaterialTypeAndFlags;\n+\t    f16vec4 vMaterialBits;\n \t};\n \t\n \tstruct Payload_t\n \t{\n-\t    vec3 material;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    int _m5;\n-\t    bool _m6;\n-\t    MaterialDataMinimal_t _m7;\n+\t    vec3 vSmoothPositionWs;\n+\t    vec3 vFaceNormalWs;\n+\t    vec3 vInterpolatedNormalWs;\n+\t    float flHitT;\n+\t    float flOpacityRng;\n+\t    int nInstance;\n+\t    bool bFlippedNormal;\n+\t    MaterialDataMinimal_t material;\n+\t};\n+\t\n+\tstruct LightmapSample_t_natural\n+\t{\n+\t    vec4 m_vPositionWs;\n+\t    vec4 m_vShadingNormalWs_vTransmissiveR;\n+\t    vec4 m_vInterpolatedNormalWs_vTransmissiveG;\n+\t    vec4 m_vFaceNormalWs_vTransmissiveB;\n+\t    vec4 m_vTangentWs;\n+\t    vec2 m_vLightmapUv;\n+\t    int m_nInstanceFlags;\n+\t    uint m_nSampleFlags;\n+\t};\n+\t\n+\tstruct PackedRtxInstanceData_t_natural_logical\n+\t{\n+\t    uint nSrgbColor;\n+\t    uint nTriangleGeometry;\n+\t    uint nMaterialData;\n+\t    uint nMaterialFlags_nInstanceFlags;\n+\t    float fEmissiveBoost;\n+\t    uint nInstanceFlags;\n+\t    uint _pad1;\n+\t    uint _pad2;\n \t};\n \t\n \tstruct PackedRtxInstanceData_t_natural\n@@ -103,12 +127,12 @@ RTX\n \t\n \tlayout(set = 6, binding = 158, std430) buffer RWStructuredBuffer\n \t{\n-\t    LightmapSample_t_natural _m0[];\n+\t    LightmapSample_t_natural _member0[];\n \t} g_LightmapSamples;\n \t\n \tlayout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer\n \t{\n-\t    PackedRtxInstanceData_t_natural _m0[];\n+\t    PackedRtxInstanceData_t_natural _member0[];\n \t} g_instanceBuffer;\n \t\n \tlayout(location = 0) rayPayloadEXT Payload_t p;\n@@ -118,403 +142,479 @@ RTX\n \tvoid main()\n \t{\n \t    uint nSample = (gl_LaunchIDEXT.y * gl_LaunchSizeEXT.x) + gl_LaunchIDEXT.x;\n-\t    vec4 _132 = g_LightmapSamples._m0[nSample].m_vPositionWs;\n-\t    vec4 _131 = g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR;\n-\t    vec4 _130 = g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;\n-\t    vec4 _129 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB;\n-\t    vec4 _128 = g_LightmapSamples._m0[nSample].m_vTangentWs;\n-\t    vec2 _127 = g_LightmapSamples._m0[nSample].m_vLightmapUv;\n-\t    int _126 = g_LightmapSamples._m0[nSample].m_nInstanceFlags;\n-\t    uint _125 = g_LightmapSamples._m0[nSample].m_nSampleFlags;\n-\t    float _167;\n-\t    if (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.z >= 0.0)\n+\t    LightmapSample_t_natural_logical _204;\n+\t    _204.m_vPositionWs = g_LightmapSamples._member0[nSample].m_vPositionWs;\n+\t    _204.m_vShadingNormalWs_vTransmissiveR = g_LightmapSamples._member0[nSample].m_vShadingNormalWs_vTransmissiveR;\n+\t    _204.m_vInterpolatedNormalWs_vTransmissiveG = g_LightmapSamples._member0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;\n+\t    _204.m_vFaceNormalWs_vTransmissiveB = g_LightmapSamples._member0[nSample].m_vFaceNormalWs_vTransmissiveB;\n+\t    _204.m_vTangentWs = g_LightmapSamples._member0[nSample].m_vTangentWs;\n+\t    _204.m_vLightmapUv = g_LightmapSamples._member0[nSample].m_vLightmapUv;\n+\t    _204.m_nInstanceFlags = g_LightmapSamples._member0[nSample].m_nInstanceFlags;\n+\t    _204.m_nSampleFlags = g_LightmapSamples._member0[nSample].m_nSampleFlags;\n+\t    vec4 _144 = _204.m_vPositionWs;\n+\t    vec4 _143 = _204.m_vShadingNormalWs_vTransmissiveR;\n+\t    vec4 _142 = _204.m_vInterpolatedNormalWs_vTransmissiveG;\n+\t    vec4 _141 = _204.m_vFaceNormalWs_vTransmissiveB;\n+\t    vec4 _140 = _204.m_vTangentWs;\n+\t    vec2 _139 = _204.m_vLightmapUv;\n+\t    int _138 = _204.m_nInstanceFlags;\n+\t    uint _137 = _204.m_nSampleFlags;\n+\t    vec4 _152 = _204.m_vPositionWs;\n+\t    vec4 _151 = _204.m_vShadingNormalWs_vTransmissiveR;\n+\t    vec4 _150 = _204.m_vInterpolatedNormalWs_vTransmissiveG;\n+\t    vec4 _149 = _204.m_vFaceNormalWs_vTransmissiveB;\n+\t    vec4 _148 = _204.m_vTangentWs;\n+\t    vec2 _147 = _204.m_vLightmapUv;\n+\t    int _146 = _204.m_nInstanceFlags;\n+\t    uint _145 = _204.m_nSampleFlags;\n+\t    float _193;\n+\t    if (_204.m_vFaceNormalWs_vTransmissiveB.z >= 0.0)\n \t    {\n-\t        _167 = 1.0;\n+\t        _193 = 1.0;\n \t    }\n \t    else\n \t    {\n-\t        _167 = -1.0;\n+\t        _193 = -1.0;\n \t    }\n-\t    float _200 = (-1.0) / (_167 + g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.z);\n-\t    float _204 = (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y) * _200;\n+\t    float _220 = (-1.0) / (_193 + _204.m_vFaceNormalWs_vTransmissiveB.z);\n+\t    float _224 = (_204.m_vFaceNormalWs_vTransmissiveB.x * _204.m_vFaceNormalWs_vTransmissiveB.y) * _220;\n \t    vec3 vTangent1Ws;\n-\t    vec3 _209 = vTangent1Ws;\n-\t    _209.x = 1.0 + (((_167 * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x) * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x) * _200);\n-\t    _209.y = _167 * _204;\n-\t    _209.z = (-_167) * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x;\n-\t    vTangent1Ws = _209;\n+\t    vec3 _229 = vTangent1Ws;\n+\t    _229.x = 1.0 + (((_193 * _204.m_vFaceNormalWs_vTransmissiveB.x) * _204.m_vFaceNormalWs_vTransmissiveB.x) * _220);\n+\t    _229.y = _193 * _224;\n+\t    _229.z = (-_193) * _204.m_vFaceNormalWs_vTransmissiveB.x;\n+\t    vTangent1Ws = _229;\n \t    vec3 vTangent2Ws;\n-\t    vec3 _216 = vTangent2Ws;\n-\t    _216.x = _204;\n-\t    _216.y = _167 + ((g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y) * _200);\n-\t    _216.z = -g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y;\n-\t    vTangent2Ws = _216;\n-\t    vec4 _224 = _132;\n-\t    bool bValidSample_2 = _224.w != 0.0;\n-\t    float _168;\n+\t    vec3 _236 = vTangent2Ws;\n+\t    _236.x = _224;\n+\t    _236.y = _193 + ((_204.m_vFaceNormalWs_vTransmissiveB.y * _204.m_vFaceNormalWs_vTransmissiveB.y) * _220);\n+\t    _236.z = -_204.m_vFaceNormalWs_vTransmissiveB.y;\n+\t    vTangent2Ws = _236;\n+\t    vec4 _244 = _152;\n+\t    bool bValidSample_2 = _244.w != 0.0;\n+\t    float _194;\n \t    if (bValidSample_2)\n \t    {\n-\t        _168 = 12.0;\n+\t        _194 = 12.0;\n \t    }\n \t    else\n \t    {\n-\t        _168 = 0.0;\n+\t        _194 = 0.0;\n \t    }\n-\t    float _166 = _168;\n-\t    vec4 _140 = g_LightmapSamples._m0[nSample].m_vPositionWs;\n-\t    vec4 _139 = g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR;\n-\t    vec4 _138 = g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;\n-\t    vec4 _137 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB;\n-\t    vec4 _136 = g_LightmapSamples._m0[nSample].m_vTangentWs;\n-\t    vec2 _135 = g_LightmapSamples._m0[nSample].m_vLightmapUv;\n-\t    int _134 = g_LightmapSamples._m0[nSample].m_nInstanceFlags;\n-\t    uint _133 = g_LightmapSamples._m0[nSample].m_nSampleFlags;\n-\t    vec3 _232 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz * 0.0078125;\n-\t    vec3 _233 = g_LightmapSamples._m0[nSample].m_vPositionWs.xyz - _232;\n+\t    float _192 = _194;\n+\t    vec4 _160 = _144;\n+\t    vec4 _159 = _143;\n+\t    vec4 _158 = _142;\n+\t    vec4 _157 = _141;\n+\t    vec4 _156 = _140;\n+\t    vec2 _155 = _139;\n+\t    int _154 = _138;\n+\t    uint _153 = _137;\n+\t    vec3 _260 = _141.xyz * 0.0078125;\n+\t    vec3 _261 = _144.xyz - _260;\n \t    do\n \t    {\n-\t        f16vec3 _237 = f16vec3(vec3(0.0));\n-\t        vec3 _141;\n-\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _141, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_237, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _237, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _233, 0.0, g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _166, 0);\n-\t        if (!(p._m5 != (-1)))\n+\t        f16vec3 _265 = f16vec3(vec3(0.0));\n+\t        vec3 _162;\n+\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _162, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_265, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _265, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _261, 0.0, _141.xyz, _192, 0);\n+\t        if (!(p.nInstance != (-1)))\n \t        {\n \t            break;\n \t        }\n-\t        vec3 _162;\n-\t        if (p._m6)\n+\t        vec3 _188;\n+\t        if (p.bFlippedNormal)\n \t        {\n-\t            _162 = -p._m1;\n+\t            _188 = -p.vFaceNormalWs;\n \t        }\n \t        else\n \t        {\n-\t            _162 = p._m1;\n+\t            _188 = p.vFaceNormalWs;\n \t        }\n-\t        if (!(dot(g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _162) > 0.0))\n+\t        if (!(dot(_141.xyz, _188) > 0.0))\n \t        {\n \t            break;\n \t        }\n-\t        float _163;\n-\t        if (p._m6)\n+\t        float _189;\n+\t        if (p.bFlippedNormal)\n \t        {\n-\t            _163 = -1.0;\n+\t            _189 = -1.0;\n \t        }\n \t        else\n \t        {\n-\t            _163 = 1.0;\n+\t            _189 = 1.0;\n \t        }\n-\t        vec3 _277 = (_233 + (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz * p._m3)) + (p._m1 * ((abs(_233) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));\n-\t        float _280 = length(_277 - g_LightmapSamples._m0[nSample].m_vPositionWs.xyz);\n-\t        if (_280 < _166)\n+\t        vec3 _306 = (_261 + (_141.xyz * p.flHitT)) + (p.vFaceNormalWs * ((abs(_261) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));\n+\t        float _310 = length(_306 - _144.xyz);\n+\t        if (_310 < _192)\n \t        {\n-\t            vec4 _286 = _140;\n-\t            _286.x = _277.x;\n-\t            _286.y = _277.y;\n-\t            _286.z = _277.z;\n-\t            _140 = _286;\n-\t            vec3 _296 = vec3(p._m7.vMaterialBits) * _163;\n-\t            vec4 _298 = _139;\n-\t            _298.x = _296.x;\n-\t            _298.y = _296.y;\n-\t            _298.z = _296.z;\n-\t            _139 = _298;\n-\t            vec3 _306 = p._m2.xyz * _163;\n-\t            vec4 _308 = _138;\n-\t            _308.x = _306.x;\n-\t            _308.y = _306.y;\n-\t            _308.z = _306.z;\n-\t            _138 = _308;\n-\t            vec3 _314 = p._m1 * _163;\n-\t            vec4 _316 = _137;\n-\t            _316.x = _314.x;\n-\t            _316.y = _314.y;\n-\t            _316.z = _314.z;\n-\t            _137 = _316;\n-\t            uint _164;\n-\t            if (p._m5 >= 0)\n+\t            vec4 _316 = _160;\n+\t            _316.x = _306.x;\n+\t            _316.y = _306.y;\n+\t            _316.z = _306.z;\n+\t            _160 = _316;\n+\t            vec3 _326 = vec3(p.material.vNormalWs) * _189;\n+\t            vec4 _328 = _159;\n+\t            _328.x = _326.x;\n+\t            _328.y = _326.y;\n+\t            _328.z = _326.z;\n+\t            _159 = _328;\n+\t            vec3 _336 = p.vInterpolatedNormalWs.xyz * _189;\n+\t            vec4 _338 = _158;\n+\t            _338.x = _336.x;\n+\t            _338.y = _336.y;\n+\t            _338.z = _336.z;\n+\t            _158 = _338;\n+\t            vec3 _344 = p.vFaceNormalWs * _189;\n+\t            vec4 _346 = _157;\n+\t            _346.x = _344.x;\n+\t            _346.y = _344.y;\n+\t            _346.z = _344.z;\n+\t            _157 = _346;\n+\t            uint _190;\n+\t            if (p.nInstance >= 0)\n \t            {\n-\t                _164 = (g_instanceBuffer._m0[uint(p._m5)].nMaterialFlags_nInstanceFlags) & 65535u;\n+\t                uint _357 = uint(p.nInstance);\n+\t                PackedRtxInstanceData_t_natural_logical _360;\n+\t                _360.nSrgbColor = g_instanceBuffer._member0[_357].nSrgbColor;\n+\t                _360.nTriangleGeometry = g_instanceBuffer._member0[_357].nTriangleGeometry;\n+\t                _360.nMaterialData = g_instanceBuffer._member0[_357].nMaterialData;\n+\t                _360.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_357].nMaterialFlags_nInstanceFlags;\n+\t                _360.fEmissiveBoost = g_instanceBuffer._member0[_357].fEmissiveBoost;\n+\t                _360.nInstanceFlags = g_instanceBuffer._member0[_357].nInstanceFlags;\n+\t                _360._pad1 = g_instanceBuffer._member0[_357]._pad1;\n+\t                _360._pad2 = g_instanceBuffer._member0[_357]._pad2;\n+\t                uint _163 = _360.nMaterialFlags_nInstanceFlags;\n+\t                _190 = _163 & 65535u;\n \t            }\n \t            else\n \t            {\n-\t                _164 = 0u;\n+\t                _190 = 0u;\n \t            }\n-\t            _134 = int(_164);\n-\t            _166 = _280;\n-\t            bool _161;\n-\t            if ((p._m7._m6 & 65535u) == 1u)\n+\t            _154 = int(_190);\n+\t            _192 = _310;\n+\t            f16vec4 _161 = p.material.vMaterialBits;\n+\t            bool _187;\n+\t            if ((p.material.nMaterialTypeAndFlags & 65535u) == 1u)\n \t            {\n-\t                _161 = any(greaterThan(vec3(p._m7._m7.xyz), vec3(0.0)));\n+\t                _187 = any(greaterThan(vec3(_161.xyz), vec3(0.0)));\n \t            }\n \t            else\n \t            {\n-\t                _161 = false;\n+\t                _187 = false;\n \t            }\n-\t            vec3 _165;\n-\t            if (_161)\n+\t            vec3 _191;\n+\t            if (_187)\n \t            {\n-\t                _165 = vec3(p._m7._m7.xyz) / max(vec3(p._m7._m2), vec3(0.100000001490116119384765625));\n+\t                _191 = vec3(p.material.vMaterialBits.xyz) / max(vec3(p.material.vAlbedo), vec3(0.100000001490116119384765625));\n \t            }\n \t            else\n \t            {\n-\t                _165 = vec3(0.0);\n+\t                _191 = vec3(0.0);\n \t            }\n-\t            vec4 _362 = _139;\n-\t            _362.w = _165.x;\n-\t            _139 = _362;\n-\t            vec4 _365 = _138;\n-\t            _365.w = _165.y;\n-\t            _138 = _365;\n-\t            vec4 _368 = _137;\n-\t            _368.w = _165.z;\n-\t            _137 = _368;\n+\t            vec4 _394 = _159;\n+\t            _394.w = _191.x;\n+\t            _159 = _394;\n+\t            vec4 _397 = _158;\n+\t            _397.w = _191.y;\n+\t            _158 = _397;\n+\t            vec4 _400 = _157;\n+\t            _400.w = _191.z;\n+\t            _157 = _400;\n \t        }\n \t        break;\n \t    } while(false);\n-\t    vec3 _370 = g_LightmapSamples._m0[nSample].m_vPositionWs.xyz + _232;\n-\t    vec3 _371 = -g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz;\n+\t    vec3 _402 = _144.xyz + _260;\n+\t    vec3 _403 = -_141.xyz;\n \t    do\n \t    {\n-\t        f16vec3 _375 = f16vec3(vec3(0.0));\n-\t        vec3 _142;\n-\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _142, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_375, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _375, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _370, 0.0, _371, _166, 0);\n-\t        if (!(p._m5 != (-1)))\n+\t        f16vec3 _407 = f16vec3(vec3(0.0));\n+\t        vec3 _165;\n+\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _165, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_407, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _407, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _402, 0.0, _403, _192, 0);\n+\t        if (!(p.nInstance != (-1)))\n \t        {\n \t            break;\n \t        }\n-\t        vec3 _157;\n-\t        if (p._m6)\n+\t        vec3 _183;\n+\t        if (p.bFlippedNormal)\n \t        {\n-\t            _157 = -p._m1;\n+\t            _183 = -p.vFaceNormalWs;\n \t        }\n \t        else\n \t        {\n-\t            _157 = p._m1;\n+\t            _183 = p.vFaceNormalWs;\n \t        }\n-\t        if (!(dot(g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _157) > 0.0))\n+\t        if (!(dot(_141.xyz, _183) > 0.0))\n \t        {\n \t            break;\n \t        }\n-\t        float _158;\n-\t        if (p._m6)\n+\t        float _184;\n+\t        if (p.bFlippedNormal)\n \t        {\n-\t            _158 = -1.0;\n+\t            _184 = -1.0;\n \t        }\n \t        else\n \t        {\n-\t            _158 = 1.0;\n+\t            _184 = 1.0;\n \t        }\n-\t        vec3 _415 = (_370 + (_371 * p._m3)) + (p._m1 * ((abs(_370) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));\n-\t        float _418 = length(_415 - g_LightmapSamples._m0[nSample].m_vPositionWs.xyz);\n-\t        if (_418 < _166)\n+\t        vec3 _448 = (_402 + (_403 * p.flHitT)) + (p.vFaceNormalWs * ((abs(_402) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));\n+\t        float _452 = length(_448 - _144.xyz);\n+\t        if (_452 < _192)\n \t        {\n-\t            vec4 _424 = _140;\n-\t            _424.x = _415.x;\n-\t            _424.y = _415.y;\n-\t            _424.z = _415.z;\n-\t            _140 = _424;\n-\t            vec3 _434 = vec3(p._m7.vMaterialBits) * _158;\n-\t            vec4 _436 = _139;\n-\t            _436.x = _434.x;\n-\t            _436.y = _434.y;\n-\t            _436.z = _434.z;\n-\t            _139 = _436;\n-\t            vec3 _444 = p._m2.xyz * _158;\n-\t            vec4 _446 = _138;\n-\t            _446.x = _444.x;\n-\t            _446.y = _444.y;\n-\t            _446.z = _444.z;\n-\t            _138 = _446;\n-\t            vec3 _452 = p._m1 * _158;\n-\t            vec4 _454 = _137;\n-\t            _454.x = _452.x;\n-\t            _454.y = _452.y;\n-\t            _454.z = _452.z;\n-\t            _137 = _454;\n-\t            uint _159;\n-\t            if (p._m5 >= 0)\n+\t            vec4 _458 = _160;\n+\t            _458.x = _448.x;\n+\t            _458.y = _448.y;\n+\t            _458.z = _448.z;\n+\t            _160 = _458;\n+\t            vec3 _468 = vec3(p.material.vNormalWs) * _184;\n+\t            vec4 _470 = _159;\n+\t            _470.x = _468.x;\n+\t            _470.y = _468.y;\n+\t            _470.z = _468.z;\n+\t            _159 = _470;\n+\t            vec3 _478 = p.vInterpolatedNormalWs.xyz * _184;\n+\t            vec4 _480 = _158;\n+\t            _480.x = _478.x;\n+\t            _480.y = _478.y;\n+\t            _480.z = _478.z;\n+\t            _158 = _480;\n+\t            vec3 _486 = p.vFaceNormalWs * _184;\n+\t            vec4 _488 = _157;\n+\t            _488.x = _486.x;\n+\t            _488.y = _486.y;\n+\t            _488.z = _486.z;\n+\t            _157 = _488;\n+\t            uint _185;\n+\t            if (p.nInstance >= 0)\n \t            {\n-\t                _159 = (g_instanceBuffer._m0[uint(p._m5)].nMaterialFlags_nInstanceFlags) & 65535u;\n+\t                uint _499 = uint(p.nInstance);\n+\t                PackedRtxInstanceData_t_natural_logical _502;\n+\t                _502.nSrgbColor = g_instanceBuffer._member0[_499].nSrgbColor;\n+\t                _502.nTriangleGeometry = g_instanceBuffer._member0[_499].nTriangleGeometry;\n+\t                _502.nMaterialData = g_instanceBuffer._member0[_499].nMaterialData;\n+\t                _502.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_499].nMaterialFlags_nInstanceFlags;\n+\t                _502.fEmissiveBoost = g_instanceBuffer._member0[_499].fEmissiveBoost;\n+\t                _502.nInstanceFlags = g_instanceBuffer._member0[_499].nInstanceFlags;\n+\t                _502._pad1 = g_instanceBuffer._member0[_499]._pad1;\n+\t                _502._pad2 = g_instanceBuffer._member0[_499]._pad2;\n+\t                uint _166 = _502.nMaterialFlags_nInstanceFlags;\n+\t                _185 = _166 & 65535u;\n \t            }\n \t            else\n \t            {\n-\t                _159 = 0u;\n+\t                _185 = 0u;\n \t            }\n-\t            _134 = int(_159);\n-\t            _166 = _418;\n-\t            bool _156;\n-\t            if ((p._m7._m6 & 65535u) == 1u)\n+\t            _154 = int(_185);\n+\t            _192 = _452;\n+\t            f16vec4 _164 = p.material.vMaterialBits;\n+\t            bool _182;\n+\t            if ((p.material.nMaterialTypeAndFlags & 65535u) == 1u)\n \t            {\n-\t                _156 = any(greaterThan(vec3(p._m7._m7.xyz), vec3(0.0)));\n+\t                _182 = any(greaterThan(vec3(_164.xyz), vec3(0.0)));\n \t            }\n \t            else\n \t            {\n-\t                _156 = false;\n+\t                _182 = false;\n \t            }\n-\t            vec3 _160;\n-\t            if (_156)\n+\t            vec3 _186;\n+\t            if (_182)\n \t            {\n-\t                _160 = vec3(p._m7._m7.xyz) / max(vec3(p._m7._m2), vec3(0.100000001490116119384765625));\n+\t                _186 = vec3(p.material.vMaterialBits.xyz) / max(vec3(p.material.vAlbedo), vec3(0.100000001490116119384765625));\n \t            }\n \t            else\n \t            {\n-\t                _160 = vec3(0.0);\n+\t                _186 = vec3(0.0);\n \t            }\n-\t            vec4 _500 = _139;\n-\t            _500.w = _160.x;\n-\t            _139 = _500;\n-\t            vec4 _503 = _138;\n-\t            _503.w = _160.y;\n-\t            _138 = _503;\n-\t            vec4 _506 = _137;\n-\t            _506.w = _160.z;\n-\t            _137 = _506;\n+\t            vec4 _536 = _159;\n+\t            _536.w = _186.x;\n+\t            _159 = _536;\n+\t            vec4 _539 = _158;\n+\t            _539.w = _186.y;\n+\t            _158 = _539;\n+\t            vec4 _542 = _157;\n+\t            _542.w = _186.z;\n+\t            _157 = _542;\n \t        }\n \t        break;\n \t    } while(false);\n-\t    _132 = _140;\n-\t    _131 = _139;\n-\t    _130 = _138;\n-\t    _129 = _137;\n-\t    _128 = _136;\n-\t    _127 = _135;\n-\t    _126 = _134;\n-\t    _125 = _133;\n+\t    _152 = _160;\n+\t    _151 = _159;\n+\t    _150 = _158;\n+\t    _149 = _157;\n+\t    _148 = _156;\n+\t    _147 = _155;\n+\t    _146 = _154;\n+\t    _145 = _153;\n \t    do\n \t    {\n-\t        vec3 _144 = _132.xyz;\n-\t        vec3 _143 = _129.xyz;\n-\t        f16vec3 _522 = f16vec3(vec3(0.0));\n-\t        vec3 _145;\n-\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _145, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_522, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _522, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _132.xyz, 0.0, _129.xyz, 1.0, 0);\n-\t        if (!(p._m5 != (-1)))\n+\t        vec3 _168 = _152.xyz;\n+\t        vec3 _167 = _149.xyz;\n+\t        f16vec3 _558 = f16vec3(vec3(0.0));\n+\t        vec3 _169;\n+\t        p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _169, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_558, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _558, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t        traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _152.xyz, 0.0, _149.xyz, 1.0, 0);\n+\t        if (!(p.nInstance != (-1)))\n \t        {\n \t            break;\n \t        }\n-\t        vec3 _548 = (_144 + (_143 * p._m3)) + (_129.xyz * ((abs(_144) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));\n-\t        vec4 _550 = _132;\n-\t        _550.x = _548.x;\n-\t        _550.y = _548.y;\n-\t        _550.z = _548.z;\n-\t        _132 = _550;\n+\t        vec3 _584 = (_168 + (_167 * p.flHitT)) + (_149.xyz * ((abs(_168) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));\n+\t        vec4 _586 = _152;\n+\t        _586.x = _584.x;\n+\t        _586.y = _584.y;\n+\t        _586.z = _584.z;\n+\t        _152 = _586;\n \t        break;\n \t    } while(false);\n \t    bool bValidSample = bValidSample_2;\n \t    int i = 0;\n \t    int nBackfacesSeen = 0;\n \t    bool bValidSample_1;\n-\t    vec3 _146;\n-\t    vec3 _152;\n-\t    float _153;\n-\t    bool _154;\n-\t    bool _155;\n+\t    vec3 _170;\n+\t    vec3 _178;\n+\t    float _179;\n+\t    bool _180;\n+\t    bool _181;\n \t    for (;;)\n \t    {\n-\t        bool _560_ladder_break = false;\n+\t        bool _596_ladder_break = false;\n \t        do\n \t        {\n \t            if (!(i < 8))\n \t            {\n-\t                _560_ladder_break = true;\n+\t                _596_ladder_break = true;\n \t                break;\n \t            }\n \t            if (!bValidSample)\n \t            {\n-\t                _560_ladder_break = true;\n+\t                _596_ladder_break = true;\n \t                break;\n \t            }\n \t            if ((nBackfacesSeen + (8 - i)) <= 2)\n \t            {\n-\t                _560_ladder_break = true;\n+\t                _596_ladder_break = true;\n \t                break;\n \t            }\n-\t            uint _577 = uint(i);\n-\t            uint _582 = (_577 << 16u) | (_577 >> 16u);\n-\t            uint _587 = ((_582 & 1431655765u) << 1u) | ((_582 & 2863311530u) >> 1u);\n-\t            uint _592 = ((_587 & 858993459u) << 2u) | ((_587 & 3435973836u) >> 2u);\n-\t            uint _597 = ((_592 & 252645135u) << 4u) | ((_592 & 4042322160u) >> 4u);\n-\t            vec2 _605 = vec2(float(_577) * 0.125, float(((_597 & 16711935u) << 8u) | ((_597 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);\n-\t            float _606 = _605.y;\n-\t            float _607 = sqrt(_606);\n-\t            float _609 = 6.283185482025146484375 * _605.x;\n-\t            vec3 _623 = mat3(vTangent1Ws, vTangent2Ws, _129.xyz) * vec3(cos(_609) * _607, sin(_609) * _607, sqrt(max(0.0, 1.0 - _606)));\n-\t            vec3 _124 = _132.xyz;\n-\t            vec3 _123 = _623;\n-\t            f16vec3 _626 = f16vec3(vec3(0.0));\n-\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _146, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_626, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _626, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t            traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _132.xyz, 0.0, _623, 56755.83984375, 0);\n+\t            uint _613 = uint(i);\n+\t            uint _618 = (_613 << 16u) | (_613 >> 16u);\n+\t            uint _623 = ((_618 & 1431655765u) << 1u) | ((_618 & 2863311530u) >> 1u);\n+\t            uint _628 = ((_623 & 858993459u) << 2u) | ((_623 & 3435973836u) >> 2u);\n+\t            uint _633 = ((_628 & 252645135u) << 4u) | ((_628 & 4042322160u) >> 4u);\n+\t            vec2 _641 = vec2(float(_613) * 0.125, float(((_633 & 16711935u) << 8u) | ((_633 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);\n+\t            float _642 = _641.y;\n+\t            float _643 = sqrt(_642);\n+\t            float _645 = 6.283185482025146484375 * _641.x;\n+\t            vec3 _659 = mat3(vTangent1Ws, vTangent2Ws, _149.xyz) * vec3(cos(_645) * _643, sin(_645) * _643, sqrt(max(0.0, 1.0 - _642)));\n+\t            vec3 _136 = _152.xyz;\n+\t            vec3 _135 = _659;\n+\t            f16vec3 _662 = f16vec3(vec3(0.0));\n+\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _170, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_662, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _662, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t            traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _152.xyz, 0.0, _659, 56755.83984375, 0);\n \t            Payload_t payload = p;\n-\t            float flRng = payload._m4;\n+\t            float flRng = payload.flOpacityRng;\n+\t            vec3 _134 = _152.xyz;\n+\t            vec3 _133 = _659;\n+\t            vec3 _132 = payload.vSmoothPositionWs;\n+\t            vec3 _131 = payload.vFaceNormalWs;\n+\t            float _130 = payload.flHitT;\n+\t            int _129 = payload.nInstance;\n+\t            f16vec3 _128 = payload.material.vNormalWs;\n \t            do\n \t            {\n-\t                if (!(payload._m5 != (-1)))\n+\t                if (!(_129 != (-1)))\n \t                {\n-\t                    _155 = false;\n+\t                    _181 = false;\n \t                    break;\n \t                }\n-\t                vec3 _148 = (_132.xyz + (_623 * payload._m3)) + (payload._m1 * ((abs(_132.xyz) + vec3(abs(payload._m3))) * 9.9999997473787516355514526367188e-05));\n-\t                vec3 _147 = payload._m1;\n+\t                vec3 _172 = (_134 + (_133 * _130)) + (_131 * ((abs(_134) + vec3(abs(_130))) * 9.9999997473787516355514526367188e-05));\n+\t                vec3 _171 = _131;\n \t                if (bValidSample)\n \t                {\n-\t                    _154 = any(notEqual(payload.material, vec3(3.4028234663852885981170418348452e+38)));\n+\t                    _180 = any(notEqual(_132, vec3(3.4028234663852885981170418348452e+38)));\n \t                }\n \t                else\n \t                {\n-\t                    _154 = false;\n+\t                    _180 = false;\n \t                }\n-\t                vec3 _669 = payload.material - _148;\n-\t                float _670 = length(_669);\n-\t                vec3 _151 = _148;\n-\t                float _150 = 0.0;\n-\t                vec3 _149 = vec4(_669 / vec3(_670), _670).xyz;\n-\t                if (_154)\n+\t                vec3 _712 = _132 - _172;\n+\t                float _713 = length(_712);\n+\t                vec3 _175 = _172;\n+\t                float _174 = 0.0;\n+\t                vec3 _173 = vec4(_712 / vec3(_713), _713).xyz;\n+\t                if (_180)\n \t                {\n-\t                    _153 = _670;\n+\t                    _179 = _713;\n \t                }\n \t                else\n \t                {\n-\t                    _153 = 0.0;\n+\t                    _179 = 0.0;\n \t                }\n \t                p_1 = PayloadShadow_t(1.0);\n-\t                traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _151, _150, _149, _153, 1);\n-\t                if (_154)\n+\t                traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _175, _174, _173, _179, 1);\n+\t                if (_180)\n \t                {\n-\t                    _153 = p_1.m_flVisibility;\n+\t                    _179 = p_1.m_flVisibility;\n \t                }\n \t                else\n \t                {\n-\t                    _153 = 0.0;\n+\t                    _179 = 0.0;\n \t                }\n-\t                if (_153 == 1.0)\n+\t                if (_179 == 1.0)\n \t                {\n-\t                    _148 = payload.material;\n-\t                    _147 = vec3(payload._m7.vMaterialBits);\n+\t                    _172 = _132;\n+\t                    _171 = vec3(_128);\n \t                }\n-\t                uint _697 = uint(payload._m5);\n-\t                if ((int((g_instanceBuffer._m0[_697].nMaterialFlags_nInstanceFlags >> uint(16)) & 65535u) & 1) != 0)\n+\t                uint _740 = uint(_129);\n+\t                PackedRtxInstanceData_t_natural_logical _743;\n+\t                _743.nSrgbColor = g_instanceBuffer._member0[_740].nSrgbColor;\n+\t                _743.nTriangleGeometry = g_instanceBuffer._member0[_740].nTriangleGeometry;\n+\t                _743.nMaterialData = g_instanceBuffer._member0[_740].nMaterialData;\n+\t                _743.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_740].nMaterialFlags_nInstanceFlags;\n+\t                _743.fEmissiveBoost = g_instanceBuffer._member0[_740].fEmissiveBoost;\n+\t                _743.nInstanceFlags = g_instanceBuffer._member0[_740].nInstanceFlags;\n+\t                _743._pad1 = g_instanceBuffer._member0[_740]._pad1;\n+\t                _743._pad2 = g_instanceBuffer._member0[_740]._pad2;\n+\t                uint _176 = _743.nMaterialFlags_nInstanceFlags;\n+\t                if ((int((_176 >> uint(16)) & 65535u) & 1) != 0)\n \t                {\n-\t                    _155 = false;\n+\t                    _181 = false;\n \t                    break;\n \t                }\n-\t                if ((int((g_instanceBuffer._m0[_697].nMaterialFlags_nInstanceFlags) & 65535u) & 2048) != 0)\n+\t                if ((int(_176 & 65535u) & 2048) != 0)\n \t                {\n-\t                    _155 = false;\n+\t                    _181 = false;\n \t                    break;\n \t                }\n-\t                _155 = dot(_623, _147) > 0.0;\n+\t                _181 = dot(_659, _171) > 0.0;\n \t                break;\n \t            } while(false);\n-\t            if (!_155)\n+\t            if (!_181)\n \t            {\n \t                break;\n \t            }\n-\t            f16vec3 _728 = f16vec3(vec3(0.0));\n-\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _152, 3.4028234663852885981170418348452e+38, flRng, -1, false, MaterialDataMinimal_t(_728, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _728, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t            traceRayEXT(g_AccelStruct, 16u, 16u, 0u, 2u, 0u, _124, payload._m3 * 0.99989998340606689453125, _123, payload._m3 * 1.00010001659393310546875, 0);\n-\t            flRng = p._m4;\n-\t            if (p._m5 != (-1))\n+\t            if (payload.nInstance != (-1))\n+\t            {\n+\t                uint _773 = uint(payload.nInstance);\n+\t                PackedRtxInstanceData_t_natural_logical _776;\n+\t                _776.nSrgbColor = g_instanceBuffer._member0[_773].nSrgbColor;\n+\t                _776.nTriangleGeometry = g_instanceBuffer._member0[_773].nTriangleGeometry;\n+\t                _776.nMaterialData = g_instanceBuffer._member0[_773].nMaterialData;\n+\t                _776.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_773].nMaterialFlags_nInstanceFlags;\n+\t                _776.fEmissiveBoost = g_instanceBuffer._member0[_773].fEmissiveBoost;\n+\t                _776.nInstanceFlags = g_instanceBuffer._member0[_773].nInstanceFlags;\n+\t                _776._pad1 = g_instanceBuffer._member0[_773]._pad1;\n+\t                _776._pad2 = g_instanceBuffer._member0[_773]._pad2;\n+\t                uint _177 = _776.nMaterialFlags_nInstanceFlags;\n+\t                if (!((int(_177 & 65535u) & 6) != 0))\n+\t                {\n+\t                    break;\n+\t                }\n+\t            }\n+\t            f16vec3 _793 = f16vec3(vec3(0.0));\n+\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _178, 3.4028234663852885981170418348452e+38, flRng, -1, false, MaterialDataMinimal_t(_793, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _793, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t            traceRayEXT(g_AccelStruct, 16u, 16u, 0u, 2u, 0u, _136, payload.flHitT * 0.99989998340606689453125, _135, payload.flHitT * 1.00010001659393310546875, 0);\n+\t            flRng = p.flOpacityRng;\n+\t            if (p.nInstance != (-1))\n \t            {\n \t                break;\n \t            }\n@@ -531,7 +631,7 @@ RTX\n \t            nBackfacesSeen = nBackfacesSeen_1;\n \t            break;\n \t        } while(false);\n-\t        if (_560_ladder_break)\n+\t        if (_596_ladder_break)\n \t        {\n \t            break;\n \t        }\n@@ -540,22 +640,22 @@ RTX\n \t    }\n \t    if (!bValidSample)\n \t    {\n-\t        _132 = vec4(0.0);\n-\t        _131 = vec4(0.0);\n-\t        _130 = vec4(0.0);\n-\t        _129 = vec4(0.0);\n-\t        _128 = vec4(0.0);\n-\t        _126 = 0;\n-\t        _125 = 0u;\n+\t        _152 = vec4(0.0);\n+\t        _151 = vec4(0.0);\n+\t        _150 = vec4(0.0);\n+\t        _149 = vec4(0.0);\n+\t        _148 = vec4(0.0);\n+\t        _146 = 0;\n+\t        _145 = 0u;\n \t    }\n-\t    g_LightmapSamples._m0[nSample].m_vPositionWs = _132;\n-\t    g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR = _131;\n-\t    g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG = _130;\n-\t    g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB = _129;\n-\t    g_LightmapSamples._m0[nSample].m_vTangentWs = _128;\n-\t    g_LightmapSamples._m0[nSample].m_vLightmapUv = _127;\n-\t    g_LightmapSamples._m0[nSample].m_nInstanceFlags = _126;\n-\t    g_LightmapSamples._m0[nSample].m_nSampleFlags = _125;\n+\t    g_LightmapSamples._member0[nSample].m_vPositionWs = _152;\n+\t    g_LightmapSamples._member0[nSample].m_vShadingNormalWs_vTransmissiveR = _151;\n+\t    g_LightmapSamples._member0[nSample].m_vInterpolatedNormalWs_vTransmissiveG = _150;\n+\t    g_LightmapSamples._member0[nSample].m_vFaceNormalWs_vTransmissiveB = _149;\n+\t    g_LightmapSamples._member0[nSample].m_vTangentWs = _148;\n+\t    g_LightmapSamples._member0[nSample].m_vLightmapUv = _147;\n+\t    g_LightmapSamples._member0[nSample].m_nInstanceFlags = _146;\n+\t    g_LightmapSamples._member0[nSample].m_nSampleFlags = _145;\n \t}\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lpv.slang",
          "status": "modified",
          "additions": 105,
          "deletions": 83,
          "changes": 188,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: rtx\n }\n@@ -33,11 +33,11 @@ RTX\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported builtin in HLSL: 5319\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (10448 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (10644 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_AMD_gpu_shader_half_float)\n@@ -63,33 +63,40 @@ RTX\n \t#define SPIRV_CROSS_LOOP\n \t#endif\n \t\n-\tstruct _MatrixStorage_float4x3_ColMajornatural\n+\tstruct MaterialDataMinimal_t\n \t{\n-\t    vec4 data[3];\n+\t    f16vec3 vNormalWs;\n+\t    float16_t flMetalness;\n+\t    f16vec3 vAlbedo;\n+\t    float16_t flRoughness;\n+\t    f16vec3 vEmissive;\n+\t    float16_t flReflectance;\n+\t    uint nMaterialTypeAndFlags;\n+\t    f16vec4 vMaterialBits;\n \t};\n \t\n-\tstruct MaterialDataMinimal_t\n+\tstruct Payload_t\n \t{\n-\t    f16vec3 vMaterialBits;\n-\t    float16_t _m1;\n-\t    f16vec3 _m2;\n-\t    float16_t _m3;\n-\t    f16vec3 _m4;\n-\t    float16_t _m5;\n-\t    uint _m6;\n-\t    f16vec4 _m7;\n+\t    vec3 vSmoothPositionWs;\n+\t    vec3 vFaceNormalWs;\n+\t    vec3 vInterpolatedNormalWs;\n+\t    float flHitT;\n+\t    float flOpacityRng;\n+\t    int nInstance;\n+\t    bool bFlippedNormal;\n+\t    MaterialDataMinimal_t material;\n \t};\n \t\n-\tstruct Payload_t\n+\tstruct PackedRtxInstanceData_t_natural_logical\n \t{\n-\t    vec3 material;\n-\t    vec3 _m1;\n-\t    vec3 _m2;\n-\t    float _m3;\n-\t    float _m4;\n-\t    int _m5;\n-\t    bool _m6;\n-\t    MaterialDataMinimal_t _m7;\n+\t    uint nSrgbColor;\n+\t    uint nTriangleGeometry;\n+\t    uint nMaterialData;\n+\t    uint nMaterialFlags_nInstanceFlags;\n+\t    float fEmissiveBoost;\n+\t    uint nInstanceFlags;\n+\t    uint _pad1;\n+\t    uint _pad2;\n \t};\n \t\n \tstruct PackedRtxInstanceData_t_natural\n@@ -111,12 +118,12 @@ RTX\n \t\n \tlayout(set = 6, binding = 159, std430) buffer RWStructuredBuffer\n \t{\n-\t    uint _m0[];\n+\t    uint _member0[];\n \t} g_SolidMask;\n \t\n \tlayout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer\n \t{\n-\t    PackedRtxInstanceData_t_natural _m0[];\n+\t    PackedRtxInstanceData_t_natural _member0[];\n \t} g_instanceBuffer;\n \t\n \tlayout(push_constant, std430) uniform LpvPushConstants_t_natural\n@@ -129,7 +136,7 @@ RTX\n \t    vec4 m_vOffset;\n \t    vec4 m_vLpvMinBounds;\n \t    vec4 m_vLpvMaxBounds;\n-\t    _MatrixStorage_float4x3_ColMajornatural m_mLpvLocalToWorld;\n+\t    layout(row_major) mat4x3 m_mLpvLocalToWorld;\n \t} g_PushConstants;\n \t\n \tlayout(location = 0) rayPayloadEXT Payload_t p;\n@@ -140,14 +147,12 @@ RTX\n \t{\n \t    do\n \t    {\n-\t        ivec3 _134 = ivec3(gl_LaunchIDEXT);\n-\t        uvec3 _145 = uvec3(_134);\n-\t        int nIdx = int((gl_LaunchSizeEXT.x * ((_145.z * gl_LaunchSizeEXT.y) + _145.y)) + _145.x);\n-\t        vec3 _188 = mat4x3(vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].x, g_PushConstants.m_mLpvLocalToWorld.data[1].x, g_PushConstants.m_mLpvLocalToWorld.data[2].x), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].y, g_PushConstants.m_mLpvLocalToWorld.data[1].y, g_PushConstants.m_mLpvLocalToWorld.data[2].y), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].z, g_PushConstants.m_mLpvLocalToWorld.data[1].z, g_PushConstants.m_mLpvLocalToWorld.data[2].z), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].w, g_PushConstants.m_mLpvLocalToWorld.data[1].w, g_PushConstants.m_mLpvLocalToWorld.data[2].w)) * vec4((((g_PushConstants.m_vLpvMaxBounds.xyz - g_PushConstants.m_vLpvMinBounds.xyz) / vec3(gl_LaunchSizeEXT)) * (vec3(_134) + g_PushConstants.m_vOffset.xyz)) + g_PushConstants.m_vLpvMinBounds.xyz, 1.0);\n+\t        int nIdx = int((gl_LaunchSizeEXT.x * ((gl_LaunchIDEXT.z * gl_LaunchSizeEXT.y) + gl_LaunchIDEXT.y)) + gl_LaunchIDEXT.x);\n+\t        vec3 _174 = g_PushConstants.m_mLpvLocalToWorld * vec4((((g_PushConstants.m_vLpvMaxBounds.xyz - g_PushConstants.m_vLpvMinBounds.xyz) / vec3(gl_LaunchSizeEXT)) * (vec3(ivec3(gl_LaunchIDEXT)) + g_PushConstants.m_vOffset.xyz)) + g_PushConstants.m_vLpvMinBounds.xyz, 1.0);\n \t        uint nFlags;\n \t        if (g_PushConstants.m_nEstimate > 0)\n \t        {\n-\t            nFlags = g_SolidMask._m0[nIdx];\n+\t            nFlags = g_SolidMask._member0[nIdx];\n \t        }\n \t        else\n \t        {\n@@ -162,102 +167,119 @@ RTX\n \t        int i = 0;\n \t        int nBackfacesSeen = 0;\n \t        bool bValidSample_1;\n-\t        vec3 _121;\n-\t        float _127;\n-\t        bool _128;\n-\t        bool _129;\n-\t        float _130;\n+\t        vec3 _128;\n+\t        float _135;\n+\t        bool _136;\n+\t        bool _137;\n+\t        float _138;\n \t        SPIRV_CROSS_UNROLL\n \t        for (;;)\n \t        {\n \t            if (!(i < 32))\n \t            {\n \t                break;\n \t            }\n-\t            uint _214 = uint(i);\n-\t            uint _219 = (_214 << 16u) | (_214 >> 16u);\n-\t            uint _224 = ((_219 & 1431655765u) << 1u) | ((_219 & 2863311530u) >> 1u);\n-\t            uint _229 = ((_224 & 858993459u) << 2u) | ((_224 & 3435973836u) >> 2u);\n-\t            uint _234 = ((_229 & 252645135u) << 4u) | ((_229 & 4042322160u) >> 4u);\n-\t            vec2 _242 = vec2(float(_214) * 0.03125, float(((_234 & 16711935u) << 8u) | ((_234 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);\n-\t            float _243 = _242.y;\n-\t            float _248 = 2.0 * sqrt(max(0.0, _243 - (_243 * _243)));\n-\t            float _250 = 6.283185482025146484375 * _242.x;\n-\t            vec3 _257 = vec3(cos(_250) * _248, sin(_250) * _248, 1.0 - (2.0 * _243));\n-\t            vec3 _120 = _188.xyz;\n-\t            float _119 = 0.0;\n-\t            vec3 _118 = _257;\n+\t            uint _200 = uint(i);\n+\t            uint _205 = (_200 << 16u) | (_200 >> 16u);\n+\t            uint _210 = ((_205 & 1431655765u) << 1u) | ((_205 & 2863311530u) >> 1u);\n+\t            uint _215 = ((_210 & 858993459u) << 2u) | ((_210 & 3435973836u) >> 2u);\n+\t            uint _220 = ((_215 & 252645135u) << 4u) | ((_215 & 4042322160u) >> 4u);\n+\t            vec2 _228 = vec2(float(_200) * 0.03125, float(((_220 & 16711935u) << 8u) | ((_220 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);\n+\t            float _229 = _228.y;\n+\t            float _234 = 2.0 * sqrt(max(0.0, _229 - (_229 * _229)));\n+\t            float _236 = 6.283185482025146484375 * _228.x;\n+\t            vec3 _243 = vec3(cos(_236) * _234, sin(_236) * _234, 1.0 - (2.0 * _229));\n+\t            vec3 _127 = _174.xyz;\n+\t            float _126 = 0.0;\n+\t            vec3 _125 = _243;\n \t            if (bValidSample)\n \t            {\n-\t                _130 = 56755.83984375;\n+\t                _138 = 56755.83984375;\n \t            }\n \t            else\n \t            {\n-\t                _130 = 0.0;\n+\t                _138 = 0.0;\n \t            }\n-\t            f16vec3 _264 = f16vec3(vec3(0.0));\n-\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _121, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_264, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _264, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n-\t            traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _120, _119, _118, _130, 0);\n+\t            f16vec3 _250 = f16vec3(vec3(0.0));\n+\t            p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _128, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_250, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _250, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));\n+\t            traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _127, _126, _125, _138, 0);\n+\t            vec3 _124 = _127;\n+\t            vec3 _123 = _125;\n+\t            vec3 _122 = p.vSmoothPositionWs;\n+\t            vec3 _121 = p.vFaceNormalWs;\n+\t            float _120 = p.flHitT;\n+\t            int _119 = p.nInstance;\n+\t            f16vec3 _118 = p.material.vNormalWs;\n \t            do\n \t            {\n-\t                if (!(p._m5 != (-1)))\n+\t                if (!(_119 != (-1)))\n \t                {\n-\t                    _129 = false;\n+\t                    _137 = false;\n \t                    break;\n \t                }\n-\t                vec3 _123 = (_120 + (_118 * p._m3)) + (p._m1 * ((abs(_120) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));\n-\t                vec3 _122 = p._m1;\n+\t                vec3 _130 = (_124 + (_123 * _120)) + (_121 * ((abs(_124) + vec3(abs(_120))) * 9.9999997473787516355514526367188e-05));\n+\t                vec3 _129 = _121;\n \t                if (bValidSample)\n \t                {\n-\t                    _128 = any(notEqual(p.material, vec3(3.4028234663852885981170418348452e+38)));\n+\t                    _136 = any(notEqual(_122, vec3(3.4028234663852885981170418348452e+38)));\n \t                }\n \t                else\n \t                {\n-\t                    _128 = false;\n+\t                    _136 = false;\n \t                }\n-\t                vec3 _310 = p.material - _123;\n-\t                float _311 = length(_310);\n-\t                vec3 _126 = _123;\n-\t                float _125 = 0.0;\n-\t                vec3 _124 = vec4(_310 / vec3(_311), _311).xyz;\n-\t                if (_128)\n+\t                vec3 _302 = _122 - _130;\n+\t                float _303 = length(_302);\n+\t                vec3 _133 = _130;\n+\t                float _132 = 0.0;\n+\t                vec3 _131 = vec4(_302 / vec3(_303), _303).xyz;\n+\t                if (_136)\n \t                {\n-\t                    _127 = _311;\n+\t                    _135 = _303;\n \t                }\n \t                else\n \t                {\n-\t                    _127 = 0.0;\n+\t                    _135 = 0.0;\n \t                }\n \t                p_1 = PayloadShadow_t(1.0);\n-\t                traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _126, _125, _124, _127, 1);\n-\t                if (_128)\n+\t                traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _133, _132, _131, _135, 1);\n+\t                if (_136)\n \t                {\n-\t                    _127 = p_1.m_flVisibility;\n+\t                    _135 = p_1.m_flVisibility;\n \t                }\n \t                else\n \t                {\n-\t                    _127 = 0.0;\n+\t                    _135 = 0.0;\n \t                }\n-\t                if (_127 == 1.0)\n+\t                if (_135 == 1.0)\n \t                {\n-\t                    _123 = p.material;\n-\t                    _122 = vec3(p._m7.vMaterialBits);\n+\t                    _130 = _122;\n+\t                    _129 = vec3(_118);\n \t                }\n-\t                uint _338 = uint(p._m5);\n-\t                if ((int((g_instanceBuffer._m0[_338].nMaterialFlags_nInstanceFlags >> uint(16)) & 65535u) & 1) != 0)\n+\t                uint _330 = uint(_119);\n+\t                PackedRtxInstanceData_t_natural_logical _333;\n+\t                _333.nSrgbColor = g_instanceBuffer._member0[_330].nSrgbColor;\n+\t                _333.nTriangleGeometry = g_instanceBuffer._member0[_330].nTriangleGeometry;\n+\t                _333.nMaterialData = g_instanceBuffer._member0[_330].nMaterialData;\n+\t                _333.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_330].nMaterialFlags_nInstanceFlags;\n+\t                _333.fEmissiveBoost = g_instanceBuffer._member0[_330].fEmissiveBoost;\n+\t                _333.nInstanceFlags = g_instanceBuffer._member0[_330].nInstanceFlags;\n+\t                _333._pad1 = g_instanceBuffer._member0[_330]._pad1;\n+\t                _333._pad2 = g_instanceBuffer._member0[_330]._pad2;\n+\t                uint _134 = _333.nMaterialFlags_nInstanceFlags;\n+\t                if ((int((_134 >> uint(16)) & 65535u) & 1) != 0)\n \t                {\n-\t                    _129 = false;\n+\t                    _137 = false;\n \t                    break;\n \t                }\n-\t                if ((int((g_instanceBuffer._m0[_338].nMaterialFlags_nInstanceFlags) & 65535u) & 2048) != 0)\n+\t                if ((int(_134 & 65535u) & 2048) != 0)\n \t                {\n-\t                    _129 = false;\n+\t                    _137 = false;\n \t                    break;\n \t                }\n-\t                _129 = dot(_257, _122) > 0.0;\n+\t                _137 = dot(_243, _129) > 0.0;\n \t                break;\n \t            } while(false);\n-\t            if (_129)\n+\t            if (_137)\n \t            {\n \t                int nBackfacesSeen_1 = nBackfacesSeen + 1;\n \t                if (float(nBackfacesSeen_1) > 12.80000019073486328125)\n@@ -278,7 +300,7 @@ RTX\n \t        {\n \t            nFlags |= 1u;\n \t        }\n-\t        g_SolidMask._m0[nIdx] = nFlags;\n+\t        g_SolidMask._member0[nIdx] = nFlags;\n \t        break;\n \t    } while(false);\n \t}"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_vertexlight.slang",
          "status": "modified",
          "additions": 2119,
          "deletions": 1954,
          "changes": 4073,
          "patch": null
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sampletexture_bicubic.slang",
          "status": "modified",
          "additions": 8,
          "deletions": 8,
          "changes": 16,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -132,11 +132,11 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    uint _16185_dummy_parameter;\n-\t    uint2 _16185 = spvTextureSize(g_tInputTexture, uint(0), _16185_dummy_parameter);\n-\t    float2 _14249 = float2(int2(int(_16185.x), int(_16185.y)));\n-\t    float2 _10728 = 1.0f.xx / _14249;\n-\t    float2 _13560 = (input_0 * _14249) - 0.5f.xx;\n+\t    uint _10352_dummy_parameter;\n+\t    uint2 _10352 = spvTextureSize(g_tInputTexture, 0u, _10352_dummy_parameter);\n+\t    float2 _15674 = float2(int2(int(_10352.x), int(_10352.y)));\n+\t    float2 _18768 = 1.0f.xx / _15674;\n+\t    float2 _13560 = (input_0 * _15674) - 0.5f.xx;\n \t    float2 _11204 = floor(_13560);\n \t    float2 _24976 = _13560 - _11204;\n \t    float _9202 = _24976.x;\n@@ -151,7 +151,7 @@ PS\n \t    float2 _15076 = (_11358 / _22452) - 1.0f.xx;\n \t    float2 _14303 = (_23036 / (float2(_23690.z, _22702.z) + _23036)) + 1.0f.xx;\n \t    float4 _17001 = _22452.y.xxxx;\n-\t    output_0 = lerp(lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _14303) + 0.5f.xx) * _10728).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_14303.x, _15076.y)) + 0.5f.xx) * _10728).xy, 0.0f), _17001), lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_15076.x, _14303.y)) + 0.5f.xx) * _10728).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _15076) + 0.5f.xx) * _10728).xy, 0.0f), _17001), _22452.x.xxxx);\n+\t    output_0 = lerp(lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _14303) + 0.5f.xx) * _18768).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_14303.x, _15076.y)) + 0.5f.xx) * _18768).xy, 0.0f), _17001), lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_15076.x, _14303.y)) + 0.5f.xx) * _18768).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _15076) + 0.5f.xx) * _18768).xy, 0.0f), _17001), _22452.x.xxxx);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/screen_texture_with_depth.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sfm_accumulation.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sfm_hsl_grain.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 5,
          "changes": 10,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -178,10 +178,10 @@ PS\n \t    float3 _22743;\n \t    if (_Globals_1_g_flSatNoiseScale != 0.0f)\n \t    {\n-\t        float _14703 = _Globals_1_g_flHueNoiseScale * 6.0f;\n-\t        float _23729 = floor(_14703);\n+\t        float _12281 = _Globals_1_g_flHueNoiseScale * 6.0f;\n+\t        float _23729 = floor(_12281);\n \t        float _15688 = _8572 * (1.0f - _Globals_1_g_flSatNoiseScale);\n-\t        float _17993 = _14703 - _23729;\n+\t        float _17993 = _12281 - _23729;\n \t        float _10560 = _8572 * (1.0f - (_Globals_1_g_flSatNoiseScale * _17993));\n \t        float _23319 = _8572 * (1.0f - (_Globals_1_g_flSatNoiseScale * (1.0f - _17993)));\n \t        float3 _12505;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sfm_volumetrics_frustum.slang",
          "status": "modified",
          "additions": 12,
          "deletions": 17,
          "changes": 29,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -36,19 +36,14 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2196 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1592 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _16\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n-\tcbuffer _Globals_ : register(b0, space0)\n-\t{\n-\t    _16 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n-\t    float3 _Globals_1_m2 : packoffset(c26);\n-\t    float3 _Globals_1_m3 : packoffset(c28);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m3 : packoffset(c28);\n \t};\n \t\n \t\n@@ -81,10 +76,10 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(input_0.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n-\t    output_0 = float4(input_0, dot(_Globals_1_m3, input_0.xyz - _Globals_1_m2.xyz));\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(input_0.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n+\t    output_0 = float4(input_0, dot(PerViewConstantBuffer_t_1_m3, input_0.xyz - PerViewConstantBuffer_t_1_m2.xyz));\n \t    output_1 = input_1;\n \t    output_2 = input_2;\n \t    output_3 = input_3;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/simple_water.slang",
          "status": "modified",
          "additions": 50,
          "deletions": 33,
          "changes": 83,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -49,9 +49,9 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tExternalDescriptorSet g_lightBinnerCpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerCpuSet\"); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Texture Scrolling\n \tfloat g_flNormalTexCoordRotation0 < Range(0, 6.29); UiType(Slider); UiGroup(\"Texture Scrolling\"); >;\n@@ -72,7 +72,7 @@ VS\n \tfloat g_flNormalTexCoordScrollSpeedY3 < Range(-100, 100); UiType(Slider); UiGroup(\"Texture Scrolling\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (7004 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (6376 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -86,26 +86,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1402\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _752\n+\tstruct _1126\n \t{\n-\t    _1402 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1528\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1528 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float PerViewConstantBuffer_t_1_m2 : packoffset(c18.w);\n \t    float4 PerViewConstantBuffer_t_1_m3 : packoffset(c24);\n@@ -167,18 +174,33 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1402 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _14293 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));\n-\t    float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _14293 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));\n+\t    float3 _12861 = mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;\n \t    float3 _24912 = _14293.xyz;\n-\t    float3 _19938 = mul(_14817, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);\n+\t    float3 _19938 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);\n \t    float2 _5599 = _19938.xy * 0.004999999888241291046142578125f;\n \t    float2 _16550 = _5599.xy;\n \t    float2 _24040 = _16550 + (float2(_Globals_1_g_flNormalTexCoordScrollSpeedX0, _Globals_1_g_flNormalTexCoordScrollSpeedY0) * PerViewConstantBuffer_t_1_m2);\n@@ -207,8 +229,8 @@ VS\n \t    output_3 = float4(float2((_11444 * _7954) + (_6462 * _12146), (_6462 * _7954) - (_11444 * _12146)).xy * _Globals_1_g_flNormalTexCoordScale2.xx.xy, float2((_11445 * _7955) + (_6463 * _12147), (_6463 * _7955) - (_11445 * _12147)).xy * _Globals_1_g_flNormalTexCoordScale3.xx.xy);\n \t    output_4 = _19938;\n \t    output_5 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);\n-\t    _23894.y = -_23894.y;\n-\t    gl_Position = _23894;\n+\t    _18256.y = -_18256.y;\n+\t    gl_Position = _18256;\n \t    gl_ClipDistance[0] = dot(float4(_19938.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t\n@@ -266,12 +288,7 @@ PS\n \tfloat g_flNormalMapStrength < Default(1); Range(0.001, 100); UiType(Slider); UiGroup(\"Reflection\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (6324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n-\t\n-\tstruct _226\n-\t{\n-\t    float4 _m0[4];\n-\t};\n+\t// SPIR-V source (5720 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float3 _2;\n \tstatic float4 _3;\n@@ -295,7 +312,7 @@ PS\n \t\n \tcbuffer ReflectionMapDescriptor_t : register(b4, space1)\n \t{\n-\t    _226 ReflectionMapDescriptor_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 ReflectionMapDescriptor_t_1_m0 : packoffset(c0);\n \t    float4 ReflectionMapDescriptor_t_1_m1 : packoffset(c4);\n \t    float4 ReflectionMapDescriptor_t_1_m2 : packoffset(c5);\n \t};\n@@ -342,7 +359,7 @@ PS\n \t    _24157.y = _11003.y;\n \t    float3 _23712 = normalize(_24157.xyz);\n \t    float3 _6606 = normalize((((float3(input_1.xyz).xyz * _23712.x).xyz + ((cross(normalize(input_0.xyz).xyz, input_1.xyz) * input_1.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;\n-\t    float4 _19975 = mul(float4x4(float4(ReflectionMapDescriptor_t_1_m0._m0[0].x, ReflectionMapDescriptor_t_1_m0._m0[1].x, ReflectionMapDescriptor_t_1_m0._m0[2].x, ReflectionMapDescriptor_t_1_m0._m0[3].x), float4(ReflectionMapDescriptor_t_1_m0._m0[0].y, ReflectionMapDescriptor_t_1_m0._m0[1].y, ReflectionMapDescriptor_t_1_m0._m0[2].y, ReflectionMapDescriptor_t_1_m0._m0[3].y), float4(ReflectionMapDescriptor_t_1_m0._m0[0].z, ReflectionMapDescriptor_t_1_m0._m0[1].z, ReflectionMapDescriptor_t_1_m0._m0[2].z, ReflectionMapDescriptor_t_1_m0._m0[3].z), float4(ReflectionMapDescriptor_t_1_m0._m0[0].w, ReflectionMapDescriptor_t_1_m0._m0[1].w, ReflectionMapDescriptor_t_1_m0._m0[2].w, ReflectionMapDescriptor_t_1_m0._m0[3].w)), float4((input_4.xyz + ((_6606 - (_6606 * dot(ReflectionMapDescriptor_t_1_m1.xyz, _6606))) * _Globals_1_g_flNormalMapStrength)).xyz, 1.0f));\n+\t    float4 _19975 = mul(ReflectionMapDescriptor_t_1_m0, float4((input_4.xyz + ((_6606 - (_6606 * dot(ReflectionMapDescriptor_t_1_m1.xyz, _6606))) * _Globals_1_g_flNormalMapStrength)).xyz, 1.0f));\n \t    float2 _22180 = _19975.xy * (1.0f / _19975.w);\n \t    float4 _19391 = g_tReflection.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, float2((clamp((_22180.x - (-1.0f)) * 0.5f, 0.0f, 1.0f) * (ReflectionMapDescriptor_t_1_m2.z - ReflectionMapDescriptor_t_1_m2.x)) + ReflectionMapDescriptor_t_1_m2.x, (clamp((_22180.y - 1.0f) * (-0.5f), 0.0f, 1.0f) * (ReflectionMapDescriptor_t_1_m2.w - ReflectionMapDescriptor_t_1_m2.y)) + ReflectionMapDescriptor_t_1_m2.y).xy);\n \t    float4 _18900;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/skinning_cs.slang",
          "status": "modified",
          "additions": 90,
          "deletions": 65,
          "changes": 155,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -31,21 +31,23 @@ CS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \tDynamicCombo( D_MORPH, 0..1 );\n-\tDynamicCombo( D_EIGHT_BONE_SKINNING, 0..1 );\n+\tDynamicCombo( D_EIGHT_BONE_SKINNING, 0..2 );\n \tDynamicCombo( D_TOOLS_VIS, 0..1 );\n \tDynamicCombo( D_LATTICE_DEFORMER, 0..1 );\n \tDynamicComboRule( Allow1( D_MORPH, D_LATTICE_DEFORMER ) );\n \t\n \tcbuffer VertexCachePushConstants < Source(ExternalDescSet); Attribute(\"VertexCachePushConstants\"); >;\n-\tByteAddressBuffer g_inputVB < Attribute(\"InputVB\"); SrgbRead(false); >;\n-\tStructuredBuffer g_instances < Attribute(\"Instances\"); SrgbRead(false); >;\n+\tcbuffer VertexCachePushConstants < Source(ExternalDescSet); Attribute(\"VertexCachePushConstants\"); >;\n+\tByteAddressBuffer g_inputVB < Attribute(\"InputVB\"); >;\n+\tStructuredBuffer g_instances < Attribute(\"Instances\"); >;\n \tint g_nMorphTextureAtlasWidth < Attribute(\"MorphTextureAtlasWidth\"); UiType(Slider); >;\n \tRWByteAddressBuffer g_outputVB < Attribute(\"OutputVB\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n+\t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (11880 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (12332 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1017\n \t{\n@@ -55,14 +57,22 @@ CS\n \t    uint _m3;\n \t};\n \t\n-\tstruct _1949\n+\tstruct _1018\n+\t{\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t};\n+\t\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _1844\n+\tstruct _1120\n \t{\n-\t    _1949 _m0;\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tstatic float4 _3;\n@@ -71,7 +81,7 @@ CS\n \tByteAddressBuffer g_inputVB : register(t36, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tRWByteAddressBuffer undetermined : register(u158, space0);\n-\tcbuffer _1170_3444\n+\tcbuffer _1206_3444\n \t{\n \t    uint _3444_m0 : packoffset(c0);\n \t    uint _3444_m1 : packoffset(c0.y);\n@@ -83,6 +93,7 @@ CS\n \t    uint _3444_m7 : packoffset(c1.w);\n \t    uint _3444_m8 : packoffset(c2);\n \t    uint _3444_m9 : packoffset(c2.y);\n+\t    uint _3444_m10 : packoffset(c2.z);\n \t};\n \t\n \t\n@@ -104,29 +115,38 @@ CS\n \t        {\n \t            break;\n \t        }\n-\t        uint _13724 = _3444_m8 + gl_GlobalInvocationID.y;\n-\t        uint _3973 = g_instances.Load(_13724 * 16 + 0) + (gl_GlobalInvocationID.x * _3444_m3);\n+\t        _1018 _17001;\n+\t        _17001._m0 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 0);\n+\t        _17001._m1 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 4);\n+\t        _17001._m2 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 8);\n+\t        _17001._m3 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 12);\n+\t        _1017 _20228;\n+\t        _20228._m0 = _17001._m0;\n+\t        _20228._m1 = _17001._m1;\n+\t        _20228._m2 = _17001._m2;\n+\t        _20228._m3 = _17001._m3;\n+\t        uint _3973 = _20228._m0 + (gl_GlobalInvocationID.x * _3444_m3);\n \t        uint _20858 = _3973 + _3444_m1;\n \t        uint _6233 = g_inputVB.Load((_20858 / 4u) * 4 + 0);\n \t        uint _6234 = g_inputVB.Load(((_20858 + 4u) / 4u) * 4 + 0);\n \t        uint _14347 = g_inputVB.Load(((_20858 + 8u) / 4u) * 4 + 0);\n-\t        float4 _9716;\n-\t        float3 _24878;\n+\t        float4 _12167;\n+\t        float3 _24254;\n \t        do\n \t        {\n \t            if (_3444_m6 == 4294967295u)\n \t            {\n-\t                _9716 = float4(0.0f, 0.0f, 1.0f, 1.0f);\n-\t                _24878 = float3(0.0f, 1.0f, 0.0f);\n+\t                _12167 = float4(0.0f, 0.0f, 1.0f, 1.0f);\n+\t                _24254 = float3(0.0f, 1.0f, 0.0f);\n \t                break;\n \t            }\n \t            float4 _13212;\n \t            float3 _15670;\n \t            if (_3444_m7 == 4294967295u)\n \t            {\n-\t                uint _23043 = uint(int(_3973 + _3444_m6)) / 4u;\n-\t                float _22483 = (float((g_inputVB.Load(_23043 * 4 + 0) >> 12u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;\n-\t                float _7589 = (float((g_inputVB.Load(_23043 * 4 + 0) >> 22u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;\n+\t                uint _12586 = (_3973 + _3444_m6) / 4u;\n+\t                float _22483 = (float((g_inputVB.Load(_12586 * 4 + 0) >> 12u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;\n+\t                float _7589 = (float((g_inputVB.Load(_12586 * 4 + 0) >> 22u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;\n \t                float _23404 = (1.0f - abs(_22483)) - abs(_7589);\n \t                float3 _8254 = float3(_22483, _7589, _23404);\n \t                float _24228 = clamp(-_23404, 0.0f, 1.0f);\n@@ -143,8 +163,8 @@ CS\n \t                float _16417 = (-1.0f) / (_8220 + _6384);\n \t                float _14755 = _21001.x;\n \t                float3 _23176 = float3(1.0f + (((_8220 * _14755) * _14755) * _16417), _8220 * ((_14755 * _21001.y) * _16417), (-_8220) * _14755);\n-\t                float _23966 = float((g_inputVB.Load(_23043 * 4 + 0) >> uint(1)) & 2047u) * 0.003069460391998291015625f;\n-\t                _13212 = float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_inputVB.Load(_23043 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f);\n+\t                float _23966 = float((g_inputVB.Load(_12586 * 4 + 0) >> uint(1)) & 2047u) * 0.003069460391998291015625f;\n+\t                _13212 = float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_inputVB.Load(_12586 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f);\n \t                _15670 = _21001;\n \t            }\n \t            else\n@@ -163,38 +183,38 @@ CS\n \t                _13212 = _12501;\n \t                _15670 = asfloat(uint3(g_inputVB.Load((_18914 / 4u) * 4 + 0), g_inputVB.Load(((_18914 + 4u) / 4u) * 4 + 0), g_inputVB.Load(((_18914 + 8u) / 4u) * 4 + 0)));\n \t            }\n-\t            _9716 = _13212;\n-\t            _24878 = _15670;\n+\t            _12167 = _13212;\n+\t            _24254 = _15670;\n \t            break;\n \t        } while(false);\n-\t        uint _3718 = g_instances.Load(_13724 * 16 + 8) & 15u;\n+\t        uint _3718 = _20228._m2 & 15u;\n \t        uint4 _18844;\n \t        if (_3444_m2 < 4294967295u)\n \t        {\n \t            uint4 _12503;\n \t            if (_3444_m4 == 16u)\n \t            {\n-\t                uint _21337 = _3973 + _3444_m2;\n-\t                uint _12586 = _21337 / 4u;\n-\t                uint _6759 = (_21337 + 4u) / 4u;\n-\t                _12503 = uint4(g_inputVB.Load(_12586 * 4 + 0) & 65535u, g_inputVB.Load(_12586 * 4 + 0) >> uint(16), g_inputVB.Load(_6759 * 4 + 0) & 65535u, g_inputVB.Load(_6759 * 4 + 0) >> uint(16));\n+\t                uint _21339 = _3973 + _3444_m2;\n+\t                uint _12589 = _21339 / 4u;\n+\t                uint _6759 = (_21339 + 4u) / 4u;\n+\t                _12503 = uint4(g_inputVB.Load(_12589 * 4 + 0) & 65535u, g_inputVB.Load(_12589 * 4 + 0) >> uint(16), g_inputVB.Load(_6759 * 4 + 0) & 65535u, g_inputVB.Load(_6759 * 4 + 0) >> uint(16));\n \t            }\n \t            else\n \t            {\n \t                uint4 _12502;\n \t                if (_3444_m4 == 10u)\n \t                {\n-\t                    uint _23045 = uint(int(_3973 + _3444_m2)) / 4u;\n+\t                    uint _12588 = (_3973 + _3444_m2) / 4u;\n \t                    uint4 _25107 = uint4(4294967295u, 4294967295u, 4294967295u, 4294967295u);\n-\t                    _25107.x = g_inputVB.Load(_23045 * 4 + 0) & 1023u;\n-\t                    _25107.y = (g_inputVB.Load(_23045 * 4 + 0) >> uint(10)) & 1023u;\n-\t                    _25107.z = (g_inputVB.Load(_23045 * 4 + 0) >> uint(20)) & 1023u;\n+\t                    _25107.x = g_inputVB.Load(_12588 * 4 + 0) & 1023u;\n+\t                    _25107.y = (g_inputVB.Load(_12588 * 4 + 0) >> uint(10)) & 1023u;\n+\t                    _25107.z = (g_inputVB.Load(_12588 * 4 + 0) >> uint(20)) & 1023u;\n \t                    _12502 = _25107;\n \t                }\n \t                else\n \t                {\n-\t                    uint _23044 = uint(int(_3973 + _3444_m2)) / 4u;\n-\t                    _12502 = uint4(g_inputVB.Load(_23044 * 4 + 0) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(8)) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(16)) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(24)) & 255u);\n+\t                    uint _12587 = (_3973 + _3444_m2) / 4u;\n+\t                    _12502 = uint4(g_inputVB.Load(_12587 * 4 + 0) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(8)) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(16)) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(24)) & 255u);\n \t                }\n \t                _12503 = _12502;\n \t            }\n@@ -209,28 +229,38 @@ CS\n \t        float4 _11521;\n \t        if (_3444_m5 < 4294967295u)\n \t        {\n-\t            uint _23046 = uint(int(_3973 + _3444_m5)) / 4u;\n-\t            _11521 = float4(float(g_inputVB.Load(_23046 * 4 + 0) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(8)) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(16)) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(24)) & 255u)) * 0.0039215688593685626983642578125f;\n+\t            float4 _12504;\n+\t            if (_3444_m10 != 0u)\n+\t            {\n+\t                uint _21340 = _3973 + _3444_m5;\n+\t                uint _12591 = _21340 / 4u;\n+\t                uint _12369 = (_21340 + 4u) / 4u;\n+\t                _12504 = float4(float(g_inputVB.Load(_12591 * 4 + 0) & 65535u), float((g_inputVB.Load(_12591 * 4 + 0) >> uint(16)) & 65535u), float(g_inputVB.Load(_12369 * 4 + 0) & 65535u), float((g_inputVB.Load(_12369 * 4 + 0) >> uint(16)) & 65535u)) * 1.525902189314365386962890625e-05f;\n+\t            }\n+\t            else\n+\t            {\n+\t                uint _12590 = (_3973 + _3444_m5) / 4u;\n+\t                _12504 = float4(float(g_inputVB.Load(_12590 * 4 + 0) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(8)) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(16)) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(24)) & 255u)) * 0.0039215688593685626983642578125f;\n+\t            }\n+\t            _11521 = _12504;\n \t        }\n \t        else\n \t        {\n \t            _11521 = _19210;\n \t        }\n-\t        int _12463 = int(g_instances.Load(_13724 * 16 + 8) >> uint(4));\n+\t        int _12463 = int(_20228._m2 >> uint(4));\n \t        uint4 _24078 = _18844;\n \t        float4 _14049 = _11521;\n \t        float3x4 _20691;\n \t        if (_18844.x < 4294967295u)\n \t        {\n \t            uint _13628 = uint(_12463 + 2);\n-\t            _1949 _25208;\n-\t            [unroll]\n-\t            for (int _3ident = 0; _3ident < 3; _3ident++)\n-\t            {\n-\t                _25208._m0[_3ident] = asfloat(g_transformBuffer.Load4(_3ident * 16 + (_13628 + _18844.x) * 48 + 0));\n-\t            }\n+\t            _1120 _17002;\n+\t            _17002._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 0), g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 16), g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 32)));\n+\t            _1119 _20230;\n+\t            _20230._m0 = _17002._m0;\n \t            float3x4 _13155;\n-\t            _13155 = float3x4(_25208._m0[0] * _11521.x, _25208._m0[1] * _11521.x, _25208._m0[2] * _11521.x);\n+\t            _13155 = float3x4(_20230._m0[0] * _11521.x, _20230._m0[1] * _11521.x, _20230._m0[2] * _11521.x);\n \t            uint _18440;\n \t            float3x4 _25251;\n \t            uint _16208 = 1u;\n@@ -240,13 +270,11 @@ CS\n \t                {\n \t                    break;\n \t                }\n-\t                _1949 _25209;\n-\t                [unroll]\n-\t                for (int _4ident = 0; _4ident < 3; _4ident++)\n-\t                {\n-\t                    _25209._m0[_4ident] = asfloat(g_transformBuffer.Load4(_4ident * 16 + (_13628 + _24078[_16208]) * 48 + 0));\n-\t                }\n-\t                _25251 = float3x4(_13155[0] + (_25209._m0[0] * _14049[_16208]), _13155[1] + (_25209._m0[1] * _14049[_16208]), _13155[2] + (_25209._m0[2] * _14049[_16208]));\n+\t                _1120 _17003;\n+\t                _17003._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 0), g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 16), g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 32)));\n+\t                _1119 _20231;\n+\t                _20231._m0 = _17003._m0;\n+\t                _25251 = float3x4(_13155[0] + (_20231._m0[0] * _14049[_16208]), _13155[1] + (_20231._m0[1] * _14049[_16208]), _13155[2] + (_20231._m0[2] * _14049[_16208]));\n \t                _18440 = _16208 + 1u;\n \t                _13155 = _25251;\n \t                _16208 = _18440;\n@@ -256,16 +284,14 @@ CS\n \t        }\n \t        else\n \t        {\n-\t            _1949 _25207;\n-\t            [unroll]\n-\t            for (int _5ident = 0; _5ident < 3; _5ident++)\n-\t            {\n-\t                _25207._m0[_5ident] = asfloat(g_transformBuffer.Load4(_5ident * 16 + _12463 * 48 + 0));\n-\t            }\n-\t            _20691 = float3x4(_25207._m0[0] * _11521.x, _25207._m0[1] * _11521.x, _25207._m0[2] * _11521.x);\n+\t            _1120 _8152;\n+\t            _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_12463 * 48 + 0), g_transformBuffer.Load4(_12463 * 48 + 16), g_transformBuffer.Load4(_12463 * 48 + 32)));\n+\t            _1119 _20229;\n+\t            _20229._m0 = _8152._m0;\n+\t            _20691 = float3x4(_20229._m0[0] * _11521.x, _20229._m0[1] * _11521.x, _20229._m0[2] * _11521.x);\n \t        }\n-\t        float3 _11198 = normalize(mul(_20691, float4(_24878.xyz, 0.0f)));\n-\t        float3 _19629 = mul(_20691, float4(_9716.xyz, 0.0f));\n+\t        float3 _11198 = normalize(mul(_20691, float4(_24254.xyz, 0.0f)));\n+\t        float3 _19629 = mul(_20691, float4(_12167.xyz, 0.0f));\n \t        float3 _19000 = _11198 / ((abs(_11198.x) + abs(_11198.y)) + abs(_11198.z)).xxx;\n \t        float2 _19321;\n \t        if (_19000.z >= 0.0f)\n@@ -290,14 +316,13 @@ CS\n \t            bool2 _19838 = bool2(_8489.x >= 0.0f.xx.x, _8489.y >= 0.0f.xx.y);\n \t            _19322 = (1.0f.xx - abs(_19001.yx)) * float2(_19838.x ? 1.0f.xx.x : (-1.0f).xx.x, _19838.y ? 1.0f.xx.y : (-1.0f).xx.y);\n \t        }\n-\t        uint _15034 = g_instances.Load(_13724 * 16 + 4);\n-\t        uint _5273 = 24u * (gl_GlobalInvocationID.x + _15034);\n+\t        uint _5273 = 24u * (gl_GlobalInvocationID.x + _20228._m1);\n \t        uint3 _9171 = asuint(mul(_20691, float4(asfloat(uint3(_6233, _6234, _14347)), 1.0f)));\n \t        undetermined.Store((_5273 / 4u) * 4 + 0, _9171.x);\n \t        undetermined.Store(((_5273 + 4u) / 4u) * 4 + 0, _9171.y);\n \t        undetermined.Store(((_5273 + 8u) / 4u) * 4 + 0, _9171.z);\n-\t        undetermined.Store(((_5273 + 12u) / 4u) * 4 + 0, (uint((clamp(clamp((_19321.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f)) | (uint((clamp(clamp((_19321.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) << uint(16)));\n-\t        undetermined.Store(((_5273 + 16u) / 4u) * 4 + 0, (uint((_9716.w < 0.0f) ? 0 : 1) | (uint((clamp(clamp((_19322.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(1))) | (uint((clamp(clamp((_19322.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(16)));\n+\t        undetermined.Store(((_5273 + 12u) / 4u) * 4 + 0, uint((clamp(clamp((_19321.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) | (uint((clamp(clamp((_19321.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) << uint(16)));\n+\t        undetermined.Store(((_5273 + 16u) / 4u) * 4 + 0, (uint((_12167.w < 0.0f) ? 0 : 1) | (uint((clamp(clamp((_19322.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(1))) | (uint((clamp(clamp((_19322.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(16)));\n \t        undetermined.Store(((_5273 + 20u) / 4u) * 4 + 0, 0u);\n \t        break;\n \t    } while(false);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sky.slang",
          "status": "modified",
          "additions": 37,
          "deletions": 31,
          "changes": 68,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = false;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -42,50 +42,56 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tfloat4x4 g_matSkyWsToOs < Attribute(\"SkyWsToOs\"); >;\n \t\n-\t// SPIR-V reflection failed for backend HLSL:\n-\t// cbuffer ID 4459 (name: PerViewConstantBuffer_t), member index 1 (name: _m1) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n-\t// Re-attempting reflection with the GLSL backend.\n-\t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2812 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1684 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\t#version 460\n-\t\n-\tstruct anon_g_matSkyWsToOs\n+\tcbuffer _Globals_ : register(b0, space0)\n \t{\n-\t    vec4 _m0[4];\n+\t    column_major float4x4 _Globals_1_g_matSkyWsToOs : packoffset(c0);\n \t};\n \t\n-\tstruct _1915\n+\tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    anon_g_matSkyWsToOs g_matSkyWsToOs;\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float PerViewConstantBuffer_t_1_m1 : packoffset(c23.z);\n+\t    float PerViewConstantBuffer_t_1_m2 : packoffset(c23.w);\n+\t    float4 PerViewConstantBuffer_t_1_m3 : packoffset(c24);\n+\t    float3 PerViewConstantBuffer_t_1_m4 : packoffset(c26);\n \t};\n \t\n-\tlayout(set = 0) uniform _1915 _Globals_;\n \t\n-\tstruct _2151\n+\tstatic float4 gl_Position;\n+\tstatic float4 vPositionOs;\n+\tstatic float3 output_0;\n+\t\n+\tstruct VS_INPUT\n \t{\n-\t    anon_g_matSkyWsToOs _m0;\n-\t    float _m1;\n-\t    float _m2;\n-\t    vec4 _m3;\n-\t    vec3 _m4;\n+\t    float4 vPositionOs : TEXCOORD0;\n \t};\n \t\n-\tlayout(set = 0) uniform _2151 PerViewConstantBuffer_t;\n-\t\n-\tlayout(location = 0) in vec4 vPositionOs;\n-\tlayout(location = 0) out vec3 output_0;\n+\tstruct PS_INPUT\n+\t{\n+\t    float3 output_0 : TEXCOORD0;\n+\t    float4 gl_Position : SV_Position;\n+\t};\n \t\n-\tvoid main()\n+\tvoid MainVs_inner()\n \t{\n-\t    vec4 _23552 = (vec4((PerViewConstantBuffer_t._m4.xyz + (vPositionOs.xyz * (PerViewConstantBuffer_t._m1 + PerViewConstantBuffer_t._m2))).xyz, 1.0) + (PerViewConstantBuffer_t._m3 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t    output_0 = normalize((mat4(vec4(_Globals_.g_matSkyWsToOs._m0[0].x, _Globals_.g_matSkyWsToOs._m0[1].x, _Globals_.g_matSkyWsToOs._m0[2].x, _Globals_.g_matSkyWsToOs._m0[3].x), vec4(_Globals_.g_matSkyWsToOs._m0[0].y, _Globals_.g_matSkyWsToOs._m0[1].y, _Globals_.g_matSkyWsToOs._m0[2].y, _Globals_.g_matSkyWsToOs._m0[3].y), vec4(_Globals_.g_matSkyWsToOs._m0[0].z, _Globals_.g_matSkyWsToOs._m0[1].z, _Globals_.g_matSkyWsToOs._m0[2].z, _Globals_.g_matSkyWsToOs._m0[3].z), vec4(_Globals_.g_matSkyWsToOs._m0[0].w, _Globals_.g_matSkyWsToOs._m0[1].w, _Globals_.g_matSkyWsToOs._m0[2].w, _Globals_.g_matSkyWsToOs._m0[3].w)) * vec4(vPositionOs.xyz, 0.0)).xyz);\n-\t    _23552.y = -_23552.y;\n-\t    gl_Position = _23552;\n+\t    float4 _17914 = mul(PerViewConstantBuffer_t_1_m0, (float4((PerViewConstantBuffer_t_1_m4.xyz + (vPositionOs.xyz * (PerViewConstantBuffer_t_1_m1 + PerViewConstantBuffer_t_1_m2))).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(float4(vPositionOs.xyz, 0.0f), _Globals_1_g_matSkyWsToOs).xyz);\n+\t    _17914.y = -_17914.y;\n+\t    gl_Position = _17914;\n \t}\n \t\n+\tPS_INPUT MainVs(VS_INPUT stage_input)\n+\t{\n+\t    vPositionOs = stage_input.vPositionOs;\n+\t    MainVs_inner();\n+\t    PS_INPUT stage_output;\n+\t    stage_output.gl_Position = gl_Position;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n \t\n \t// ---------  SPIRV -> HLSL end  --------- \n \t\n@@ -140,7 +146,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vTint) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/slang_syntax_test.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/solidcolor.slang",
          "status": "modified",
          "additions": 50,
          "deletions": 27,
          "changes": 77,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -56,12 +56,12 @@ VS\n \tDynamicComboRule( Requires( D_MORPH, S_MORPH_SUPPORTED ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4352 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3660 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -75,42 +75,49 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1360\n+\tstruct _1126\n \t{\n-\t    float4 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _668\n+\tstruct _1119\n \t{\n-\t    _1360 _m0;\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _1486\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1486 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n \t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n \t};\n \t\n \t\n \tstatic float4 gl_Position;\n \tstatic float gl_ClipDistance[1];\n-\tstatic float3 vPositionOs;\n-\tstatic uint nInstanceIdx;\n+\tstatic uint vPositionOs;\n+\tstatic float3 nInstanceIdx;\n \tstatic float3 output_0;\n \tstatic float4 output_1;\n \t\n \tstruct VS_INPUT\n \t{\n-\t    float3 vPositionOs : TEXCOORD0;\n-\t    uint nInstanceIdx : TEXCOORD4;\n+\t    float3 nInstanceIdx : TEXCOORD0;\n+\t    uint vPositionOs : TEXCOORD4;\n \t};\n \t\n \tstruct PS_INPUT\n@@ -123,7 +130,25 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(vPositionOs * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(vPositionOs * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(vPositionOs * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(vPositionOs * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(vPositionOs * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(vPositionOs * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(vPositionOs * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(vPositionOs * 32 + 28));\n+\t    _1125 _22470;\n+\t    _22470._m0 = _24007._m0;\n+\t    _22470._m1 = _24007._m1;\n+\t    _22470._m2 = _24007._m2;\n+\t    _22470._m3 = _24007._m3;\n+\t    _22470._m4 = _24007._m4;\n+\t    _22470._m5 = _24007._m5;\n+\t    _22470._m6 = _24007._m6;\n+\t    _22470._m7 = _24007._m7;\n+\t    float4 _23812 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -154,18 +179,16 @@ VS\n \t    {\n \t        _19302 = _7676.z;\n \t    }\n-\t    _1360 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3 _19937 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_22470._m1 * 48 + 0), g_transformBuffer.Load4(_22470._m1 * 48 + 16), g_transformBuffer.Load4(_22470._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _19937 = mul(_19848._m0, float4(nInstanceIdx.xyz, 1.0f));\n+\t    float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);\n \t    output_0 = _19937;\n \t    output_1 = float4(_21354, _21355, _19302, _23812.w);\n-\t    _23894.y = -_23894.y;\n-\t    gl_Position = _23894;\n+\t    _18256.y = -_18256.y;\n+\t    gl_Position = _18256;\n \t    gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/spritecard.slang",
          "status": "modified",
          "additions": 85,
          "deletions": 93,
          "changes": 178,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_41\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -55,41 +55,35 @@ VS\n \tStaticCombo( S_TEXTURE_LAYERS, F_TEXTURE_LAYERS );\n \tStaticComboRule( Requires( S_ADDRESS_V_CLAMP, S_DRAW_AS_TRAIL ) );\n \tStaticComboRule( Requires( S_ADDRESS_V_CLAMP, S_DRAW_AS_TRAIL ) );\n-\tDynamicCombo( D_FORCE_LEGACY_SHADER_MODEL, 0, Sys( 0 ) );\n \tDynamicCombo( D_SUPPORT_FRAME_CROP, 0..1 );\n \tDynamicComboRule( Requires( D_SUPPORT_FRAME_CROP, S_NUM_SEQUENCES_PER_PARTICLE ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n \tcbuffer SpriteCardPixelControls_t < Attribute(\"SpriteCardPixelControls_t\"); >;\n \tcbuffer SpritecardVertexControls_t < Attribute(\"SpritecardVertexControls_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \tTexture2D g_tParticleSheetTexture < Attribute(\"SheetTexture\"); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (32080 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n-\t\n-\tstruct _1822\n-\t{\n-\t    float4 _m0[4];\n-\t};\n+\t// SPIR-V source (31368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float _4;\n \tstatic float4 _5;\n \t\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1822 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c17);\n-\t    float4 _Globals_1_m2 : packoffset(c24);\n-\t    float3 _Globals_1_m3 : packoffset(c26);\n-\t    float3 _Globals_1_m4 : packoffset(c27);\n-\t    float3 _Globals_1_m5 : packoffset(c28);\n-\t    float3 _Globals_1_m6 : packoffset(c31);\n-\t    float _Globals_1_m7 : packoffset(c31.w);\n-\t    float _Globals_1_m8 : packoffset(c32);\n-\t    float _Globals_1_m9 : packoffset(c32.y);\n-\t    float _Globals_1_m10 : packoffset(c32.z);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);\n+\t    float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);\n+\t    float3 PerViewConstantBuffer_t_1_m3 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m4 : packoffset(c27);\n+\t    float3 PerViewConstantBuffer_t_1_m5 : packoffset(c28);\n+\t    float3 PerViewConstantBuffer_t_1_m6 : packoffset(c31);\n+\t    float PerViewConstantBuffer_t_1_m7 : packoffset(c31.w);\n+\t    float PerViewConstantBuffer_t_1_m8 : packoffset(c32);\n+\t    float PerViewConstantBuffer_t_1_m9 : packoffset(c32.y);\n+\t    float PerViewConstantBuffer_t_1_m10 : packoffset(c32.z);\n \t};\n \t\n \tcbuffer SpritecardVertexControls_t : register(b4, space0)\n@@ -113,10 +107,10 @@ VS\n \t    float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b2, space0)\n+\tcbuffer SunLightShaderParamsCB_t : register(b2, space0)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \t\n@@ -161,12 +155,13 @@ VS\n \t    float _21640 = (input_0.y * (-0.5f)) + 0.5f;\n \t    float2 _11357 = float2(SpritecardVertexControls_t_1_m4.xy);\n \t    float2 _13745 = float2(SpritecardVertexControls_t_1_m4.zw);\n-\t    int _15395 = int(SpritecardVertexControls_t_1_m3.x) & 31;\n-\t    float _15588 = float((_15395 >> 4) & 1);\n-\t    int _9492 = int(SpritecardVertexControls_t_1_m5.x) & 65535;\n-\t    uint _23817 = uint(_9492 & 15);\n-\t    uint _12834 = uint(_15395 & 15);\n-\t    uint _15498 = uint(int(SpritecardVertexControls_t_1_m3.y) & 15);\n+\t    int _14313 = int(SpritecardVertexControls_t_1_m3.x);\n+\t    float _15588 = float(((_14313 & 31) >> 4) & 1);\n+\t    int _9472 = int(SpritecardVertexControls_t_1_m5.x);\n+\t    uint _11757 = uint(_9472 & 15);\n+\t    uint _12834 = uint(_14313 & 15);\n+\t    uint _14729 = uint(int(SpritecardVertexControls_t_1_m3.y) & 15);\n+\t    int _10221 = _9472 & 65535;\n \t    int _20704 = int(SpritecardVertexControls_t_1_m3.z);\n \t    uint _23505 = uint((_20704 >> 12) & 15);\n \t    uint _14700 = uint((int(SpriteCardPixelControls_t_1_m1.y) >> 16) & 15);\n@@ -180,7 +175,7 @@ VS\n \t            {\n \t                float _13181;\n \t                bool _16061;\n-\t                switch (_23817)\n+\t                switch (_11757)\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -383,7 +378,7 @@ VS\n \t            {\n \t                float _13183;\n \t                bool _16063;\n-\t                switch (_15498)\n+\t                switch (_14729)\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -591,7 +586,7 @@ VS\n \t            {\n \t                float _13174;\n \t                bool _16054;\n-\t                switch (_23817)\n+\t                switch (_11757)\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -793,7 +788,7 @@ VS\n \t            {\n \t                float _13176;\n \t                bool _16056;\n-\t                switch (_15498)\n+\t                switch (_14729)\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -894,7 +889,7 @@ VS\n \t            {\n \t                float _13177;\n \t                bool _16057;\n-\t                switch (uint((_9492 >> 4) & 15))\n+\t                switch (uint((_10221 >> 4) & 15))\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -1004,7 +999,7 @@ VS\n \t            {\n \t                float _13178;\n \t                bool _16058;\n-\t                switch (uint((_9492 >> 8) & 15))\n+\t                switch (uint((_10221 >> 8) & 15))\n \t                {\n \t                    case 1u:\n \t                    {\n@@ -1109,7 +1104,7 @@ VS\n \t                {\n \t                    float _13179;\n \t                    bool _16059;\n-\t                    switch (uint((_9492 >> 12) & 15))\n+\t                    switch (uint((_10221 >> 12) & 15))\n \t                    {\n \t                        case 1u:\n \t                        {\n@@ -1565,10 +1560,10 @@ VS\n \t        _19494 = _7676.z;\n \t    }\n \t    float4 _25152 = lerp(input_2, float4(float3(_21354, _21355, _19494), input_2.w), float((_20704 >> 8) & 15).xxxx);\n-\t    float3 _17858 = cross(_Globals_1_m5, _Globals_1_m4);\n-\t    float _8663 = cos(input_4.x);\n+\t    float3 _17858 = cross(PerViewConstantBuffer_t_1_m5, PerViewConstantBuffer_t_1_m4);\n+\t    float _8664 = cos(input_4.x);\n \t    float _23279 = sin(input_4.x);\n-\t    float3 _18015 = (_Globals_1_m4 * _8663) - (_17858 * _23279);\n+\t    float3 _18015 = (PerViewConstantBuffer_t_1_m4 * _8664) - (_17858 * _23279);\n \t    float _19825 = sin(input_4.y);\n \t    float _8898 = cos(input_4.y);\n \t    float _9794 = _18015.x;\n@@ -1577,14 +1572,14 @@ VS\n \t    float _7331 = _24619 * _24619;\n \t    float _6498 = _18015.z;\n \t    float _17752 = _6498 * _6498;\n-\t    float _22876 = 1.0f - _8898;\n-\t    float _10185 = (_9794 * _24619) * _22876;\n+\t    float _22875 = 1.0f - _8898;\n+\t    float _10185 = (_9794 * _24619) * _22875;\n \t    float _21408 = _6498 * _19825;\n-\t    float _6451 = (_6498 * _9794) * _22876;\n+\t    float _6451 = (_6498 * _9794) * _22875;\n \t    float _22637 = _24619 * _19825;\n-\t    float _6426 = (_24619 * _6498) * _22876;\n+\t    float _6426 = (_24619 * _6498) * _22875;\n \t    float _22945 = _9794 * _19825;\n-\t    float _20054 = length(_Globals_1_m3.xyz - input_3.xyz);\n+\t    float _20054 = length(PerViewConstantBuffer_t_1_m3.xyz - input_3.xyz);\n \t    float _10020;\n \t    float4 _24447;\n \t    if (SpritecardVertexControls_t_1_m2.z > 0.0f)\n@@ -1616,39 +1611,35 @@ VS\n \t        _10020 = input_4.w;\n \t        _24447 = _25152;\n \t    }\n-\t    float _13915 = (_24447.w < 0.0039215688593685626983642578125f) ? 0.0f : _10020;\n-\t    float4 _13105 = _24447;\n-\t    _13105.w = _24447.w * lerp(1.0f, input_4.w / _13915, SpritecardVertexControls_t_1_m2.w);\n-\t    float3 _23592 = input_3.xyz + (((mul(float3x3(float3(_21121 + ((1.0f - _21121) * _8898), _10185 - _21408, _6451 + _22637), float3(_10185 + _21408, _7331 + ((1.0f - _7331) * _8898), _6426 - _22945), float3(_6451 - _22637, _6426 + _22945, _17752 + ((1.0f - _17752) * _8898))), (_17858 * _8663) + (_Globals_1_m4 * _23279)) * (input_0.x + SpritecardVertexControls_t_1_m1.y)) + (_18015 * (input_0.y + SpritecardVertexControls_t_1_m1.z))) * _13915);\n-\t    float3 _7336 = _23592.xyz;\n+\t    float3 _19802 = input_3.xyz + (((mul(float3x3(float3(_21121 + ((1.0f - _21121) * _8898), _10185 - _21408, _6451 + _22637), float3(_10185 + _21408, _7331 + ((1.0f - _7331) * _8898), _6426 - _22945), float3(_6451 - _22637, _6426 + _22945, _17752 + ((1.0f - _17752) * _8898))), (_17858 * _8664) + (PerViewConstantBuffer_t_1_m4 * _23279)) * (input_0.x + SpritecardVertexControls_t_1_m1.y)) + (_18015 * (input_0.y + SpritecardVertexControls_t_1_m1.z))) * ((_24447.w < 0.0039215688593685626983642578125f) ? 0.0f : _10020));\n+\t    float3 _7336 = _19802.xyz;\n \t    float4 _8056 = float4(_7336, 1.0f);\n-\t    float4 _21447 = _Globals_1_m2 * 1.0f;\n-\t    float4x4 _15571 = float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w));\n-\t    float4 _23913 = mul(_15571, (_8056 + _21447).xyzw);\n-\t    float4 _8847 = mul(_15571, (float4((_23592 + (_Globals_1_m5 * SpritecardVertexControls_t_1_m1.x)).xyz, 1.0f) + _21447).xyzw);\n-\t    float4 _15598 = _23913;\n-\t    _15598.z = max(_23913.w * (_8847.z / _8847.w), min(0.001000000047497451305389404296875f, _23913.z));\n+\t    float4 _21447 = PerViewConstantBuffer_t_1_m2 * 1.0f;\n+\t    float4 _18275 = mul(PerViewConstantBuffer_t_1_m0, (_8056 + _21447).xyzw);\n+\t    float4 _8847 = mul(PerViewConstantBuffer_t_1_m0, (float4((_19802 + (PerViewConstantBuffer_t_1_m5 * SpritecardVertexControls_t_1_m1.x)).xyz, 1.0f) + _21447).xyzw);\n+\t    float4 _15598 = _18275;\n+\t    _15598.z = max(_18275.w * (_8847.z / _8847.w), min(0.001000000047497451305389404296875f, _18275.z));\n \t    float3 _21709;\n-\t    if (!(SpriteCardPixelControls_t_1_m0.w == (-1.0f)))\n+\t    if (SpriteCardPixelControls_t_1_m0.w != (-1.0f))\n \t    {\n-\t        float3 _14744 = normalize(-(_7336 - _Globals_1_m3.xyz).xyz).xyz;\n+\t        float3 _14744 = normalize(-(_7336 - PerViewConstantBuffer_t_1_m3.xyz).xyz).xyz;\n \t        float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n \t        float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n-\t        _21709 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _Globals_1_m6.xyz, clamp(min(_Globals_1_m9, pow(clamp((distance(_23592.xyz, _Globals_1_m3.xyz) * _Globals_1_m8) + _Globals_1_m7, 0.0f, 1.0f), _Globals_1_m10)), 0.0f, 1.0f).xxx);\n+\t        _21709 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, PerViewConstantBuffer_t_1_m6.xyz, clamp(min(PerViewConstantBuffer_t_1_m9, pow(clamp((distance(_19802.xyz, PerViewConstantBuffer_t_1_m3.xyz) * PerViewConstantBuffer_t_1_m8) + PerViewConstantBuffer_t_1_m7, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m10)), 0.0f, 1.0f).xxx);\n \t    }\n \t    else\n \t    {\n \t        _21709 = 0.0f.xxx;\n \t    }\n \t    output_0 = _20091;\n-\t    output_1 = _13105;\n+\t    output_1 = _24447;\n \t    output_2 = _21709;\n-\t    output_3 = _23592;\n+\t    output_3 = _19802;\n \t    output_4 = 0.0f.xxx;\n \t    output_5 = _20655;\n-\t    _15598.y = -_23913.y;\n+\t    _15598.y = -_18275.y;\n \t    gl_Position = _15598;\n-\t    gl_ClipDistance[0] = dot(_8056, _Globals_1_m1.xyzw);\n+\t    gl_ClipDistance[0] = dot(_8056, PerViewConstantBuffer_t_1_m1.xyzw);\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -1691,7 +1682,6 @@ PS\n \tStaticCombo( S_TEXTURE_LAYERS, F_TEXTURE_LAYERS );\n \tStaticComboRule( Allow1( S_MODE_DEPTH, S_OPAQUE ) );\n \tStaticComboRule( Allow1( S_REFRACT, S_TEXTURE_LAYERS ) );\n-\tDynamicCombo( D_FORCE_LEGACY_SHADER_MODEL, 0, Sys( 0 ) );\n \tDynamicCombo( D_DEPTH_FEATHERING, 0..1 );\n \tDynamicCombo( D_FASTPATH, 0..1 );\n \tDynamicComboRule( Allow1( S_MODE_DEPTH, D_DEPTH_FEATHERING ) );\n@@ -1709,7 +1699,7 @@ PS\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n \tcbuffer SpriteCardPixelControls_t < Attribute(\"SpriteCardPixelControls_t\"); >;\n \tRenderState(SrcBlend, F_MOD2X ? DestColor : One);\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \tTexture2D g_tBaseTexture < Attribute(\"BaseTexture\"); SrgbRead(true); >;\n \tTexture2D g_tBaseTextureNoSRGB < Attribute(\"BaseTexture\"); SrgbRead(false); >;\n \tTexture2D g_tDepthTexture < Attribute(\"SceneDepth\"); SrgbRead(false); >;\n@@ -1719,14 +1709,14 @@ PS\n \tTexture2D g_tTextureLayer3 < Attribute(\"TextureLayer3\"); SrgbRead(true); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (21764 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (21716 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float _2;\n \tstatic float4 _3;\n \tstatic float4 _4;\n \t\n-\tstatic const float2 _2136[15] = { float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, 0.0f.xx, 0.0f.xx };\n-\tstatic const float3 _797[15] = { 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), float3(1.0f, 0.0f, 0.0f), float3(1.0f, 0.0f, 1.0f), 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx };\n+\tstatic const float3 _941[15] = { 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), float3(1.0f, 0.0f, 0.0f), float3(1.0f, 0.0f, 1.0f), 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx };\n+\tstatic const float2 _2235[15] = { float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, 0.0f.xx, 0.0f.xx };\n \t\n \tcbuffer SpriteCardPixelControls_t : register(b3, space1)\n \t{\n@@ -1746,26 +1736,26 @@ PS\n \t    float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);\n \t};\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float _Globals_1_m0 : packoffset(c18);\n-\t    float3 _Globals_1_m1 : packoffset(c26);\n-\t    float3 _Globals_1_m2 : packoffset(c31);\n-\t    float _Globals_1_m3 : packoffset(c31.w);\n-\t    float _Globals_1_m4 : packoffset(c32);\n-\t    float _Globals_1_m5 : packoffset(c32.y);\n-\t    float _Globals_1_m6 : packoffset(c32.z);\n+\t    float PerViewConstantBuffer_t_1_m0 : packoffset(c18);\n+\t    float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);\n+\t    float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);\n+\t    float PerViewConstantBuffer_t_1_m4 : packoffset(c32);\n+\t    float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);\n+\t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b2, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b2, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n-\tSamplerState Filter_MinMagMipLinear_MaxAniso_1 : register(s15, space1);\n-\tSamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_MaxAniso_1 : register(s17, space1);\n \tTexture2D<float4> g_tBaseTexture : register(t32, space1);\n+\tSamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_MaxAniso_1 : register(s17, space1);\n+\tSamplerState Filter_MinMagMipLinear_MaxAniso_1 : register(s15, space1);\n \t\n \tstatic float4 input_0;\n \tstatic float4 input_1;\n@@ -1805,14 +1795,15 @@ PS\n \t    {\n \t        _21709 = g_tBaseTexture.Sample(Filter_MinMagMipLinear_MaxAniso_1, _15476.xy);\n \t    }\n-\t    int _9492 = int(SpriteCardPixelControls_t_1_m8.x) & 255;\n-\t    uint _6863 = uint(_9492 & 15);\n-\t    uint _23505 = uint((_9492 >> 4) & 15);\n+\t    int _18311 = int(SpriteCardPixelControls_t_1_m8.x);\n+\t    int _23893 = _18311 & 15;\n+\t    uint _23505 = uint(((_18311 & 255) >> 4) & 15);\n \t    float4 _12885;\n \t    do\n \t    {\n \t        float4 _13174;\n \t        bool _16054;\n+\t        [branch]\n \t        switch (uint((int(SpriteCardPixelControls_t_1_m8.y) >> 16) & 15))\n \t        {\n \t            case 0u:\n@@ -1853,7 +1844,7 @@ PS\n \t                    break;\n \t                } while(false);\n \t                float4 _10911 = lerp(_19630.xyzw, _12905.xyzw, (_16439 * _16439).xxxx);\n-\t                _10911.w = lerp(_21709.w, _10911.w, float(_797[int(_6863)].y != 1.0f));\n+\t                _10911.w = lerp(_21709.w, _10911.w, float(_941[_23893].y != 1.0f));\n \t                _13174 = _10911;\n \t                _16054 = true;\n \t                break;\n@@ -1949,7 +1940,7 @@ PS\n \t                {\n \t                    _19457 = _9166.y;\n \t                }\n-\t                float2 _20342 = _15476.xy - (((float3(_23035, _19457, _2).xy - 0.5f.xx) * 2.0f) * (((SpriteCardPixelControls_t_1_m6.w * input_0.w) * 0.125f) * lerp(_21709.w, _10910.w, float(_797[int(_6863)].y != 1.0f))));\n+\t                float2 _20342 = _15476.xy - (((float3(_23035, _19457, _2).xy - 0.5f.xx) * 2.0f) * (((SpriteCardPixelControls_t_1_m6.w * input_0.w) * 0.125f) * lerp(_21709.w, _10910.w, float(_941[_23893].y != 1.0f))));\n \t                float4 _12501;\n \t                do\n \t                {\n@@ -1967,9 +1958,8 @@ PS\n \t            }\n \t            case 2u:\n \t            {\n-\t                int _8289 = int(_6863);\n-\t                float4 _20655 = _2136[_8289].y.xxxx;\n-\t                float4 _9219 = lerp(lerp(float4(_21709.xyz * _21709.www, 1.0f), _21709, _2136[_8289].x.xxxx), _21709.wwww, _20655);\n+\t                float4 _20655 = _2235[_23893].y.xxxx;\n+\t                float4 _9219 = lerp(lerp(float4(_21709.xyz * _21709.www, 1.0f), _21709, _2235[_23893].x.xxxx), _21709.wwww, _20655);\n \t                float3 _25122 = _9219.xyz;\n \t                float3 _17379 = _25122 * 12.9200000762939453125f;\n \t                float3 _7485 = (pow(_25122, 0.4166666567325592041015625f.xxx) * 1.05499994754791259765625f) - 0.054999999701976776123046875f.xxx;\n@@ -2045,7 +2035,7 @@ PS\n \t        _12906 = SpriteCardPixelControls_t_1_m6.y;\n \t    }\n \t    float4 _12907;\n-\t    switch (_6863)\n+\t    switch (uint(_23893))\n \t    {\n \t        case 0u:\n \t        {\n@@ -2234,6 +2224,7 @@ PS\n \t    if (_10282 == 0)\n \t    {\n \t        float4 _21710;\n+\t        [branch]\n \t        if (SpriteCardPixelControls_t_1_m0.w < SpriteCardPixelControls_t_1_m0.z)\n \t        {\n \t            _21710 = float4(_12758, _21122.yz, smoothstep(SpriteCardPixelControls_t_1_m0.w, SpriteCardPixelControls_t_1_m0.z, _23577));\n@@ -2252,6 +2243,7 @@ PS\n \t            _12886 = false;\n \t        }\n \t        float4 _12503;\n+\t        [branch]\n \t        if (_12886)\n \t        {\n \t            float _21711;\n@@ -2315,7 +2307,7 @@ PS\n \t    {\n \t        float3 _23378 = clamp(input_4.xyz, 0.0f.xxx, 1.0f.xxx);\n \t        float3 _23904 = clamp(-input_4.xyz, 0.0f.xxx, 1.0f.xxx);\n-\t        _9057 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(input_4.xyz, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _Globals_1_m2.xyz, clamp(min(_Globals_1_m5, pow(clamp((distance(input_3.xyz, _Globals_1_m1.xyz) * _Globals_1_m4) + _Globals_1_m3, 0.0f, 1.0f), _Globals_1_m6)), 0.0f, 1.0f).xxx);\n+\t        _9057 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(input_4.xyz, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_3.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);\n \t    }\n \t    else\n \t    {\n@@ -2327,7 +2319,7 @@ PS\n \t    _23715.x = _11507.x;\n \t    _23715.y = _11507.y;\n \t    _23715.z = _11507.z;\n-\t    float3 _11003 = _23715.xyz * _Globals_1_m0;\n+\t    float3 _11003 = _23715.xyz * PerViewConstantBuffer_t_1_m0;\n \t    float4 _8674;\n \t    _8674.x = _11003.x;\n \t    _8674.y = _11003.y;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ssao.slang",
          "status": "modified",
          "additions": 14,
          "deletions": 19,
          "changes": 33,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -101,20 +101,15 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 3 (name: g_vInvRenderTargetDim) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (7220 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (6632 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n-\tstruct _2116\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tconst vec3 _1277[9] = vec3[](vec3(0.13390399515628814697265625, 0.0365430004894733428955078125, 0.049350000917911529541015625), vec3(-0.12978200614452362060546875, -0.0326079986989498138427734375, 0.098058998584747314453125), vec3(-0.1944600045680999755859375, -0.4137530028820037841796875, 0.8764560222625732421875), vec3(-0.0387840010225772857666015625, 0.43998301029205322265625, 0.0596049986779689788818359375), vec3(-0.118508003652095794677734375, 0.001674000057391822338104248046875, -0.011568999849259853363037109375), vec3(0.0038580000400543212890625, -0.00258699990808963775634765625, -0.00047200001426972448825836181640625), vec3(0.007021999917924404144287109375, 0.000399000011384487152099609375, -0.0054720002226531505584716796875), vec3(-0.16810800135135650634765625, -0.2530579864978790283203125, -0.224711000919342041015625), vec3(0.0112229995429515838623046875, -0.254115998744964599609375, -0.4668669998645782470703125));\n+\tconst vec3 _1213[9] = vec3[](vec3(0.13390399515628814697265625, 0.0365430004894733428955078125, 0.049350000917911529541015625), vec3(-0.12978200614452362060546875, -0.0326079986989498138427734375, 0.098058998584747314453125), vec3(-0.1944600045680999755859375, -0.4137530028820037841796875, 0.8764560222625732421875), vec3(-0.0387840010225772857666015625, 0.43998301029205322265625, 0.0596049986779689788818359375), vec3(-0.118508003652095794677734375, 0.001674000057391822338104248046875, -0.011568999849259853363037109375), vec3(0.0038580000400543212890625, -0.00258699990808963775634765625, -0.00047200001426972448825836181640625), vec3(0.007021999917924404144287109375, 0.000399000011384487152099609375, -0.0054720002226531505584716796875), vec3(-0.16810800135135650634765625, -0.2530579864978790283203125, -0.224711000919342041015625), vec3(0.0112229995429515838623046875, -0.254115998744964599609375, -0.4668669998645782470703125));\n \t\n \tstruct _1283\n \t{\n@@ -127,14 +122,14 @@ PS\n \t\n \tlayout(set = 1) uniform _1283 _Globals_;\n \t\n-\tstruct _2307\n+\tstruct _1288\n \t{\n-\t    _2116 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t    vec3 _m2;\n \t};\n \t\n-\tlayout(set = 1) uniform _2307 PerViewConstantBuffer_t;\n+\tlayout(set = 1) uniform _1288 PerViewConstantBuffer_t;\n \t\n \tlayout(set = 1, binding = 31) uniform texture2D g_tGBufferLinearDepth;\n \tlayout(set = 1, binding = 15) uniform sampler AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint;\n@@ -165,7 +160,7 @@ PS\n \t    float _20688 = _Globals_.g_flSampleRadius * _Globals_.g_flSampleRadius;\n \t    float _13155;\n \t    _13155 = 0.0;\n-\t    float _3304;\n+\t    float _9828;\n \t    int _14722;\n \t    int _16208 = 0;\n \t    for (;;)\n@@ -174,7 +169,7 @@ PS\n \t        {\n \t            break;\n \t        }\n-\t        vec3 _13945 = reflect((_1277[_16208] * _Globals_.g_flSampleRadius).xyz, _15145.xyz);\n+\t        vec3 _13945 = reflect((_1213[_16208] * _Globals_.g_flSampleRadius).xyz, _15145.xyz);\n \t        vec3 _22410 = _13945.xyz;\n \t        vec3 _19629;\n \t        if (dot(_24081, _22410) < 0.0)\n@@ -187,15 +182,15 @@ PS\n \t        }\n \t        vec3 _21589 = _12200.xyz;\n \t        vec3 _16060 = _19629.xyz + _21589;\n-\t        vec4 _24259 = (vec4(_16060.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t        vec4 _3402 = textureLodOffset(sampler2D(g_tGBufferLinearDepth, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), clamp(((_23080.xy * (_24259.xy / vec2(_24259.w)).xy) + _20508.xy).xy, _Globals_.g_vRelativeViewport.xy, _Globals_.g_vRelativeViewport.zw).xy, 0.0, ivec2(0));\n+\t        vec4 _18621 = (vec4(_16060.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n+\t        vec4 _3402 = textureLodOffset(sampler2D(g_tGBufferLinearDepth, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), clamp(((_23080.xy * (_18621.xy / vec2(_18621.w)).xy) + _20508.xy).xy, _Globals_.g_vRelativeViewport.xy, _Globals_.g_vRelativeViewport.zw).xy, 0.0, ivec2(0));\n \t        float _5202 = _3402.x;\n \t        vec3 _17519 = _16060.xyz - PerViewConstantBuffer_t._m2.xyz;\n \t        float _15544 = length(_17519.xyz);\n \t        vec3 _6560 = ((PerViewConstantBuffer_t._m2.xyz + ((_17519 / vec3(_15544)).xyz * _5202)).xyz - _21589).xyz;\n-\t        _3304 = _13155 + (clamp((_20688 - dot(_6560, _6560)) * 1000000.0, 0.0, 1.0) * clamp((_15544 - _5202) * 1000000.0, 0.0, 1.0));\n+\t        _9828 = _13155 + (clamp((_20688 - dot(_6560, _6560)) * 1000000.0, 0.0, 1.0) * clamp((_15544 - _5202) * 1000000.0, 0.0, 1.0));\n \t        _14722 = _16208 + 1;\n-\t        _13155 = _3304;\n+\t        _13155 = _9828;\n \t        _16208 = _14722;\n \t        continue;\n \t    }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ssao_bilateral_blur.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ssao_convert_depth.slang",
          "status": "modified",
          "additions": 7,
          "deletions": 7,
          "changes": 14,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -82,11 +82,11 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (1332 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float _Globals_1_m0 : packoffset(c23);\n-\t    float _Globals_1_m1 : packoffset(c23.y);\n-\t    float3 _Globals_1_m2 : packoffset(c29);\n+\t    float PerViewConstantBuffer_t_1_m0 : packoffset(c23);\n+\t    float PerViewConstantBuffer_t_1_m1 : packoffset(c23.y);\n+\t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c29);\n \t};\n \t\n \tTexture2D<float4> g_tGBufferDepth : register(t30, space1);\n@@ -106,7 +106,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    output_0 = (_Globals_1_m2.x / ((_Globals_1_m2.y * clamp((g_tGBufferDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - _Globals_1_m0) / (_Globals_1_m1 - _Globals_1_m0), 0.0f, 1.0f)) + _Globals_1_m2.z)).xxxx;\n+\t    output_0 = (PerViewConstantBuffer_t_1_m2.x / ((PerViewConstantBuffer_t_1_m2.y * clamp((g_tGBufferDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - PerViewConstantBuffer_t_1_m0) / (PerViewConstantBuffer_t_1_m1 - PerViewConstantBuffer_t_1_m0), 0.0f, 1.0f)) + PerViewConstantBuffer_t_1_m2.z)).xxxx;\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ssao_downsample_depth.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ssao_scalable_ambient_obscurance.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -91,7 +91,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vProjInfo) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sst_copy_depth.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sst_cs.slang",
          "status": "modified",
          "additions": 154,
          "deletions": 165,
          "changes": 319,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -31,7 +31,7 @@ CS\n \tDynamicCombo( D_UNPACK_METHOD, 0..2 );\n \tDynamicCombo( D_OUTPUT_DEBUG_COLOR, 0..1 );\n \t\n-\tStructuredBuffer g_SST < Attribute(\"SparseShadowTree\"); SrgbRead(false); >;\n+\tStructuredBuffer g_SST < Attribute(\"SparseShadowTree\"); >;\n \tint g_nSSTForest < Attribute(\"SSTForest\"); UiType(Slider); >;\n \tint g_nSSTOutputPixelExcludeEndX < Attribute(\"SSTOutputPixelExcludeEndX\"); UiType(Slider); >;\n \tint g_nSSTOutputPixelExcludeEndY < Attribute(\"SSTOutputPixelExcludeEndY\"); UiType(Slider); >;\n@@ -50,7 +50,7 @@ CS\n \tRWTexture2D<float4> g_tOutDepth < Attribute(\"ShadowAtlas\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (40196 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (39904 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -83,9 +83,9 @@ CS\n \t{\n \t    do\n \t    {\n-\t        uint2 _19018 = gl_GlobalInvocationID.xy * uint2(4u, 4u);\n+\t        uint2 _23624 = gl_GlobalInvocationID.xy * uint2(4u, 4u);\n \t        uint2 _3797 = uint2(_Globals_1_g_nSSTTileStartX, _Globals_1_g_nSSTTileStartY) + (gl_GlobalInvocationID.xy / uint2(32u, 32u));\n-\t        uint2 _15313 = _19018 + uint2(_Globals_1_g_nSSTOutputPixelStartOffsetX, _Globals_1_g_nSSTOutputPixelStartOffsetY);\n+\t        uint2 _15313 = _23624 + uint2(_Globals_1_g_nSSTOutputPixelStartOffsetX, _Globals_1_g_nSSTOutputPixelStartOffsetY);\n \t        uint _7985 = _15313.x;\n \t        bool _12885;\n \t        if (_7985 >= _Globals_1_g_nSSTOutputPixelWidth)\n@@ -135,27 +135,26 @@ CS\n \t        uint _17785 = (_3797.y * _Globals_1_g_nSSTWidth) + _3797.x;\n \t        bool _11402;\n \t        uint _11518;\n-\t        float _13174;\n+\t        float _12889;\n \t        uint _14842;\n \t        do\n \t        {\n+\t            bool _18261;\n \t            uint _21397 = g_SST.Load(_17785 * 4 + 0);\n-\t            bool _16054;\n \t            do\n \t            {\n-\t                if ((_21397 & 1073741824u) != 0u)\n+\t                _18261 = (_21397 & 1073741824u) != 0u;\n+\t                if (_18261)\n \t                {\n-\t                    _13174 = asfloat((_21397 & 3221225471u) << uint(2));\n-\t                    _16054 = true;\n+\t                    _12889 = asfloat((_21397 & 3221225471u) << uint(2));\n \t                    break;\n \t                }\n-\t                _13174 = 1.0f;\n-\t                _16054 = false;\n+\t                _12889 = 1.0f;\n \t                break;\n \t            } while(false);\n-\t            if (_16054)\n+\t            if (_18261)\n \t            {\n-\t                float4 _10876 = _13174.xxxx;\n+\t                float4 _10876 = _12889.xxxx;\n \t                _3177[_15314] = _10876;\n \t                _3177[_15314 + uint2(1u, 0u)] = _10876;\n \t                _3177[_15314 + uint2(0u, 1u)] = _10876;\n@@ -190,27 +189,26 @@ CS\n \t        {\n \t            bool _11403;\n \t            float3 _11519;\n-\t            float _13175;\n+\t            float _12890;\n \t            uint _14843;\n \t            do\n \t            {\n+\t                bool _18262;\n \t                uint _21398 = g_SST.Load(_14842 * 4 + 0);\n-\t                bool _16055;\n \t                do\n \t                {\n-\t                    if ((_21398 & 1073741824u) != 0u)\n+\t                    _18262 = (_21398 & 1073741824u) != 0u;\n+\t                    if (_18262)\n \t                    {\n-\t                        _13175 = asfloat((_21398 & 3221225471u) << uint(2));\n-\t                        _16055 = true;\n+\t                        _12890 = asfloat((_21398 & 3221225471u) << uint(2));\n \t                        break;\n \t                    }\n-\t                    _13175 = _13174;\n-\t                    _16055 = false;\n+\t                    _12890 = _12889;\n \t                    break;\n \t                } while(false);\n-\t                if (_16055)\n+\t                if (_18262)\n \t                {\n-\t                    float4 _10877 = _13175.xxxx;\n+\t                    float4 _10877 = _12890.xxxx;\n \t                    _3177[_15314] = _10877;\n \t                    _3177[_15314 + uint2(1u, 0u)] = _10877;\n \t                    _3177[_15314 + uint2(0u, 1u)] = _10877;\n@@ -234,30 +232,29 @@ CS\n \t                }\n \t                else\n \t                {\n+\t                    bool _18263;\n \t                    uint _21970 = _14842 + 1u;\n-\t                    float3 _13176;\n-\t                    bool _16056;\n+\t                    float3 _12891;\n \t                    do\n \t                    {\n-\t                        if ((_21398 & 2147483648u) != 0u)\n+\t                        _18263 = (_21398 & 2147483648u) != 0u;\n+\t                        if (_18263)\n \t                        {\n-\t                            _13176 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) & 65535u))), asfloat((_21398 & 2147483647u) << uint(1)));\n-\t                            _16056 = true;\n+\t                            _12891 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) & 65535u))), asfloat((_21398 & 2147483647u) << uint(1)));\n \t                            break;\n \t                        }\n-\t                        _13176 = float3(1.0f, 0.0f, 0.0f);\n-\t                        _16056 = false;\n+\t                        _12891 = float3(1.0f, 0.0f, 0.0f);\n \t                        break;\n \t                    } while(false);\n-\t                    if (_16056)\n+\t                    if (_18263)\n \t                    {\n-\t                        uint2 _24337 = _19018 % uint2(128u, 128u);\n-\t                        float4 _22821 = _13176.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                        float4 _22382 = ((_13176.z + (float(_24337.x) * _13176.x)) + (float(_24337.y) * _13176.y)).xxxx;\n+\t                        uint2 _24337 = _23624 % uint2(128u, 128u);\n+\t                        float4 _22821 = _12891.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                        float4 _22382 = ((_12891.z + (float(_24337.x) * _12891.x)) + (float(_24337.y) * _12891.y)).xxxx;\n \t                        float4 _9987 = _22382 + _22821;\n-\t                        float4 _21802 = (_22382 + _13176.yyyy) + _22821;\n-\t                        float4 _20890 = (_22382 + (_13176.yyyy * 2.0f)) + _22821;\n-\t                        float4 _16200 = (_22382 + (_13176.yyyy * 3.0f)) + _22821;\n+\t                        float4 _21802 = (_22382 + _12891.yyyy) + _22821;\n+\t                        float4 _20890 = (_22382 + (_12891.yyyy * 2.0f)) + _22821;\n+\t                        float4 _16200 = (_22382 + (_12891.yyyy * 3.0f)) + _22821;\n \t                        _3177[_15314] = _9987.x.xxxx;\n \t                        _3177[_15314 + uint2(1u, 0u)] = _9987.y.xxxx;\n \t                        _3177[_15314 + uint2(2u, 0u)] = _9987.z.xxxx;\n@@ -274,14 +271,14 @@ CS\n \t                        _3177[_15314 + uint2(1u, 3u)] = _16200.y.xxxx;\n \t                        _3177[_15314 + uint2(2u, 3u)] = _16200.z.xxxx;\n \t                        _3177[_15314 + uint2(3u, 3u)] = _16200.w.xxxx;\n-\t                        _11519 = _13176;\n+\t                        _11519 = _12891;\n \t                        _14843 = _14842;\n \t                        _11403 = true;\n \t                        break;\n \t                    }\n \t                    else\n \t                    {\n-\t                        uint2 _13668 = _19018 % uint2(128u, 128u);\n+\t                        uint2 _13668 = _23624 % uint2(128u, 128u);\n \t                        uint _21709;\n \t                        if (_13668.x < 64u)\n \t                        {\n@@ -318,7 +315,7 @@ CS\n \t                            }\n \t                            _14382 = _12502;\n \t                        }\n-\t                        _11519 = _13176;\n+\t                        _11519 = _12891;\n \t                        _14843 = _14382 + _11518;\n \t                        _11403 = false;\n \t                        break;\n@@ -331,27 +328,26 @@ CS\n \t            {\n \t                bool _11404;\n \t                float3 _11520;\n-\t                float _13177;\n+\t                float _12892;\n \t                uint _14844;\n \t                do\n \t                {\n+\t                    bool _18264;\n \t                    uint _21399 = g_SST.Load(_14843 * 4 + 0);\n-\t                    bool _16057;\n \t                    do\n \t                    {\n-\t                        if ((_21399 & 1073741824u) != 0u)\n+\t                        _18264 = (_21399 & 1073741824u) != 0u;\n+\t                        if (_18264)\n \t                        {\n-\t                            _13177 = asfloat((_21399 & 3221225471u) << uint(2));\n-\t                            _16057 = true;\n+\t                            _12892 = asfloat((_21399 & 3221225471u) << uint(2));\n \t                            break;\n \t                        }\n-\t                        _13177 = _13175;\n-\t                        _16057 = false;\n+\t                        _12892 = _12890;\n \t                        break;\n \t                    } while(false);\n-\t                    if (_16057)\n+\t                    if (_18264)\n \t                    {\n-\t                        float4 _10878 = _13177.xxxx;\n+\t                        float4 _10878 = _12892.xxxx;\n \t                        _3177[_15314] = _10878;\n \t                        _3177[_15314 + uint2(1u, 0u)] = _10878;\n \t                        _3177[_15314 + uint2(0u, 1u)] = _10878;\n@@ -375,30 +371,29 @@ CS\n \t                    }\n \t                    else\n \t                    {\n+\t                        bool _18265;\n \t                        uint _21971 = _14843 + 1u;\n-\t                        float3 _13178;\n-\t                        bool _16058;\n+\t                        float3 _12893;\n \t                        do\n \t                        {\n-\t                            if ((_21399 & 2147483648u) != 0u)\n+\t                            _18265 = (_21399 & 2147483648u) != 0u;\n+\t                            if (_18265)\n \t                            {\n-\t                                _13178 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) & 65535u))), asfloat((_21399 & 2147483647u) << uint(1)));\n-\t                                _16058 = true;\n+\t                                _12893 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) & 65535u))), asfloat((_21399 & 2147483647u) << uint(1)));\n \t                                break;\n \t                            }\n-\t                            _13178 = _11519;\n-\t                            _16058 = false;\n+\t                            _12893 = _11519;\n \t                            break;\n \t                        } while(false);\n-\t                        if (_16058)\n+\t                        if (_18265)\n \t                        {\n-\t                            uint2 _24338 = _19018 % uint2(64u, 64u);\n-\t                            float4 _22822 = _13178.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                            float4 _22383 = ((_13178.z + (float(_24338.x) * _13178.x)) + (float(_24338.y) * _13178.y)).xxxx;\n+\t                            uint2 _24338 = _23624 % uint2(64u, 64u);\n+\t                            float4 _22822 = _12893.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                            float4 _22383 = ((_12893.z + (float(_24338.x) * _12893.x)) + (float(_24338.y) * _12893.y)).xxxx;\n \t                            float4 _9988 = _22383 + _22822;\n-\t                            float4 _21803 = (_22383 + _13178.yyyy) + _22822;\n-\t                            float4 _20891 = (_22383 + (_13178.yyyy * 2.0f)) + _22822;\n-\t                            float4 _16201 = (_22383 + (_13178.yyyy * 3.0f)) + _22822;\n+\t                            float4 _21803 = (_22383 + _12893.yyyy) + _22822;\n+\t                            float4 _20891 = (_22383 + (_12893.yyyy * 2.0f)) + _22822;\n+\t                            float4 _16201 = (_22383 + (_12893.yyyy * 3.0f)) + _22822;\n \t                            _3177[_15314] = _9988.x.xxxx;\n \t                            _3177[_15314 + uint2(1u, 0u)] = _9988.y.xxxx;\n \t                            _3177[_15314 + uint2(2u, 0u)] = _9988.z.xxxx;\n@@ -415,14 +410,14 @@ CS\n \t                            _3177[_15314 + uint2(1u, 3u)] = _16201.y.xxxx;\n \t                            _3177[_15314 + uint2(2u, 3u)] = _16201.z.xxxx;\n \t                            _3177[_15314 + uint2(3u, 3u)] = _16201.w.xxxx;\n-\t                            _11520 = _13178;\n+\t                            _11520 = _12893;\n \t                            _14844 = _14843;\n \t                            _11404 = true;\n \t                            break;\n \t                        }\n \t                        else\n \t                        {\n-\t                            uint2 _13669 = _19018 % uint2(64u, 64u);\n+\t                            uint2 _13669 = _23624 % uint2(64u, 64u);\n \t                            uint _21710;\n \t                            if (_13669.x < 32u)\n \t                            {\n@@ -459,7 +454,7 @@ CS\n \t                                }\n \t                                _14383 = _12504;\n \t                            }\n-\t                            _11520 = _13178;\n+\t                            _11520 = _12893;\n \t                            _14844 = _14383 + _11518;\n \t                            _11404 = false;\n \t                            break;\n@@ -472,27 +467,26 @@ CS\n \t                {\n \t                    bool _11405;\n \t                    float3 _11521;\n-\t                    float _13179;\n+\t                    float _12894;\n \t                    uint _14845;\n \t                    do\n \t                    {\n+\t                        bool _18266;\n \t                        uint _21400 = g_SST.Load(_14844 * 4 + 0);\n-\t                        bool _16059;\n \t                        do\n \t                        {\n-\t                            if ((_21400 & 1073741824u) != 0u)\n+\t                            _18266 = (_21400 & 1073741824u) != 0u;\n+\t                            if (_18266)\n \t                            {\n-\t                                _13179 = asfloat((_21400 & 3221225471u) << uint(2));\n-\t                                _16059 = true;\n+\t                                _12894 = asfloat((_21400 & 3221225471u) << uint(2));\n \t                                break;\n \t                            }\n-\t                            _13179 = _13177;\n-\t                            _16059 = false;\n+\t                            _12894 = _12892;\n \t                            break;\n \t                        } while(false);\n-\t                        if (_16059)\n+\t                        if (_18266)\n \t                        {\n-\t                            float4 _10879 = _13179.xxxx;\n+\t                            float4 _10879 = _12894.xxxx;\n \t                            _3177[_15314] = _10879;\n \t                            _3177[_15314 + uint2(1u, 0u)] = _10879;\n \t                            _3177[_15314 + uint2(0u, 1u)] = _10879;\n@@ -516,30 +510,29 @@ CS\n \t                        }\n \t                        else\n \t                        {\n+\t                            bool _18267;\n \t                            uint _21972 = _14844 + 1u;\n-\t                            float3 _13180;\n-\t                            bool _16060;\n+\t                            float3 _12895;\n \t                            do\n \t                            {\n-\t                                if ((_21400 & 2147483648u) != 0u)\n+\t                                _18267 = (_21400 & 2147483648u) != 0u;\n+\t                                if (_18267)\n \t                                {\n-\t                                    _13180 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) & 65535u))), asfloat((_21400 & 2147483647u) << uint(1)));\n-\t                                    _16060 = true;\n+\t                                    _12895 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) & 65535u))), asfloat((_21400 & 2147483647u) << uint(1)));\n \t                                    break;\n \t                                }\n-\t                                _13180 = _11520;\n-\t                                _16060 = false;\n+\t                                _12895 = _11520;\n \t                                break;\n \t                            } while(false);\n-\t                            if (_16060)\n+\t                            if (_18267)\n \t                            {\n-\t                                uint2 _24339 = _19018 % uint2(32u, 32u);\n-\t                                float4 _22823 = _13180.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                                float4 _22384 = ((_13180.z + (float(_24339.x) * _13180.x)) + (float(_24339.y) * _13180.y)).xxxx;\n+\t                                uint2 _24339 = _23624 % uint2(32u, 32u);\n+\t                                float4 _22823 = _12895.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                                float4 _22384 = ((_12895.z + (float(_24339.x) * _12895.x)) + (float(_24339.y) * _12895.y)).xxxx;\n \t                                float4 _9989 = _22384 + _22823;\n-\t                                float4 _21804 = (_22384 + _13180.yyyy) + _22823;\n-\t                                float4 _20892 = (_22384 + (_13180.yyyy * 2.0f)) + _22823;\n-\t                                float4 _16202 = (_22384 + (_13180.yyyy * 3.0f)) + _22823;\n+\t                                float4 _21804 = (_22384 + _12895.yyyy) + _22823;\n+\t                                float4 _20892 = (_22384 + (_12895.yyyy * 2.0f)) + _22823;\n+\t                                float4 _16202 = (_22384 + (_12895.yyyy * 3.0f)) + _22823;\n \t                                _3177[_15314] = _9989.x.xxxx;\n \t                                _3177[_15314 + uint2(1u, 0u)] = _9989.y.xxxx;\n \t                                _3177[_15314 + uint2(2u, 0u)] = _9989.z.xxxx;\n@@ -556,14 +549,14 @@ CS\n \t                                _3177[_15314 + uint2(1u, 3u)] = _16202.y.xxxx;\n \t                                _3177[_15314 + uint2(2u, 3u)] = _16202.z.xxxx;\n \t                                _3177[_15314 + uint2(3u, 3u)] = _16202.w.xxxx;\n-\t                                _11521 = _13180;\n+\t                                _11521 = _12895;\n \t                                _14845 = _14844;\n \t                                _11405 = true;\n \t                                break;\n \t                            }\n \t                            else\n \t                            {\n-\t                                uint2 _13670 = _19018 % uint2(32u, 32u);\n+\t                                uint2 _13670 = _23624 % uint2(32u, 32u);\n \t                                uint _21711;\n \t                                if (_13670.x < 16u)\n \t                                {\n@@ -600,7 +593,7 @@ CS\n \t                                    }\n \t                                    _14384 = _12506;\n \t                                }\n-\t                                _11521 = _13180;\n+\t                                _11521 = _12895;\n \t                                _14845 = _14384 + _11518;\n \t                                _11405 = false;\n \t                                break;\n@@ -613,27 +606,26 @@ CS\n \t                    {\n \t                        bool _11406;\n \t                        float3 _11522;\n-\t                        float _13181;\n+\t                        float _12896;\n \t                        uint _14846;\n \t                        do\n \t                        {\n+\t                            bool _18268;\n \t                            uint _21401 = g_SST.Load(_14845 * 4 + 0);\n-\t                            bool _16061;\n \t                            do\n \t                            {\n-\t                                if ((_21401 & 1073741824u) != 0u)\n+\t                                _18268 = (_21401 & 1073741824u) != 0u;\n+\t                                if (_18268)\n \t                                {\n-\t                                    _13181 = asfloat((_21401 & 3221225471u) << uint(2));\n-\t                                    _16061 = true;\n+\t                                    _12896 = asfloat((_21401 & 3221225471u) << uint(2));\n \t                                    break;\n \t                                }\n-\t                                _13181 = _13179;\n-\t                                _16061 = false;\n+\t                                _12896 = _12894;\n \t                                break;\n \t                            } while(false);\n-\t                            if (_16061)\n+\t                            if (_18268)\n \t                            {\n-\t                                float4 _10880 = _13181.xxxx;\n+\t                                float4 _10880 = _12896.xxxx;\n \t                                _3177[_15314] = _10880;\n \t                                _3177[_15314 + uint2(1u, 0u)] = _10880;\n \t                                _3177[_15314 + uint2(0u, 1u)] = _10880;\n@@ -657,30 +649,29 @@ CS\n \t                            }\n \t                            else\n \t                            {\n+\t                                bool _18269;\n \t                                uint _21973 = _14845 + 1u;\n-\t                                float3 _13182;\n-\t                                bool _16062;\n+\t                                float3 _12897;\n \t                                do\n \t                                {\n-\t                                    if ((_21401 & 2147483648u) != 0u)\n+\t                                    _18269 = (_21401 & 2147483648u) != 0u;\n+\t                                    if (_18269)\n \t                                    {\n-\t                                        _13182 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) & 65535u))), asfloat((_21401 & 2147483647u) << uint(1)));\n-\t                                        _16062 = true;\n+\t                                        _12897 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) & 65535u))), asfloat((_21401 & 2147483647u) << uint(1)));\n \t                                        break;\n \t                                    }\n-\t                                    _13182 = _11521;\n-\t                                    _16062 = false;\n+\t                                    _12897 = _11521;\n \t                                    break;\n \t                                } while(false);\n-\t                                if (_16062)\n+\t                                if (_18269)\n \t                                {\n-\t                                    uint2 _24340 = _19018 % uint2(16u, 16u);\n-\t                                    float4 _22824 = _13182.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                                    float4 _22385 = ((_13182.z + (float(_24340.x) * _13182.x)) + (float(_24340.y) * _13182.y)).xxxx;\n+\t                                    uint2 _24340 = _23624 % uint2(16u, 16u);\n+\t                                    float4 _22824 = _12897.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                                    float4 _22385 = ((_12897.z + (float(_24340.x) * _12897.x)) + (float(_24340.y) * _12897.y)).xxxx;\n \t                                    float4 _9990 = _22385 + _22824;\n-\t                                    float4 _21805 = (_22385 + _13182.yyyy) + _22824;\n-\t                                    float4 _20893 = (_22385 + (_13182.yyyy * 2.0f)) + _22824;\n-\t                                    float4 _16203 = (_22385 + (_13182.yyyy * 3.0f)) + _22824;\n+\t                                    float4 _21805 = (_22385 + _12897.yyyy) + _22824;\n+\t                                    float4 _20893 = (_22385 + (_12897.yyyy * 2.0f)) + _22824;\n+\t                                    float4 _16203 = (_22385 + (_12897.yyyy * 3.0f)) + _22824;\n \t                                    _3177[_15314] = _9990.x.xxxx;\n \t                                    _3177[_15314 + uint2(1u, 0u)] = _9990.y.xxxx;\n \t                                    _3177[_15314 + uint2(2u, 0u)] = _9990.z.xxxx;\n@@ -697,14 +688,14 @@ CS\n \t                                    _3177[_15314 + uint2(1u, 3u)] = _16203.y.xxxx;\n \t                                    _3177[_15314 + uint2(2u, 3u)] = _16203.z.xxxx;\n \t                                    _3177[_15314 + uint2(3u, 3u)] = _16203.w.xxxx;\n-\t                                    _11522 = _13182;\n+\t                                    _11522 = _12897;\n \t                                    _14846 = _14845;\n \t                                    _11406 = true;\n \t                                    break;\n \t                                }\n \t                                else\n \t                                {\n-\t                                    uint2 _13671 = _19018 % uint2(16u, 16u);\n+\t                                    uint2 _13671 = _23624 % uint2(16u, 16u);\n \t                                    uint _21712;\n \t                                    if (_13671.x < 8u)\n \t                                    {\n@@ -741,7 +732,7 @@ CS\n \t                                        }\n \t                                        _14385 = _12508;\n \t                                    }\n-\t                                    _11522 = _13182;\n+\t                                    _11522 = _12897;\n \t                                    _14846 = _14385 + _11518;\n \t                                    _11406 = false;\n \t                                    break;\n@@ -754,27 +745,26 @@ CS\n \t                        {\n \t                            bool _11407;\n \t                            uint _11523;\n-\t                            float _13183;\n+\t                            float _12898;\n \t                            float3 _14847;\n \t                            do\n \t                            {\n+\t                                bool _18270;\n \t                                uint _21402 = g_SST.Load(_14846 * 4 + 0);\n-\t                                bool _16063;\n \t                                do\n \t                                {\n-\t                                    if ((_21402 & 1073741824u) != 0u)\n+\t                                    _18270 = (_21402 & 1073741824u) != 0u;\n+\t                                    if (_18270)\n \t                                    {\n-\t                                        _13183 = asfloat((_21402 & 3221225471u) << uint(2));\n-\t                                        _16063 = true;\n+\t                                        _12898 = asfloat((_21402 & 3221225471u) << uint(2));\n \t                                        break;\n \t                                    }\n-\t                                    _13183 = _13181;\n-\t                                    _16063 = false;\n+\t                                    _12898 = _12896;\n \t                                    break;\n \t                                } while(false);\n-\t                                if (_16063)\n+\t                                if (_18270)\n \t                                {\n-\t                                    float4 _10881 = _13183.xxxx;\n+\t                                    float4 _10881 = _12898.xxxx;\n \t                                    _3177[_15314] = _10881;\n \t                                    _3177[_15314 + uint2(1u, 0u)] = _10881;\n \t                                    _3177[_15314 + uint2(0u, 1u)] = _10881;\n@@ -798,30 +788,29 @@ CS\n \t                                }\n \t                                else\n \t                                {\n+\t                                    bool _18271;\n \t                                    uint _21974 = _14846 + 1u;\n-\t                                    float3 _13184;\n-\t                                    bool _16064;\n+\t                                    float3 _12899;\n \t                                    do\n \t                                    {\n-\t                                        if ((_21402 & 2147483648u) != 0u)\n+\t                                        _18271 = (_21402 & 2147483648u) != 0u;\n+\t                                        if (_18271)\n \t                                        {\n-\t                                            _13184 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) & 65535u))), asfloat((_21402 & 2147483647u) << uint(1)));\n-\t                                            _16064 = true;\n+\t                                            _12899 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) & 65535u))), asfloat((_21402 & 2147483647u) << uint(1)));\n \t                                            break;\n \t                                        }\n-\t                                        _13184 = _11522;\n-\t                                        _16064 = false;\n+\t                                        _12899 = _11522;\n \t                                        break;\n \t                                    } while(false);\n-\t                                    if (_16064)\n+\t                                    if (_18271)\n \t                                    {\n-\t                                        uint2 _24341 = _19018 % uint2(8u, 8u);\n-\t                                        float4 _22825 = _13184.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                                        float4 _22386 = ((_13184.z + (float(_24341.x) * _13184.x)) + (float(_24341.y) * _13184.y)).xxxx;\n+\t                                        uint2 _24341 = _23624 % uint2(8u, 8u);\n+\t                                        float4 _22825 = _12899.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                                        float4 _22386 = ((_12899.z + (float(_24341.x) * _12899.x)) + (float(_24341.y) * _12899.y)).xxxx;\n \t                                        float4 _9991 = _22386 + _22825;\n-\t                                        float4 _21806 = (_22386 + _13184.yyyy) + _22825;\n-\t                                        float4 _20894 = (_22386 + (_13184.yyyy * 2.0f)) + _22825;\n-\t                                        float4 _16204 = (_22386 + (_13184.yyyy * 3.0f)) + _22825;\n+\t                                        float4 _21806 = (_22386 + _12899.yyyy) + _22825;\n+\t                                        float4 _20894 = (_22386 + (_12899.yyyy * 2.0f)) + _22825;\n+\t                                        float4 _16204 = (_22386 + (_12899.yyyy * 3.0f)) + _22825;\n \t                                        _3177[_15314] = _9991.x.xxxx;\n \t                                        _3177[_15314 + uint2(1u, 0u)] = _9991.y.xxxx;\n \t                                        _3177[_15314 + uint2(2u, 0u)] = _9991.z.xxxx;\n@@ -839,13 +828,13 @@ CS\n \t                                        _3177[_15314 + uint2(2u, 3u)] = _16204.z.xxxx;\n \t                                        _3177[_15314 + uint2(3u, 3u)] = _16204.w.xxxx;\n \t                                        _11523 = _14846;\n-\t                                        _14847 = _13184;\n+\t                                        _14847 = _12899;\n \t                                        _11407 = true;\n \t                                        break;\n \t                                    }\n \t                                    else\n \t                                    {\n-\t                                        uint2 _13672 = _19018 % uint2(8u, 8u);\n+\t                                        uint2 _13672 = _23624 % uint2(8u, 8u);\n \t                                        uint _21713;\n \t                                        if (_13672.x < 4u)\n \t                                        {\n@@ -883,7 +872,7 @@ CS\n \t                                            _14386 = _12510;\n \t                                        }\n \t                                        _11523 = _14386 + _11518;\n-\t                                        _14847 = _13184;\n+\t                                        _14847 = _12899;\n \t                                        _11407 = false;\n \t                                        break;\n \t                                    }\n@@ -894,23 +883,23 @@ CS\n \t                            if (!_11407)\n \t                            {\n \t                                uint _21403 = g_SST.Load(_11523 * 4 + 0);\n-\t                                float _13185;\n-\t                                bool _16065;\n+\t                                float _13174;\n+\t                                bool _16054;\n \t                                do\n \t                                {\n \t                                    if ((_21403 & 1073741824u) != 0u)\n \t                                    {\n-\t                                        _13185 = asfloat((_21403 & 3221225471u) << uint(2));\n-\t                                        _16065 = true;\n+\t                                        _13174 = asfloat((_21403 & 3221225471u) << uint(2));\n+\t                                        _16054 = true;\n \t                                        break;\n \t                                    }\n-\t                                    _13185 = _13183;\n-\t                                    _16065 = false;\n+\t                                    _13174 = _12898;\n+\t                                    _16054 = false;\n \t                                    break;\n \t                                } while(false);\n-\t                                if (_16065)\n+\t                                if (_16054)\n \t                                {\n-\t                                    float4 _10882 = _13185.xxxx;\n+\t                                    float4 _10882 = _13174.xxxx;\n \t                                    _3177[_15314] = _10882;\n \t                                    _3177[_15314 + uint2(1u, 0u)] = _10882;\n \t                                    _3177[_15314 + uint2(0u, 1u)] = _10882;\n@@ -931,29 +920,29 @@ CS\n \t                                else\n \t                                {\n \t                                    uint _21975 = _11523 + 1u;\n-\t                                    float3 _13186;\n-\t                                    bool _16066;\n+\t                                    float3 _13175;\n+\t                                    bool _16055;\n \t                                    do\n \t                                    {\n \t                                        if ((_21403 & 2147483648u) != 0u)\n \t                                        {\n-\t                                            _13186 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) & 65535u))), asfloat((_21403 & 2147483647u) << uint(1)));\n-\t                                            _16066 = true;\n+\t                                            _13175 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) & 65535u))), asfloat((_21403 & 2147483647u) << uint(1)));\n+\t                                            _16055 = true;\n \t                                            break;\n \t                                        }\n-\t                                        _13186 = _14847;\n-\t                                        _16066 = false;\n+\t                                        _13175 = _14847;\n+\t                                        _16055 = false;\n \t                                        break;\n \t                                    } while(false);\n-\t                                    if (_16066)\n+\t                                    if (_16055)\n \t                                    {\n-\t                                        uint2 _24342 = _19018 % uint2(4u, 4u);\n-\t                                        float4 _22826 = _13186.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n-\t                                        float4 _22387 = ((_13186.z + (float(_24342.x) * _13186.x)) + (float(_24342.y) * _13186.y)).xxxx;\n+\t                                        uint2 _24342 = _23624 % uint2(4u, 4u);\n+\t                                        float4 _22826 = _13175.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);\n+\t                                        float4 _22387 = ((_13175.z + (float(_24342.x) * _13175.x)) + (float(_24342.y) * _13175.y)).xxxx;\n \t                                        float4 _9992 = _22387 + _22826;\n-\t                                        float4 _21807 = (_22387 + _13186.yyyy) + _22826;\n-\t                                        float4 _20895 = (_22387 + (_13186.yyyy * 2.0f)) + _22826;\n-\t                                        float4 _16205 = (_22387 + (_13186.yyyy * 3.0f)) + _22826;\n+\t                                        float4 _21807 = (_22387 + _13175.yyyy) + _22826;\n+\t                                        float4 _20895 = (_22387 + (_13175.yyyy * 2.0f)) + _22826;\n+\t                                        float4 _16205 = (_22387 + (_13175.yyyy * 3.0f)) + _22826;\n \t                                        _3177[_15314] = _9992.x.xxxx;\n \t                                        _3177[_15314 + uint2(1u, 0u)] = _9992.y.xxxx;\n \t                                        _3177[_15314 + uint2(2u, 0u)] = _9992.z.xxxx;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/stenciltest.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -79,7 +79,7 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (772 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tTexture2D<uint4> g_tStencilTexture_unexpectedTypeId404_1041 : register(t30, space1);\n+\tTexture2D<uint4> g_tStencilTexture : register(t30, space1);\n \t\n \tstatic float4 gl_FragCoord;\n \tstatic float4 output_0;\n@@ -96,7 +96,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    output_0 = float4(float(g_tStencilTexture_unexpectedTypeId404_1041.Load(int3(int3(int2(gl_FragCoord.xy), 0).xy, 0)).x) * 0.0039215688593685626983642578125f, 0.0f, 0.0f, 1.0f);\n+\t    output_0 = float4(float(g_tStencilTexture.Load(int3(int3(int2(gl_FragCoord.xy), 0).xy, 0)).x) * 0.0039215688593685626983642578125f, 0.0f, 0.0f, 1.0f);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/sum_aggregate_cull_stats.slang",
          "status": "modified",
          "additions": 37,
          "deletions": 37,
          "changes": 74,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -36,7 +36,7 @@ CS\n \tint g_nNumFragments < Attribute(\"NumFragments\"); UiType(Slider); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3944 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3976 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1206\n \t{\n@@ -53,14 +53,14 @@ CS\n \t    uint _m10;\n \t};\n \t\n-\tRWByteAddressBuffer undetermined : register(u159, space0);\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n \t    uint _Globals_1_g_nNumFragments : packoffset(c0);\n \t};\n \t\n-\tRWByteAddressBuffer undetermined_1 : register(u158, space0);\n-\tBuffer<uint4> undetermined_2 : register(t30, space0);\n+\tRWByteAddressBuffer undetermined : register(u158, space0);\n+\tRWByteAddressBuffer undetermined_1 : register(u159, space0);\n+\tBuffer<uint4> undetermined_unexpectedTypeId408_1045 : register(t30, space0);\n \t\n \tstatic uint3 gl_WorkGroupID;\n \tstatic uint3 gl_LocalInvocationID;\n@@ -114,28 +114,28 @@ CS\n \t        uint _5211 = (_13918 + gl_LocalInvocationID.x) + (_17017 * 64u);\n \t        if (_5211 < _Globals_1_g_nNumFragments)\n \t        {\n-\t            uint _18241 = (undetermined_2.Load(int(_5211 / 4u)).x >> ((_5211 % 4u) * 8u)) & 255u;\n-\t            uint _17277 = undetermined_1.Load(_5211 * 44 + 0);\n-\t            uint _7045 = undetermined_1.Load(_5211 * 44 + 8);\n-\t            uint _7046 = undetermined_1.Load(_5211 * 44 + 4);\n-\t            uint _7047 = undetermined_1.Load(_5211 * 44 + 12);\n-\t            uint _7048 = undetermined_1.Load(_5211 * 44 + 16);\n-\t            uint _7049 = undetermined_1.Load(_5211 * 44 + 20);\n-\t            uint _7050 = undetermined_1.Load(_5211 * 44 + 32);\n-\t            uint _7051 = undetermined_1.Load(_5211 * 44 + 36);\n-\t            uint _6540 = undetermined_1.Load(_5211 * 44 + 24);\n-\t            uint _6483 = undetermined_1.Load(_5211 * 44 + 28);\n-\t            undetermined_1.Store(_5211 * 44 + 0, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 4, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 8, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 12, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 16, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 20, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 24, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 28, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 32, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 36, 0u);\n-\t            undetermined_1.Store(_5211 * 44 + 40, 0u);\n+\t            uint _18241 = (undetermined_unexpectedTypeId408_1045.Load(int(_5211 / 4u)).x >> ((_5211 % 4u) * 8u)) & 255u;\n+\t            uint _17277 = undetermined.Load(_5211 * 44 + 0);\n+\t            uint _7045 = undetermined.Load(_5211 * 44 + 8);\n+\t            uint _7046 = undetermined.Load(_5211 * 44 + 4);\n+\t            uint _7047 = undetermined.Load(_5211 * 44 + 12);\n+\t            uint _7048 = undetermined.Load(_5211 * 44 + 16);\n+\t            uint _7049 = undetermined.Load(_5211 * 44 + 20);\n+\t            uint _7050 = undetermined.Load(_5211 * 44 + 32);\n+\t            uint _7051 = undetermined.Load(_5211 * 44 + 36);\n+\t            uint _6540 = undetermined.Load(_5211 * 44 + 24);\n+\t            uint _6483 = undetermined.Load(_5211 * 44 + 28);\n+\t            undetermined.Store(_5211 * 44 + 0, 0u);\n+\t            undetermined.Store(_5211 * 44 + 4, 0u);\n+\t            undetermined.Store(_5211 * 44 + 8, 0u);\n+\t            undetermined.Store(_5211 * 44 + 12, 0u);\n+\t            undetermined.Store(_5211 * 44 + 16, 0u);\n+\t            undetermined.Store(_5211 * 44 + 20, 0u);\n+\t            undetermined.Store(_5211 * 44 + 24, 0u);\n+\t            undetermined.Store(_5211 * 44 + 28, 0u);\n+\t            undetermined.Store(_5211 * 44 + 32, 0u);\n+\t            undetermined.Store(_5211 * 44 + 36, 0u);\n+\t            undetermined.Store(_5211 * 44 + 40, 0u);\n \t            _13137 = _13136 + (_17277 * _18241);\n \t            _16306 = _16305 + (_7046 * _18241);\n \t            _17121 = _17114 + (_7045 * _18241);\n@@ -175,25 +175,25 @@ CS\n \t        continue;\n \t    }\n \t    uint _11833;\n-\t    undetermined.InterlockedAdd(0, _13136, _11833);\n+\t    undetermined_1.InterlockedAdd(0, _13136, _11833);\n \t    uint _16063;\n-\t    undetermined.InterlockedAdd(8, _17114, _16063);\n+\t    undetermined_1.InterlockedAdd(8, _17114, _16063);\n \t    uint _16064;\n-\t    undetermined.InterlockedAdd(4, _16305, _16064);\n+\t    undetermined_1.InterlockedAdd(4, _16305, _16064);\n \t    uint _16065;\n-\t    undetermined.InterlockedAdd(12, _17115, _16065);\n+\t    undetermined_1.InterlockedAdd(12, _17115, _16065);\n \t    uint _16066;\n-\t    undetermined.InterlockedAdd(16, _17116, _16066);\n+\t    undetermined_1.InterlockedAdd(16, _17116, _16066);\n \t    uint _16067;\n-\t    undetermined.InterlockedAdd(20, _17117, _16067);\n+\t    undetermined_1.InterlockedAdd(20, _17117, _16067);\n \t    uint _16068;\n-\t    undetermined.InterlockedAdd(24, _17118, _16068);\n+\t    undetermined_1.InterlockedAdd(24, _17118, _16068);\n \t    uint _16069;\n-\t    undetermined.InterlockedAdd(28, _17119, _16069);\n+\t    undetermined_1.InterlockedAdd(28, _17119, _16069);\n \t    uint _16070;\n-\t    undetermined.InterlockedAdd(32, _17120, _16070);\n+\t    undetermined_1.InterlockedAdd(32, _17120, _16070);\n \t    uint _21947;\n-\t    undetermined.InterlockedAdd(36, _17133, _21947);\n+\t    undetermined_1.InterlockedAdd(36, _17133, _21947);\n \t}\n \t\n \t[numthreads(64, 1, 1)]"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/test.slang",
          "status": "modified",
          "additions": 18,
          "deletions": 31,
          "changes": 49,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_60\n \t// Programs: gs, ms, ps, vs\n }\n@@ -33,15 +33,13 @@ COMMON\n MS\n {\n \tStaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );\n-\tStaticCombo( S_MOBILE, 0..1 );\n \tDynamicCombo( D_GS_TEST, 0, Sys( 0 ) );\n \tDynamicCombo( D_MS_TEST, 0..1 );\n \t\n \tExternalDescriptorSet ExtTestDescSet < Source(ExternalDescSet); Attribute(\"ExtTestDescSet\"); >;\n-\tByteAddressBuffer g_inputVB < Source(ExternalDescSet); SrgbRead(false); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2476 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2492 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t// Dynamic combos: D_MS_TEST\n \t\n \tstatic float _4;\n@@ -68,14 +66,14 @@ MS\n \tvoid MainMs_inner(inout gl_MeshPerVertexEXT gl_MeshVerticesEXT[4], inout uint3 gl_PrimitiveTriangleIndicesEXT[2])\n \t{\n \t    SetMeshOutputCounts(4u, 2u);\n-\t    uint _6392 = gl_GlobalInvocationID.x * 36u;\n-\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.x = asfloat(g_inputVB.Load(((_6392 + 12u) / 4u) * 4 + 0));\n-\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.y = asfloat(g_inputVB.Load(((_6392 + 16u) / 4u) * 4 + 0));\n-\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.z = asfloat(g_inputVB.Load(((_6392 + 20u) / 4u) * 4 + 0));\n-\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.x = asfloat(g_inputVB.Load(((_6392 + 28u) / 4u) * 4 + 0));\n-\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.y = asfloat(g_inputVB.Load(((_6392 + 32u) / 4u) * 4 + 0));\n-\t    float4 _15926 = float4(asfloat(g_inputVB.Load((_6392 / 4u) * 4 + 0)), _4, asfloat(g_inputVB.Load(((_6392 + 8u) / 4u) * 4 + 0)), 1.0f);\n-\t    _15926.y = asfloat(g_inputVB.Load(((_6392 + 4u) / 4u) * 4 + 0));\n+\t    uint _11265 = gl_GlobalInvocationID.x * 36u;\n+\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.x = asfloat(g_inputVB.Load(((_11265 + 12u) / 4u) * 4 + 0));\n+\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.y = asfloat(g_inputVB.Load(((_11265 + 16u) / 4u) * 4 + 0));\n+\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.z = asfloat(g_inputVB.Load(((_11265 + 20u) / 4u) * 4 + 0));\n+\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.x = asfloat(g_inputVB.Load(((_11265 + 28u) / 4u) * 4 + 0));\n+\t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.y = asfloat(g_inputVB.Load(((_11265 + 32u) / 4u) * 4 + 0));\n+\t    float4 _15926 = float4(asfloat(g_inputVB.Load((_11265 / 4u) * 4 + 0)), _4, asfloat(g_inputVB.Load(((_11265 + 8u) / 4u) * 4 + 0)), 1.0f);\n+\t    _15926.y = asfloat(g_inputVB.Load(((_11265 + 4u) / 4u) * 4 + 0));\n \t    gl_MeshVerticesEXT[gl_GlobalInvocationID.x].gl_Position = _15926;\n \t    if (gl_GlobalInvocationID.x == 0u)\n \t    {\n@@ -113,7 +111,6 @@ struct VS_INPUT\n VS\n {\n \tStaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );\n-\tStaticCombo( S_MOBILE, 0..1 );\n \tDynamicCombo( D_GS_TEST, 0..1 );\n \tDynamicCombo( D_MS_TEST, 0, Sys( 0 ) );\n \t\n@@ -171,19 +168,18 @@ VS\n GS\n {\n \tStaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );\n-\tStaticCombo( S_MOBILE, 0..1 );\n \tDynamicCombo( D_GS_TEST, 0..1 );\n \tDynamicCombo( D_MS_TEST, 0..1 );\n \t\n \tcbuffer ExternalTestCB1 < Attribute(\"ExternalTestCB1\"); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2152 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1756 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t// Static combos: S_GS_FORCE_ENABLE\n \t// Dynamic combos: D_GS_TEST\n \t\n@@ -203,13 +199,6 @@ GS\n \tlayout(triangles) in;\n \tlayout(max_vertices = 3, triangle_strip) out;\n \t\n-\tstruct _1109\n-\t{\n-\t    vec4 _m0;\n-\t    vec3 _m1;\n-\t    vec2 _m2;\n-\t};\n-\t\n \tstruct _985\n \t{\n \t    float _m0;\n@@ -225,7 +214,6 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    _1109 _19582[3] = _1109[](_1109(input_0[0], input_1[0], input_2[0]), _1109(input_0[1], input_1[1], input_2[1]), _1109(input_0[2], input_1[2], input_2[2]));\n \t    vec4 _25074 = ((input_0[0] + input_0[1]) + input_0[2]).xyzw * vec4(0.3333333432674407958984375);\n \t    float _11735 = (0.5 * ExternalTestCB1._m0) + 0.5;\n \t    int _7155;\n@@ -237,11 +225,11 @@ GS\n \t        {\n \t            break;\n \t        }\n-\t        vec4 _14141 = mix(_25074, _19582[_13039]._m0, vec4((0.300000011920928955078125 * _11735) + 0.699999988079071044921875));\n-\t        output_0 = _19582[_13039]._m1;\n-\t        output_1 = _19582[_13039]._m2;\n-\t        _14141.y = -_14141.y;\n-\t        gl_Position = _14141;\n+\t        vec4 _17221 = mix(_25074, input_0[_13039], vec4((0.300000011920928955078125 * _11735) + 0.699999988079071044921875));\n+\t        output_0 = input_1[_13039];\n+\t        output_1 = input_2[_13039];\n+\t        _17221.y = -_17221.y;\n+\t        gl_Position = _17221;\n \t        EmitVertex();\n \t        _7155 = _13039 + 1;\n \t        _13039 = _7155;\n@@ -270,7 +258,6 @@ PS\n \tfloat g_flPinch < Default(1); UiType(Slider); >;\n \tint g_nValue < UiType(Slider); >;\n \tTexture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;\n-\tTexture2D g_tDescSetTest < Source(ExternalDescSet); SrgbRead(false); >;\n \tfloat3 g_vModulationColor2 < Default(0); UiType(Color); >;\n \tfloat3 g_vModulationColor3 < Default3(1, 1, 0.5); UiType(Color); >;\n \t\n@@ -279,7 +266,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Only Logical addressing model can be used with HLSL.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/test_dgc.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/test_renderpass.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_facevertexcolor.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_objectspacenormal.slang",
          "status": "modified",
          "additions": 11,
          "deletions": 11,
          "changes": 22,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -44,8 +44,8 @@ VS\n \t\n \tstatic float4 gl_Position;\n \tstatic float2 vTexCoord;\n-\tstatic float4 vNormalOs;\n-\tstatic float3 vTangentUOs_flTangentVSign;\n+\tstatic float3 vNormalOs;\n+\tstatic float4 vTangentUOs_flTangentVSign;\n \tstatic float3 output_0;\n \tstatic float2 output_1;\n \tstatic float3 output_2;\n@@ -54,8 +54,8 @@ VS\n \tstruct VS_INPUT\n \t{\n \t    float2 vTexCoord : TEXCOORD0;\n-\t    float3 vTangentUOs_flTangentVSign : TEXCOORD1;\n-\t    float4 vNormalOs : TEXCOORD2;\n+\t    float3 vNormalOs : TEXCOORD1;\n+\t    float4 vTangentUOs_flTangentVSign : TEXCOORD2;\n \t};\n \t\n \tstruct PS_INPUT\n@@ -70,14 +70,14 @@ VS\n \tvoid MainVs_inner()\n \t{\n \t    float2 _7080 = (float2(vTexCoord.x, 1.0f - vTexCoord.y) - 0.5f.xx) * 2.0f;\n-\t    float4 _14817 = float4(_7080, 1.0f, 1.0f);\n-\t    float3 _24772 = normalize(vNormalOs.xyz - (vTangentUOs_flTangentVSign.xyz * dot(vNormalOs.xyz, vTangentUOs_flTangentVSign.xyz)));\n-\t    output_0 = vTangentUOs_flTangentVSign;\n+\t    float4 _14437 = float4(_7080, 1.0f, 1.0f);\n+\t    float3 _24772 = normalize(vTangentUOs_flTangentVSign.xyz - (vNormalOs.xyz * dot(vTangentUOs_flTangentVSign.xyz, vNormalOs.xyz)));\n+\t    output_0 = vNormalOs;\n \t    output_1 = vTexCoord.xy;\n \t    output_2 = _24772;\n-\t    output_3 = cross(vTangentUOs_flTangentVSign.xyz, _24772.xyz) * vNormalOs.w;\n-\t    _14817.y = -_7080.y;\n-\t    gl_Position = _14817;\n+\t    output_3 = cross(vNormalOs.xyz, _24772.xyz) * vTangentUOs_flTangentVSign.w;\n+\t    _14437.y = -_7080.y;\n+\t    gl_Position = _14437;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_positionmap.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_render_unlit.slang",
          "status": "modified",
          "additions": 47,
          "deletions": 25,
          "changes": 72,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -42,11 +42,11 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -60,27 +60,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1108\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _164\n+\tstruct _1126\n \t{\n-\t    _1108 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1234\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1234 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -109,18 +116,33 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1108 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));\n \t    output_1 = vNormalOs;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_2d_generic.slang",
          "status": "modified",
          "additions": 7,
          "deletions": 7,
          "changes": 14,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -98,14 +98,14 @@ PS\n \tTexture2D<float4> g_tColorTexture : register(t30, space1);\n \tSamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear : register(s14, space1);\n \t\n-\tstatic float2 input_0;\n-\tstatic float4 input_1;\n+\tstatic float4 input_0;\n+\tstatic float2 input_1;\n \tstatic float4 output_0;\n \t\n \tstruct PS_INPUT\n \t{\n-\t    float4 input_1 : TEXCOORD0;\n-\t    float2 input_0 : TEXCOORD1;\n+\t    float4 input_0 : TEXCOORD0;\n+\t    float2 input_1 : TEXCOORD1;\n \t};\n \t\n \tstruct PS_OUTPUT\n@@ -115,7 +115,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    output_0 = input_1 * g_tColorTexture.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, input_0.xy);\n+\t    output_0 = input_0 * g_tColorTexture.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, input_1.xy);\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_generic.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 23,
          "changes": 68,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -51,15 +51,15 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Color\n \tfloat2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup(\"Color/30\"); >;\n \tfloat2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup(\"Color/40\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3356 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -73,26 +73,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1108\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _164\n+\tstruct _1126\n \t{\n-\t    _1108 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1234\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1234 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -128,18 +135,33 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1108 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));\n \t    output_1 = (vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_grid.slang",
          "status": "modified",
          "additions": 22,
          "deletions": 32,
          "changes": 54,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -54,19 +54,14 @@ VS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vGridAxis1) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2468 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1880 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n-\tstruct _58\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n \tstruct _1295\n \t{\n \t    vec3 g_vGridAxis0;\n@@ -78,13 +73,13 @@ VS\n \t\n \tlayout(set = 0) uniform _1295 _Globals_;\n \t\n-\tstruct _1138\n+\tstruct _1224\n \t{\n-\t    _58 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t};\n \t\n-\tlayout(set = 0) uniform _1138 PerViewConstantBuffer_t;\n+\tlayout(set = 0) uniform _1224 PerViewConstantBuffer_t;\n \t\n \tlayout(location = 0) in vec3 vPositionOs;\n \tlayout(location = 1) in vec4 vColor;\n@@ -95,11 +90,11 @@ VS\n \t{\n \t    float _16863 = mix(_Globals_.g_vGridMin.x, _Globals_.g_vGridMax.x, vPositionOs.x);\n \t    float _22467 = mix(_Globals_.g_vGridMin.y, _Globals_.g_vGridMax.y, vPositionOs.y);\n-\t    vec4 _23706 = (vec4((((_Globals_.g_vGridAxis0 * _16863) + (_Globals_.g_vGridAxis1 * _22467)).xyz + _Globals_.g_vGridAxis2).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n+\t    vec4 _18068 = (vec4((((_Globals_.g_vGridAxis0 * _16863) + (_Globals_.g_vGridAxis1 * _22467)).xyz + _Globals_.g_vGridAxis2).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n \t    output_0 = vec3(_16863, _22467, 0.0);\n \t    output_1 = vColor;\n-\t    _23706.y = -_23706.y;\n-\t    gl_Position = _23706;\n+\t    _18068.y = -_18068.y;\n+\t    gl_Position = _18068;\n \t}\n \t\n \t\n@@ -132,30 +127,25 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vGridAxis1) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (6212 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (5608 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n-\tstruct _1444\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n \tvec4 _3;\n \t\n-\tstruct _993\n+\tstruct _1318\n \t{\n-\t    _1444 _m0;\n+\t    mat4 _m0;\n \t    vec2 _m1;\n \t    vec2 _m2;\n \t    vec3 _m3;\n \t};\n \t\n-\tlayout(set = 1) uniform _993 PerViewConstantBuffer_t;\n+\tlayout(set = 1) uniform _1318 PerViewConstantBuffer_t;\n \t\n \tstruct _1980\n \t{\n@@ -203,8 +193,8 @@ PS\n \t        _16306 = _16305;\n \t        _17134 = _17133;\n \t        int _3633;\n-\t        float _4243;\n \t        float _5489;\n+\t        float _23914;\n \t        vec4 _14211;\n \t        float _17018 = -0.25;\n \t        for (;;)\n@@ -215,8 +205,8 @@ PS\n \t            }\n \t            _3633 = _17134 + 1;\n \t            vec3 _7727 = cross(_Globals_.g_vGridAxis0, _Globals_.g_vGridAxis1);\n-\t            vec4 _24010 = vec4(_17305 + (PerViewConstantBuffer_t._m2 * vec2(_17018, _17017)), 1.0, 1.0) * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t            vec3 _10521 = _24010.xyz / vec3(_24010.w);\n+\t            vec4 _18372 = vec4(_17305 + (PerViewConstantBuffer_t._m2 * vec2(_17018, _17017)), 1.0, 1.0) * PerViewConstantBuffer_t._m0;\n+\t            vec3 _10521 = _18372.xyz / vec3(_18372.w);\n \t            vec4 _22905;\n \t            _22905.x = _10521.x;\n \t            _22905.y = _10521.y;\n@@ -228,7 +218,7 @@ PS\n \t            vec2 _4840 = vec2(1.0) - clamp(abs(_3719 - _15975) / (_22106 * (0.699999988079071044921875 * _Globals_.g_fInvGridSpacing)), vec2(0.0), vec2(1.0));\n \t            float _13224 = _4840.x;\n \t            float _7629 = _4840.y;\n-\t            _4243 = _16306 + max(_13224, _7629);\n+\t            _23914 = _16306 + max(_13224, _7629);\n \t            if (_13224 > _7629)\n \t            {\n \t                int _6461 = int(_15975.x * _Globals_.g_fGridSpacing);\n@@ -295,7 +285,7 @@ PS\n \t            }\n \t            _5489 = _17018 + 0.25;\n \t            _13137 = _14211;\n-\t            _16306 = _4243;\n+\t            _16306 = _23914;\n \t            _17134 = _3633;\n \t            _17018 = _5489;\n \t            continue;\n@@ -308,9 +298,9 @@ PS\n \t        continue;\n \t    }\n \t    float _16034 = 1.0 / float(_17133);\n-\t    vec4 _13992 = _13136 * _16034;\n-\t    _13992.w = _13992.w * (_16305 * _16034);\n-\t    output_0 = _13992;\n+\t    vec4 _5645 = _13136 * _16034;\n+\t    _5645.w = _5645.w * (_16305 * _16034);\n+\t    output_0 = _5645;\n \t}\n \t\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_light_probe.slang",
          "status": "modified",
          "additions": 12,
          "deletions": 17,
          "changes": 29,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -38,17 +38,12 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1716 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1112 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tstruct _436\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    float4 _m0[4];\n-\t};\n-\t\n-\tcbuffer _Globals_ : register(b0, space0)\n-\t{\n-\t    _436 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -73,11 +68,11 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    float4 _8264 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(vPositionWs.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n+\t    float4 _18241 = mul(PerViewConstantBuffer_t_1_m0, (float4(vPositionWs.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = vPositionWs.xyz;\n \t    output_1 = vNormalWs.xyz;\n-\t    _8264.y = -_8264.y;\n-\t    gl_Position = _8264;\n+\t    _18241.y = -_18241.y;\n+\t    gl_Position = _18241;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -106,9 +101,9 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (1452 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float3 _Globals_1_m0 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m0 : packoffset(c26);\n \t};\n \t\n \tSamplerState AddressU_Wrap_AddressV_Clamp_Filter_MinMagMipLinear : register(s14, space1);\n@@ -131,7 +126,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    float3 _19258 = normalize(reflect(input_1.xyz - _Globals_1_m0.xyz, normalize(input_0)));\n+\t    float3 _19258 = normalize(reflect(input_1.xyz - PerViewConstantBuffer_t_1_m0.xyz, normalize(input_0)));\n \t    float _7511 = acos(_19258.z) * 0.3183098733425140380859375f;\n \t    float2 _16582 = _19258.xy;\n \t    output_0 = g_tSkyRadiance.SampleGrad(AddressU_Wrap_AddressV_Clamp_Filter_MinMagMipLinear, float2(atan2(_19258.y, _19258.x) * 0.15915493667125701904296875f, _7511), float2(length(ddx(_16582)) * 0.15915493667125701904296875f, ddx(_7511)), float2(length(ddy(_16582)) * 0.15915493667125701904296875f, ddy(_7511)));"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_modelviewer_wireframe.slang",
          "status": "modified",
          "additions": 44,
          "deletions": 21,
          "changes": 65,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -46,12 +46,12 @@ VS\n \tDynamicCombo( D_MORPH, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1948 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -65,26 +65,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1150\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _248\n+\tstruct _1126\n \t{\n-\t    _1150 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1276\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1276 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -106,15 +113,31 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1150 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n-\t    _24787.y = -_24787.y;\n-\t    gl_Position = _24787;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _19149.y = -_19149.y;\n+\t    gl_Position = _19149;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_outline.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_overlay.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 22,
          "changes": 67,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -41,15 +41,15 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// OverrideColor\n \tfloat g_OverrideColorFactor < UiType(Slider); UiGroup(\"OverrideColor\"); >;\n \tfloat4 g_vOverrideColor < UiType(Color); UiGroup(\"OverrideColor\"); Expression(SrgbGammaToLinear(this)); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4124 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3456 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -63,26 +63,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2923\n+\tstruct _1126\n \t{\n-\t    _982 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1108\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1108 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -116,13 +123,29 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _982 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    float3 _24030 = vColor.xyz * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((vColor.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n \t    float _21354;\n@@ -153,9 +176,9 @@ VS\n \t        _19190 = _7676.z;\n \t    }\n \t    output_0 = float4(lerp(float3(_21354, _21355, _19190), _Globals_1_g_vOverrideColor.xyz, _Globals_1_g_OverrideColorFactor.xxx), lerp(vColor.w, _Globals_1_g_vOverrideColor.w, _Globals_1_g_OverrideColorFactor));\n-\t    output_1 = _23533;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    output_1 = _17895;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_stencil_copy.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_solid.slang",
          "status": "modified",
          "additions": 55,
          "deletions": 33,
          "changes": 88,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -52,11 +52,11 @@ VS\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tbool g_bIgnoreTintAlpha < Attribute(\"IgnoreTintAlpha\"); UiType(CheckBox); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4968 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4252 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -70,26 +70,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1192\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _332\n+\tstruct _1126\n \t{\n-\t    _1192 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1318\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1318 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -128,17 +135,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1192 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _23051 = mul(_14779, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n-\t    float4 _13069 = vNormalOs;\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _23051 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    float4 _12923 = vNormalOs;\n+\t    float4 _23812 = float4(uint4(_19924._m0 & 255u, (_19924._m0 & 65280u) >> uint(8), (_19924._m0 & 16711680u) >> uint(16), (_19924._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -172,26 +194,26 @@ VS\n \t    _23812.x = _21354;\n \t    _23812.y = _21355;\n \t    _23812.z = _19167;\n-\t    float4 _22252;\n+\t    float4 _22247;\n \t    if (_Globals_1_g_bIgnoreTintAlpha != 0)\n \t    {\n-\t        float3 _15408 = _13069.xyz * abs(_23812.xyz);\n-\t        float4 _23714 = _13069;\n+\t        float3 _15408 = _12923.xyz * abs(_23812.xyz);\n+\t        float4 _23714 = _12923;\n \t        _23714.x = _15408.x;\n \t        _23714.y = _15408.y;\n \t        _23714.z = _15408.z;\n-\t        _22252 = _23714;\n+\t        _22247 = _23714;\n \t    }\n \t    else\n \t    {\n-\t        _22252 = _13069 * abs(_23812);\n+\t        _22247 = _12923 * abs(_23812);\n \t    }\n-\t    output_0 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)));\n-\t    output_1 = _22252;\n-\t    output_2 = _23533;\n+\t    output_0 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)));\n+\t    output_1 = _22247;\n+\t    output_2 = _17895;\n \t    output_3 = _23051;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_sprite.slang",
          "status": "modified",
          "additions": 14,
          "deletions": 19,
          "changes": 33,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n \n@@ -149,31 +149,26 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3776 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3172 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \tlayout(points) in;\n \tlayout(max_vertices = 4, triangle_strip) out;\n \t\n-\tstruct _1402\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n \tvec4 _2;\n \t\n-\tstruct _869\n+\tstruct _1278\n \t{\n-\t    _1402 _m0;\n+\t    mat4 _m0;\n \t    vec2 _m1;\n \t    vec4 _m2;\n \t};\n \t\n-\tlayout(set = 2) uniform _869 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1278 PerViewConstantBuffer_t;\n \t\n \tlayout(location = 0) in vec4 input_0[1];\n \tlayout(location = 1) in vec4 input_1[1];\n@@ -184,10 +179,10 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    vec4 _7230 = (vec4(input_0[0].xyz, 1.0) + (PerViewConstantBuffer_t._m2 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t    vec2 _13731 = _7230.xy;\n+\t    vec4 _20663 = (vec4(input_0[0].xyz, 1.0) + (PerViewConstantBuffer_t._m2 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n+\t    vec2 _13731 = _20663.xy;\n \t    vec2 _14654 = PerViewConstantBuffer_t._m1.xy * input_2[0];\n-\t    float _12129 = _7230.w;\n+\t    float _12129 = _20663.w;\n \t    vec2 _6635 = _13731 + ((_14654 * vec2(-1.0)) * _12129);\n \t    float _9979 = _6635.x;\n \t    vec4 _20488;\n@@ -206,23 +201,23 @@ GS\n \t    vec2 _9004 = ((_20489.xy / _7534) * 0.5) + vec2(0.5);\n \t    vec4 _5752 = vec4(_22603.x, (vec2(_9004.x, 1.0 - _9004.y) / PerViewConstantBuffer_t._m1.xy).yx, _22603.y);\n \t    vec2 _9831 = _13731 + ((_14654 * vec2(-1.0, 1.0)) * _12129);\n-\t    vec4 _20108 = _7230;\n+\t    vec4 _20108 = _20663;\n \t    _20108.x = _9831.x;\n \t    output_0 = input_1[0];\n \t    output_1 = vec2(0.0);\n \t    output_2 = _5752;\n \t    _20108.y = -_9831.y;\n \t    gl_Position = _20108;\n \t    EmitVertex();\n-\t    vec4 _18816 = _7230;\n+\t    vec4 _18816 = _20663;\n \t    _18816.x = _9979;\n \t    output_0 = input_1[0];\n \t    output_1 = vec2(0.0, 1.0);\n \t    output_2 = _5752;\n \t    _18816.y = -_21775;\n \t    gl_Position = _18816;\n \t    EmitVertex();\n-\t    vec4 _18817 = _7230;\n+\t    vec4 _18817 = _20663;\n \t    _18817.x = _9980;\n \t    output_0 = input_1[0];\n \t    output_1 = vec2(1.0, 0.0);\n@@ -231,7 +226,7 @@ GS\n \t    gl_Position = _18817;\n \t    EmitVertex();\n \t    vec2 _9832 = _13731 + ((_14654 * vec2(1.0, -1.0)) * _12129);\n-\t    vec4 _20109 = _7230;\n+\t    vec4 _20109 = _20663;\n \t    _20109.x = _9832.x;\n \t    output_0 = input_1[0];\n \t    output_1 = vec2(1.0);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_blend.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_remap.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_slope.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -93,11 +93,11 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vLayerSize) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2320 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2336 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#extension GL_EXT_samplerless_texture_functions : require\n@@ -133,7 +133,7 @@ PS\n \t        {\n \t            break;\n \t        }\n-\t        uvec2 _10352 = uvec2(textureSize(g_tDisplacement, 0));\n+\t        uvec2 _10352 = uvec2(textureSize(g_tDisplacement, int(0u)));\n \t        vec2 _19607 = vec2(1.0) / vec2(ivec2(int(_10352.x), int(_10352.y)));\n \t        vec3 _10323 = abs(_20688 - (vec3((_19607 * _Globals_.g_vLayerSize) * _863[_16208], 0.0) + (texture(sampler2D(g_tDisplacement, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), (input_0 + (_19607 * _863[_16208])).xy).zyx * _Globals_.g_vDisplacementScale)));\n \t        float _23793 = _10323.z;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_test.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -102,7 +102,7 @@ PS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 4 (name: g_TestB) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_texture_preview.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_textured_unlit.slang",
          "status": "modified",
          "additions": 47,
          "deletions": 25,
          "changes": 72,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -42,11 +42,11 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -60,27 +60,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1108\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _164\n+\tstruct _1126\n \t{\n-\t    _1108 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1234\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1234 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -109,18 +116,33 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1108 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));\n \t    output_1 = vNormalOs;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_visualize_collision_mesh.slang",
          "status": "modified",
          "additions": 46,
          "deletions": 24,
          "changes": 70,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -48,12 +48,12 @@ VS\n \tDynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \tfloat4 g_vColor < Default4(1, 1, 1, 1); Attribute(\"Color\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4536 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3852 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -67,26 +67,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1444\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _836\n+\tstruct _1126\n \t{\n-\t    _1444 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1570\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1570 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t    float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);\n \t};\n@@ -122,23 +129,38 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1444 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _11111 = mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz;\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_11111, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n-\t    float3 _10837 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _11111 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_11111, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    float3 _10837 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)));\n \t    float _19069 = clamp(dot(_10837, float3(-1.0f, 1.0f, -1.0f)), 0.0f, 1.0f);\n \t    float _13301 = dot(-normalize(_11111 - PerViewConstantBuffer_t_1_m2.xyz), _10837.xyz);\n \t    bool _6651 = _13301 < 0.0f;\n \t    output_0 = float4((vNormalOs.xyz * _Globals_1_g_vColor.xyz) * (clamp(float3(clamp(dot(_10837, 1.0f.xxx), 0.0f, 1.0f) + _19069, clamp(dot(_10837, float3(-1.0f, -1.0f, 1.0f)), 0.0f, 1.0f) + _19069, clamp(dot(_10837, float3(1.0f, -1.0f, -1.0f)), 0.0f, 1.0f)) * 0.014999999664723873138427734375f, 0.0f.xxx, 1.0f.xxx) + 0.89999997615814208984375f.xxx), (vNormalOs.w * clamp(((_6651 ? 0.25f : 1.0f) * pow(1.0f - abs(_13301), _6651 ? 4.0f : 2.0f)) + pow(clamp(_13301, 0.0f, 1.0f), 8.0f), 0.0f, 1.0f)) * _Globals_1_g_vColor.w);\n \t    output_1 = _10837;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_visualize_tangent_frame.slang",
          "status": "modified",
          "additions": 54,
          "deletions": 40,
          "changes": 94,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n \n@@ -54,12 +54,12 @@ VS\n \tDynamicCombo( D_MORPH, 0..1 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tTexture2D g_tCompositeMorphTextureAtlas < Attribute(\"CompositeMorphTextureAtlas\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1644 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -73,14 +73,26 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1150\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _248\n+\tstruct _1126\n \t{\n-\t    _1150 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n+\t};\n+\t\n+\tstruct _1120\n+\t{\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n@@ -107,15 +119,30 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1150 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14437 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    output_0 = mul(_14437, float4(vPositionOs.xyz, 1.0f));\n-\t    output_1 = normalize(mul(_14437, float4(vNormalOs.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    output_0 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    output_1 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -145,34 +172,23 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2948 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1932 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \tlayout(triangles) in;\n \tlayout(max_vertices = 6, line_strip) out;\n \t\n-\tstruct _1055\n-\t{\n-\t    vec3 _m0;\n-\t    vec3 _m1;\n-\t};\n-\t\n-\tstruct _2452\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tstruct _2915\n+\tstruct _1224\n \t{\n-\t    _2452 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t};\n \t\n-\tlayout(set = 2) uniform _2915 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1224 PerViewConstantBuffer_t;\n \t\n \tstruct _985\n \t{\n@@ -187,7 +203,6 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    _1055 _19582[3] = _1055[](_1055(input_0[0], input_1[0]), _1055(input_0[1], input_1[1]), _1055(input_0[2], input_1[2]));\n \t    int _10337;\n \t    int _13039 = 0;\n \t    for (;;)\n@@ -197,13 +212,12 @@ GS\n \t            break;\n \t        }\n \t        vec4 _21447 = PerViewConstantBuffer_t._m1 * 1.0;\n-\t        mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t        vec4 _23875 = (vec4(_19582[_13039]._m0.xyz, 1.0) + _21447).xyzw * _15571;\n+\t        vec4 _18241 = (vec4(input_0[_13039].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t        output_0 = vec3(0.0, 0.0, 1.0);\n-\t        _23875.y = -_23875.y;\n-\t        gl_Position = _23875;\n+\t        _18241.y = -_18241.y;\n+\t        gl_Position = _18241;\n \t        EmitVertex();\n-\t        vec4 _8486 = (vec4((_19582[_13039]._m0.xyz + (_19582[_13039]._m1.xyz * undetermined._m0)).xyz, 1.0) + _21447).xyzw * _15571;\n+\t        vec4 _8486 = (vec4((input_0[_13039].xyz + (input_1[_13039].xyz * undetermined._m0)).xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t        output_0 = vec3(0.300000011920928955078125, 0.300000011920928955078125, 1.0);\n \t        _8486.y = -_8486.y;\n \t        gl_Position = _8486;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/tools_wireframe.slang",
          "status": "modified",
          "additions": 80,
          "deletions": 67,
          "changes": 147,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n \n@@ -42,14 +42,13 @@ struct VS_INPUT\n \tfloat4 vColor              : COLOR0         < Semantic( Color ); >;                           \n \tfloat4 vNormalOs           : NORMAL0        < Semantic( Normal ); >;                          \n \tfloat3 vPositionOs         : POSITION0      < Semantic( PosXyz ); >;                          \n-\tfloat2 vFirstLineVertPosWs : TEXCOORD0      < Semantic( uvw ); >;                              // D_THICK_LINES=0, D_FREEFORM_DEFORMATION=1, S_MOBILE=1\n+\tfloat2 vFirstLineVertPosWs : TEXCOORD0      < Semantic( uvw ); >;                              // D_THICK_LINES=0, D_FREEFORM_DEFORMATION=1\n \tfloat2 nInstanceIdx        : TEXCOORD13     < Semantic( InstanceTransformUv ); >;             \n };\n \n VS\n {\n \tStaticCombo( S_MODE_DEPTH, 0..1 );\n-\tStaticCombo( S_MOBILE, 0..1 );\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \tDynamicCombo( D_DEPTH_BIAS, 0..1 );\n \tDynamicCombo( D_SNAP_TO_SCREEN_PIXELS, 0..1 );\n@@ -61,8 +60,8 @@ VS\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tbool g_bIgnoreTintAlpha < Attribute(\"IgnoreTintAlpha\"); UiType(CheckBox); >;\n \tfloat g_flDynamicLineThickness < Default(1); Attribute(\"DynamicLineThickness\"); UiType(Slider); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Depth Bias Amount\n \tfloat g_DepthBiasAmount < Default(0.005); UiType(Slider); UiGroup(\"Depth Bias Amount\"); >;\n@@ -75,7 +74,7 @@ VS\n \tfloat4 g_vOverrideColor < Default(0); UiType(Color); UiGroup(\"Override Color\"); Expression(SrgbGammaToLinear(this)); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (6176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (5476 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -89,26 +88,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1360\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _668\n+\tstruct _1126\n \t{\n-\t    _1360 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1486\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1486 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -153,17 +159,31 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1360 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _23070 = mul(_14779, float4(vPositionOs.xyz, 1.0f));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _23070 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n \t    float4 _21447 = PerViewConstantBuffer_t_1_m1 * 1.0f;\n-\t    float4x4 _15571 = float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w));\n-\t    float4 _23875 = mul(_15571, (float4(_23070.xyz, 1.0f) + _21447).xyzw);\n+\t    float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23070.xyz, 1.0f) + _21447).xyzw);\n \t    float3 _24030 = nInstanceIdx.xyz * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((nInstanceIdx.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n \t    float _21354;\n@@ -193,8 +213,8 @@ VS\n \t    {\n \t        _19302 = _7676.z;\n \t    }\n-\t    float4 _23628 = float4(_21354, _21355, _19302, nInstanceIdx.w);\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 255u), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    float4 _23482 = float4(_21354, _21355, _19302, nInstanceIdx.w);\n+\t    float4 _23812 = float4(uint4(_19924._m0 & 255u, (_19924._m0 & 65280u) >> uint(8), (_19924._m0 & 16711680u) >> uint(16), (_19924._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7677 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -231,24 +251,24 @@ VS\n \t    float4 _21709;\n \t    if (_Globals_1_g_bIgnoreTintAlpha != 0)\n \t    {\n-\t        float3 _15408 = _23628.xyz * abs(_23812.xyz);\n-\t        float4 _23714 = _23628;\n+\t        float3 _15408 = _23482.xyz * abs(_23812.xyz);\n+\t        float4 _23714 = _23482;\n \t        _23714.x = _15408.x;\n \t        _23714.y = _15408.y;\n \t        _23714.z = _15408.z;\n \t        _21709 = _23714;\n \t    }\n \t    else\n \t    {\n-\t        _21709 = _23628 * abs(_23812);\n+\t        _21709 = _23482 * abs(_23812);\n \t    }\n-\t    output_0 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)).xyz);\n+\t    output_0 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)).xyz);\n \t    output_1 = lerp(_21709, _Globals_1_g_vOverrideColor, _Globals_1_g_OverrideColorFactor.xxxx);\n-\t    output_2 = mul(_15571, (float4(mul(_14779, float4(vNormalOs, 1.0f)).xyz, 1.0f) + _21447).xyzw);\n-\t    output_3 = _23875;\n+\t    output_2 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vNormalOs, 1.0f)).xyz, 1.0f) + _21447).xyzw);\n+\t    output_3 = _18237;\n \t    output_4 = _23070;\n-\t    _23875.y = -_23875.y;\n-\t    gl_Position = _23875;\n+\t    _18237.y = -_18237.y;\n+\t    gl_Position = _18237;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -277,7 +297,6 @@ VS\n GS\n {\n \tStaticCombo( S_MODE_DEPTH, 0..1 );\n-\tStaticCombo( S_MOBILE, 0..1 );\n \tDynamicCombo( D_THICK_LINES, 0..1 );\n \tDynamicCombo( D_DEPTH_BIAS, 0..1 );\n \t\n@@ -288,30 +307,25 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4136 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3532 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t// Dynamic combos: D_THICK_LINES\n \t\n \t#version 460\n \tlayout(lines) in;\n \tlayout(max_vertices = 4, triangle_strip) out;\n \t\n-\tstruct _1864\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tstruct _1793\n+\tstruct _1278\n \t{\n-\t    _1864 _m0;\n+\t    mat4 _m0;\n \t    vec2 _m1;\n \t    vec4 _m2;\n \t};\n \t\n-\tlayout(set = 2) uniform _1793 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1278 PerViewConstantBuffer_t;\n \t\n \tlayout(location = 0) in vec3 input_0[2];\n \tlayout(location = 1) in vec3 input_1[2];\n@@ -326,61 +340,60 @@ GS\n \tvoid main()\n \t{\n \t    vec4 _21447 = PerViewConstantBuffer_t._m2 * 1.0;\n-\t    mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t    vec4 _24240 = (vec4(input_0[0].xyz, 1.0) + _21447).xyzw * _15571;\n-\t    vec4 _9193 = (vec4(input_0[1].xyz, 1.0) + _21447).xyzw * _15571;\n+\t    vec4 _20663 = (vec4(input_0[0].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n+\t    vec4 _9193 = (vec4(input_0[1].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;\n \t    vec2 _13645 = _9193.xy;\n \t    float _20176 = _9193.w;\n-\t    vec2 _7058 = _24240.xy;\n-\t    float _20181 = _24240.w;\n+\t    vec2 _7058 = _20663.xy;\n+\t    float _20181 = _20663.w;\n \t    vec2 _25108 = PerViewConstantBuffer_t._m1.xy * 2.0;\n-\t    float _14436 = _24240.z;\n-\t    vec2 _19809 = (normalize(vec2(1.0, -1.0) * (((_13645 / vec2(_20176)) - (_7058 / vec2(_20181))).xy / _25108).yx).xy * _25108).xy;\n-\t    vec2 _13861 = _7058 + ((_19809 * input_2[0]) * _20181);\n+\t    float _15395 = _20663.z;\n+\t    vec2 _20907 = (normalize(vec2(1.0, -1.0) * (((_13645 / vec2(_20176)) - (_7058 / vec2(_20181))).xy / _25108).yx).xy * _25108).xy;\n+\t    vec2 _13861 = _7058 + ((_20907 * input_2[0]) * _20181);\n \t    float _9979 = _13861.x;\n-\t    vec4 _20450 = _24240;\n+\t    vec4 _20450 = _20663;\n \t    _20450.x = _9979;\n \t    output_0 = input_1[0];\n \t    output_1 = input_3[0];\n-\t    output_2 = _24240;\n-\t    output_3 = vec4(_9979, _13861.y, _14436, _20181);\n+\t    output_2 = _20663;\n+\t    output_3 = vec4(_9979, _13861.y, _15395, _20181);\n \t    output_4 = input_0[0];\n \t    _20450.y = -_13861.y;\n \t    gl_Position = _20450;\n \t    EmitVertex();\n-\t    float _14689 = _9193.z;\n-\t    vec2 _13862 = _13645 + ((_19809 * input_2[1]) * _20176);\n+\t    float _8092 = _9193.z;\n+\t    vec2 _13862 = _13645 + ((_20907 * input_2[1]) * _20176);\n \t    float _9980 = _13862.x;\n \t    vec4 _20451 = _9193;\n \t    _20451.x = _9980;\n \t    output_0 = input_1[1];\n \t    output_1 = input_3[1];\n-\t    output_2 = _24240;\n-\t    output_3 = vec4(_9980, _13862.y, _14689, _20176);\n+\t    output_2 = _20663;\n+\t    output_3 = vec4(_9980, _13862.y, _8092, _20176);\n \t    output_4 = input_0[1];\n \t    _20451.y = -_13862.y;\n \t    gl_Position = _20451;\n \t    EmitVertex();\n-\t    vec2 _13863 = _7058 + ((_19809 * ((-1.0) * input_2[0])) * _20181);\n+\t    vec2 _13863 = _7058 + ((_20907 * ((-1.0) * input_2[0])) * _20181);\n \t    float _9981 = _13863.x;\n-\t    vec4 _20452 = _24240;\n+\t    vec4 _20452 = _20663;\n \t    _20452.x = _9981;\n \t    output_0 = input_1[0];\n \t    output_1 = input_3[0];\n-\t    output_2 = _24240;\n-\t    output_3 = vec4(_9981, _13863.y, _14436, _20181);\n+\t    output_2 = _20663;\n+\t    output_3 = vec4(_9981, _13863.y, _15395, _20181);\n \t    output_4 = input_0[0];\n \t    _20452.y = -_13863.y;\n \t    gl_Position = _20452;\n \t    EmitVertex();\n-\t    vec2 _13864 = _13645 + ((_19809 * ((-1.0) * input_2[1])) * _20176);\n+\t    vec2 _13864 = _13645 + ((_20907 * ((-1.0) * input_2[1])) * _20176);\n \t    float _9982 = _13864.x;\n \t    vec4 _20453 = _9193;\n \t    _20453.x = _9982;\n \t    output_0 = input_1[1];\n \t    output_1 = input_3[1];\n-\t    output_2 = _24240;\n-\t    output_3 = vec4(_9982, _13864.y, _14689, _20176);\n+\t    output_2 = _20663;\n+\t    output_3 = vec4(_9982, _13864.y, _8092, _20176);\n \t    output_4 = input_0[1];\n \t    _20453.y = -_13864.y;\n \t    gl_Position = _20453;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ui.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/ui_texture_on_model.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 23,
          "changes": 68,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -47,15 +47,15 @@ VS\n \tDynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Color\n \tfloat2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup(\"Color/30\"); >;\n \tfloat2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup(\"Color/40\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3356 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -69,26 +69,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1108\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _164\n+\tstruct _1126\n \t{\n-\t    _1108 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1234\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _1234 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -124,18 +131,33 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _1108 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));\n \t    output_1 = (vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy;\n-\t    _23533.y = -_23533.y;\n-\t    gl_Position = _23533;\n+\t    _17895.y = -_17895.y;\n+\t    gl_Position = _17895;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/unlit.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n "
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/vis_cstest.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_aggregate.slang",
          "status": "modified",
          "additions": 43,
          "deletions": 20,
          "changes": 63,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -38,12 +38,12 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \tfloat3 g_vColor < Attribute(\"Color\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2860 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -57,26 +57,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _856\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2671\n+\tstruct _1126\n \t{\n-\t    _856 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _982 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -105,16 +112,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _856 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _23609 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = _Globals_1_g_vColor;\n-\t    _23609.y = -_23609.y;\n-\t    gl_Position = _23609;\n+\t    _17971.y = -_17971.y;\n+\t    gl_Position = _17971;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_cloth.slang",
          "status": "modified",
          "additions": 60,
          "deletions": 50,
          "changes": 110,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n \n@@ -57,19 +57,19 @@ VS\n \tfloat g_flAlpha < Default(1); UiType(Slider); UiGroup(\"Color\"); >;\n \tfloat3 g_vColorTint < Default3(1, 1, 1); UiType(Color); UiGroup(\"Color\"); >;\n \t\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// WireframeEmit\n \tfloat3 g_vWireframeEmit < UiType(Color); UiGroup(\"WireframeEmit\"); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3440 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3344 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n@@ -85,19 +85,31 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _940\n+\tstruct _1126\n \t{\n-\t    vec4 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n+\t};\n+\t\n+\tstruct _1119\n+\t{\n+\t    mat3x4 _m0;\n \t};\n \t\n-\tstruct _2839\n+\tstruct _1120\n \t{\n-\t    _940 _m0;\n+\t    mat3x4 _m0;\n \t};\n \t\n \tlayout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer\n \t{\n-\t    _1125 _m0[];\n+\t    _1126 _m0[];\n \t} g_instanceBuffer_1;\n \t\n \tstruct _1075\n@@ -111,18 +123,27 @@ VS\n \t\n \tlayout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer\n \t{\n-\t    _2839 _m0[];\n+\t    _1120 _m0[];\n \t} g_transformBuffer_1;\n \t\n-\tlayout(location = 0) in vec3 vPositionOs;\n-\tlayout(location = 1) in uint nInstanceIdx;\n+\tlayout(location = 1) in uint vPositionOs;\n+\tlayout(location = 0) in vec3 nInstanceIdx;\n \tlayout(location = 0) out vec3 output_0;\n \tlayout(location = 1) out vec4 output_1;\n \tlayout(location = 2) out vec3 output_2;\n \t\n \tvoid main()\n \t{\n-\t    vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n+\t    _1125 _22470;\n+\t    _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;\n+\t    _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;\n+\t    _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;\n+\t    _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;\n+\t    _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;\n+\t    _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;\n+\t    _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;\n+\t    _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;\n+\t    vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n \t    vec3 _6253 = _23812.xyz;\n \t    vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);\n \t    vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));\n@@ -154,7 +175,9 @@ VS\n \t        _19302 = _7676.z;\n \t    }\n \t    float _25150 = _23812.w;\n-\t    output_0 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);\n+\t    _1119 _19848;\n+\t    _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;\n+\t    output_0 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;\n \t    output_1 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);\n \t    output_2 = _Globals_.g_vWireframeEmit;\n \t}\n@@ -172,11 +195,11 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_EXT_control_flow_attributes)\n@@ -194,25 +217,13 @@ GS\n \tlayout(triangles) in;\n \tlayout(max_vertices = 3, triangle_strip) out;\n \t\n-\tstruct _1134\n-\t{\n-\t    vec3 _m0;\n-\t    vec4 _m1;\n-\t    vec3 _m2;\n-\t};\n-\t\n-\tstruct _239\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tstruct _1500\n+\tstruct _1224\n \t{\n-\t    _239 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t};\n \t\n-\tlayout(set = 2) uniform _1500 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1224 PerViewConstantBuffer_t;\n \t\n \tlayout(location = 0) in vec3 input_0[3];\n \tlayout(location = 1) in vec4 input_1[3];\n@@ -224,8 +235,7 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    _1134 _19582[3] = _1134[](_1134(input_0[0], input_1[0], input_2[0]), _1134(input_0[1], input_1[1], input_2[1]), _1134(input_0[2], input_1[2], input_2[2]));\n-\t    vec3 _15751 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));\n+\t    vec3 _15752 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));\n \t    int _7155;\n \t    int _13039 = 0;\n \t    SPIRV_CROSS_UNROLL\n@@ -235,13 +245,13 @@ GS\n \t        {\n \t            break;\n \t        }\n-\t        vec4 _23913 = (vec4(_19582[_13039]._m0.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t        output_0 = _15751;\n-\t        output_1 = _19582[_13039]._m0;\n-\t        output_2 = _19582[_13039]._m1;\n-\t        output_3 = _19582[_13039]._m2;\n-\t        _23913.y = -_23913.y;\n-\t        gl_Position = _23913;\n+\t        vec4 _17895 = (vec4(input_0[_13039].xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n+\t        output_0 = _15752;\n+\t        output_1 = input_0[_13039];\n+\t        output_2 = input_1[_13039];\n+\t        output_3 = input_2[_13039];\n+\t        _17895.y = -_17895.y;\n+\t        gl_Position = _17895;\n \t        EmitVertex();\n \t        _7155 = _13039 + 1;\n \t        _13039 = _7155;\n@@ -275,13 +285,13 @@ PS\n \tRenderState(DepthWriteEnable, F_TRANSLUCENT ? False : True);\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \t\n \t// IsSelected\n \tfloat g_flIsSelected < Attribute(\"IsSelected\"); UiType(Slider); UiGroup(\"IsSelected\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3984 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _3;\n \t\n@@ -301,10 +311,10 @@ PS\n \t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b3, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b3, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \tcbuffer _Globals_ : register(b0, space1)\n@@ -337,7 +347,7 @@ PS\n \t    float3 _14744 = normalize(input_1.xyz).xyz;\n \t    float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n \t    float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n-\t    float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;\n+\t    float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;\n \t    float4 _23714;\n \t    _23714.x = _21122.x;\n \t    _23714.y = _21122.y;\n@@ -355,8 +365,8 @@ PS\n \t        {\n \t            if (fmod((gl_FragCoord.x - 0.5f) + float(int(fmod(gl_FragCoord.y - 0.5f, 2.0f))), 2.0f) < 1.0f)\n \t            {\n-\t                float _18383 = _Globals_1_g_flIsSelected * 0.5f;\n-\t                _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _18383) + (_17971 * (1.0f - _18383));\n+\t                float _15961 = _Globals_1_g_flIsSelected * 0.5f;\n+\t                _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _15961) + (_17971 * (1.0f - _15961));\n \t                break;\n \t            }\n \t        }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_depth.slang",
          "status": "modified",
          "additions": 77,
          "deletions": 28,
          "changes": 105,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -96,23 +96,32 @@ PS\n \tDynamicCombo( D_IMGUI, 0..1 );\n \tDynamicCombo( D_VR_DEPTH_TEXTURE, 0..2 );\n \t\n+\tint g_nCombinedSlicesMode < Attribute(\"g_nCombinedSlicesMode\"); UiType(Slider); >;\n+\tint g_nDepthSlice < Attribute(\"g_nDepthSlice\"); UiType(Slider); >;\n \tTexture2D g_tDepthTexture < Attribute(\"InputTexture\"); SrgbRead(false); >;\n \t\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (1348 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3140 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tstatic const float3 _2728[3] = { float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f) };\n+\tstatic const float3 _2729[3] = { float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f) };\n+\t\n+\tcbuffer _Globals_ : register(b0, space1)\n+\t{\n+\t    int _Globals_1_g_nDepthSlice : packoffset(c0);\n+\t    int _Globals_1_g_nCombinedSlicesMode : packoffset(c0.y);\n+\t};\n \t\n \tTexture2D<float4> g_tDepthTexture : register(t30, space1);\n-\tSamplerComparisonState AddressU_Clamp_AddressV_Clamp_Filter_ComparisonMinMagMipLinear : register(s15, space1);\n+\tSamplerState AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint : register(s16, space1);\n \t\n-\tstatic float4 input_0;\n+\tstatic float2 input_0;\n \tstatic float4 output_0;\n-\tstatic float2 input_1;\n \t\n \tstruct PS_INPUT\n \t{\n-\t    float2 input_1 : TEXCOORD0;\n-\t    float4 input_0 : TEXCOORD1;\n+\t    float2 input_0 : TEXCOORD0;\n \t};\n \t\n \tstruct PS_OUTPUT\n@@ -122,35 +131,75 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    float4 _13155;\n-\t    _13155 = float4(0.0f, 0.0f, 0.0f, 1.0f);\n-\t    int _11515;\n-\t    float4 _13138;\n-\t    int _16208 = 0;\n-\t    for (;;)\n+\t    float4 _6805;\n+\t    if (_Globals_1_g_nCombinedSlicesMode == 0)\n \t    {\n-\t        if (!(_16208 < 64))\n+\t        _6805 = frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_Globals_1_g_nDepthSlice)).x * 32.0f).xxxx;\n+\t    }\n+\t    else\n+\t    {\n+\t        float4 _12502;\n+\t        if (_Globals_1_g_nCombinedSlicesMode == 1)\n+\t        {\n+\t            int _7603;\n+\t            float3 _22743;\n+\t            int _13039 = 9;\n+\t            for (;;)\n+\t            {\n+\t                if (!(_13039 >= 0))\n+\t                {\n+\t                    _22743 = 0.0f.xxx;\n+\t                    break;\n+\t                }\n+\t                if (frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_13039)).x) > 0.0f)\n+\t                {\n+\t                    _22743 = _2728[_13039 - 3 * (_13039 / 3)];\n+\t                    break;\n+\t                }\n+\t                _7603 = _13039 - 1;\n+\t                _13039 = _7603;\n+\t                continue;\n+\t            }\n+\t            _12502 = float4(_22743 * frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, 0.0f).x * 64.0f), 1.0f);\n+\t        }\n+\t        else\n \t        {\n-\t            break;\n+\t            float4 _12501;\n+\t            if (_Globals_1_g_nCombinedSlicesMode == 2)\n+\t            {\n+\t                float3 _13155;\n+\t                _13155 = 0.0f.xxx;\n+\t                float3 _5949;\n+\t                int _18752;\n+\t                int _16208 = 0;\n+\t                for (;;)\n+\t                {\n+\t                    if (!(_16208 < 10))\n+\t                    {\n+\t                        break;\n+\t                    }\n+\t                    _5949 = _13155 + (_2729[_16208 - 3 * (_16208 / 3)] * frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_16208)).x * 32.0f));\n+\t                    _18752 = _16208 + 1;\n+\t                    _13155 = _5949;\n+\t                    _16208 = _18752;\n+\t                    continue;\n+\t                }\n+\t                _12501 = float4(_13155, 1.0f);\n+\t            }\n+\t            else\n+\t            {\n+\t                _12501 = float4(0.0f, 0.0f, 0.0f, 1.0f);\n+\t            }\n+\t            _12502 = _12501;\n \t        }\n-\t        float3 _20312 = _13155.xyz + (0.015625f * g_tDepthTexture.SampleCmpLevelZero(AddressU_Clamp_AddressV_Clamp_Filter_ComparisonMinMagMipLinear, input_1.xy, float(_16208) * 0.015625f)).xxx;\n-\t        float4 _20488 = _13155;\n-\t        _20488.x = _20312.x;\n-\t        _20488.y = _20312.y;\n-\t        _13138 = _20488;\n-\t        _13138.z = _20312.z;\n-\t        _11515 = _16208 + 1;\n-\t        _13155 = _13138;\n-\t        _16208 = _11515;\n-\t        continue;\n+\t        _6805 = _12502;\n \t    }\n-\t    output_0 = _13155 * input_0;\n+\t    output_0 = _6805;\n \t}\n \t\n \tPS_OUTPUT MainPs(PS_INPUT stage_input)\n \t{\n \t    input_0 = stage_input.input_0;\n-\t    input_1 = stage_input.input_1;\n \t    MainPs_inner();\n \t    PS_OUTPUT stage_output;\n \t    stage_output.output_0 = output_0;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_distance_field.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -94,7 +94,7 @@ PS\n \t    float2 _Globals_1_g_vViewportRatio : packoffset(c0);\n \t};\n \t\n-\tTexture2DArray<float4> g_tVisualizeDistanceField_unexpectedTypeId470_1107 : register(t30, space1);\n+\tTexture2DArray<float4> g_tVisualizeDistanceField : register(t30, space1);\n \tSamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint : register(s14, space1);\n \t\n \tstatic float2 input_0;\n@@ -112,7 +112,7 @@ PS\n \t\n \tvoid MainPs_inner()\n \t{\n-\t    float4 _3401 = g_tVisualizeDistanceField_unexpectedTypeId470_1107.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, float3(input_0 * _Globals_1_g_vViewportRatio, 0.0f));\n+\t    float4 _3401 = g_tVisualizeDistanceField.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, float3(input_0 * _Globals_1_g_vViewportRatio, 0.0f));\n \t    float _17666 = _3401.x;\n \t    output_0 = float4(_17666, _17666, _17666, (_17666 > 0.0500000007450580596923828125f) ? 0.5f : 0.0f);\n \t}"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_implicit.slang",
          "status": "modified",
          "additions": 48,
          "deletions": 26,
          "changes": 74,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -43,11 +43,11 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2180 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -61,27 +61,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _940\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2839\n+\tstruct _1126\n \t{\n-\t    _940 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _1066\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _1066 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -108,19 +115,34 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _940 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _19956 = mul(_14779, float4(vPositionOs.xyz, 1.0f));\n-\t    float4 _8283 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    output_0 = _19956;\n-\t    output_1 = normalize(mul(_14779, float4(vNormalOs, 0.0f)));\n-\t    _8283.y = -_8283.y;\n-\t    gl_Position = _8283;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float3 _23051 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));\n+\t    float4 _19645 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    output_0 = _23051;\n+\t    output_1 = normalize(mul(_19848._m0, float4(vNormalOs, 0.0f)));\n+\t    _19645.y = -_19645.y;\n+\t    gl_Position = _19645;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_instanced.slang",
          "status": "modified",
          "additions": 43,
          "deletions": 20,
          "changes": 63,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -38,12 +38,12 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \tfloat3 g_vColor < Attribute(\"Color\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2860 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (2176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -57,26 +57,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _856\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2671\n+\tstruct _1126\n \t{\n-\t    _856 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _982 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -105,16 +112,32 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _856 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _23609 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = _Globals_1_g_vColor;\n-\t    _23609.y = -_23609.y;\n-\t    gl_Position = _23609;\n+\t    _17971.y = -_17971.y;\n+\t    gl_Position = _17971;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_nav.slang",
          "status": "modified",
          "additions": 44,
          "deletions": 26,
          "changes": 70,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n \n@@ -50,8 +50,8 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Depth Bias Amount\n \tfloat g_DepthBiasAmount < Default(0.025); UiType(Slider); UiGroup(\"Depth Bias Amount\"); >;\n@@ -65,11 +65,11 @@ VS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5008 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4324 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n@@ -85,24 +85,31 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1150\n+\tstruct _1126\n \t{\n-\t    vec4 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _248\n+\tstruct _1119\n \t{\n-\t    _1150 _m0;\n+\t    mat3x4 _m0;\n \t};\n \t\n-\tstruct _1276\n+\tstruct _1120\n \t{\n-\t    vec4 _m0[4];\n+\t    mat3x4 _m0;\n \t};\n \t\n \tlayout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer\n \t{\n-\t    _1125 _m0[];\n+\t    _1126 _m0[];\n \t} g_instanceBuffer_1;\n \t\n \tstruct _1100\n@@ -117,19 +124,19 @@ VS\n \t\n \tlayout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer\n \t{\n-\t    _248 _m0[];\n+\t    _1120 _m0[];\n \t} g_transformBuffer_1;\n \t\n-\tstruct _563\n+\tstruct _1224\n \t{\n-\t    _1276 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t};\n \t\n-\tlayout(set = 0) uniform _563 PerViewConstantBuffer_t;\n+\tlayout(set = 0) uniform _1224 PerViewConstantBuffer_t;\n \t\n-\tlayout(location = 0) in vec3 vPositionOs;\n-\tlayout(location = 1) in uint nInstanceIdx;\n+\tlayout(location = 1) in uint vPositionOs;\n+\tlayout(location = 0) in vec3 nInstanceIdx;\n \tlayout(location = 0) out vec3 output_0;\n \tlayout(location = 1) out vec3 output_1;\n \tlayout(location = 2) out vec4 output_2;\n@@ -138,7 +145,16 @@ VS\n \t\n \tvoid main()\n \t{\n-\t    vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n+\t    _1125 _22470;\n+\t    _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;\n+\t    _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;\n+\t    _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;\n+\t    _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;\n+\t    _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;\n+\t    _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;\n+\t    _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;\n+\t    _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;\n+\t    vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n \t    vec3 _6253 = _23812.xyz;\n \t    vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);\n \t    vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));\n@@ -170,18 +186,20 @@ VS\n \t        _19302 = _7676.z;\n \t    }\n \t    float _25150 = _23812.w;\n-\t    vec3 _19956 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);\n-\t    vec4 _23913 = (vec4(_19956.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t    float _13048 = _23913.z;\n-\t    float _11452 = _23913.w;\n-\t    vec4 _19428 = _23913;\n+\t    _1119 _19848;\n+\t    _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;\n+\t    vec3 _19956 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;\n+\t    vec4 _18275 = (vec4(_19956.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n+\t    float _13048 = _18275.z;\n+\t    float _11452 = _18275.w;\n+\t    vec4 _19428 = _18275;\n \t    _19428.z = _13048 - (mix(_Globals_.g_DepthBiasAmount, 9.9999999747524270787835121154785e-07, saturate(_13048 / _11452)) * _11452);\n \t    output_0 = vec3(0.0);\n \t    output_1 = _19956;\n \t    output_2 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);\n \t    output_3 = vec3(0.0);\n \t    output_4 = _Globals_.g_vWireframeEmit;\n-\t    _19428.y = -_23913.y;\n+\t    _19428.y = -_18275.y;\n \t    gl_Position = _19428;\n \t}\n \t"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_physics.slang",
          "status": "modified",
          "additions": 60,
          "deletions": 50,
          "changes": 110,
          "patch": "@@ -7,8 +7,8 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n-\t// Platform: VULKAN_SM_40\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n \t// Programs: gs, ps, vs\n }\n \n@@ -56,19 +56,19 @@ VS\n \tfloat g_flAlpha < Default(1); UiType(Slider); UiGroup(\"Color\"); >;\n \tfloat3 g_vColorTint < Default3(1, 1, 1); UiType(Color); UiGroup(\"Color\"); >;\n \t\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// WireframeEmit\n \tfloat3 g_vWireframeEmit < UiType(Color); UiGroup(\"WireframeEmit\"); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (3440 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3344 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n@@ -84,19 +84,31 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _940\n+\tstruct _1126\n \t{\n-\t    vec4 _m0[3];\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n+\t};\n+\t\n+\tstruct _1119\n+\t{\n+\t    mat3x4 _m0;\n \t};\n \t\n-\tstruct _2839\n+\tstruct _1120\n \t{\n-\t    _940 _m0;\n+\t    mat3x4 _m0;\n \t};\n \t\n \tlayout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer\n \t{\n-\t    _1125 _m0[];\n+\t    _1126 _m0[];\n \t} g_instanceBuffer_1;\n \t\n \tstruct _1075\n@@ -110,18 +122,27 @@ VS\n \t\n \tlayout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer\n \t{\n-\t    _2839 _m0[];\n+\t    _1120 _m0[];\n \t} g_transformBuffer_1;\n \t\n-\tlayout(location = 0) in vec3 vPositionOs;\n-\tlayout(location = 1) in uint nInstanceIdx;\n+\tlayout(location = 1) in uint vPositionOs;\n+\tlayout(location = 0) in vec3 nInstanceIdx;\n \tlayout(location = 0) out vec3 output_0;\n \tlayout(location = 1) out vec4 output_1;\n \tlayout(location = 2) out vec3 output_2;\n \t\n \tvoid main()\n \t{\n-\t    vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n+\t    _1125 _22470;\n+\t    _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;\n+\t    _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;\n+\t    _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;\n+\t    _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;\n+\t    _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;\n+\t    _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;\n+\t    _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;\n+\t    _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;\n+\t    vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);\n \t    vec3 _6253 = _23812.xyz;\n \t    vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);\n \t    vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));\n@@ -153,7 +174,9 @@ VS\n \t        _19302 = _7676.z;\n \t    }\n \t    float _25150 = _23812.w;\n-\t    output_0 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);\n+\t    _1119 _19848;\n+\t    _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;\n+\t    output_0 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;\n \t    output_1 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);\n \t    output_2 = _Globals_.g_vWireframeEmit;\n \t}\n@@ -172,11 +195,11 @@ GS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// Unsupported shader stage.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t#if defined(GL_EXT_control_flow_attributes)\n@@ -194,25 +217,13 @@ GS\n \tlayout(triangles) in;\n \tlayout(max_vertices = 3, triangle_strip) out;\n \t\n-\tstruct _1134\n-\t{\n-\t    vec3 _m0;\n-\t    vec4 _m1;\n-\t    vec3 _m2;\n-\t};\n-\t\n-\tstruct _239\n-\t{\n-\t    vec4 _m0[4];\n-\t};\n-\t\n-\tstruct _1500\n+\tstruct _1224\n \t{\n-\t    _239 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t};\n \t\n-\tlayout(set = 2) uniform _1500 PerViewConstantBuffer_t;\n+\tlayout(set = 2) uniform _1224 PerViewConstantBuffer_t;\n \t\n \tlayout(location = 0) in vec3 input_0[3];\n \tlayout(location = 1) in vec4 input_1[3];\n@@ -224,8 +235,7 @@ GS\n \t\n \tvoid main()\n \t{\n-\t    _1134 _19582[3] = _1134[](_1134(input_0[0], input_1[0], input_2[0]), _1134(input_0[1], input_1[1], input_2[1]), _1134(input_0[2], input_1[2], input_2[2]));\n-\t    vec3 _15751 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));\n+\t    vec3 _15752 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));\n \t    int _7155;\n \t    int _13039 = 0;\n \t    SPIRV_CROSS_UNROLL\n@@ -235,13 +245,13 @@ GS\n \t        {\n \t            break;\n \t        }\n-\t        vec4 _23913 = (vec4(_19582[_13039]._m0.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n-\t        output_0 = _15751;\n-\t        output_1 = _19582[_13039]._m0;\n-\t        output_2 = _19582[_13039]._m1;\n-\t        output_3 = _19582[_13039]._m2;\n-\t        _23913.y = -_23913.y;\n-\t        gl_Position = _23913;\n+\t        vec4 _17895 = (vec4(input_0[_13039].xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n+\t        output_0 = _15752;\n+\t        output_1 = input_0[_13039];\n+\t        output_2 = input_1[_13039];\n+\t        output_3 = input_2[_13039];\n+\t        _17895.y = -_17895.y;\n+\t        gl_Position = _17895;\n \t        EmitVertex();\n \t        _7155 = _13039 + 1;\n \t        _13039 = _7155;\n@@ -275,13 +285,13 @@ PS\n \tRenderState(DepthWriteEnable, F_TRANSLUCENT ? False : True);\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n \tcbuffer RoughnessLightingGlobalsCB_t < Attribute(\"RoughnessLightingGlobalsCB_t\"); >;\n-\tcbuffer SunLightShaderParamsCB < Attribute(\"SunLightShaderParamsCB\"); >;\n+\tcbuffer SunLightShaderParamsCB_t < Attribute(\"SunLightShaderParamsCB_t\"); >;\n \t\n \t// IsSelected\n \tfloat g_flIsSelected < Attribute(\"IsSelected\"); UiType(Slider); UiGroup(\"IsSelected\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (4000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (3984 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstatic float4 _3;\n \t\n@@ -301,10 +311,10 @@ PS\n \t    float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);\n \t};\n \t\n-\tcbuffer SunLightShaderParamsCB : register(b3, space1)\n+\tcbuffer SunLightShaderParamsCB_t : register(b3, space1)\n \t{\n-\t    float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);\n-\t    float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);\n+\t    float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);\n+\t    float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);\n \t};\n \t\n \tcbuffer _Globals_ : register(b0, space1)\n@@ -337,7 +347,7 @@ PS\n \t    float3 _14744 = normalize(input_1.xyz).xyz;\n \t    float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);\n \t    float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);\n-\t    float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;\n+\t    float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;\n \t    float4 _23714;\n \t    _23714.x = _21122.x;\n \t    _23714.y = _21122.y;\n@@ -355,8 +365,8 @@ PS\n \t        {\n \t            if (fmod((gl_FragCoord.x - 0.5f) + float(int(fmod(gl_FragCoord.y - 0.5f, 2.0f))), 2.0f) < 1.0f)\n \t            {\n-\t                float _18383 = _Globals_1_g_flIsSelected * 0.5f;\n-\t                _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _18383) + (_17971 * (1.0f - _18383));\n+\t                float _15961 = _Globals_1_g_flIsSelected * 0.5f;\n+\t                _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _15961) + (_17971 * (1.0f - _15961));\n \t                break;\n \t            }\n \t        }"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_quad_overdraw.slang",
          "status": "modified",
          "additions": 6,
          "deletions": 6,
          "changes": 12,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -80,12 +80,12 @@ PS\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n \t// SPIR-V source (2872 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n-\tcbuffer _Globals_ : register(b0, space1)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space1)\n \t{\n-\t    float4 _Globals_1_m0 : packoffset(c22);\n+\t    float4 PerViewConstantBuffer_t_1_m0 : packoffset(c22);\n \t};\n \t\n-\tTexture2D<uint4> g_tQuadOverdrawUAV_unexpectedTypeId404_1041 : register(t30, space1);\n+\tTexture2D<uint4> g_tQuadOverdrawUAV : register(t30, space1);\n \t\n \tstatic float4 gl_FragCoord;\n \tstatic float4 output_0;\n@@ -103,7 +103,7 @@ PS\n \tvoid MainPs_inner()\n \t{\n \t    float4 _21709;\n-\t    switch (g_tQuadOverdrawUAV_unexpectedTypeId404_1041.Load(int3(uint2(gl_FragCoord.xy * 0.5f.xx), 0)).x)\n+\t    switch (g_tQuadOverdrawUAV.Load(int3(uint2(gl_FragCoord.xy * 0.5f.xx), 0)).x)\n \t    {\n \t        case 0u:\n \t        {\n@@ -161,7 +161,7 @@ PS\n \t            break;\n \t        }\n \t    }\n-\t    float2 _21065 = gl_FragCoord.xy * _Globals_1_m0.xy;\n+\t    float2 _21065 = gl_FragCoord.xy * PerViewConstantBuffer_t_1_m0.xy;\n \t    float2 _12444 = _21065.xy;\n \t    bool _12885;\n \t    if (all(bool2(_12444.x > float2(0.100000001490116119384765625f, 0.89999997615814208984375f).x, _12444.y > float2(0.100000001490116119384765625f, 0.89999997615814208984375f).y)))"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/visualize_rtproxy.slang",
          "status": "modified",
          "additions": 45,
          "deletions": 22,
          "changes": 67,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -41,11 +41,11 @@ VS\n \tDynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );\n \t\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2672 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (1988 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -59,27 +59,34 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _856\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _2671\n+\tstruct _1126\n \t{\n-\t    _856 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _982\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space0);\n \tByteAddressBuffer g_transformBuffer : register(t30, space0);\n-\tcbuffer _Globals_ : register(b0, space0)\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n \t{\n-\t    _982 _Globals_1_m0 : packoffset(c0);\n-\t    float4 _Globals_1_m1 : packoffset(c24);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n \t\n@@ -102,15 +109,31 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    _856 _25207;\n-\t    [unroll]\n-\t    for (int _1ident = 0; _1ident < 3; _1ident++)\n-\t    {\n-\t        _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t    }\n-\t    float4 _24787 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);\n-\t    _24787.y = -_24787.y;\n-\t    gl_Position = _24787;\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _19924;\n+\t    _19924._m0 = _24007._m0;\n+\t    _19924._m1 = _24007._m1;\n+\t    _19924._m2 = _24007._m2;\n+\t    _19924._m3 = _24007._m3;\n+\t    _19924._m4 = _24007._m4;\n+\t    _19924._m5 = _24007._m5;\n+\t    _19924._m6 = _24007._m6;\n+\t    _19924._m7 = _24007._m7;\n+\t    _1120 _8152;\n+\t    _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));\n+\t    _1119 _19848;\n+\t    _19848._m0 = _8152._m0;\n+\t    float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    _19149.y = -_19149.y;\n+\t    gl_Position = _19149;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/vt_cs.slang",
          "status": "added",
          "additions": 86,
          "deletions": 0,
          "changes": 86,
          "patch": "@@ -0,0 +1,86 @@\n+//=================================================================================================\n+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io\n+//=================================================================================================\n+HEADER\n+{\n+\tDescription = \"Virtual Texture Manager Shader\";\n+\tDevShader = true;\n+\tVersion = 0;\n+\t\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_60\n+\t// Programs: cs\n+}\n+\n+MODES\n+{\n+\tDefault();\n+}\n+\n+FEATURES\n+{\n+}\n+\n+COMMON\n+{\n+\t#include \"system.fxc\"\n+}\n+\n+CS\n+{\n+\tDynamicCombo( D_VARIANT, 0..6 );\n+\t\n+\tRWStructuredBuffer g_compactTexUsageBuf < Attribute(\"CompactTexUsageBuffer\"); >;\n+\tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n+\tint g_nPageTablePatchCount < Attribute(\"PageTablePatchCount\"); UiType(Slider); >;\n+\tRWBuffer<float4> g_outputPageTable < Attribute(\"VirtualPageTableBuffer\"); >;\n+\tRWByteAddressBuffer g_outputTexInfoBuffer < Attribute(\"VirtualTexInfoBuffer\"); >;\n+\tBuffer g_pageTablePatchBuffer < Attribute(\"VTPageTablePatchBuffer\"); SrgbRead(false); >;\n+\tRWTexture2D<float4>[] g_tTileAtlas < Attribute(\"PhysicalPageCache\"); >;\n+\tBuffer g_texInfoPatchBuffer < Attribute(\"VTTexInfoPatchBuffer\"); SrgbRead(false); >;\n+\tRWStructuredBuffer g_texUsageBuf < Attribute(\"TexUsageBuffer\"); >;\n+\tBuffer g_tileAtlasUpdateQueue < Attribute(\"VTTileAtlasUpdateQueue\"); SrgbRead(false); >;\n+\tRWStructuredBuffer g_vtAuxBuf < Attribute(\"VirtualTextureAuxBuffer\"); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tRWTexture2DArray<uint4> _5248 : register(u158, space0);\n+\t\n+\tstatic uint3 gl_GlobalInvocationID;\n+\tstruct SPIRV_Cross_Input\n+\t{\n+\t    uint3 gl_GlobalInvocationID : SV_DispatchThreadID;\n+\t};\n+\t\n+\tvoid MainCs_inner()\n+\t{\n+\t    uint _16380;\n+\t    uint _13039 = 0u;\n+\t    for (;;)\n+\t    {\n+\t        if (!(_13039 < 6u))\n+\t        {\n+\t            break;\n+\t        }\n+\t        _5248[uint3(gl_GlobalInvocationID.xy, _13039)] = uint4(0u, 0u, 0u, 0u);\n+\t        _16380 = _13039 + 1u;\n+\t        _13039 = _16380;\n+\t        continue;\n+\t    }\n+\t}\n+\t\n+\t[numthreads(8, 8, 1)]\n+\tvoid MainCs(SPIRV_Cross_Input stage_input)\n+\t{\n+\t    gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;\n+\t    MainCs_inner();\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+\t\n+\tBoolAttribute(BindlessResources, true);\n+\t\n+}"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/vt_debug_imgui.slang",
          "status": "added",
          "additions": 163,
          "deletions": 0,
          "changes": 163,
          "patch": "@@ -0,0 +1,163 @@\n+//=================================================================================================\n+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io\n+//=================================================================================================\n+HEADER\n+{\n+\tDescription = \"Shader to draw Dear ImGui\";\n+\tDevShader = true;\n+\tVersion = 0;\n+\t\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n+\t// Programs: ps, vs\n+}\n+\n+MODES\n+{\n+\tDefault();\n+}\n+\n+FEATURES\n+{\n+}\n+\n+COMMON\n+{\n+\t#include \"system.fxc\"\n+}\n+\n+struct VS_INPUT\n+{\n+\tfloat4 vColor      : COLOR0     < Semantic( Color ); >;                                       \n+\tfloat3 vPositionPs : POSITION0  < Semantic( PosXyz ); >;                                      \n+\tfloat4 vUV         : TEXCOORD0  < Semantic( texcoord ); >;                                    \n+};\n+\n+VS\n+{\n+\t\n+\tfloat4 g_OrthoParams < Attribute(\"ImGuiOrthoParams\"); UiType(VectorText); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (1368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tcbuffer _Globals_ : register(b0, space0)\n+\t{\n+\t    float4 _Globals_1_g_OrthoParams : packoffset(c0);\n+\t};\n+\t\n+\t\n+\tstatic float4 gl_Position;\n+\tstatic float2 vPositionPs;\n+\tstatic float4 vColor;\n+\tstatic float2 vUV;\n+\tstatic float2 output_0;\n+\tstatic float4 output_1;\n+\t\n+\tstruct VS_INPUT\n+\t{\n+\t    float2 vPositionPs : TEXCOORD0;\n+\t    float2 vUV : TEXCOORD1;\n+\t    float4 vColor : TEXCOORD2;\n+\t};\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float2 output_0 : TEXCOORD0;\n+\t    float4 output_1 : TEXCOORD1;\n+\t    float4 gl_Position : SV_Position;\n+\t};\n+\t\n+\tvoid MainVs_inner()\n+\t{\n+\t    float4 _23513 = mul(transpose(float4x4(float4(2.0f / (_Globals_1_g_OrthoParams.y - _Globals_1_g_OrthoParams.x), 0.0f, 0.0f, 0.0f), float4(0.0f, 2.0f / (_Globals_1_g_OrthoParams.z - _Globals_1_g_OrthoParams.w), 0.0f, 0.0f), float4(0.0f, 0.0f, 0.5f, 0.0f), float4((_Globals_1_g_OrthoParams.y + _Globals_1_g_OrthoParams.x) / (_Globals_1_g_OrthoParams.x - _Globals_1_g_OrthoParams.y), (_Globals_1_g_OrthoParams.z + _Globals_1_g_OrthoParams.w) / (_Globals_1_g_OrthoParams.w - _Globals_1_g_OrthoParams.z), 0.5f, 1.0f))), float4(vPositionPs.xy, 0.0f, 1.0f));\n+\t    output_0 = vUV;\n+\t    output_1 = vColor;\n+\t    _23513.y = -_23513.y;\n+\t    gl_Position = _23513;\n+\t}\n+\t\n+\tPS_INPUT MainVs(VS_INPUT stage_input)\n+\t{\n+\t    vPositionPs = stage_input.vPositionPs;\n+\t    vColor = stage_input.vColor;\n+\t    vUV = stage_input.vUV;\n+\t    MainVs_inner();\n+\t    PS_INPUT stage_output;\n+\t    stage_output.gl_Position = gl_Position;\n+\t    stage_output.output_0 = output_0;\n+\t    stage_output.output_1 = output_1;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}\n+\n+PS\n+{\n+\t\n+\tint g_ArrayIndex < Attribute(\"ImGuiTextureArrayIndex\"); UiType(Slider); >;\n+\tfloat4 g_ChannelMask < Attribute(\"ImGuiChannelMask\"); UiType(VectorText); >;\n+\tTexture2D g_texture < Attribute(\"ImGuiTexture\"); SrgbRead(false); >;\n+\tTexture2DArray g_textureArray < Attribute(\"ImGuiTextureArray\"); SrgbRead(false); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (1584 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tcbuffer _Globals_ : register(b0, space1)\n+\t{\n+\t    float4 _Globals_1_g_ChannelMask : packoffset(c0);\n+\t    int _Globals_1_g_ArrayIndex : packoffset(c1);\n+\t};\n+\t\n+\tTexture2D<float4> g_texture : register(t30, space1);\n+\tSamplerState Filter_MinMagMipLinear : register(s14, space1);\n+\tTexture2DArray<float4> g_textureArray : register(t31, space1);\n+\tSamplerState Filter_MinMagMipLinear_1 : register(s15, space1);\n+\t\n+\tstatic float2 input_0;\n+\tstatic float4 input_1;\n+\tstatic float4 output_0;\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float2 input_0 : TEXCOORD0;\n+\t    float4 input_1 : TEXCOORD1;\n+\t};\n+\t\n+\tstruct PS_OUTPUT\n+\t{\n+\t    float4 output_0 : SV_Target0;\n+\t};\n+\t\n+\tvoid MainPs_inner()\n+\t{\n+\t    float4 _21760 = g_texture.Sample(Filter_MinMagMipLinear, input_0.xy);\n+\t    float4 _21709;\n+\t    if (_Globals_1_g_ArrayIndex != (-1))\n+\t    {\n+\t        _21709 = g_textureArray.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);\n+\t    }\n+\t    else\n+\t    {\n+\t        _21709 = _21760;\n+\t    }\n+\t    output_0 = input_1 * lerp(1.0f.xxxx, _21709, _Globals_1_g_ChannelMask);\n+\t}\n+\t\n+\tPS_OUTPUT MainPs(PS_INPUT stage_input)\n+\t{\n+\t    input_0 = stage_input.input_0;\n+\t    input_1 = stage_input.input_1;\n+\t    MainPs_inner();\n+\t    PS_OUTPUT stage_output;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/wind_controller_visualize.slang",
          "status": "modified",
          "additions": 13,
          "deletions": 18,
          "changes": 31,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -39,27 +39,22 @@ VS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5300 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4744 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \t#version 460\n \t\n-\tstruct _323\n+\tstruct _365\n \t{\n \t    vec4 _m0[4];\n \t};\n \t\n-\tstruct _1605\n+\tstruct _1689\n \t{\n-\t    _323 _m0;\n-\t};\n-\t\n-\tstruct _324\n-\t{\n-\t    vec4 _m0[4];\n+\t    _365 _m0;\n \t};\n \t\n \tstruct _995\n@@ -70,22 +65,22 @@ VS\n \t\n \tlayout(set = 0) uniform _995 _Globals_;\n \t\n-\tstruct _1173\n+\tstruct _1341\n \t{\n-\t    _1605 _m0;\n+\t    _1689 _m0;\n \t    float _m1;\n \t};\n \t\n-\tlayout(set = 0) uniform _1173 WindControllerConstantBuffer_t;\n+\tlayout(set = 0) uniform _1341 WindControllerConstantBuffer_t;\n \t\n-\tstruct _1732\n+\tstruct _1288\n \t{\n-\t    _324 _m0;\n+\t    mat4 _m0;\n \t    vec4 _m1;\n \t    vec3 _m2;\n \t};\n \t\n-\tlayout(set = 0) uniform _1732 PerViewConstantBuffer_t;\n+\tlayout(set = 0) uniform _1288 PerViewConstantBuffer_t;\n \t\n \tlayout(set = 0, binding = 30) uniform texture3D g_tWind;\n \tlayout(set = 0, binding = 14) uniform sampler AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint;\n@@ -131,7 +126,7 @@ VS\n \t        {\n \t            _19363 = _24854;\n \t        }\n-\t        _18053 = (vec4(((_19363.xyz + PerViewConstantBuffer_t._m2.xyz) - vec3(0.0, 0.0, 1000.0)).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));\n+\t        _18053 = (vec4(((_19363.xyz + PerViewConstantBuffer_t._m2.xyz) - vec3(0.0, 0.0, 1000.0)).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;\n \t    }\n \t    float _21177 = saturate(_3401.z);\n \t    float _9436 = _21177 * _21177;"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/wind_noise_cs.slang",
          "status": "modified",
          "additions": 7,
          "deletions": 7,
          "changes": 14,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -34,8 +34,8 @@ CS\n \tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n-\t// cbuffer ID 3246 (name: _Globals_), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t// cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.\n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n@@ -60,7 +60,7 @@ CS\n \t    float _m6;\n \t};\n \t\n-\tlayout(set = 0) uniform _117 _Globals_;\n+\tlayout(set = 0) uniform _117 WindControllerConstantBuffer_t;\n \t\n \tlayout(set = 0, binding = 158) uniform writeonly image3D _4363;\n \t\n@@ -70,13 +70,13 @@ CS\n \t    uint _13039 = 0u;\n \t    for (;;)\n \t    {\n-\t        if (!(_13039 < _Globals_._m0._m0))\n+\t        if (!(_13039 < WindControllerConstantBuffer_t._m0._m0))\n \t        {\n \t            break;\n \t        }\n \t        float _17644 = float(_13039);\n-\t        vec2 _4678 = _Globals_._m1 + ((vec2(gl_GlobalInvocationID.xy) * _Globals_._m2) * exp2(_Globals_._m4 * _17644));\n-\t        float _3269 = (_Globals_._m3 * exp2(_Globals_._m5 * _17644)) + (_Globals_._m6 * _17644);\n+\t        vec2 _4678 = WindControllerConstantBuffer_t._m1 + ((vec2(gl_GlobalInvocationID.xy) * WindControllerConstantBuffer_t._m2) * exp2(WindControllerConstantBuffer_t._m4 * _17644));\n+\t        float _3269 = (WindControllerConstantBuffer_t._m3 * exp2(WindControllerConstantBuffer_t._m5 * _17644)) + (WindControllerConstantBuffer_t._m6 * _17644);\n \t        vec3 _8570 = vec3(_4678, _3269);\n \t        vec3 _12135 = _8570 * mat3(vec3(0.0, 1.0, 1.0), vec3(1.0, 0.0, 1.0), vec3(1.0, 1.0, 0.0));\n \t        vec3 _16879 = floor(_12135);"
        },
        {
          "filename": "game/core/shaders_vulkan_dir/shaders/vfx/wind_update_cs.slang",
          "status": "modified",
          "additions": 8,
          "deletions": 8,
          "changes": 16,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -37,7 +37,7 @@ CS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n@@ -46,24 +46,24 @@ CS\n \t#version 460\n \tlayout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;\n \t\n-\tstruct _310\n+\tstruct _226\n \t{\n \t    vec4 _m0[4];\n \t};\n \t\n-\tstruct _1968\n+\tstruct _1716\n \t{\n \t    vec4 _m0;\n-\t    _310 _m1;\n+\t    _226 _m1;\n \t    float _m2;\n \t    float _m3;\n \t};\n \t\n \tvec4 _4;\n \t\n-\tstruct _2183\n+\tstruct _1679\n \t{\n-\t    _1968 _m0;\n+\t    _1716 _m0;\n \t    float _m1;\n \t    float _m2;\n \t    float _m3;\n@@ -75,7 +75,7 @@ CS\n \t    float _m9;\n \t};\n \t\n-\tlayout(set = 0) uniform _2183 WindControllerConstantBuffer_t;\n+\tlayout(set = 0) uniform _1679 WindControllerConstantBuffer_t;\n \t\n \tlayout(set = 0, binding = 158) uniform writeonly image3D _4903;\n \t"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/bilateral_upsample.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 10,
          "changes": 15,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }\n@@ -41,12 +41,7 @@ VS\n \tfloat4 g_vlowResTexelSize < Attribute(\"LowResTexelSize\"); UiType(VectorText); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (2660 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n-\t\n-\tstruct _2200\n-\t{\n-\t    float4 _m0[4];\n-\t};\n+\t// SPIR-V source (2056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer _Globals_ : register(b0, space0)\n \t{\n@@ -55,7 +50,7 @@ VS\n \t\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _2200 PerViewConstantBuffer_t_1_m0 : packoffset(c4);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c4);\n \t    float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);\n \t};\n \t\n@@ -93,14 +88,14 @@ VS\n \t{\n \t    float4 _14513 = float4(vPositionPs, 0.0f, 1.0f);\n \t    float2 _7669 = vTexCoord - (_Globals_1_g_vlowResTexelSize.xy * 0.5f);\n-\t    float4 _24010 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));\n+\t    float4 _14015 = mul(PerViewConstantBuffer_t_1_m0, float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));\n \t    output_0 = vTexCoord;\n \t    output_1 = 1.0f.xxxx;\n \t    output_2 = _7669;\n \t    output_3 = _7669 + float2(_Globals_1_g_vlowResTexelSize.x, 0.0f);\n \t    output_4 = _7669 + float2(0.0f, _Globals_1_g_vlowResTexelSize.y);\n \t    output_5 = _7669 + _Globals_1_g_vlowResTexelSize.xy;\n-\t    output_6 = normalize((_24010.xyz / _24010.w.xxx) - PerViewConstantBuffer_t_1_m1.xyz);\n+\t    output_6 = normalize((_14015.xyz / _14015.w.xxx) - PerViewConstantBuffer_t_1_m1.xyz);\n \t    _14513.y = -vPositionPs.y;\n \t    gl_Position = _14513;\n \t}"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/bloom_cs.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 5,
          "changes": 10,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: cs\n }\n@@ -65,7 +65,7 @@ CS\n \t\n \t// SPIR-V reflection failed for backend HLSL:\n \t// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vInputDownSampleDim) cannot be expressed with either HLSL packing layout or packoffset.\n-\t// \n+\t//\n \t// Re-attempting reflection with the GLSL backend.\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n@@ -96,11 +96,11 @@ CS\n \t{\n \t    do\n \t    {\n-\t        uint _25171 = (gl_WorkGroupID.x * 8u) + gl_LocalInvocationID.x;\n+\t        uint _16337 = (gl_WorkGroupID.x * 8u) + gl_LocalInvocationID.x;\n \t        uint _24071 = (gl_WorkGroupID.y * 8u) + gl_LocalInvocationID.y;\n-\t        uvec2 _13756 = uvec2(_25171, _24071);\n+\t        uvec2 _13756 = uvec2(_16337, _24071);\n \t        bool _12885;\n-\t        if (_25171 >= _Globals_.g_nDstWidth)\n+\t        if (_16337 >= _Globals_.g_nDstWidth)\n \t        {\n \t            _12885 = true;\n \t        }"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/blur.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/blur_with_depth.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = true;\n \tVersion = 0;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/bomb_blast.slang",
          "status": "added",
          "additions": 212,
          "deletions": 0,
          "changes": 212,
          "patch": "@@ -0,0 +1,212 @@\n+//=================================================================================================\n+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io\n+//=================================================================================================\n+HEADER\n+{\n+\tDescription = \"Bomb Blast\";\n+\tDevShader = true;\n+\tVersion = 0;\n+\t\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n+\t// Programs: ps, vs\n+}\n+\n+MODES\n+{\n+\tDefault();\n+}\n+\n+FEATURES\n+{\n+}\n+\n+COMMON\n+{\n+\t#include \"system.fxc\"\n+}\n+\n+struct VS_INPUT\n+{\n+\tfloat3 vPositionSs : POSITION0  < Semantic( PosXyz ); >;                                      \n+\tfloat4 vTexCoord   : TEXCOORD0  < Semantic( texcoord ); >;                                    \n+};\n+\n+VS\n+{\n+\t\n+\tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n+\tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n+\tExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerGpuSet\"); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (1292 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tcbuffer PerViewConstantBuffer_t : register(b0, space0)\n+\t{\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c4);\n+\t    float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);\n+\t};\n+\t\n+\t\n+\tstatic float4 gl_Position;\n+\tstatic float3 vPositionSs;\n+\tstatic float2 vTexCoord;\n+\tstatic float3 output_0;\n+\t\n+\tstruct VS_INPUT\n+\t{\n+\t    float3 vPositionSs : TEXCOORD0;\n+\t    float2 vTexCoord : TEXCOORD1;\n+\t};\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float3 output_0 : TEXCOORD0;\n+\t    float4 gl_Position : SV_Position;\n+\t};\n+\t\n+\tvoid MainVs_inner()\n+\t{\n+\t    float4 _14817 = float4(vPositionSs, 1.0f);\n+\t    float4 _14015 = mul(PerViewConstantBuffer_t_1_m0, float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));\n+\t    _14817.y = -vPositionSs.y;\n+\t    gl_Position = _14817;\n+\t    output_0 = normalize((_14015.xyz / _14015.w.xxx) - PerViewConstantBuffer_t_1_m1);\n+\t}\n+\t\n+\tPS_INPUT MainVs(VS_INPUT stage_input)\n+\t{\n+\t    vPositionSs = stage_input.vPositionSs;\n+\t    vTexCoord = stage_input.vTexCoord;\n+\t    MainVs_inner();\n+\t    PS_INPUT stage_output;\n+\t    stage_output.gl_Position = gl_Position;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}\n+\n+PS\n+{\n+\t\n+\tcbuffer PerViewConstantBufferCsgo_t < Attribute(\"PerViewConstantBufferCsgo_t\"); >;\n+\tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n+\tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n+\tExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerGpuSet\"); >;\n+\tTexture2D g_tBlueNoise < Attribute(\"BlueNoise\"); SrgbRead(false); >;\n+\tTexture2D g_tFramebufferColor < Attribute(\"FramebufferInputColor\"); SrgbRead(true); >;\n+\tTexture2D g_tFramebufferDepth < Attribute(\"FramebufferInputDepth\"); SrgbRead(false); >;\n+\tfloat3 g_vBlastPosSS < Attribute(\"BlastPosSS\"); UiType(VectorText); >;\n+\tfloat4 g_vBlastPosWSAndTime < Attribute(\"BlastPosWS\"); UiType(VectorText); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (5632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tstatic float4 _3;\n+\t\n+\tcbuffer PerViewConstantBuffer_t : register(b1, space1)\n+\t{\n+\t    float4 PerViewConstantBuffer_t_1_m0 : packoffset(c16);\n+\t    float PerViewConstantBuffer_t_1_m1 : packoffset(c18.w);\n+\t    float2 PerViewConstantBuffer_t_1_m2 : packoffset(c19);\n+\t    float2 PerViewConstantBuffer_t_1_m3 : packoffset(c20);\n+\t    float2 PerViewConstantBuffer_t_1_m4 : packoffset(c21);\n+\t    float PerViewConstantBuffer_t_1_m5 : packoffset(c23);\n+\t    float PerViewConstantBuffer_t_1_m6 : packoffset(c23.y);\n+\t    float3 PerViewConstantBuffer_t_1_m7 : packoffset(c26);\n+\t    float3 PerViewConstantBuffer_t_1_m8 : packoffset(c28);\n+\t};\n+\t\n+\tcbuffer _Globals_ : register(b0, space1)\n+\t{\n+\t    float4 _Globals_1_g_vBlastPosWSAndTime : packoffset(c0);\n+\t    float3 _Globals_1_g_vBlastPosSS : packoffset(c1);\n+\t};\n+\t\n+\tcbuffer PerViewConstantBufferCsgo_t : register(b2, space1)\n+\t{\n+\t    int2 PerViewConstantBufferCsgo_t_1_m0 : packoffset(c11);\n+\t};\n+\t\n+\tTexture2D<float4> g_tFramebufferDepth : register(t31, space1);\n+\tTexture2D<float4> g_tBlueNoise : register(t32, space1);\n+\tTexture2D<float4> g_tFramebufferColor : register(t30, space1);\n+\tSamplerState DefaultSamplerState_0 : register(s14, space1);\n+\t\n+\tstatic float4 gl_FragCoord;\n+\tstatic float3 input_0;\n+\tstatic float4 output_0;\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float3 input_0 : TEXCOORD0;\n+\t    float4 gl_FragCoord : SV_Position;\n+\t};\n+\t\n+\tstruct PS_OUTPUT\n+\t{\n+\t    float4 output_0 : SV_Target0;\n+\t};\n+\t\n+\tvoid MainPs_inner()\n+\t{\n+\t    float _21646 = clamp(PerViewConstantBuffer_t_1_m1 - _Globals_1_g_vBlastPosWSAndTime.w, 0.0f, 10.0f);\n+\t    int2 _17364 = int2(gl_FragCoord.xy);\n+\t    int2 _11700 = int3(_17364, 0).xy;\n+\t    float3 _12686 = (-normalize(input_0.xyz)).xyz;\n+\t    float3 _13517 = (PerViewConstantBuffer_t_1_m7.xyz + (_12686 * (1.0f / (((clamp((g_tFramebufferDepth.Load(int3(_11700, 0)).x - PerViewConstantBuffer_t_1_m5) / (PerViewConstantBuffer_t_1_m6 - PerViewConstantBuffer_t_1_m5), 0.0f, 1.0f) * PerViewConstantBuffer_t_1_m0.z) + PerViewConstantBuffer_t_1_m0.w) * dot(PerViewConstantBuffer_t_1_m8.xyz, _12686))))).xyz;\n+\t    float _23870 = distance(PerViewConstantBuffer_t_1_m7, _13517);\n+\t    float _12116 = _21646 * 3000.0f;\n+\t    float _19346 = distance(_Globals_1_g_vBlastPosWSAndTime.xyz, _13517);\n+\t    float _3109 = smoothstep(_12116 + 40.0f, _12116, _19346) * pow(smoothstep(_12116 - 3000.0f, _12116, _19346), 2.0f);\n+\t    float2 _4328 = ((gl_FragCoord.xy - PerViewConstantBuffer_t_1_m3.xy).xy * PerViewConstantBuffer_t_1_m4.xy).xy * PerViewConstantBuffer_t_1_m2;\n+\t    float2 _5763 = (_Globals_1_g_vBlastPosSS.xy * PerViewConstantBuffer_t_1_m2) - _4328.xy;\n+\t    float2 _18815 = normalize(_5763);\n+\t    float _21107 = (_3109 * 0.02999999932944774627685546875f) * ((clamp(clamp(length(_5763), 0.0f, 1.0f) * 2.0f, 0.0f, 1.0f) * 0.99989998340606689453125f) + 9.9999997473787516355514526367188e-05f);\n+\t    float _6835 = frac(PerViewConstantBuffer_t_1_m1 + g_tBlueNoise.Load(int3(int3(_17364 & PerViewConstantBufferCsgo_t_1_m0, 0).xy, 0)).y) - 0.5f;\n+\t    float4 _13155;\n+\t    _13155 = 0.0f.xxxx;\n+\t    int _9908;\n+\t    float4 _17376;\n+\t    int _16208 = 0;\n+\t    for (;;)\n+\t    {\n+\t        if (!(_16208 < 32))\n+\t        {\n+\t            break;\n+\t        }\n+\t        _17376 = _13155 + g_tFramebufferColor.Sample(DefaultSamplerState_0, lerp(clamp(_4328 + ((_18815 * _21107) * ((float(_16208 - 16) * 0.0625f) + _6835)), 0.0f.xx, 1.0f.xx), 0.5f.xx, 0.02999999932944774627685546875f.xx).xy);\n+\t        _9908 = _16208 + 1;\n+\t        _13155 = _17376;\n+\t        _16208 = _9908;\n+\t        continue;\n+\t    }\n+\t    float3 _12937 = (_13155 * 0.03125f).xyz;\n+\t    float3 _22087 = _12937 + pow(_12937, 8.0f.xxx);\n+\t    float4 _20488;\n+\t    _20488.x = _22087.x;\n+\t    _20488.y = _22087.y;\n+\t    _20488.z = _22087.z;\n+\t    output_0 = float4(lerp(lerp(g_tFramebufferColor.Load(int3(_11700, 0)).xyz, _20488.xyz, ((_3109 * smoothstep(30.0f, 80.0f, _23870)) * smoothstep(6000.0f, 5000.0f, _23870)).xxx).xyz, float3(0.310000002384185791015625f, 0.300000011920928955078125f, 0.2899999916553497314453125f), (pow(smoothstep(_12116, _12116 - 5000.0f, distance(_Globals_1_g_vBlastPosWSAndTime.xyz, PerViewConstantBuffer_t_1_m7)), 2.0f) * 0.20000000298023223876953125f).xxx), smoothstep(10.0f, 3.0f, _21646));\n+\t}\n+\t\n+\tPS_OUTPUT MainPs(PS_INPUT stage_input)\n+\t{\n+\t    gl_FragCoord = stage_input.gl_FragCoord;\n+\t    gl_FragCoord.w = 1.0 / gl_FragCoord.w;\n+\t    input_0 = stage_input.input_0;\n+\t    MainPs_inner();\n+\t    PS_OUTPUT stage_output;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/cs_color_picker.slang",
          "status": "added",
          "additions": 278,
          "deletions": 0,
          "changes": 278,
          "patch": "@@ -0,0 +1,278 @@\n+//=================================================================================================\n+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io\n+//=================================================================================================\n+HEADER\n+{\n+\tDescription = \"Used to draw UI color picker elements\";\n+\tDevShader = false;\n+\tVersion = 0;\n+\t\n+\t// VcsVersion: 71\n+\t// Platform: VULKAN_SM_50\n+\t// Programs: ps, vs\n+}\n+\n+MODES\n+{\n+\tDefault();\n+}\n+\n+FEATURES\n+{\n+}\n+\n+COMMON\n+{\n+\t#include \"system.fxc\"\n+}\n+\n+struct VS_INPUT\n+{\n+\tfloat4 vColor      : COLOR0     < Semantic( Color ); >;                                       \n+\tfloat3 vPositionSs : POSITION0  < Semantic( PosXyz ); >;                                      \n+\tfloat2 vTexCoord   : TEXCOORD0  < Semantic( LowPrecisionUv ); >;                              \n+};\n+\n+VS\n+{\n+\t\n+\tfloat4 g_vViewport < Source(Viewport); UiType(VectorText); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (1972 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tstatic float _3;\n+\t\n+\tcbuffer _Globals_ : register(b0, space0)\n+\t{\n+\t    float4 _Globals_1_g_vViewport : packoffset(c0);\n+\t};\n+\t\n+\t\n+\tstatic float4 gl_Position;\n+\tstatic float2 vPositionSs;\n+\tstatic float4 vColor;\n+\tstatic float2 vTexCoord;\n+\tstatic float4 output_0;\n+\tstatic float2 output_1;\n+\t\n+\tstruct VS_INPUT\n+\t{\n+\t    float2 vPositionSs : TEXCOORD0;\n+\t    float4 vColor : TEXCOORD1;\n+\t    float2 vTexCoord : TEXCOORD2;\n+\t};\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float4 output_0 : TEXCOORD0;\n+\t    float2 output_1 : TEXCOORD1;\n+\t    float4 gl_Position : SV_Position;\n+\t};\n+\t\n+\tvoid MainVs_inner()\n+\t{\n+\t    float2 _15639 = (((vPositionSs.xy - _Globals_1_g_vViewport.xy) * 2.0f) / _Globals_1_g_vViewport.zw) - 1.0f.xx;\n+\t    float4 _14779 = float4(_15639.x, _3, 1.0f, 1.0f);\n+\t    float3 _24030 = vColor.xyz * 0.077399380505084991455078125f.xxx;\n+\t    float3 _7676 = pow((vColor.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n+\t    float _21354;\n+\t    if (vColor.x <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _21354 = _24030.x;\n+\t    }\n+\t    else\n+\t    {\n+\t        _21354 = _7676.x;\n+\t    }\n+\t    float _21355;\n+\t    if (vColor.y <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _21355 = _24030.y;\n+\t    }\n+\t    else\n+\t    {\n+\t        _21355 = _7676.y;\n+\t    }\n+\t    float _19302;\n+\t    if (vColor.z <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _19302 = _24030.z;\n+\t    }\n+\t    else\n+\t    {\n+\t        _19302 = _7676.z;\n+\t    }\n+\t    output_0 = float4(_21354, _21355, _19302, vColor.w);\n+\t    output_1 = vTexCoord;\n+\t    _14779.y = _15639.y;\n+\t    gl_Position = _14779;\n+\t}\n+\t\n+\tPS_INPUT MainVs(VS_INPUT stage_input)\n+\t{\n+\t    vPositionSs = stage_input.vPositionSs;\n+\t    vColor = stage_input.vColor;\n+\t    vTexCoord = stage_input.vTexCoord;\n+\t    MainVs_inner();\n+\t    PS_INPUT stage_output;\n+\t    stage_output.gl_Position = gl_Position;\n+\t    stage_output.output_0 = output_0;\n+\t    stage_output.output_1 = output_1;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+\t\n+\tBoolAttribute(ui, true);\n+\tBoolAttribute(ScreenSpaceVertices, true);\n+\t\n+}\n+\n+PS\n+{\n+\t\n+\tfloat g_flHue < Default(1); Range(0, 360); UiType(Slider); >;\n+\t\n+\t// Source 2 Viewer - https://valveresourceformat.github.io\n+\t// SPIR-V source (2908 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t\n+\tstatic float _2;\n+\t\n+\tcbuffer _Globals_ : register(b0, space1)\n+\t{\n+\t    float _Globals_1_g_flHue : packoffset(c0);\n+\t};\n+\t\n+\t\n+\tstatic float2 input_0;\n+\tstatic float4 input_1;\n+\tstatic float4 output_0;\n+\t\n+\tstruct PS_INPUT\n+\t{\n+\t    float4 input_1 : TEXCOORD0;\n+\t    float2 input_0 : TEXCOORD1;\n+\t};\n+\t\n+\tstruct PS_OUTPUT\n+\t{\n+\t    float4 output_0 : SV_Target0;\n+\t};\n+\t\n+\tvoid MainPs_inner()\n+\t{\n+\t    float _13211 = 1.0f - input_0.y;\n+\t    float3 _22743;\n+\t    if (input_0.x != 0.0f)\n+\t    {\n+\t        float _12281 = _Globals_1_g_flHue * 0.01666666753590106964111328125f;\n+\t        float _23729 = floor(_12281);\n+\t        float _15688 = _13211 * (1.0f - input_0.x);\n+\t        float _17993 = _12281 - _23729;\n+\t        float _10560 = _13211 * (1.0f - (input_0.x * _17993));\n+\t        float _23319 = _13211 * (1.0f - (input_0.x * (1.0f - _17993)));\n+\t        float3 _12505;\n+\t        if (_23729 == 0.0f)\n+\t        {\n+\t            _12505 = float3(_13211, _23319, _15688);\n+\t        }\n+\t        else\n+\t        {\n+\t            float3 _12504;\n+\t            if (_23729 == 1.0f)\n+\t            {\n+\t                _12504 = float3(_10560, _13211, _15688);\n+\t            }\n+\t            else\n+\t            {\n+\t                float3 _12503;\n+\t                if (_23729 == 2.0f)\n+\t                {\n+\t                    _12503 = float3(_15688, _13211, _23319);\n+\t                }\n+\t                else\n+\t                {\n+\t                    float3 _12502;\n+\t                    if (_23729 == 3.0f)\n+\t                    {\n+\t                        _12502 = float3(_15688, _10560, _13211);\n+\t                    }\n+\t                    else\n+\t                    {\n+\t                        float3 _12501;\n+\t                        if (_23729 == 4.0f)\n+\t                        {\n+\t                            _12501 = float3(_23319, _15688, _13211);\n+\t                        }\n+\t                        else\n+\t                        {\n+\t                            _12501 = float3(_13211, _15688, _10560);\n+\t                        }\n+\t                        _12502 = _12501;\n+\t                    }\n+\t                    _12503 = _12502;\n+\t                }\n+\t                _12504 = _12503;\n+\t            }\n+\t            _12505 = _12504;\n+\t        }\n+\t        _22743 = _12505;\n+\t    }\n+\t    else\n+\t    {\n+\t        _22743 = float3(_2, input_0.x, _13211).zzz;\n+\t    }\n+\t    float4 _15731 = input_1.xyzw * float4(_22743, 1.0f);\n+\t    float3 _6273 = _15731.xyz;\n+\t    float3 _17828 = _6273 * 0.077399380505084991455078125f.xxx;\n+\t    float3 _7676 = pow((_6273 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n+\t    float _21354;\n+\t    if (_15731.x <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _21354 = _17828.x;\n+\t    }\n+\t    else\n+\t    {\n+\t        _21354 = _7676.x;\n+\t    }\n+\t    float _21355;\n+\t    if (_15731.y <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _21355 = _17828.y;\n+\t    }\n+\t    else\n+\t    {\n+\t        _21355 = _7676.y;\n+\t    }\n+\t    float _19167;\n+\t    if (_15731.z <= 0.040449999272823333740234375f)\n+\t    {\n+\t        _19167 = _17828.z;\n+\t    }\n+\t    else\n+\t    {\n+\t        _19167 = _7676.z;\n+\t    }\n+\t    _15731.x = _21354;\n+\t    _15731.y = _21355;\n+\t    _15731.z = _19167;\n+\t    output_0 = _15731;\n+\t}\n+\t\n+\tPS_OUTPUT MainPs(PS_INPUT stage_input)\n+\t{\n+\t    input_0 = stage_input.input_0;\n+\t    input_1 = stage_input.input_1;\n+\t    MainPs_inner();\n+\t    PS_OUTPUT stage_output;\n+\t    stage_output.output_0 = output_0;\n+\t    return stage_output;\n+\t}\n+\t\n+\t// ---------  SPIRV -> HLSL end  --------- \n+\t\n+\t\n+}"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_alpha_immunity.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = false;\n \tVersion = 1;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, vs\n }"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_black_unlit.slang",
          "status": "modified",
          "additions": 71,
          "deletions": 55,
          "changes": 126,
          "patch": "@@ -7,7 +7,7 @@ HEADER\n \tDevShader = false;\n \tVersion = 1;\n \t\n-\t// VcsVersion: 70\n+\t// VcsVersion: 71\n \t// Platform: VULKAN_SM_50\n \t// Programs: ps, psrs, vs\n }\n@@ -53,14 +53,14 @@ VS\n \t\n \tcbuffer PerViewConstantBufferCsgo_t < Attribute(\"PerViewConstantBufferCsgo_t\"); >;\n \tcbuffer PerViewConstantBuffer_t < Attribute(\"PerViewConstantBuffer_t\"); >;\n-\tByteAddressBuffer g_animatedVertexCache < Attribute(\"AnimatedVertexCache\"); SrgbRead(false); >;\n+\tByteAddressBuffer g_animatedVertexCache < Attribute(\"AnimatedVertexCache\"); >;\n \tExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute(\"g_globalLateBoundBindlessSet\"); >;\n-\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_instanceBuffer < Attribute(\"InstanceBuffer\"); >;\n \tExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute(\"g_lightBinnerGpuSet\"); >;\n-\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); SrgbRead(false); >;\n+\tStructuredBuffer g_transformBuffer < Attribute(\"TransformBuffer\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5620 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n+\t// SPIR-V source (4804 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tstruct _1125\n \t{\n@@ -74,26 +74,33 @@ VS\n \t    float _m7;\n \t};\n \t\n-\tstruct _1612\n+\tstruct _1119\n \t{\n-\t    float4 _m0[3];\n+\t    float3x4 _m0;\n \t};\n \t\n-\tstruct _1172\n+\tstruct _1126\n \t{\n-\t    _1612 _m0;\n+\t    uint _m0;\n+\t    uint _m1;\n+\t    uint _m2;\n+\t    uint _m3;\n+\t    uint _m4;\n+\t    uint _m5;\n+\t    uint _m6;\n+\t    float _m7;\n \t};\n \t\n-\tstruct _113\n+\tstruct _1120\n \t{\n-\t    float4 _m0[4];\n+\t    row_major float3x4 _m0;\n \t};\n \t\n \tByteAddressBuffer g_instanceBuffer : register(t32, space4);\n \tByteAddressBuffer g_transformBuffer : register(t30, space4);\n \tcbuffer PerViewConstantBuffer_t : register(b1, space0)\n \t{\n-\t    _113 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n+\t    column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);\n \t    float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);\n \t};\n \t\n@@ -136,39 +143,52 @@ VS\n \t\n \tvoid MainVs_inner()\n \t{\n-\t    uint _13771 = (g_instanceBuffer.Load(nInstanceIdx * 32 + 20) >> uint(16)) & 15u;\n-\t    uint _21785;\n-\t    if (_13771 == 1u)\n+\t    _1126 _24007;\n+\t    _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);\n+\t    _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n+\t    _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);\n+\t    _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);\n+\t    _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);\n+\t    _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);\n+\t    _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);\n+\t    _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n+\t    _1125 _20228;\n+\t    _20228._m0 = _24007._m0;\n+\t    _20228._m1 = _24007._m1;\n+\t    _20228._m2 = _24007._m2;\n+\t    _20228._m3 = _24007._m3;\n+\t    _20228._m4 = _24007._m4;\n+\t    _20228._m5 = _24007._m5;\n+\t    _20228._m6 = _24007._m6;\n+\t    _20228._m7 = _24007._m7;\n+\t    uint _16987 = (_20228._m5 >> uint(16)) & 15u;\n+\t    uint _21709;\n+\t    if (_16987 == 1u)\n \t    {\n-\t        _21785 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4) + (2u + vBlendIndices.x);\n+\t        _21709 = _20228._m1 + (2u + vBlendIndices.x);\n \t    }\n \t    else\n \t    {\n-\t        _21785 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);\n-\t    }\n-\t    _1612 _25207;\n-\t    [unroll]\n-\t    for (int _2ident = 0; _2ident < 3; _2ident++)\n-\t    {\n-\t        _25207._m0[_2ident] = asfloat(g_transformBuffer.Load4(_2ident * 16 + _21785 * 48 + 0));\n+\t        _21709 = _20228._m1;\n \t    }\n-\t    float3x4 _17839 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);\n-\t    float3 _21709;\n-\t    if (_13771 > 0u)\n+\t    _1120 _11578;\n+\t    _11578._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_21709 * 48 + 0), g_transformBuffer.Load4(_21709 * 48 + 16), g_transformBuffer.Load4(_21709 * 48 + 32)));\n+\t    _1119 _21957;\n+\t    _21957._m0 = _11578._m0;\n+\t    float3 _19321;\n+\t    if (_16987 > 0u)\n \t    {\n-\t        _1612 _25208;\n-\t        [unroll]\n-\t        for (int _3ident = 0; _3ident < 3; _3ident++)\n-\t        {\n-\t            _25208._m0[_3ident] = asfloat(g_transformBuffer.Load4(_3ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));\n-\t        }\n-\t        _21709 = _25208._m0[0].z.xxx;\n+\t        _1120 _10769;\n+\t        _10769._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_20228._m1 * 48 + 0), g_transformBuffer.Load4(_20228._m1 * 48 + 16), g_transformBuffer.Load4(_20228._m1 * 48 + 32)));\n+\t        _1119 _20229;\n+\t        _20229._m0 = _10769._m0;\n+\t        _19321 = _20229._m0[0].z.xxx;\n \t    }\n \t    else\n \t    {\n-\t        _21709 = 1.0f.xxx;\n+\t        _19321 = 1.0f.xxx;\n \t    }\n-\t    float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n+\t    float4 _23812 = float4(uint4(_20228._m0 & 255u, (_20228._m0 & 65280u) >> uint(8), (_20228._m0 & 16711680u) >> uint(16), (_20228._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;\n \t    float3 _6253 = _23812.xyz;\n \t    float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;\n \t    float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);\n@@ -190,27 +210,27 @@ VS\n \t    {\n \t        _21355 = _7676.y;\n \t    }\n-\t    float _14124;\n+\t    float _17978;\n \t    if (_23812.z <= 0.040449999272823333740234375f)\n \t    {\n-\t        _14124 = _17828.z;\n+\t        _17978 = _17828.z;\n \t    }\n \t    else\n \t    {\n-\t        _14124 = _7676.z;\n+\t        _17978 = _7676.z;\n \t    }\n-\t    float _9851 = _23812.w;\n-\t    float4 _20063 = float4(_21354, _21355, _14124, _9851);\n-\t    _20063.w = _9851 * asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));\n-\t    float3 _12151 = mul(_17839, float4(vPositionOs.xyz * _21709.xyz, 1.0f));\n-\t    float4 _23875 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_12151.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n+\t    float _7654 = _23812.w;\n+\t    float4 _20063 = float4(_21354, _21355, _17978, _7654);\n+\t    _20063.w = _7654 * _20228._m7;\n+\t    float3 _12151 = mul(_21957._m0, float4(vPositionOs.xyz * _19321.xyz, 1.0f));\n+\t    float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (float4(_12151.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);\n \t    output_0 = _12151.xyz - PerViewConstantBufferCsgo_t_1_m0.xyz;\n-\t    output_1 = normalize(mul(_17839, float4(vNormalOs.xyz, 0.0f)));\n+\t    output_1 = normalize(mul(_21957._m0, float4(vNormalOs.xyz, 0.0f)));\n \t    output_2 = vTexCoord.xyxy;\n \t    output_3 = _20063;\n-\t    output_4 = (g_instanceBuffer.Load(nInstanceIdx * 32 + 20)) & 65535u;\n-\t    _23875.y = -_23875.y;\n-\t    gl_Position = _23875;\n+\t    output_4 = _20228._m5 & 65535u;\n+\t    _18237.y = -_18237.y;\n+\t    gl_Position = _18237;\n \t}\n \t\n \tPS_INPUT MainVs(VS_INPUT stage_input)\n@@ -261,12 +281,7 @@ PS\n \tbool g_bFogEnabled < Default(1); UiType(CheckBox); UiGroup(\"Fog\"); >;\n \t\n \t// Source 2 Viewer - https://valveresourceformat.github.io\n-\t// SPIR-V source (5560 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n-\t\n-\tstruct _1444\n-\t{\n-\t    float4 _m0[4];\n-\t};\n+\t// SPIR-V source (4956 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup\n \t\n \tcbuffer PerViewConstantBufferCsgo_t : register(b3, space1)\n \t{\n@@ -276,7 +291,7 @@ PS\n \t    float4 PerViewConstantBufferCsgo_t_1_m3 : packoffset(c26);\n \t    float4 PerViewConstantBufferCsgo_t_1_m4 : packoffset(c27);\n \t    float4 PerViewConstantBufferCsgo_t_1_m5 : packoffset(c28);\n-\t    _1444 PerViewConstantBufferCsgo_t_1_m6 : packoffset(c29);\n+\t    column_major float4x4 PerViewConstantBufferCsgo_t_1_m6 : packoffset(c29);\n \t    float4 PerViewConstantBufferCsgo_t_1_m7 : packoffset(c33);\n \t    float4 PerViewConstantBufferCsgo_t_1_m8 : packoffset(c34);\n \t    float4 PerViewConstantBufferCsgo_t_1_m9 : packoffset(c35);\n@@ -330,6 +345,7 @@ PS\n \t            {\n \t                _12885 = false;\n \t            }\n+\t            [branch]\n \t            if (_12885)\n \t            {\n \t                float2 _9342 = clamp(PerViewConstantBufferCsgo_t_1_m0.xy + (PerViewConstantBufferCsgo_t_1_m0.zw * float2(length(_21493), _10061.z)), 0.0f.xx, 1.0f.xx);\n@@ -360,7 +376,7 @@ PS\n \t            {\n \t                float _14602 = clamp(pow(max(0.0f, (length(_21493) * PerViewConstantBufferCsgo_t_1_m4.y) + PerViewConstantBufferCsgo_t_1_m4.x), PerViewConstantBufferCsgo_t_1_m4.w), 0.0f, 1.0f) * clamp(pow(max(0.0f, (_10061.z * PerViewConstantBufferCsgo_t_1_m5.y) + PerViewConstantBufferCsgo_t_1_m5.x), PerViewConstantBufferCsgo_t_1_m5.z), 0.0f, 1.0f);\n \t                float _8892 = clamp(_14602, 0.0f, 1.0f) * PerViewConstantBufferCsgo_t_1_m7.w;\n-\t                _19341 = lerp(_23944.xyz, float4((g_tFogCubeTexture.SampleLevel(g_sTrilinearClamp, normalize(mul(float4(_10784, 0.0f), float4x4(float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].x, PerViewConstantBufferCsgo_t_1_m6._m0[1].x, PerViewConstantBufferCsgo_t_1_m6._m0[2].x, PerViewConstantBufferCsgo_t_1_m6._m0[3].x), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].y, PerViewConstantBufferCsgo_t_1_m6._m0[1].y, PerViewConstantBufferCsgo_t_1_m6._m0[2].y, PerViewConstantBufferCsgo_t_1_m6._m0[3].y), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].z, PerViewConstantBufferCsgo_t_1_m6._m0[1].z, PerViewConstantBufferCsgo_t_1_m6._m0[2].z, PerViewConstantBufferCsgo_t_1_m6._m0[3].z), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].w, PerViewConstantBufferCsgo_t_1_m6._m0[1].w, PerViewConstantBufferCsgo_t_1_m6._m0[2].w, PerViewConstantBufferCsgo_t_1_m6._m0[3].w))).xyz).xyz, PerViewConstantBufferCsgo_t_1_m5.w * clamp(1.0f - (_14602 * PerViewConstantBufferCsgo_t_1_m4.z), 0.0f, 1.0f)) * PerViewConstantBufferCsgo_t_1_m8.x).xyz, _8892).xyz, _8892.xxx);\n+\t                _19341 = lerp(_23944.xyz, float4((g_tFogCubeTexture.SampleLevel(g_sTrilinearClamp, normalize(mul(float4(_10784, 0.0f), PerViewConstantBufferCsgo_t_1_m6).xyz).xyz, PerViewConstantBufferCsgo_t_1_m5.w * clamp(1.0f - (_14602 * PerViewConstantBufferCsgo_t_1_m4.z), 0.0f, 1.0f)) * PerViewConstantBufferCsgo_t_1_m8.x).xyz, _8892).xyz, _8892.xxx);\n \t                break;\n \t            }\n \t            _19341 = _23944.xyz;"
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_complex.slang",
          "status": "modified",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_copy_rt.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_customglove_preview.slang",
          "status": "modified",
          "additions": 1043,
          "deletions": 991,
          "changes": 2034,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_dronecam.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_effects.slang",
          "status": "modified",
          "additions": 69,
          "deletions": 53,
          "changes": 122,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_environment.slang",
          "status": "modified",
          "additions": 1640,
          "deletions": 1522,
          "changes": 3162,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_environment_blend.slang",
          "status": "modified",
          "additions": 2229,
          "deletions": 2053,
          "changes": 4282,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_eyeball.slang",
          "status": "modified",
          "additions": 200,
          "deletions": 187,
          "changes": 387,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_flashbang_overlay.slang",
          "status": "modified",
          "additions": 55,
          "deletions": 31,
          "changes": 86,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_foliage.slang",
          "status": "modified",
          "additions": 1550,
          "deletions": 1437,
          "changes": 2987,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_glass.slang",
          "status": "modified",
          "additions": 139,
          "deletions": 137,
          "changes": 276,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_grenade_camera.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 5,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_panolayer_rt.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_screenspace_zone.slang",
          "status": "modified",
          "additions": 15,
          "deletions": 19,
          "changes": 34,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple.slang",
          "status": "modified",
          "additions": 127,
          "deletions": 123,
          "changes": 250,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_2way_blend.slang",
          "status": "modified",
          "additions": 1046,
          "deletions": 980,
          "changes": 2026,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_3layer_parallax.slang",
          "status": "modified",
          "additions": 145,
          "deletions": 114,
          "changes": 259,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_liquid.slang",
          "status": "modified",
          "additions": 429,
          "deletions": 429,
          "changes": 858,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_static_overlay.slang",
          "status": "modified",
          "additions": 104,
          "deletions": 65,
          "changes": 169,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_textile_layer.slang",
          "status": "modified",
          "additions": 209,
          "deletions": 185,
          "changes": 394,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_ui_texture_attribute.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_water_fancy.slang",
          "status": "modified",
          "additions": 119,
          "deletions": 105,
          "changes": 224,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_weapon.slang",
          "status": "modified",
          "additions": 256,
          "deletions": 194,
          "changes": 450,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_weapon_sticker.slang",
          "status": "modified",
          "additions": 186,
          "deletions": 164,
          "changes": 350,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/deferred_particle_shadows.slang",
          "status": "modified",
          "additions": 46,
          "deletions": 43,
          "changes": 89,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/denoise_blur.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/denoise_blur_cs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/depthtolineardepth.slang",
          "status": "modified",
          "additions": 7,
          "deletions": 7,
          "changes": 14,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/dof2.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/downsample_outlineglows.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/gaussian_bloom_blur.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/grasstile.slang",
          "status": "modified",
          "additions": 120,
          "deletions": 118,
          "changes": 238,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/grasstile_preview.slang",
          "status": "modified",
          "additions": 50,
          "deletions": 28,
          "changes": 78,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/healthboost.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/histogram_cs.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/inferno.slang",
          "status": "modified",
          "additions": 34,
          "deletions": 46,
          "changes": 80,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/legacy_sniper_scope.slang",
          "status": "modified",
          "additions": 10,
          "deletions": 10,
          "changes": 20,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/luminaire.slang",
          "status": "modified",
          "additions": 76,
          "deletions": 61,
          "changes": 137,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/mboit_mixed_combine.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 10,
          "changes": 15,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/mboit_mixed_upsample.slang",
          "status": "modified",
          "additions": 32,
          "deletions": 32,
          "changes": 64,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/mboitfinal.slang",
          "status": "modified",
          "additions": 5,
          "deletions": 10,
          "changes": 15,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/outlines.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/overlay_smoke.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/panorama_alpha.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/player_visibility.slang",
          "status": "modified",
          "additions": 10,
          "deletions": 10,
          "changes": 20,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/player_visibility_stencil_proxy.slang",
          "status": "modified",
          "additions": 10,
          "deletions": 20,
          "changes": 30,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/post_process.slang",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/reconstruct_normals.slang",
          "status": "modified",
          "additions": 33,
          "deletions": 33,
          "changes": 66,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/screenparticlescombine.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume.slang",
          "status": "modified",
          "additions": 91,
          "deletions": 78,
          "changes": 169,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_cs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_depth.slang",
          "status": "modified",
          "additions": 16,
          "deletions": 21,
          "changes": 37,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_lpv.slang",
          "status": "modified",
          "additions": 81,
          "deletions": 70,
          "changes": 151,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_mask.slang",
          "status": "modified",
          "additions": 8,
          "deletions": 13,
          "changes": 21,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/upsample.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/visualize_aggregate.slang",
          "status": "modified",
          "additions": 44,
          "deletions": 21,
          "changes": 65,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir/shaders/vfx/write_smoke_depth_water_reflection.slang",
          "status": "modified",
          "additions": 4,
          "deletions": 10,
          "changes": 14,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/cables.slang",
          "status": "modified",
          "additions": 197,
          "deletions": 163,
          "changes": 360,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_beachfoam.slang",
          "status": "modified",
          "additions": 53,
          "deletions": 34,
          "changes": 87,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_character.slang",
          "status": "modified",
          "additions": 442,
          "deletions": 335,
          "changes": 777,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_generic.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_height_to_normal.slang",
          "status": "modified",
          "additions": 3,
          "deletions": 4,
          "changes": 7,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_inputs.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_customglove.slang",
          "status": "modified",
          "additions": 77,
          "deletions": 53,
          "changes": 130,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_customweapon.slang",
          "status": "modified",
          "additions": 23,
          "deletions": 11,
          "changes": 34,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_decal_renderer.slang",
          "status": "modified",
          "additions": 59,
          "deletions": 35,
          "changes": 94,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_decalmodulate.slang",
          "status": "modified",
          "additions": 51,
          "deletions": 32,
          "changes": 83,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_depth_only.slang",
          "status": "modified",
          "additions": 63,
          "deletions": 39,
          "changes": 102,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_legs_prepass.slang",
          "status": "modified",
          "additions": 64,
          "deletions": 45,
          "changes": 109,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_lightmapped_4wayblend.slang",
          "status": "modified",
          "additions": 116,
          "deletions": 90,
          "changes": 206,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_lightmappedgeneric.slang",
          "status": "modified",
          "additions": 1083,
          "deletions": 991,
          "changes": 2074,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_moondome.slang",
          "status": "modified",
          "additions": 57,
          "deletions": 42,
          "changes": 99,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_projected_decals.slang",
          "status": "modified",
          "additions": 181,
          "deletions": 127,
          "changes": 308,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_refract.slang",
          "status": "modified",
          "additions": 59,
          "deletions": 40,
          "changes": 99,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_tools_shading_complexity.slang",
          "status": "modified",
          "additions": 63,
          "deletions": 42,
          "changes": 105,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_tools_wireframe.slang",
          "status": "modified",
          "additions": 63,
          "deletions": 42,
          "changes": 105,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_unlitgeneric.slang",
          "status": "modified",
          "additions": 63,
          "deletions": 48,
          "changes": 111,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_vertexlitgeneric.slang",
          "status": "modified",
          "additions": 1079,
          "deletions": 992,
          "changes": 2071,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_volume_viewer.slang",
          "status": "modified",
          "additions": 55,
          "deletions": 32,
          "changes": 87,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_water.slang",
          "status": "modified",
          "additions": 97,
          "deletions": 70,
          "changes": 167,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/error.slang",
          "status": "modified",
          "additions": 63,
          "deletions": 42,
          "changes": 105,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/generate_decal_normals.slang",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/generic.slang",
          "status": "modified",
          "additions": 138,
          "deletions": 110,
          "changes": 248,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/lpv_debug_grid.slang",
          "status": "modified",
          "additions": 108,
          "deletions": 79,
          "changes": 187,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/player_visibility_data.slang",
          "status": "modified",
          "additions": 61,
          "deletions": 40,
          "changes": 101,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/simple.slang",
          "status": "modified",
          "additions": 175,
          "deletions": 156,
          "changes": 331,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/sky.slang",
          "status": "modified",
          "additions": 39,
          "deletions": 31,
          "changes": 70,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/solidcolor.slang",
          "status": "modified",
          "additions": 61,
          "deletions": 40,
          "changes": 101,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/spritecard.slang",
          "status": "modified",
          "additions": 130,
          "deletions": 151,
          "changes": 281,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/tools_solid.slang",
          "status": "modified",
          "additions": 62,
          "deletions": 40,
          "changes": 102,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/tools_wireframe.slang",
          "status": "modified",
          "additions": 83,
          "deletions": 75,
          "changes": 158,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir/shaders/vfx/visualize_physics.slang",
          "status": "modified",
          "additions": 55,
          "deletions": 45,
          "changes": 100,
          "patch": null
        }
      ]
    },
    {
      "event_id": "gh:0214b1f",
      "detected_at_utc": "2026-07-10T20:56:44.365Z",
      "commit_date_utc": "2026-07-09T15:48:29Z",
      "commit": {
        "sha": "0214b1f45530597be60ca30979c491d6def4ba0f",
        "short": "0214b1f",
        "message": "2000872 | 818 files | M\tDumpSource2/.stringsignore, M\tDumpSource2/commands.txt, M\tDumpSource2/convars.txt, M\tDumpSource2/module_metadata/assetbrowser.kv3, M\tDumpSource2/module_metadata/assetpreview.kv3, M\tDumpSource2/module_metadata/client.kv3, M\tDumpSource2/module_metadata/engine2.kv3, M\tDumpSource2/module_metadata/materialsystem2.kv3, M\tDumpSource2/module_metadata/meshsystem.kv3, M\tDumpSource2/module_metadata/modtools.kv3, M\tDumpSource2/module_metadata/pulse_system.kv3, M\tDumpSource2/module_metadata/resourcecompiler.kv3, M\tDumpSource2/module_metadata/scenesystem.kv3, M\tDumpSource2/module_metadata/server.kv3, M\tDumpSource2/module_metadata/soundsystem.kv3, M\tDumpSource2/module_metadata/tools_hammer.kv3, M\tDumpSource2/module_metadata/tools_met.kv3, M\tDumpSource2/module_metadata/tools_modeldoc_editor.kv3, M\tDumpSource2/module_metadata/tools_pet.kv3, M\tDumpSource2/module_metadata/vphysics2.kv3, D\tDumpSource2/schemas/animationsystem/CCompressorGroup.h, M\tDumpSource2/schemas/animdoclib/CNmClipDocEvent_FloatCurve.h, M\tDumpSource2/schema",
        "url": "https://github.com/SteamTracking/GameTracking-CS2/commit/0214b1f45530597be60ca30979c491d6def4ba0f"
      },
      "classification": {
        "tags": [
          "assets"
        ],
        "important_files": []
      },
      "ai_summary": "Assets/UI/maps update (DumpSource2/module_metadata/materialsystem2.kv3, DumpSource2/schemas/client/CModelState.h).",
      "stats": {
        "files_changed": 300,
        "additions": 44736,
        "deletions": 18866
      },
      "files": [
        {
          "filename": "DumpSource2/.stringsignore",
          "status": "modified",
          "additions": 1994,
          "deletions": 379,
          "changes": 2373,
          "patch": null
        },
        {
          "filename": "DumpSource2/commands.txt",
          "status": "modified",
          "additions": 50,
          "deletions": 67,
          "changes": 117,
          "patch": "@@ -191,6 +191,9 @@ axis (gamedll cheat)\n \tDraw an axis\n \tArguments:  x y z pitch yaw roll <lifetime = 10.0> <r g b a>\n \n+bake_bomb_damage_render_visualization (clientdll cheat)\n+\t<no description>\n+\n banid (developmentonly defensive)\n \tAdd a user ID to the ban list.\n \n@@ -270,9 +273,6 @@ bug (developmentonly dontrecord defensive)\n bugbug (clientdll release)\n \tbugbug\n \n-bugbug_commit (clientdll release)\n-\tbugbug_commit\n-\n bugvoice_clear (developmentonly dontrecord defensive)\n \tClear voice attachment data.\n \n@@ -369,18 +369,6 @@ cast_sphere (gamedll cheat)\n cc_emit (developmentonly clientdll defensive)\n \tEmits a closed caption\n \n-cc_findsound (developmentonly clientdll defensive)\n-\tSearches for soundname which emits specified text.\n-\n-cc_flush (developmentonly clientdll defensive)\n-\tFlushes async'd captions.\n-\n-cc_random (developmentonly clientdll defensive)\n-\tEmits a random caption\n-\n-cc_showblocks (developmentonly clientdll defensive)\n-\tToggles showing which blocks are pending/loaded async.\n-\n changelevel (release)\n \tchangelevel <mapname> :Multiplayer change level.\n \n@@ -728,7 +716,7 @@ cl_pred_track_off (developmentonly clientdll defensive)\n \tclear field track changes.\n \n cl_predictioncopy_describe (developmentonly clientdll defensive)\n-\tDescribe datamap_t for entindex\n+\tDescribe PredictionMap_t for entindex\n \n cl_predictioncopy_print (developmentonly clientdll defensive)\n \tPrint simple description of prediction copy fields for entindex\n@@ -766,9 +754,6 @@ cl_resetfps (developmentonly clientdll defensive)\n cl_rr_dump_rules (clientdll cheat)\n \tPrint all response rules\n \n-cl_rr_reloadresponsesystems (clientdll cheat)\n-\tReload all response system scripts.\n-\n cl_script_add_debug_filter (clientdll cheat)\n \tAdd a filter to the game debug overlay\n \n@@ -1983,9 +1968,6 @@ menuselect (clientdll clientcmd_can_execute)\n minimap_create (clientdll cheat)\n \tDoes a bunch of work to create a minimap\n \n-mm_datacenter_debugprint (developmentonly defensive)\n-\tShows information retrieved from data center\n-\n mm_debugprint (developmentonly defensive)\n \tShow debug information about current matchmaking session\n \n@@ -2190,6 +2172,10 @@ open_asset (developmentonly defensive)\n open_current_map_in_hammer (developmentonly)\n \topens the current map in hammer.\n \n+open_current_map_pulse_in_tool (developmentonly vconsole_fuzzy_matching)\n+\tOpens the specified pulse used in this map in the editor.\n+\tArguments: <pulse_file>\n+\n p2p_listpeers (developmentonly defensive)\n \tList currently known peers.\n \n@@ -2470,6 +2456,9 @@ removeip (developmentonly defensive)\n repeat_last_console_command (release)\n \tRepeat last console command.\n \n+replant_bomb (gamedll cheat)\n+\t<no description>\n+\n replay_death (gamedll cheat)\n \tstart hltv replay of last death\n \n@@ -2544,9 +2533,6 @@ rr_forceconcept (gamedll cheat)\n \tUSAGE: rr_forceconcept <target name or index> <concept> \"criteria1:value1,criteria2:value2,...\"\n \tcriteria values are optional.\n \n-rr_reloadresponsesystems (gamedll cheat)\n-\tReload all response system scripts.\n-\n rs_dump_stats (developmentonly)\n \trs_dump_stats - Dump resourcesystem stats.\n \n@@ -2598,9 +2584,6 @@ sc_setclassflags (cheat)\n sc_showclasses (cheat)\n \tList the object class names known by scenesystem\n \n-scene_coordinator_add_request (developmentonly gamedll defensive)\n-\tAdd a request to the scene coordinator\n-\n scene_playvcd (gamedll cheat)\n \tPlay the given VCD as an instanced scripted scene.\n \n@@ -2707,7 +2690,10 @@ server_game_time (developmentonly gamedll defensive)\n \tGives the game time in seconds (server's curtime)\n \n server_snd_cast (gamedll cheat)\n-\tCasts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically. Usage: snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.\n+\tCasts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically. Usage: server_snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.\n+\n+server_snd_pos (gamedll cheat)\n+\tStarts a sound event at a given position. The sound event will retrigger periodically. Usage: server_snd_pos <eventname> <retrigger time> <x> <y> <z>.\n \n servervoice_clear (developmentonly clientdll defensive)\n \tservervoice_clear\n@@ -2818,8 +2804,8 @@ slot9 (clientdll server_can_execute)\n snapto (developmentonly clientdll defensive)\n \t<no description>\n \n-snd_arrangement_start (cheat)\n-\tStarts the specified arrangement.\n+snd__beatpattern_stop_track (cheat)\n+\tStops the specified track\n \n snd_async_flush (developmentonly defensive)\n \tFlush all unlocked async audio data\n@@ -2833,6 +2819,24 @@ snd_async_showmem_music (developmentonly defensive)\n snd_async_showmem_summary (developmentonly defensive)\n \tShow brief async memory stats\n \n+snd_beatpattern_flush (cheat)\n+\tPurge and reload all beat pattern data and files.\n+\n+snd_beatpattern_print_activetracks (cheat)\n+\tList all active tracks\n+\n+snd_beatpattern_print_patterns (cheat)\n+\tList all available beat patterns\n+\n+snd_beatpattern_set_track_bpm (cheat)\n+\tSets the tempo of the specified track\n+\n+snd_beatpattern_set_track_transpose (cheat)\n+\tSets the transposition of the specified track\n+\n+snd_beatpattern_stop_all_tracks (cheat)\n+\tStops all currently playing patterns\n+\n snd_cast (cheat)\n \tCasts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically if cl_snd_cast_retrigger is set. The sound event will clear previous snd_cast events if cl_snd_cast_clear is set. Usage: snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.\n \n@@ -2908,30 +2912,6 @@ snd_samplers_play_note (cheat)\n snd_samplers_stop_note (cheat)\n \tStop a note from a specified sampler\n \n-snd_sequencer_print_activetracks (cheat)\n-\tList all active tracks\n-\n-snd_sequencer_print_arrangements (cheat)\n-\tList all available sequence arrangments\n-\n-snd_sequencer_print_sequences (cheat)\n-\tList all available midi sequences\n-\n-snd_sequencer_set_track_bpm (cheat)\n-\tSets the tempo of the specified track\n-\n-snd_sequencer_set_track_transpose (cheat)\n-\tSets the transposition of the specified track\n-\n-snd_sequencer_stop_all_tracks (cheat)\n-\tStops all currently playing sequences\n-\n-snd_sequencer_stop_track (cheat)\n-\tStops the specified track\n-\n-snd_sequencer_vmidi_flush (cheat)\n-\tPurge and reload all vmidi data and files.\n-\n snd_set_physics_surface_properties (cheat)\n \tSet physics surface properties for materials. Usage: <heuristic #> <commit>\n \n@@ -3145,6 +3125,9 @@ ss_remove (developmentonly defensive)\n ss_teleport (developmentonly clientdll cheat)\n \tTeleport other splitscreen player to my location.\n \n+start_rec_mic (linked_concommand developmentonly defensive)\n+\tStart recording to a desired wav.\n+\n startdemos (release)\n \tPlay demos in demo sequence.\n \n@@ -3172,6 +3155,12 @@ steamvrevent_quit (developmentonly gamedll hidden defensive)\n stop (release)\n \tFinish recording demo.\n \n+stop_rec_mic (linked_concommand developmentonly defensive)\n+\tStop recording to a desired wav.\n+\n+stop_rec_mic_all (linked_concommand developmentonly defensive)\n+\tStop recording all mic streams.\n+\n stopdemos (release)\n \tStop looping demos (current demo will complete).\n \n@@ -3458,24 +3447,12 @@ voice_containers_get_instance_params (linked_concommand developmentonly defensiv\n voice_modenable_toggle (clientdll release)\n \tToggle the voice_modenable convar.\n \n-voice_mute (developmentonly defensive)\n-\tMute a specific Steam user\n-\n-voice_reset_mutelist (developmentonly defensive)\n-\tReset all mute information for all players who were ever muted.\n-\n-voice_show_mute (developmentonly defensive)\n-\tShow whether current players are muted.\n-\n voice_status_test_toggle (developmentonly clientdll)\n \tTest voice and status notices\n \n voice_toggle_open_mic (clientdll release)\n \tToggles between open-mic and push-to-talk\n \n-voice_unmute (developmentonly defensive)\n-\tUnmute a specific Steam user, or `all` to unmute all connected players.\n-\n vprof_dump_counters (developmentonly defensive)\n \tDump vprof counters to the console\n \n@@ -3522,6 +3499,12 @@ weapon_switch (developmentonly gamedll)\n workshop_annotation_submit (clientdll release)\n \tSubmit annotation to workshop. To update an existing submission add its ID number from the workshop URL as a second argument.\n \n+workshop_clear_cloud_save (developmentonly gamedll defensive)\n+\tRemove a workshop save from steam cloud. Pass the published file id to delete or 0 to delete the non-workshop addon save.\n+\n+workshop_dump_cloud_contents (developmentonly gamedll defensive)\n+\tSpew contents of steam cloud.\n+\n workshop_item_submit (clientdll hidden release)\n \t<no description>\n "
        },
        {
          "filename": "DumpSource2/convars.txt",
          "status": "modified",
          "additions": 168,
          "deletions": 171,
          "changes": 339,
          "patch": "@@ -643,7 +643,7 @@ camera_datadriven_debug false (developmentonly clientdll cheat)\n camera_datadriven_disable_cache false (developmentonly gamedll cheat)\n \t<no description>\n \n-camera_path_edit_mode false (clientdll cheat)\n+camera_path_edit_mode false (gamedll clientdll replicated cheat)\n \t<no description>\n \n cash_player_bomb_defused 300 (gamedll clientdll notify replicated release commandline_enforced)\n@@ -742,6 +742,9 @@ cc_captiontrace 1 (developmentonly clientdll defensive)\n cc_delay_time 0.25 (clientdll archive)\n \tClose caption delay before showing caption.\n \n+cc_force_combine_chatter true (developmentonly clientdll defensive)\n+\t<no description>\n+\n cc_lang \"\" (clientdll archive)\n \tCurrent close caption language (emtpy = use game UI language)\n \n@@ -751,12 +754,6 @@ cc_linger_time 1 (clientdll archive)\n cc_log 0 (developmentonly clientdll defensive)\n \tLog caption names and contents (0 = off, 1 = found captions, 2 = unfound captions, 3 = all captions)\n \n-cc_norepeat 5 (developmentonly gamedll defensive)\n-\tIn multiplayer games, don't repeat captions more often than this many seconds.\n-\n-cc_showmissing false (developmentonly gamedll replicated defensive)\n-\tShow missing closecaption entries.\n-\n cc_spectator_only false (clientdll archive)\n \t<no description>\n \n@@ -838,6 +835,9 @@ cl_autobuy \"\" (clientdll release)\n cl_autohelp true (clientdll archive userinfo)\n \tAuto-help\n \n+cl_bake_bomb_damage_debug 0 (clientdll cheat)\n+\t<no description>\n+\n cl_batch_entity_list_ops_during_latch false (developmentonly clientdll)\n \tBatch entity list adds / removes while latching interpolated variables to avoid mutex contention.\n \n@@ -1165,6 +1165,9 @@ cl_ent_attachment_filter_substrings \"\" (clientdll cheat)\n cl_ent_joint_axis_size 4 (developmentonly clientdll defensive)\n \t<no description>\n \n+cl_ent_joint_filter_name \"\" (clientdll cheat)\n+\tIf a joint's entire name matches (case insensitive), it will be displayed.\n+\n cl_ent_joint_filter_substrings \"\" (clientdll cheat)\n \tIf a joint's name has any of the given substrings in it, it will be displayed. Substrings can be delimited by the ',' or '|' character.\n \n@@ -1696,6 +1699,9 @@ cl_player_visibility_stencil_proxy_min_dist_box 1 (developmentonly clientdll)\n cl_player_visibility_stencil_proxy_type 1 (developmentonly clientdll)\n \t0 - box, 1 - dodecahedron\n \n+cl_playerslot_in_names false (clientdll cheat release)\n+\tprepend controller playerslot to names for debugging\n+\n cl_poll_network_early true (release)\n \tEnable polling for network messages every frame, instead of every tick\n \n@@ -2158,6 +2164,9 @@ cl_streams_request_url \"https://api.twitch.tv/helix/streams?game_id=32399&first=\n cl_streams_write_response_file \"\" (developmentonly clientdll)\n \tWhen set will save streams info file for diagnostics\n \n+cl_svc_usercmds_delta_validate false (developmentonly clientdll)\n+\tValidate consistency of delta-encoded user commands.  Requires server to have sv_cq_validate_encoded_svc_usercmds enabled.\n+\n cl_teamcounter_playercount_instead_of_avatars false (clientdll archive release)\n \t<no description>\n \n@@ -2353,6 +2362,9 @@ cloth_hudmodel_presettle 0 (developmentonly clientdll)\n cloth_hudmodel_presettle_log false (developmentonly clientdll)\n \t<no description>\n \n+cloth_interp_rot false (developmentonly clientdll)\n+\t<no description>\n+\n cloth_iv_dump 4 (developmentonly clientdll defensive)\n \t<no description>\n \n@@ -2518,6 +2530,9 @@ cq_runtests_interval 30 (developmentonly gamedll)\n crosshair true (clientdll archive per_user)\n \t<no description>\n \n+cs2_bomb_damage_showdebugwindow false (developmentonly clientdll archive replicated cheat menubar_item)\n+\tCSGO/Bomb Damage\n+\n cs_AssistDamageThreshold 25 (developmentonly gamedll)\n \tcs_AssistDamageThreshold defines the amount of damage needed to score an assist\n \n@@ -2578,97 +2593,91 @@ csgo_nav_jump_link_detour_threshold 1500 (developmentonly gamedll replicated def\n csgo_use_fullsort_for_opaque true (clientdll cheat)\n \tfullsort the opaque pass when there wasn't a depth prepass\n \n-csm_bias_override_0 1 (cheat)\n+csm_bias_override_0 1 (clientdll cheat)\n \t<no description>\n \n-csm_bias_override_1 1 (cheat)\n+csm_bias_override_1 1 (clientdll cheat)\n \t<no description>\n \n-csm_bias_override_2 1 (cheat)\n+csm_bias_override_2 1 (clientdll cheat)\n \t<no description>\n \n-csm_bias_override_3 1 (cheat)\n+csm_bias_override_3 1 (clientdll cheat)\n \t<no description>\n \n-csm_cascade0_override_dist -1 (cheat)\n+csm_cascade0_override_dist -1 (clientdll cheat)\n \t<no description>\n \n-csm_cascade1_override_dist -1 (cheat)\n+csm_cascade1_override_dist -1 (clientdll cheat)\n \t<no description>\n \n-csm_cascade2_override_dist -1 (cheat)\n+csm_cascade2_override_dist -1 (clientdll cheat)\n \t<no description>\n \n-csm_cascade3_override_dist -1 (cheat)\n+csm_cascade3_override_dist -1 (clientdll cheat)\n \t<no description>\n \n-csm_cascade_viewdir_shadow_bias_scale 2 (cheat)\n+csm_cascade_viewdir_shadow_bias_scale 2 (clientdll cheat)\n \t<no description>\n \n-csm_max_dist_between_caster_and_receiver 15000 (cheat)\n+csm_max_dist_between_caster_and_receiver 15000 (clientdll cheat)\n \tdefault pushback\n \n-csm_max_num_cascades_override -1 (developmentonly defensive)\n+csm_max_num_cascades_override -1 (developmentonly clientdll defensive)\n \tNumber of cascades in sunlight shadow\n \n-csm_max_shadow_dist_override -1 (developmentonly defensive)\n+csm_max_shadow_dist_override -1 (developmentonly clientdll defensive)\n \t<no description>\n \n-csm_max_visible_dist 7500 (cheat)\n+csm_max_visible_dist 7500 (clientdll cheat)\n \t<no description>\n \n-csm_res_override_0 0 (cheat)\n+csm_res_override_0 0 (clientdll cheat)\n \t<no description>\n \n-csm_res_override_1 0 (cheat)\n+csm_res_override_1 0 (clientdll cheat)\n \t<no description>\n \n-csm_res_override_2 0 (cheat)\n+csm_res_override_2 0 (clientdll cheat)\n \t<no description>\n \n-csm_res_override_3 0 (cheat)\n+csm_res_override_3 0 (clientdll cheat)\n \t<no description>\n \n-csm_shadow_worldview_align_x_to_u false (cheat)\n+csm_shadow_worldview_align_x_to_u false (clientdll cheat)\n \t<no description>\n \n-csm_shadow_worldview_shear_align_z_to_v false (cheat)\n+csm_shadow_worldview_shear_align_z_to_v false (clientdll cheat)\n \t<no description>\n \n-csm_split_log_scalar 0.85 (cheat)\n+csm_sst_max_visible_dist 2000 (clientdll cheat)\n \t<no description>\n \n-csm_sst_max_visible_dist 2000 (cheat)\n-\t<no description>\n-\n-csm_sst_pushback_distance 1500 (cheat)\n+csm_sst_pushback_distance 1500 (clientdll cheat)\n \tdefault pushback\n \n-csm_sst_shadow_focus_region_maxz 2000 (cheat)\n-\t<no description>\n-\n-csm_sst_shadow_focus_region_minz -2000 (cheat)\n+csm_sst_shadow_focus_region_maxz 2000 (clientdll cheat)\n \t<no description>\n \n-csm_sst_shadow_focus_region_thin_compensation 500 (clientdll cheat)\n+csm_sst_shadow_focus_region_minz -2000 (clientdll cheat)\n \t<no description>\n \n-csm_viewdir_shadow_bias 0 (cheat)\n+csm_sst_shadow_focus_region_thin_compensation 1500 (clientdll cheat)\n \t<no description>\n \n-csm_viewmodel_farz 30 (cheat)\n+csm_viewdir_shadow_bias 0 (clientdll cheat)\n \t<no description>\n \n-csm_viewmodel_max_shadow_dist 21 (cheat)\n+csm_viewmodel_max_shadow_dist 21 (clientdll cheat)\n \t<no description>\n \n-csm_viewmodel_max_visible_dist 1000 (cheat)\n+csm_viewmodel_max_visible_dist 1000 (clientdll cheat)\n \t<no description>\n \n-csm_viewmodel_nearz 0.5 (cheat)\n+csm_viewmodel_nearz 0.5 (clientdll cheat)\n \t<no description>\n \n-csm_viewmodel_shadows false (developmentonly defensive)\n+csm_viewmodel_shadows false (developmentonly clientdll defensive)\n \t<no description>\n \n custom_bot_difficulty 2 (gamedll clientdll replicated release)\n@@ -2683,9 +2692,6 @@ cv_bot_ai_bt_hiding_spot_show false (gamedll replicated cheat)\n cv_bot_ai_bt_moveto_show_next_hiding_spot false (gamedll replicated cheat)\n \tDraw the hiding spot the bot will check next.\n \n-d3d_max_feature_level \"<Not set>\" (developmentonly defensive)\n-\tReport the maximum D3D feature level available.\n-\n damage_impact_heavy 40 (developmentonly clientdll defensive)\n \tDamage ABOVE this value is considered heavy damage\n \n@@ -2758,6 +2764,9 @@ debug_video_config_cvars false (developmentonly clientdll)\n debug_visibility_monitor 0 (gamedll cheat)\n \t<no description>\n \n+debugoverlay_circle_verts 24 (cheat)\n+\t<no description>\n+\n debugoverlay_enable_dotted_dashed true (cheat)\n \tToggle the use of dotted/dashed debugoverlay lines to indicate source\n \n@@ -2914,6 +2923,9 @@ disable_dynamic_prop_loading false (gamedll cheat)\n disable_source_soundscape_trace false (developmentonly gamedll defensive)\n \tBypasses lookup of soundscapes for indvidual audio sources when enabled.\n \n+display_convars_onscreen_in_big_text \"\" (developmentonly gamedll clientdll replicated cheat)\n+\tDisplay the convars on the screen in big text. Use semicolons to separate multiple convars\n+\n display_game_events false (gamedll cheat)\n \t<no description>\n \n@@ -3028,12 +3040,6 @@ engine_render_only false (developmentonly defensive)\n engine_rendersystem_init \"\" (developmentonly defensive)\n \tRendersystem option requested (changing this does not change the rendersystem).\n \n-engine_rendersystem_meets_min_dx_110 \"Unknown\" (developmentonly defensive)\n-\tRendersystem meets min DX110 feature level (changing this does not change the shader model).\n-\n-engine_rendersystem_meets_min_dx_110_simple \"Unknown\" (developmentonly defensive)\n-\tRendersystem meets min DX110 feature level (changing this does not change the shader model).\n-\n engine_rendersystem_shader_model 0 (developmentonly defensive)\n \tRendersystem shader model in use (changing this does not change the shader model).\n \n@@ -3076,6 +3082,9 @@ ent_debug_draw_thinkers false (developmentonly gamedll clientdll replicated defe\n ent_joint_axis_size 4 (developmentonly gamedll defensive)\n \t<no description>\n \n+ent_joint_filter_name \"\" (gamedll cheat)\n+\tIf a joint's entire name matches (case insensitive), it will be displayed.\n+\n ent_joint_filter_substrings \"\" (gamedll cheat)\n \tIf a joint's name has any of the given substrings in it, it will be displayed. Substrings can be delimited by the ',' or '|' character.\n \n@@ -3367,15 +3376,24 @@ func_mover_debug_showtext false (developmentonly gamedll defensive)\n func_mover_debug_verbose false (developmentonly gamedll defensive)\n \t<no description>\n \n+func_mover_force_transition_start_direction false (developmentonly gamedll defensive)\n+\t<no description>\n+\n func_mover_get_speed_override 0 (developmentonly gamedll defensive)\n \t<no description>\n \n func_mover_imgui_log_count 30 (developmentonly gamedll defensive)\n \t<no description>\n \n+func_mover_run_parallel true (developmentonly gamedll defensive)\n+\t<no description>\n+\n func_rotator_debug false (developmentonly gamedll defensive)\n \t<no description>\n \n+func_rotator_run_parallel true (developmentonly gamedll defensive)\n+\t<no description>\n+\n fx_drawmetalspark true (developmentonly clientdll)\n \tDraw metal spark effects.\n \n@@ -3541,16 +3559,16 @@ hud_scaling 1 (min: 0.9, max: 1.1, clientdll archive)\n hud_showtargetid true (clientdll archive per_user)\n \tEnables display of target names\n \n-hullivr_edge_merge_tan 0.02 (developmentonly gamedll replicated defensive)\n+hullivr_edge_merge_tan 0.02 (developmentonly gamedll clientdll replicated defensive)\n \tShould we try to straighten two faces connected to this edge? (tangent)\n \n-hullivr_faceisland_merge_disp 0 (developmentonly gamedll replicated defensive)\n+hullivr_faceisland_merge_disp 0 (developmentonly gamedll clientdll replicated defensive)\n \tShould we straighten face island if the displacement is this much? (inches)\n \n-hullivr_faceisland_merge_tan 0.04 (developmentonly gamedll replicated defensive)\n+hullivr_faceisland_merge_tan 0.04 (developmentonly gamedll clientdll replicated defensive)\n \tShould we try to straighten an island of faces deviating from their average normal (tangent)?\n \n-hullivr_version 3 (developmentonly gamedll replicated defensive)\n+hullivr_version 3 (developmentonly gamedll clientdll replicated defensive)\n \t<no description>\n \n ik_constraints_enabled true (developmentonly replicated defensive)\n@@ -3796,9 +3814,6 @@ instant_replay true (developmentonly defensive)\n instant_replay_history_limit 120 (developmentonly defensive)\n \tMaximum amount of minutes to save history (0 is unlimited).\n \n-instant_replay_history_limit_low 10 (developmentonly defensive)\n-\tMaximum amount of minutes to save history on low memory (32 bit) systems (0 is unlimited).\n-\n iv_debugbone \"\" (release)\n \tDebug bone name for interpolation spew of CAnimationState.\n \n@@ -4183,7 +4198,7 @@ lb_tile_pixels 8 (developmentonly defensive)\n lb_time_sliced_shadow_map_reallocation_age 0.7 (developmentonly defensive)\n \tAge of cached allocation to be considered for re-allocation\n \n-lb_time_sliced_shadow_map_reallocation_pct 0.33 (developmentonly defensive)\n+lb_time_sliced_shadow_map_reallocation_pct 0.2 (developmentonly defensive)\n \tLikelyhood we'll re-allocate a timesliced shadowmap (to try to improve packing)\n \n lb_time_sliced_shadow_map_rendering_enable true (developmentonly defensive)\n@@ -4225,6 +4240,9 @@ lockMoveControllerRet false (clientdll archive)\n logaddress_token_secret \"\" (gamedll release)\n \tSet a secret string that will be hashed when using logaddress with explicit token hash.\n \n+logic_entity_analyzer_debug false (gamedll replicated cheat)\n+\t<no description>\n+\n logic_npc_counter_debug false (gamedll replicated cheat)\n \t<no description>\n \n@@ -4252,9 +4270,6 @@ markup_volume_ref_cone_angle 135 (developmentonly gamedll defensive)\n mat_assert_on_error_shader_use false (developmentonly)\n \t<no description>\n \n-mat_async_shader_load false (release)\n-\t<no description>\n-\n mat_cache_and_skip_commandbuffers true (developmentonly)\n \t<no description>\n \n@@ -4411,15 +4426,6 @@ mic_listen_while_nonfocused false (developmentonly clientdll defensive)\n mm_csgo_community_search_players_min 3 (archive release)\n \tWhen performing CSGO community matchmaking look for servers with at least so many human players\n \n-mm_datacenter_query_delay 5 (developmentonly)\n-\tDelay after datacenter update is enabled before data is actually queried.\n-\n-mm_datacenter_retry_interval 75 (developmentonly)\n-\tInterval between datacenter stats retries.\n-\n-mm_datacenter_update_interval 3600 (developmentonly)\n-\tInterval between datacenter stats updates.\n-\n mm_debug_friend_rp 0 (developmentonly)\n \t<no description>\n \n@@ -5040,6 +5046,9 @@ mp_roundtime_defuse 0 (min: 0, max: 60, gamedll notify replicated release comman\n mp_roundtime_hostage 0 (min: 0, max: 60, gamedll notify replicated release commandline_enforced)\n \tHow many minutes each round of Hostage Rescue takes. If 0 then use mp_roundtime instead.\n \n+mp_shoot_dropped_grenades false (gamedll clientdll replicated release commandline_enforced)\n+\tDropped grenades detonate when shot.\n+\n mp_shorthanded_cash_bonus_ignore_kicked true (gamedll clientdll replicated release)\n \tDetermines whether kicked players are included in the assessment for short-handedness\n \n@@ -5448,6 +5457,9 @@ nav_draw_space_transitions true (developmentonly gamedll)\n nav_edit 0 (gamedll cheat)\n \tSet to one to interactively edit the Navigation Mesh. Set to zero to leave edit mode.\n \n+nav_edit_draw_navlinks true (gamedll cheat)\n+\t<no description>\n+\n nav_edit_use_camera true (gamedll cheat)\n \t<no description>\n \n@@ -5559,7 +5571,7 @@ nav_gen_opt_to_quads_se_limit_start 1e-05 (gamedll cheat)\n nav_gen_opt_to_quads_weld_limit_end 0.01 (gamedll cheat)\n \t<no description>\n \n-nav_gen_opt_to_quads_weld_limit_start 1e-07 (gamedll cheat)\n+nav_gen_opt_to_quads_weld_limit_start 0 (gamedll cheat)\n \t<no description>\n \n nav_gen_oriented_angle_tol 15 (gamedll cheat)\n@@ -5760,7 +5772,7 @@ nav_smooth_draw_speed 0 (gamedll cheat)\n nav_smooth_enable 1 (gamedll cheat)\n \t<no description>\n \n-nav_smooth_push_from_walls -1 (developmentonly gamedll)\n+nav_smooth_push_from_walls 12 (developmentonly gamedll)\n \t<no description>\n \n nav_smooth_relax true (gamedll cheat)\n@@ -5940,9 +5952,6 @@ nav_test_npc_collision_show_geometry false (gamedll cheat)\n nav_test_path false (gamedll cheat)\n \tCalculate and draw a path from player/camera position to the test position.\n \n-nav_test_path_expansion_search 0 (gamedll cheat)\n-\tExtend nav_test_path by doing an expansion search on that path.  Convar value defines dist.\n-\n nav_test_path_lock_goal false (gamedll cheat)\n \tLock the pathfinding goal to the current intersection point.\n \n@@ -5991,6 +6000,9 @@ nav_test_search_on_path false (gamedll cheat)\n nav_test_search_on_path_boundary_edges_only false (gamedll cheat)\n \tActivate the 'boundary edges only' constraint when testing the 'on path' search mode for tactical searches.\n \n+nav_test_search_on_path_setgoal false (gamedll cheat)\n+\tTest the 'on path' search mode for tactical searches using SetGoal w/ possible path clipping (flips between 2 searches). Requires a selected NPC.\n+\n nav_test_smooth false (gamedll cheat)\n \t<no description>\n \n@@ -6366,15 +6378,6 @@ panorama_label_wrap_before_shrink true (developmentonly clientdll hidden defensi\n panorama_large_dispatch_event_queue 0 (developmentonly hidden defensive)\n \t<no description>\n \n-panorama_max_fps 120 (developmentonly hidden defensive)\n-\t<no description>\n-\n-panorama_max_oof_overlay_up_fps 4 (developmentonly hidden defensive)\n-\t<no description>\n-\n-panorama_max_overlay_fps 60 (developmentonly hidden defensive)\n-\t<no description>\n-\n panorama_max_text_shadow_strength 10 (developmentonly hidden defensive)\n \t<no description>\n \n@@ -6642,9 +6645,6 @@ phys_visualize_awake_dynamic_only false (developmentonly gamedll clientdll repli\n phys_visualize_awake_unattached_only false (developmentonly gamedll clientdll replicated defensive)\n \t<no description>\n \n-phys_visualize_traces false (gamedll clientdll replicated cheat)\n-\t<no description>\n-\n phys_wind_force_scale 1 (developmentonly gamedll clientdll replicated)\n \tScale on the force wind applies to physics bodies\n \n@@ -6657,10 +6657,10 @@ player0_using_joystick false (archive)\n player_botdifflast_s \"2\" (clientdll archive release)\n \t<no description>\n \n-player_competitive_maplist_2v2_10_0_630B8B7C \"mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_poseidon,mg_de_sanctum,mg_de_overpass\" (clientdll archive)\n+player_competitive_maplist_2v2_10_0_D684D4E1 \"mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_debris,mg_de_poseidon,mg_de_eldorado,mg_de_overpass\" (clientdll archive)\n \t<no description>\n \n-player_competitive_maplist_8_10_0_556B3D03 \"mg_de_warden,mg_de_dust2,mg_de_train,mg_de_ancient,mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_mirage,mg_cs_office,mg_cs_italy,mg_cs_alpine,mg_de_cache,mg_de_stronghold,mg_de_anubis,mg_lobby_mapveto,mg_de_overpass\" (clientdll archive)\n+player_competitive_maplist_8_10_0_A062AC6A \"mg_de_dust2,mg_de_train,mg_de_ancient,mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_mirage,mg_cs_office,mg_cs_italy,mg_de_cache,mg_de_boulder,mg_de_anubis,mg_lobby_mapveto,mg_de_fachwerk,mg_cs_shelter,mg_de_overpass\" (clientdll archive)\n \t<no description>\n \n player_debug_off_nav false (gamedll cheat)\n@@ -6804,7 +6804,7 @@ r_RainAllowInSplitScreen false (developmentonly clientdll defensive)\n r_RainParticleDensity 1 (developmentonly clientdll defensive)\n \tDensity of Particle Rain 0-1\n \n-r_add_views_in_pre_output false (developmentonly defensive)\n+r_add_views_in_pre_output false (developmentonly clientdll defensive)\n \t<no description>\n \n r_allow_onesweep_gpusort true (developmentonly defensive)\n@@ -7275,6 +7275,9 @@ r_debug_particle_shadows false (clientdll cheat)\n r_debug_precipitation false (clientdll cheat)\n \tShow precipitation volumes\n \n+r_decal_hit_confirmation false (developmentonly gamedll clientdll replicated)\n+\t<no description>\n+\n r_decals 2048 (developmentonly gamedll clientdll replicated defensive)\n \t<no description>\n \n@@ -7467,9 +7470,6 @@ r_flashlighttracedistwatercutoff 80 (clientdll cheat)\n r_flashlightvisualizetrace false (clientdll cheat)\n \t<no description>\n \n-r_flush_on_pooled_ib_resize true (release)\n-\t<no description>\n-\n r_force_no_present false (cheat)\n \tForce the render device to not present frames.\n \n@@ -7479,9 +7479,6 @@ r_force_render_frame_count 5 (developmentonly)\n r_force_thick_hair false (developmentonly cheat)\n \t<no description>\n \n-r_force_zprepass -1 (cheat)\n-\t0: Force z prepass off. 1: Force on. -1: Don't force\n-\n r_frame_sync_enable true (developmentonly defensive)\n \t<no description>\n \n@@ -7497,6 +7494,9 @@ r_fullscreen_gamma 2.2 (min: 1, max: 4, archive missing1)\n r_fullscreen_quad_single_triangle true (developmentonly)\n \t<no description>\n \n+r_gpu_debug_draw_freeze false (developmentonly clientdll)\n+\t<no description>\n+\n r_grass_allow_flattening false (developmentonly defensive)\n \t<no description>\n \n@@ -7815,18 +7815,9 @@ r_show_time_info false (clientdll release)\n r_showdebugoverlays false (cheat)\n \tSet to render debug overlays\n \n-r_showdebugrendertarget false (cheat)\n-\tSet the debug render target to show, 0 == disable\n-\n r_showsceneobjectbounds false (cheat)\n \tShow scenesystem object bounding boxes\n \n-r_showsunshadowdebugrendertargets false (cheat)\n-\tSet to render sun shadow render targets\n-\n-r_showsunshadowdebugsplitvis false (cheat)\n-\tSet to render sun shadow split visibility debugger\n-\n r_size_cull_threshold 0.8 (developmentonly)\n \tThreshold of screen size percentage below which objects get culled\n \n@@ -7866,9 +7857,6 @@ r_ssao_strength 1.2 (developmentonly defensive)\n r_strip_invisible_during_sceneobject_update false (developmentonly clientdll defensive)\n \t<no description>\n \n-r_suppress_redundant_state_changes true (developmentonly defensive)\n-\t<no description>\n-\n r_test1_maximum_wait_ms 10 (clientdll release)\n \t<no description>\n \n@@ -7908,9 +7896,6 @@ r_texture_stream_max_resolution 2147483647 (min: 512, developmentonly defensive)\n r_texture_stream_mip_bias 0 (developmentonly defensive)\n \tBiases the mip level the texture streaming system choses to stream for each texture.\n \n-r_texture_stream_resolution_bias 1 (developmentonly defensive)\n-\t<no description>\n-\n r_texture_stream_resolution_bias_decrease_rate 0.1 (developmentonly defensive)\n \t<no description>\n \n@@ -7956,6 +7941,9 @@ r_timestamp_query_multiplier 1 (developmentonly defensive)\n r_translucent true (cheat)\n \tEnable rendering of translucent geometry\n \n+r_ui_update_parallel_with_server false (developmentonly defensive)\n+\t<no description>\n+\n r_update_particles_on_render_only_frames false (developmentonly clientdll defensive)\n \t<no description>\n \n@@ -7992,9 +7980,6 @@ r_world_wind_smooth_time 2 (developmentonly defensive)\n r_world_wind_strength 40 (developmentonly defensive)\n \t<no description>\n \n-r_zprepass_normals false (cheat)\n-\t0: Use normals reconstructed from depth. 1: Output correct normals in z prepass.\n-\n radarvisdistance 1000 (min: 10, gamedll cheat)\n \tat this distance and beyond you need to be point right at someone to see them\n \n@@ -8109,9 +8094,6 @@ report_connection_failure_percentage 0 (developmentonly defensive)\n reset_voice_on_input_stallout false (userinfo)\n \tIf true, resets the input device when there was a long enough hitch between callbacks.\n \n-resourcesystem_multiframe_finalize_time_msec 10 (developmentonly)\n-\tMax time to spend finalizing resources per frame in miliseconds.\n-\n rope_averagelight true (developmentonly clientdll defensive)\n \tMakes ropes use average of cubemap lighting instead of max intensity.\n \n@@ -8205,9 +8187,6 @@ save_screenshot 2 (developmentonly gamedll defensive)\n save_spew false (developmentonly gamedll clientdll replicated defensive)\n \t<no description>\n \n-save_version 2 (developmentonly gamedll clientdll replicated defensive)\n-\t0: (V0) Legacy save format, 1: (V1) KeyValues3 save format, 2: (V2) KV3Transfer saves\n-\n save_write_kv3 false (developmentonly gamedll clientdll replicated defensive)\n \tWrite the KV3 entity data as a text file in the save directory\n \n@@ -8244,9 +8223,6 @@ sc_aggregate_gpu_culling_show_culled false (developmentonly menubar_item)\n sc_aggregate_gpu_occlusion_culling true (developmentonly defensive)\n \t<no description>\n \n-sc_aggregate_gpu_vis_culling true (developmentonly defensive)\n-\t<no description>\n-\n sc_aggregate_indirect_draw_compaction true (release)\n \tUse multidrawindirect...count if the driver/hardware supports it\n \n@@ -8331,7 +8307,7 @@ sc_disable_spotlight_shadows false (cheat)\n sc_disable_world_materials false (cheat)\n \t<no description>\n \n-sc_distance_field_visualize_atlas false (developmentonly defensive)\n+sc_distancefield_visualize_atlas false (developmentonly defensive)\n \t<no description>\n \n sc_dithered_lod_transition_amt 0.075 (min: 0, max: 0.2, developmentonly defensive)\n@@ -8436,6 +8412,21 @@ sc_max_framebuffer_copies_per_layer 1 (developmentonly defensive)\n sc_mesh_backface_culling true (developmentonly defensive)\n \t<no description>\n \n+sc_mesh_gpu_occlusion_culling true (developmentonly defensive)\n+\t<no description>\n+\n+sc_mesh_gpu_volume_culling true (developmentonly defensive)\n+\t<no description>\n+\n+sc_mesh_mesh_shaders false (developmentonly defensive)\n+\t<no description>\n+\n+sc_mesh_shadows_batch_across_materials true (developmentonly defensive)\n+\t<no description>\n+\n+sc_mesh_use_pmb false (developmentonly defensive)\n+\t<no description>\n+\n sc_no_cull false (developmentonly defensive)\n \t<no description>\n \n@@ -8508,12 +8499,12 @@ sc_visualize_batches 0 (developmentonly defensive)\n sc_visualize_sceneobjects \"SCENEOBJECT_VIS_NONE\" (developmentonly menubar_item defensive)\n \tSceneSystem/Visualize SceneObject Mode\n \n+sc_visualize_sceneobjects_meshlets \"SCENEOBJECT_MESHLET_VIS_NONE\" (developmentonly menubar_item)\n+\tSceneSystem/Visualize Base SceneObject Meshlets\n+\n scene_clientflex true (developmentonly gamedll clientdll replicated defensive)\n \tDo client side flex animation.\n \n-scene_maxcaptionradius 1200 (developmentonly gamedll defensive)\n-\tOnly show closed captions if recipient is within this many units of speaking actor (0==disabled).\n-\n scene_print 0 (developmentonly gamedll clientdll replicated defensive)\n \tWhen playing back a scene, print timing and event info to console.\n \n@@ -8664,6 +8655,18 @@ snd_async_spew_blocking 0 (developmentonly defensive)\n snd_autodetect_latency true (archive missing1)\n \t<no description>\n \n+snd_beatpattern_show_bpm false (cheat)\n+\t<no description>\n+\n+snd_beatpattern_show_events false (cheat)\n+\t<no description>\n+\n+snd_beatpattern_show_quantize_queue false (cheat)\n+\t<no description>\n+\n+snd_beatpattern_use_lookahead false (cheat)\n+\t<no description>\n+\n snd_boxverb_simd true (developmentonly defensive)\n \tEnable SIMD code path for shoebox reverb processor.\n \n@@ -8928,21 +8931,15 @@ snd_roundend_volume 0.16 (min: 0, max: 1, clientdll archive release)\n snd_roundstart_volume 0 (min: 0, max: 1, clientdll archive release)\n \tVolume of Round Start Music\n \n-snd_sequencer_show_bpm false (cheat)\n-\t<no description>\n-\n-snd_sequencer_show_events false (cheat)\n-\t<no description>\n-\n-snd_sequencer_show_quantize_queue false (cheat)\n-\t<no description>\n-\n snd_showclassname 0 (cheat)\n \t<no description>\n \n snd_showstart 0 (cheat)\n \t<no description>\n \n+snd_sos_beatpattern_show_operator_updates false (developmentonly defensive)\n+\t<no description>\n+\n snd_sos_block_global_stack false (cheat)\n \t<no description>\n \n@@ -8988,6 +8985,9 @@ snd_sos_print_field_references false (cheat)\n snd_sos_print_fps false (cheat)\n \t<no description>\n \n+snd_sos_print_frametime false (cheat)\n+\t<no description>\n+\n snd_sos_print_full_field_info false (cheat)\n \t<no description>\n \n@@ -9087,6 +9087,9 @@ snd_sos_soundevent_max_deferred_time 5 (developmentonly defensive)\n snd_sos_soundevent_show_deferral_warning false (developmentonly defensive)\n \t<no description>\n \n+snd_sos_tools_detailed_debugging true (developmentonly archive)\n+\t<no description>\n+\n snd_sound_areas_debug false (clientdll replicated cheat)\n \t<no description>\n \n@@ -9105,6 +9108,15 @@ snd_soundmixer_version 2 (developmentonly defensive)\n snd_spatialize_lerp 0 (archive release)\n \t<no description>\n \n+snd_steamaudio_display_dimension_data_inside true (developmentonly defensive)\n+\tWhen visualizing dimensions data at runtime, draw the inside direction.\n+\n+snd_steamaudio_display_dimension_data_outside true (developmentonly defensive)\n+\tWhen visualizing dimensions data at runtime, draw the outisde direction.\n+\n+snd_steamaudio_display_dimension_data_size true (developmentonly defensive)\n+\tWhen visualizing dimensions data at runtime, draw the size of the space.\n+\n snd_steamaudio_dynamicpathing_max_samples 16 (developmentonly gamedll clientdll replicated defensive)\n \t<no description>\n \n@@ -9159,9 +9171,6 @@ snd_use_baked_occlusion 0 (replicated cheat release)\n snd_vmix_override_mix_decay_time -1 (cheat)\n \tIf set > 0, overrides how long the decay time is on all mix graphs (in seconds).\n \n-snd_vmix_show_input_updates false (cheat)\n-\tIf set to 1, show all incoming updates to vmix inputs.\n-\n snd_voipvolume 1 (min: 0, max: 2, archive missing1)\n \tVoice volume\n \n@@ -9255,7 +9264,7 @@ sparseshadowtree_disable_add_layers false (developmentonly)\n sparseshadowtree_disable_for_viewmodel true (developmentonly)\n \tDisable SST generation and runtime for viewmodel (use original CSM rendering).\n \n-sparseshadowtree_enable_rendering false (developmentonly)\n+sparseshadowtree_enable_rendering true (developmentonly)\n \tEnable use of SST at runtime (static geo rendered into cascades via SST).\n \n sparseshadowtree_leaf_compress_scaleoffset true (developmentonly)\n@@ -9636,6 +9645,9 @@ sv_clockcorrection_msecs 30 (gamedll release)\n sv_clockdbg false (developmentonly)\n \tPrint spew related to server clock and ticking\n \n+sv_cloth_interp_rot false (developmentonly gamedll)\n+\t<no description>\n+\n sv_cluster 0 (release)\n \tData center cluster this server lives in.\n \n@@ -9651,6 +9663,9 @@ sv_compute_per_bot_difficulty false (developmentonly gamedll clientdll replicate\n sv_condense_late_buttons true (developmentonly gamedll defensive)\n \tWhen condensing late commands. Should we compress multiple moves of button presses into the target move?\n \n+sv_cq_delta_encode_svc_usercmds true (developmentonly gamedll)\n+\tDelta encode svc_UserCmds message\n+\n sv_cq_min_queue 0 (min: 0, developmentonly replicated defensive)\n \tServer min buffer size.\n \n@@ -9663,6 +9678,9 @@ sv_cq_trim_bloat_space 0 (gamedll release)\n sv_cq_trim_catchup_remainder 1 (gamedll release)\n \tWhen trimming an overful CQ due to app 'catchup' request, leave at least N more commands than the minimum\n \n+sv_cq_validate_encoded_svc_usercmds false (developmentonly gamedll)\n+\tVERY EXPENSIVE: serialize non-delta-encoded commands along with delta-encoded for validation\n+\n sv_cs_player_speed_has_hostage 200 (gamedll clientdll replicated release)\n \t<no description>\n \n@@ -9768,9 +9786,6 @@ sv_early_network_message_processing false (developmentonly gamedll)\n sv_enable_alternate_baselines 1 (release)\n \tAllow alternate baseline system, set to 2 for debugging spew.\n \n-sv_enable_delta_packing true (release)\n-\tWhen enabled, this allows for entity packing to use the property changes for building up the data. This is many times faster, but can be disabled for error checking.\n-\n sv_enable_donttransmit true (developmentonly)\n \tWhen encoding entity deltas, instead of unreliably deducing explicit deletions, actually send list of existing but not networked entities (dont_transmit list) to each client.\n \n@@ -9798,9 +9813,6 @@ sv_endmatch_item_drop_interval_rare 1 (developmentonly gamedll clientdll replica\n sv_ent_showonlyhitbox -1 (gamedll cheat)\n \t<no description>\n \n-sv_ents_write_alarm 0 (release)\n-\tPrint callstack every time CNetworkGameServerBase::WriteEntityUpdate takes more than this amount of milliseconds\n-\n sv_extra_client_connect_time 15 (developmentonly defensive)\n \tSeconds after client connect during which extra frames are buffered to prevent non-delta'd update\n \n@@ -10011,9 +10023,6 @@ sv_lightquery_debug false (gamedll cheat)\n sv_limit_buyrandom_per_life true (gamedll release)\n \tEnable to limit buyrandom command to only run once per player life\n \n-sv_log_change_offsets false (developmentonly gamedll)\n-\tLog change offsets to game/varchangeinfoN.log files.\n-\n sv_log_http_record_before_any_listeners false (gamedll release)\n \t<no description>\n \n@@ -10044,7 +10053,7 @@ sv_logsdir \"logs\" (archive release)\n sv_long_frame_ms 0 (developmentonly defensive)\n \tIf a server frame takes longer than N ms, complain about it.  (Dedicated server only.)  See also engine_frametime_warnings_enable.\n \n-sv_mapvetopickvote_maps \"de_anubis,de_overpass,de_inferno,de_mirage,de_dust2,de_nuke,de_ancient\" (gamedll release)\n+sv_mapvetopickvote_maps \"de_cache,de_anubis,de_inferno,de_mirage,de_dust2,de_nuke,de_ancient\" (gamedll release)\n \tWhich maps are used for map veto pick sequence\n \n sv_mapvetopickvote_phase_duration \"[1:5][2:15][3:20][4:10][5:10][6:5]\" (gamedll release)\n@@ -10065,9 +10074,6 @@ sv_matchpause_auto_5v5 false (gamedll clientdll replicated release)\n sv_matchperfstats_maxclientperfsamples 100 (developmentonly gamedll defensive)\n \tDon't retain more than N perf samples for any given client\n \n-sv_max_change_offsets 48 (developmentonly gamedll)\n-\tHow many network changes to track before requiring full diff check.\n-\n sv_max_deathmatch_respawns_per_tick 0 (gamedll release commandline_enforced)\n \t<no description>\n \n@@ -10152,9 +10158,6 @@ sv_networkvar_log_fullchanges false (developmentonly gamedll)\n sv_networkvar_perfieldtracking true (release)\n \tTrack individual field offset changes, rather than a single dirty flag for the whole entity.\n \n-sv_networkvar_validate false (release)\n-\tValidate each StateChanged against known offsets.\n-\n sv_no_navmesh false (developmentonly gamedll cheat)\n \tBlock loading of the navmesh. Unplayable, only used for memory sampling.\n \n@@ -10194,12 +10197,6 @@ sv_outofpvsentityupdates false (developmentonly)\n sv_override_max_health 0 (gamedll release)\n \t<no description>\n \n-sv_pack_entities_really_verbose false (release)\n-\tIncrease verbosity for entity packing\n-\n-sv_pack_entities_verbose_entidx -1 (release)\n-\tVerbose output for entity packing, set to the entindex of the entity you want verbose output for.\n-\n sv_parallel_checktransmit 0 (gamedll release)\n \tSet to 1 to use threaded checkentities for transmit/pvs on listen servers, 2 for dedicated servers.\n \n@@ -10335,9 +10332,6 @@ sv_rcon_minfailures 5 (min: 1, max: 20, developmentonly defensive)\n sv_rcon_minfailuretime 30 (min: 1, developmentonly defensive)\n \tNumber of seconds to track failed rcon authentications\n \n-sv_recipients_check true (release)\n-\tWhen packing entities, check that recipient bits match for fast path packing.\n-\n sv_record_item_time_data false (gamedll release)\n \tTurn on recording of per player item time data into the server log.\n \n@@ -10527,6 +10521,9 @@ sv_standable_normal 0.7 (gamedll clientdll replicated cheat release)\n sv_stats true (developmentonly defensive)\n \tCollect CPU usage stats\n \n+sv_steamauth_correct false (release)\n+\tCorrect behavior\n+\n sv_steamauth_enforce 2 (release)\n \tBy default, player must maintain a reliable connection to Steam servers. When player Steam session drops, enforce it: 2 = instantly kick, 1 = kick at next spawn, 0 = do not kick.\n \n@@ -10773,9 +10770,6 @@ sv_walkable_normal 0.7 (gamedll clientdll replicated cheat release)\n sv_warmup_to_freezetime_delay 4 (min: 3, max: 20, gamedll clientdll replicated release commandline_enforced)\n \tDelay between end of warmup and start of match.\n \n-sv_watchtransmit -2 (gamedll release)\n-\tWatch NetworkStateChanged info for this entity index.\n-\n sv_water_slow_amount 0.9 (gamedll clientdll replicated release)\n \t<no description>\n \n@@ -10824,10 +10818,10 @@ thread_pool_option -1 (hidden release)\n throttle_expensive_ai false (developmentonly gamedll defensive)\n \t<no description>\n \n-timedemo_end \"-1\" (developmentonly defensive)\n+timedemo_end \"-1\" (release)\n \tEnds timedemo on given tick.\n \n-timedemo_start \"-1\" (developmentonly defensive)\n+timedemo_start \"-1\" (release)\n \tStarts timedemo on given tick.\n \n toast_manager_override_duration -1 (developmentonly clientdll)\n@@ -11520,6 +11514,9 @@ vprof_scope_entity_thinks false (developmentonly gamedll clientdll replicated de\n vprof_think_limit false (developmentonly gamedll defensive)\n \t<no description>\n \n+vt_sim_streaming_delay_ms 500 (developmentonly defensive)\n+\t<no description>\n+\n weapon_accuracy_forcespread 0 (gamedll clientdll replicated release)\n \tForce spread to the specified value.\n "
        },
        {
          "filename": "DumpSource2/module_metadata/assetbrowser.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 11,
          "changes": 13,
          "patch": "@@ -23,21 +23,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -64,6 +54,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/assetpreview.kv3",
          "status": "modified",
          "additions": 3,
          "deletions": 12,
          "changes": 15,
          "patch": "@@ -6,7 +6,7 @@\n \t\t\tname = \"NmAssetPreview\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/assetpreview/assetpreview.cpp\"\n-\t\t\tsource_line = 69\n+\t\t\tsource_line = 31\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"scripts/tools/anim_preview_archetypes.vdata\",\n@@ -91,21 +91,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -132,6 +122,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/client.kv3",
          "status": "modified",
          "additions": 9341,
          "deletions": 4390,
          "changes": 13731,
          "patch": null
        },
        {
          "filename": "DumpSource2/module_metadata/engine2.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -6,7 +6,7 @@\n \t\t\tname = \"AdditiveFilterManifest\"\n \t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/engine2/renderingworld.cpp\"\n-\t\t\tsource_line = 896\n+\t\t\tsource_line = 903\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/generalfilter_additive.vmat\",\n@@ -36,7 +36,7 @@\n \t\t\tname = \"LoopModeLevelLoad\"\n \t\t\tgroup = \"\"\n \t\t\tsource_file = \"src/engine2/loopmodelevelload.cpp\"\n-\t\t\tsource_line = 93\n+\t\t\tsource_line = 94\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/loading_background.vmat\","
        },
        {
          "filename": "DumpSource2/module_metadata/materialsystem2.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -6,7 +6,7 @@\n \t\t\tname = \"MaterialUtilsInit\"\n \t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/materialsystem2/utils/materialsystem2utils.cpp\"\n-\t\t\tsource_line = 641\n+\t\t\tsource_line = 642\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"dev/vgui/materials/renderui.vmat\",\n@@ -19,7 +19,7 @@\n \t\t},\n \t\t{\n \t\t\tname = \"PostProcessingSystemManifest\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/materialsystem2/postprocessingsystem.cpp\"\n \t\t\tsource_line = 39\n \t\t\tresources = "
        },
        {
          "filename": "DumpSource2/module_metadata/meshsystem.kv3",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -16,7 +16,7 @@\n \t\t\tname = \"VModelError\"\n \t\t\tgroup = \"\"\n \t\t\tsource_file = \"src/meshsystem/meshsystem.cpp\"\n-\t\t\tsource_line = 66\n+\t\t\tsource_line = 67\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"models/dev/error.vmdl\","
        },
        {
          "filename": "DumpSource2/module_metadata/modtools.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 11,
          "changes": 13,
          "patch": "@@ -13,21 +13,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -54,6 +44,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/pulse_system.kv3",
          "status": "modified",
          "additions": 3123,
          "deletions": 1503,
          "changes": 4626,
          "patch": null
        },
        {
          "filename": "DumpSource2/module_metadata/resourcecompiler.kv3",
          "status": "modified",
          "additions": 1894,
          "deletions": 834,
          "changes": 2728,
          "patch": null
        },
        {
          "filename": "DumpSource2/module_metadata/scenesystem.kv3",
          "status": "modified",
          "additions": 36,
          "deletions": 34,
          "changes": 70,
          "patch": "@@ -36,9 +36,20 @@\n \t\t\t\tresource_name:\"textures/dev/blue_noise_256.vtex\",\n \t\t\t]\n \t\t},\n+\t\t{\n+\t\t\tname = \"VirtualTextureMgrManifest\"\n+\t\t\tgroup = \"\"\n+\t\t\tsource_file = \"src/scenesystem/utils/virtualtexturemanager.cpp\"\n+\t\t\tsource_line = 16\n+\t\t\tresources = \n+\t\t\t[\n+\t\t\t\tresource_name:\"materials/dev/vt_cs.vmat\",\n+\t\t\t\tresource_name:\"materials/dev/vt_debug_imgui.vmat\",\n+\t\t\t]\n+\t\t},\n \t\t{\n \t\t\tname = \"SSAOManifest\"\n-\t\t\tgroup = \"GameStartup_SM40\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/utils/scalable_ambient_obscurance.cpp\"\n \t\t\tsource_line = 32\n \t\t\tresources = \n@@ -80,7 +91,7 @@\n \t\t\tname = \"SparseShadowTreeManifest\"\n \t\t\tgroup = \"\"\n \t\t\tsource_file = \"src/scenesystem/sparseshadowtree.cpp\"\n-\t\t\tsource_line = 66\n+\t\t\tsource_line = 68\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/sst_cs.vmat\",\n@@ -89,7 +100,7 @@\n \t\t},\n \t\t{\n \t\t\tname = \"\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/scenelpvdebuggrid.cpp\"\n \t\t\tsource_line = 22\n \t\t\tresources = \n@@ -101,7 +112,7 @@\n \t\t\tname = \"SubsurfaceProfilesManifest\"\n \t\t\tgroup = \"SubsurfaceProfilesManifest\"\n \t\t\tsource_file = \"src/scenesystem/scenegfxresources.cpp\"\n-\t\t\tsource_line = 486\n+\t\t\tsource_line = 478\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/subsurface_profiles.vdata\",\n@@ -111,7 +122,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup_RayTracing\"\n \t\t\tsource_file = \"src/scenesystem/scenegfxresources.cpp\"\n-\t\t\tsource_line = 477\n+\t\t\tsource_line = 469\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/rtx/binlights.vmat\",\n@@ -124,41 +135,22 @@\n \t\t},\n \t\t{\n \t\t\tname = \"\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/scenegfxresources.cpp\"\n-\t\t\tsource_line = 467\n+\t\t\tsource_line = 456\n \t\t\tresources = \n \t\t\t[\n+\t\t\t\tresource_name:\"TonemapManifest\",\n \t\t\t\tresource_name:\"VolumetricFogManifest\",\n \t\t\t\tresource_name:\"WindControllerManifest\",\n \t\t\t\tresource_name:\"materials/dev/skinning_cs.vmat\",\n \t\t\t\tresource_name:\"materials/dev/compute_smooth_normals_cs.vmat\",\n \t\t\t\tresource_name:\"materials/dev/cs_parallel_sort.vmat\",\n \t\t\t\tresource_name:\"materials/dev/cs_parallel_sort_onesweep.vmat\",\n-\t\t\t]\n-\t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"GameStartup\"\n-\t\t\tsource_file = \"src/scenesystem/scenegfxresources.cpp\"\n-\t\t\tsource_line = 460\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"TonemapManifest\",\n \t\t\t\tresource_name:\"materials/tools/copy_texture_with_gamma.vmat\",\n \t\t\t\tresource_name:\"materials/rendertargetops/copydepth.vmat\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"SceneSystemInitSM50\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n-\t\t\tsource_file = \"src/scenesystem/scenegfxresources.cpp\"\n-\t\t\tsource_line = 447\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/dev/luminaire.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"SceneSystemInit\"\n \t\t\tgroup = \"GameStartup\"\n@@ -183,11 +175,12 @@\n \t\t\t\tresource_name:\"materials/dev/primary_white_trans.vmat\",\n \t\t\t\tresource_name:\"materials/dev/reflectivity_90.vmat\",\n \t\t\t\tresource_name:\"materials/dev/generalfilter.vmat\",\n+\t\t\t\tresource_name:\"materials/dev/luminaire.vmat\",\n \t\t\t]\n \t\t},\n \t\t{\n \t\t\tname = \"RenderingPipelineForwardManifest\"\n-\t\t\tgroup = \"GameStartup_SM40\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/renderingpipelineforward.cpp\"\n \t\t\tsource_line = 42\n \t\t\tresources = \n@@ -205,11 +198,21 @@\n \t\t\t\tresource_name:\"materials/dev/imgui.vmat\",\n \t\t\t]\n \t\t},\n+\t\t{\n+\t\t\tname = \"BaseSceneObjectManifest\"\n+\t\t\tgroup = \"\"\n+\t\t\tsource_file = \"src/scenesystem/sceneobjectdescs.cpp\"\n+\t\t\tsource_line = 60\n+\t\t\tresources = \n+\t\t\t[\n+\t\t\t\tresource_name:\"materials/dev/cull_scene_objects.vmat\",\n+\t\t\t]\n+\t\t},\n \t\t{\n \t\t\tname = \"InstancedMeshSceneObjectManifest\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/instancedmeshdesc.cpp\"\n-\t\t\tsource_line = 66\n+\t\t\tsource_line = 67\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/cull_instanced_meshes.vmat\",\n@@ -228,7 +231,7 @@\n \t\t},\n \t\t{\n \t\t\tname = \"AggregateRTProxySceneObjectManifest\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/aggregatertproxydesc.cpp\"\n \t\t\tsource_line = 36\n \t\t\tresources = \n@@ -238,12 +241,11 @@\n \t\t},\n \t\t{\n \t\t\tname = \"AggregateSceneObjectManifest\"\n-\t\t\tgroup = \"GameStartup_SM50\"\n+\t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/scenesystem/aggregatedesc.cpp\"\n-\t\t\tsource_line = 39\n+\t\t\tsource_line = 36\n \t\t\tresources = \n \t\t\t[\n-\t\t\t\tresource_name:\"materials/dev/generate_aggregate_cull_requests.vmat\",\n \t\t\t\tresource_name:\"materials/dev/cull_aggregate_fragments.vmat\",\n \t\t\t\tresource_name:\"materials/dev/compact_indirect_draws.vmat\",\n \t\t\t\tresource_name:\"materials/dev/sum_aggregate_cull_stats.vmat\","
        },
        {
          "filename": "DumpSource2/module_metadata/server.kv3",
          "status": "modified",
          "additions": 25447,
          "deletions": 10976,
          "changes": 36423,
          "patch": null
        },
        {
          "filename": "DumpSource2/module_metadata/soundsystem.kv3",
          "status": "modified",
          "additions": 14,
          "deletions": 4,
          "changes": 18,
          "patch": "@@ -6,7 +6,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/soundsystem/snd_op_sys/sos_system.cpp\"\n-\t\t\tsource_line = 10065\n+\t\t\tsource_line = 10068\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"soundstacks/soundstacks_manifest.vrman\",\n@@ -17,7 +17,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartupPreGame\"\n \t\t\tsource_file = \"src/soundsystem/snd_op_sys/sos_system.cpp\"\n-\t\t\tsource_line = 10059\n+\t\t\tsource_line = 10062\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"soundstacks/soundstacks_manifest_tools.vrman\",\n@@ -28,17 +28,27 @@\n \t\t\tname = \"SoundSystemStartupGroupsManifest\"\n \t\t\tgroup = \"SosStartup\"\n \t\t\tsource_file = \"src/soundsystem/snd_op_sys/sos_system.cpp\"\n-\t\t\tsource_line = 66\n+\t\t\tsource_line = 63\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"soundstacks/soundeventgroups.vdata\",\n \t\t\t]\n \t\t},\n+\t\t{\n+\t\t\tname = \"SoundSystemBeatPatternManifest\"\n+\t\t\tgroup = \"SosStartup\"\n+\t\t\tsource_file = \"src/soundsystem/snd_op_sys/sos_beatpattern_system.cpp\"\n+\t\t\tsource_line = 26\n+\t\t\tresources = \n+\t\t\t[\n+\t\t\t\tresource_name:\"soundstacks/beatpattern_manager.vdata\",\n+\t\t\t]\n+\t\t},\n \t\t{\n \t\t\tname = \"SoundsystemVMixLoader\"\n \t\t\tgroup = \"VMixStartup\"\n \t\t\tsource_file = \"src/soundsystem/vmix.cpp\"\n-\t\t\tsource_line = 3186\n+\t\t\tsource_line = 2987\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"soundstacks/mixgraph.vmix\","
        },
        {
          "filename": "DumpSource2/module_metadata/tools_hammer.kv3",
          "status": "modified",
          "additions": 17,
          "deletions": 16,
          "changes": 33,
          "patch": "@@ -2,6 +2,16 @@\n {\n \tresource_manifests = \n \t[\n+\t\t{\n+\t\t\tname = \"\"\n+\t\t\tgroup = \"ToolsStartup\"\n+\t\t\tsource_file = \"src/tools/hammer/waterplanehelper.cpp\"\n+\t\t\tsource_line = 19\n+\t\t\tresources = \n+\t\t\t[\n+\t\t\t\tresource_name:\"scripts/water_types.vdata\",\n+\t\t\t]\n+\t\t},\n \t\t{\n \t\t\tname = \"ToolLocatorGroup\"\n \t\t\tgroup = \"ToolsStartup\"\n@@ -38,7 +48,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup_RayTracing\"\n \t\t\tsource_file = \"src/tools/hammer/qhammerpanecontainer.cpp\"\n-\t\t\tsource_line = 206\n+\t\t\tsource_line = 209\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/rtx/pathtracer.vmat\",\n@@ -49,7 +59,7 @@\n \t\t\tname = \"MapViewGroup\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/tools/hammer/mapview.cpp\"\n-\t\t\tsource_line = 85\n+\t\t\tsource_line = 81\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/selection_stencil_copy.vmat\",\n@@ -132,21 +142,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -173,6 +173,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{\n@@ -232,7 +233,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/mapdoclib/mapprefab.cpp\"\n-\t\t\tsource_line = 28\n+\t\t\tsource_line = 30\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/editor/prefab_icon.vmat\",\n@@ -251,9 +252,9 @@\n \t\t},\n \t\t{\n \t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n+\t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/mapdoclib/windcontrollerhelper.cpp\"\n-\t\t\tsource_line = 26\n+\t\t\tsource_line = 27\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/wind_controller_visualize.vmat\","
        },
        {
          "filename": "DumpSource2/module_metadata/tools_met.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 11,
          "changes": 13,
          "patch": "@@ -13,21 +13,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -54,6 +44,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/tools_modeldoc_editor.kv3",
          "status": "modified",
          "additions": 3,
          "deletions": 12,
          "changes": 15,
          "patch": "@@ -47,7 +47,7 @@\n \t\t\tname = \"\"\n \t\t\tgroup = \"GameStartup\"\n \t\t\tsource_file = \"src/tools/modeldoc_editor/model_preview_root.cpp\"\n-\t\t\tsource_line = 62\n+\t\t\tsource_line = 66\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/show_normals.vmat\",\n@@ -164,21 +164,11 @@\n \t\t\t\tresource_name:\"materials/tools/hlmv_ground.vmat\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -205,6 +195,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/tools_pet.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 11,
          "changes": 13,
          "patch": "@@ -59,21 +59,11 @@\n \t\t\t\tresource_name:\"models/editor/camera.vmdl\",\n \t\t\t]\n \t\t},\n-\t\t{\n-\t\t\tname = \"\"\n-\t\t\tgroup = \"ToolsStartup_SM50\"\n-\t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 161\n-\t\t\tresources = \n-\t\t\t[\n-\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n-\t\t\t]\n-\t\t},\n \t\t{\n \t\t\tname = \"\"\n \t\t\tgroup = \"ToolsStartup\"\n \t\t\tsource_file = \"src/toolrenderutils/toolmatsysutils.cpp\"\n-\t\t\tsource_line = 125\n+\t\t\tsource_line = 126\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/tools/wireframe_vertex_color.vmat\",\n@@ -100,6 +90,7 @@\n \t\t\t\tresource_name:\"materials/tools/handle_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_square_ring_translucent.vmat\",\n \t\t\t\tresource_name:\"materials/tools/handle_edged_circle_translucent.vmat\",\n+\t\t\t\tresource_name:\"materials/tools/grid.vmat\",\n \t\t\t]\n \t\t},\n \t\t{"
        },
        {
          "filename": "DumpSource2/module_metadata/vphysics2.kv3",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -6,7 +6,7 @@\n \t\t\tname = \"VPhysics2SurfacePropLoader\"\n \t\t\tgroup = \"VPhysics2Startup\"\n \t\t\tsource_file = \"src/vphysics2/vphysics2.cpp\"\n-\t\t\tsource_line = 119\n+\t\t\tsource_line = 185\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"surfaceproperties/surfaceproperties.vsurf\",\n@@ -16,7 +16,7 @@\n \t\t\tname = \"PhysicsDebugMaterials\"\n \t\t\tgroup = \"PhysicsDebugMaterials\"\n \t\t\tsource_file = \"src/vphysics2/vphys2_debug.cpp\"\n-\t\t\tsource_line = 38\n+\t\t\tsource_line = 37\n \t\t\tresources = \n \t\t\t[\n \t\t\t\tresource_name:\"materials/dev/debug_physics_noedges.vmat\","
        },
        {
          "filename": "DumpSource2/schemas/animationsystem/CCompressorGroup.h",
          "status": "removed",
          "additions": 0,
          "deletions": 20,
          "changes": 20,
          "patch": "@@ -1,20 +0,0 @@\n-class CCompressorGroup\n-{\n-\tint32 m_nTotalElementCount;\n-\tCUtlVector< char* > m_szChannelClass;\n-\tCUtlVector< char* > m_szVariableName;\n-\tCUtlVector< fieldtype_t > m_nType;\n-\tCUtlVector< int32 > m_nFlags;\n-\tCUtlVector< CUtlString > m_szGrouping;\n-\tCUtlVector< int32 > m_nCompressorIndex;\n-\tCUtlVector< CUtlVector< char* > > m_szElementNames;\n-\tCUtlVector< CUtlVector< int32 > > m_nElementUniqueID;\n-\tCUtlVector< uint32 > m_nElementMask;\n-\tCUtlVector< CCompressor< Vector >* > m_vectorCompressor;\n-\tCUtlVector< CCompressor< QuaternionStorage >* > m_quaternionCompressor;\n-\tCUtlVector< CCompressor< int32 >* > m_intCompressor;\n-\tCUtlVector< CCompressor< bool >* > m_boolCompressor;\n-\tCUtlVector< CCompressor< Color >* > m_colorCompressor;\n-\tCUtlVector< CCompressor< Vector2D >* > m_vector2DCompressor;\n-\tCUtlVector< CCompressor< Vector4D >* > m_vector4DCompressor;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmClipDocEvent_FloatCurve.h",
          "status": "modified",
          "additions": 22,
          "deletions": 2,
          "changes": 24,
          "patch": "@@ -7,9 +7,29 @@\n //\t{\n //\t\t\"m_spline\":\n //\t\t[\n+//\t\t\t{\n+//\t\t\t\t\"x\": 0.000000,\n+//\t\t\t\t\"y\": 0.000000,\n+//\t\t\t\t\"m_flSlopeIncoming\": 1.000000,\n+//\t\t\t\t\"m_flSlopeOutgoing\": 1.000000\n+//\t\t\t},\n+//\t\t\t{\n+//\t\t\t\t\"x\": 1.000000,\n+//\t\t\t\t\"y\": 1.000000,\n+//\t\t\t\t\"m_flSlopeIncoming\": 1.000000,\n+//\t\t\t\t\"m_flSlopeOutgoing\": 1.000000\n+//\t\t\t}\n //\t\t],\n //\t\t\"m_tangents\":\n //\t\t[\n+//\t\t\t{\n+//\t\t\t\t\"m_nIncomingTangent\": \"CURVE_TANGENT_SPLINE\",\n+//\t\t\t\t\"m_nOutgoingTangent\": \"CURVE_TANGENT_SPLINE\"\n+//\t\t\t},\n+//\t\t\t{\n+//\t\t\t\t\"m_nIncomingTangent\": \"CURVE_TANGENT_SPLINE\",\n+//\t\t\t\t\"m_nOutgoingTangent\": \"CURVE_TANGENT_SPLINE\"\n+//\t\t\t}\n //\t\t],\n //\t\t\"m_vDomainMins\":\n //\t\t[\n@@ -18,8 +38,8 @@\n //\t\t],\n //\t\t\"m_vDomainMaxs\":\n //\t\t[\n-//\t\t\t0.000000,\n-//\t\t\t0.000000\n+//\t\t\t1.000000,\n+//\t\t\t1.000000\n //\t\t]\n //\t}\n //}"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmGraphDocBoneMaskNode.h",
          "status": "modified",
          "additions": 4,
          "deletions": 1,
          "changes": 5,
          "patch": "@@ -32,10 +32,13 @@\n //\t[\n //\t],\n //\t\"m_defaultResourceName\": \"\",\n-//\t\"m_maskID\": \"\"\n+//\t\"m_maskID\": \"\",\n+//\t\"m_bIsOptionalMask\": false\n //}\n class CNmGraphDocBoneMaskNode : public CNmGraphDocVariationDataNode\n {\n \t// MPropertyAttributeEditor = \"BoneMaskID()\"\n \tCGlobalSymbol m_maskID;\n+\t// MPropertyDescription = \"Should we check at compile time that this is an optional mask?\"\n+\tbool m_bIsOptionalMask;\n };"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__IDSet_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -10,7 +10,9 @@ class CNmGraphDocDataDictionary::IDSet_t\n {\n \t// MPropertySuppressField\n \tV_uuid_t m_ID;\n+\t// MPropertyFlattenIntoParentRow\n \tCUtlString m_name;\n \t// MPropertyAutoExpandSelf\n+\t// MPropertyFriendlyName = \"Graph IDs\"\n \tCUtlVector< CGlobalSymbol > m_graphIDs;\n };"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__ParameterSet_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -7,6 +7,7 @@\n // MPropertyAutoExpandSelf\n class CNmGraphDocDataDictionary::ParameterSet_t\n {\n+\t// MPropertyFlattenIntoParentRow\n \tCUtlString m_name;\n \t// MPropertyAutoExpandSelf\n \tCUtlVector< CNmGraphDocDataDictionary::Parameter_t > m_parameters;"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__Parameter_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -12,6 +12,7 @@ class CNmGraphDocDataDictionary::Parameter_t\n {\n \t// MPropertySuppressField\n \tV_uuid_t m_ID;\n+\t// MPropertyFlattenIntoParentRow\n \tCUtlString m_name;\n \tCUtlString m_groupName;\n \tNmGraphValueType_t m_valueType;"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmGraphDocRootMotionOverrideNode.h",
          "status": "modified",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -46,6 +46,13 @@\n //\t\t\t\"m_type\": \"Float\",\n //\t\t\t\"m_bIsDynamicPin\": false,\n //\t\t\t\"m_bAllowMultipleOutConnections\": false\n+//\t\t},\n+//\t\t{\n+//\t\t\t\"m_ID\": <HIDDEN FOR DIFF>,\n+//\t\t\t\"m_name\": \"Enabled\",\n+//\t\t\t\"m_type\": \"Bool\",\n+//\t\t\t\"m_bIsDynamicPin\": false,\n+//\t\t\t\"m_bAllowMultipleOutConnections\": false\n //\t\t}\n //\t],\n //\t\"m_outputPins\":"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CNmSkeletonDocument.h",
          "status": "modified",
          "additions": 6,
          "deletions": 1,
          "changes": 7,
          "patch": "@@ -18,6 +18,9 @@\n //\t\"m_boneMaskSetDefinitions\":\n //\t[\n //\t],\n+//\t\"m_floatChannelSets\":\n+//\t[\n+//\t],\n //\t\"m_previewModelName\": \"\"\n //}\n class CNmSkeletonDocument : public CNmAnimDocument\n@@ -34,9 +37,11 @@ class CNmSkeletonDocument : public CNmAnimDocument\n \t// MPropertyDescription = \"The set of bones that need to be converted at import to match the S2 coordinate system (Z-up, X-forward)\"\n \tCUtlVector< CGlobalSymbol > m_gameplayRelevantBones;\n \t// MPropertySuppressField\n-\tCUtlVector< CUtlString > m_highLODBones;\n+\tCUtlVector< CGlobalSymbol > m_highLODBones;\n \t// MPropertySuppressField\n \tCUtlVector< NmBoneMaskSetDefinition_t > m_boneMaskSetDefinitions;\n+\t// MPropertySuppressField\n+\tCUtlVector< CNmFloatChannelSet_t > m_floatChannelSets;\n \t// MPropertyGroupName = \"+Preview\"\n \t// MPropertyAttributeEditor = \"AssetBrowse( vmdl, *requiredoubleclick )\"\n \tCUtlString m_previewModelName;"
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CnmGraphDocChainLookatNode.h",
          "status": "modified",
          "additions": 14,
          "deletions": 3,
          "changes": 17,
          "patch": "@@ -47,15 +47,26 @@\n //\t\"m_pDefaultVariationData\":\n //\t{\n //\t\t\"_class\": \"CnmGraphDocChainLookatNode::CData\",\n-//\t\t\"m_chainEndBoneName\": \"\",\n-//\t\t\"m_chainForwardDir\":\n+//\t\t\"m_endEffectorBoneName\": \"\",\n+//\t\t\"m_endEffectorForwardAxis\":\n+//\t\t[\n+//\t\t\t0.000000,\n+//\t\t\t0.000000,\n+//\t\t\t0.000000\n+//\t\t],\n+//\t\t\"m_endEffectorOffset\":\n //\t\t[\n //\t\t\t0.000000,\n //\t\t\t0.000000,\n //\t\t\t0.000000\n //\t\t],\n //\t\t\"m_nChainLength\": 2,\n-//\t\t\"m_flBlendTimeSeconds\": 0.000000\n+//\t\t\"m_flBlendTimeSeconds\": 0.000000,\n+//\t\t\"m_chainWeights\":\n+//\t\t[\n+//\t\t\t1.000000,\n+//\t\t\t1.000000\n+//\t\t]\n //\t},\n //\t\"m_overrides\":\n //\t["
        },
        {
          "filename": "DumpSource2/schemas/animdoclib/CnmGraphDocChainLookatNode__CData.h",
          "status": "modified",
          "additions": 23,
          "deletions": 5,
          "changes": 28,
          "patch": "@@ -1,19 +1,37 @@\n // MGetKV3ClassDefaults = {\n //\t\"_class\": \"CnmGraphDocChainLookatNode::CData\",\n-//\t\"m_chainEndBoneName\": \"\",\n-//\t\"m_chainForwardDir\":\n+//\t\"m_endEffectorBoneName\": \"\",\n+//\t\"m_endEffectorForwardAxis\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_endEffectorOffset\":\n //\t[\n //\t\t0.000000,\n //\t\t0.000000,\n //\t\t0.000000\n //\t],\n //\t\"m_nChainLength\": 2,\n-//\t\"m_flBlendTimeSeconds\": 0.000000\n+//\t\"m_flBlendTimeSeconds\": 0.000000,\n+//\t\"m_chainWeights\":\n+//\t[\n+//\t]\n //}\n class CnmGraphDocChainLookatNode::CData : public CNmGraphDocVariationDataNode::CData\n {\n-\tCUtlString m_chainEndBoneName;\n-\tVector m_chainForwardDir;\n+\tCUtlString m_endEffectorBoneName;\n+\t// MPropertyDescription = \"The axis that you want to point at the target\"\n+\tVector m_endEffectorForwardAxis;\n+\t// MPropertyDescription = \"Add an additional local space offset to the end effector to use for aiming the lookat\"\n+\tVector m_endEffectorOffset;\n+\t// MPropertyDescription = \"The length of the IK chain\"\n+\t// MPropertyAttributeRange = \"2 7\"\n \tuint8 m_nChainLength;\n+\t// MPropertyDescription = \"How long should the blend in/out take\"\n \tfloat32 m_flBlendTimeSeconds;\n+\t// MPropertyAutoExpandSelf\n+\t// MPropertyDescription = \"The weights from the tip of the chain to the base. 0 is the effector/tip of the chain weight, N is the base of the chain.\"\n+\tCUtlVector< float32 > m_chainWeights;\n };"
        },
        {
          "filename": "DumpSource2/schemas/animgraphlib/TagActionStatus.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum TagActionStatus : uint8_t\n+{\n+\tInactive = 0,\n+\tActive = 1,\n+\tFired = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/animgraphlib/TagStatus.h",
          "status": "added",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -0,0 +1,9 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_TagStatus\": \"Inactive\",\n+//\t\"m_flTagStartAnimTime\": -1.000000\n+//}\n+class TagStatus\n+{\n+\tTagActionStatus m_TagStatus;\n+\tfloat32 m_flTagStartAnimTime;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmChainLookatNode__CDefinition.h",
          "status": "modified",
          "additions": 21,
          "deletions": 10,
          "changes": 31,
          "patch": "@@ -2,26 +2,37 @@\n //\t\"_class\": \"CNmChainLookatNode::CDefinition\",\n //\t\"m_nNodeIdx\": -1,\n //\t\"m_nChildNodeIdx\": -1,\n-//\t\"m_chainEndBoneID\": \"\",\n-//\t\"m_nLookatTargetNodeIdx\": -1,\n-//\t\"m_nEnabledNodeIdx\": -1,\n-//\t\"m_flBlendTimeSeconds\": 0.000000,\n-//\t\"m_nChainLength\": 2,\n-//\t\"m_bIsTargetInWorldSpace\": false,\n-//\t\"m_chainForwardDir\":\n+//\t\"m_endEffectorBoneID\": \"\",\n+//\t\"m_endEffectorForwardAxis\":\n //\t[\n //\t\t1.000000,\n //\t\t0.000000,\n //\t\t0.000000\n-//\t]\n+//\t],\n+//\t\"m_endEffectorOffset\":\n+//\t[\n+//\t\t1.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_nLookatTargetNodeIdx\": -1,\n+//\t\"m_nEnabledNodeIdx\": -1,\n+//\t\"m_flBlendTimeSeconds\": 0.000000,\n+//\t\"m_chainWeights\":\n+//\t[\n+//\t],\n+//\t\"m_nChainLength\": 2,\n+//\t\"m_bIsTargetInWorldSpace\": false\n //}\n class CNmChainLookatNode::CDefinition : public CNmPassthroughNode::CDefinition\n {\n-\tCGlobalSymbol m_chainEndBoneID;\n+\tCGlobalSymbol m_endEffectorBoneID;\n+\tVector m_endEffectorForwardAxis;\n+\tVector m_endEffectorOffset;\n \tint16 m_nLookatTargetNodeIdx;\n \tint16 m_nEnabledNodeIdx;\n \tfloat32 m_flBlendTimeSeconds;\n+\tCUtlVectorFixedGrowable< float32, 5 > m_chainWeights;\n \tuint8 m_nChainLength;\n \tbool m_bIsTargetInWorldSpace;\n-\tVector m_chainForwardDir;\n };"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmChainLookatTask.h",
          "status": "modified",
          "additions": 0,
          "deletions": 11,
          "changes": 11,
          "patch": "@@ -1,14 +1,3 @@\n class CNmChainLookatTask : public CNmPoseTask\n {\n-\tint32 m_nChainEndBoneIdx;\n-\tint32 m_nNumBonesInChain;\n-\tVector m_chainForwardDir;\n-\tfloat32 m_flBlendWeight;\n-\tfloat32 m_flHorizontalAngleLimitDegrees;\n-\tfloat32 m_flVerticalAngleLimitDegrees;\n-\tVector m_lookatTarget;\n-\tbool m_bIsTargetInWorldSpace;\n-\tbool m_bIsRunningFromDeserializedData;\n-\tfloat32 m_flHorizontalAngleDegrees;\n-\tfloat32 m_flVerticalAngleDegrees;\n };"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmClip.h",
          "status": "modified",
          "additions": 3,
          "deletions": 15,
          "changes": 18,
          "patch": "@@ -9,19 +9,10 @@\n //\t\"m_compressedPoseOffsets\":\n //\t[\n //\t],\n-//\t\"m_floatCurveIDs\":\n-//\t[\n-//\t],\n-//\t\"m_floatCurveDefs\":\n-//\t[\n-//\t],\n-//\t\"m_compressedFloatCurveData\":\n-//\t[\n-//\t],\n-//\t\"m_compressedFloatCurveOffsets\":\n+//\t\"m_secondaryAnimations\":\n //\t[\n //\t],\n-//\t\"m_secondaryAnimations\":\n+//\t\"m_floatChannelData\":\n //\t[\n //\t],\n //\t\"m_syncTrack\":\n@@ -81,11 +72,8 @@ class CNmClip\n \tCUtlBinaryBlock m_compressedPoseData;\n \tCUtlVector< NmCompressionSettings_t > m_trackCompressionSettings;\n \tCUtlVector< uint32 > m_compressedPoseOffsets;\n-\tCUtlVector< CGlobalSymbol > m_floatCurveIDs;\n-\tCUtlVector< NmFloatCurveCompressionSettings_t > m_floatCurveDefs;\n-\tCUtlVector< uint16 > m_compressedFloatCurveData;\n-\tCUtlVector< uint32 > m_compressedFloatCurveOffsets;\n \tCUtlVectorFixedGrowable< CNmClip*, 1 > m_secondaryAnimations;\n+\tCUtlVectorFixedGrowable< CNmFloatChannelData*, 2 > m_floatChannelData;\n \tCNmSyncTrack m_syncTrack;\n \tCNmRootMotionData m_rootMotion;\n \tbool m_bIsAdditive;"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmFloatChannelData.h",
          "status": "added",
          "additions": 21,
          "deletions": 0,
          "changes": 21,
          "patch": "@@ -0,0 +1,21 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_skeleton\": \"\",\n+//\t\"m_setID\": \"\",\n+//\t\"m_channelSettings\":\n+//\t[\n+//\t],\n+//\t\"m_compressedData\":\n+//\t[\n+//\t],\n+//\t\"m_compressedOffsets\":\n+//\t[\n+//\t]\n+//}\n+class CNmFloatChannelData\n+{\n+\tCStrongHandle< InfoForResourceTypeCNmSkeleton > m_skeleton;\n+\tCGlobalSymbol m_setID;\n+\tCUtlVector< CNmFloatChannelData::ChannelSettings_t > m_channelSettings;\n+\tCUtlVector< uint16 > m_compressedData;\n+\tCUtlVector< uint32 > m_compressedOffsets;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmFloatChannelData__ChannelSettings_t.h",
          "status": "added",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -0,0 +1,13 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_range\":\n+//\t{\n+//\t\t\"m_flRangeStart\": 0.000000,\n+//\t\t\"m_flRangeLength\": -1.000000\n+//\t},\n+//\t\"m_bIsStatic\": false\n+//}\n+class CNmFloatChannelData::ChannelSettings_t\n+{\n+\tNmCompressionSettings_t::QuantizationRange_t m_range;\n+\tbool m_bIsStatic;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmFloatChannelSet_t.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_ID\": <HIDDEN FOR DIFF>,\n+//\t\"m_channelIDs\":\n+//\t[\n+//\t]\n+//}\n+class CNmFloatChannelSet_t\n+{\n+\tCGlobalSymbol m_ID;\n+\tCUtlLeanVector< CGlobalSymbol > m_channelIDs;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmRootMotionOverrideNode__CDefinition.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -6,6 +6,7 @@\n //\t\"m_desiredFacingDirectionNodeIdx\": -1,\n //\t\"m_linearVelocityLimitNodeIdx\": -1,\n //\t\"m_angularVelocityLimitNodeIdx\": -1,\n+//\t\"m_enabledNodeIdx\": -1,\n //\t\"m_maxLinearVelocity\": -1.000000,\n //\t\"m_maxAngularVelocityRadians\": -1.000000,\n //\t\"m_overrideFlags\":\n@@ -19,6 +20,7 @@ class CNmRootMotionOverrideNode::CDefinition : public CNmPassthroughNode::CDefin\n \tint16 m_desiredFacingDirectionNodeIdx;\n \tint16 m_linearVelocityLimitNodeIdx;\n \tint16 m_angularVelocityLimitNodeIdx;\n+\tint16 m_enabledNodeIdx;\n \tfloat32 m_maxLinearVelocity;\n \tfloat32 m_maxAngularVelocityRadians;\n \tCNmBitFlags m_overrideFlags;"
        },
        {
          "filename": "DumpSource2/schemas/animlib/CNmSkeleton.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -19,6 +19,9 @@\n //\t\"m_secondarySkeletons\":\n //\t[\n //\t],\n+//\t\"m_floatChannelSets\":\n+//\t[\n+//\t],\n //\t\"m_bIsPropSkeleton\": false\n //}\n class CNmSkeleton\n@@ -31,5 +34,6 @@ class CNmSkeleton\n \tint32 m_numBonesToSampleAtLowLOD;\n \tCUtlLeanVector< NmBoneMaskSetDefinition_t > m_maskDefinitions;\n \tCUtlLeanVector< CNmSkeleton::SecondarySkeleton_t > m_secondarySkeletons;\n+\tCUtlLeanVector< CNmFloatChannelSet_t > m_floatChannelSets;\n \tbool m_bIsPropSkeleton;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_BaseNPCAnimGraph_DebugSnapshotData_t.h",
          "status": "modified",
          "additions": 14,
          "deletions": 6,
          "changes": 20,
          "patch": "@@ -1,14 +1,22 @@\n // MGetKV3ClassDefaults = {\n-//\t\"_class\": \"AI_BaseNPCAnimGraph_DebugSnapshotData_t\",\n //\t\"e_action_desired\": \"\",\n-//\t\"b_action_restart\": false,\n+//\t\"e_action_handshake_restart\": \"\",\n+//\t\"e_action_handshake_body_authority_current\": \"\",\n+//\t\"e_action_handshake_body_authority_desired\": \"\",\n //\t\"e_movement_type_desired\": \"\",\n-//\t\"b_movement_type_restart\": false\n+//\t\"e_movement_handshake_restart\": \"\",\n+//\t\"e_movement_handshake_body_authority_current\": \"\",\n+//\t\"e_movement_handshake_body_authority_desired\": \"\"\n //}\n-class AI_BaseNPCAnimGraph_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n+// MPropertyFriendlyName = \"AnimGraph\"\n+class AI_BaseNPCAnimGraph_DebugSnapshotData_t\n {\n \tCGlobalSymbol e_action_desired;\n-\tbool b_action_restart;\n+\tCGlobalSymbol e_action_handshake_restart;\n+\tCGlobalSymbol e_action_handshake_body_authority_current;\n+\tCGlobalSymbol e_action_handshake_body_authority_desired;\n \tCGlobalSymbol e_movement_type_desired;\n-\tbool b_movement_type_restart;\n+\tCGlobalSymbol e_movement_handshake_restart;\n+\tCGlobalSymbol e_movement_handshake_body_authority_current;\n+\tCGlobalSymbol e_movement_handshake_body_authority_desired;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_BaseNPC_DebugSnapshotData_t.h",
          "status": "modified",
          "additions": 58,
          "deletions": 8,
          "changes": 66,
          "patch": "@@ -4,27 +4,77 @@\n //\t\"current_enemy\": null,\n //\t\"s_current_schedule\": \"\",\n //\t\"s_current_task\": \"\",\n-//\t\"s_schedule_interrupt_reason\": \"\",\n-//\t\"s_schedule_fail_reason\": \"\",\n+//\t\"s_prev_schedule\": \"\",\n+//\t\"s_npc_current_movement\": \"\",\n+//\t\"s_last_task_end_location\": \"\",\n //\t\"conditions\":\n //\t[\n //\t],\n //\t\"anim_events\":\n //\t[\n //\t],\n-//\t\"e_action_body_section\": \"\",\n-//\t\"e_movement_body_section\": \"\"\n+//\t\"animgraph\":\n+//\t{\n+//\t\t\"e_action_desired\": \"\",\n+//\t\t\"e_action_handshake_restart\": \"\",\n+//\t\t\"e_action_handshake_body_authority_current\": \"\",\n+//\t\t\"e_action_handshake_body_authority_desired\": \"\",\n+//\t\t\"e_movement_type_desired\": \"\",\n+//\t\t\"e_movement_handshake_restart\": \"\",\n+//\t\t\"e_movement_handshake_body_authority_current\": \"\",\n+//\t\t\"e_movement_handshake_body_authority_desired\": \"\"\n+//\t},\n+//\t\"navigator\":\n+//\t{\n+//\t\t\"s_movement_id\": \"\",\n+//\t\t\"s_movement_serial_number\": 0,\n+//\t\t\"s_goal_source_location\": \"\",\n+//\t\t\"last_waypoint_pos\": null,\n+//\t\t\"goal_location\": null,\n+//\t\t\"waypoints\":\n+//\t\t[\n+//\t\t],\n+//\t\t\"s_arrival_movement_gait_set\": \"\"\n+//\t},\n+//\t\"motorServices\":\n+//\t{\n+//\t\t\"active_motor\": \"\",\n+//\t\t\"desired_speed\": 0.000000,\n+//\t\t\"motor_velocity\":\n+//\t\t[\n+//\t\t\t0.000000,\n+//\t\t\t0.000000,\n+//\t\t\t0.000000\n+//\t\t],\n+//\t\t\"motor_path\":\n+//\t\t[\n+//\t\t]\n+//\t},\n+//\t\"facingServices\":\n+//\t{\n+//\t\t\"npc_position\": null,\n+//\t\t\"facing_target_source\": \"\",\n+//\t\t\"facing_target\": null,\n+//\t\t\"schedule_facing_priority\": \"\",\n+//\t\t\"strafing_source\": \"\",\n+//\t\t\"strafing_enabled\": false,\n+//\t\t\"movement_id\": \"\"\n+//\t}\n //}\n+// MPropertyFriendlyName = \"Base NPC\"\n class AI_BaseNPC_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n {\n \tCGlobalSymbol npc_state;\n \tCHandle< C_BaseEntity > current_enemy;\n \tCUtlString s_current_schedule;\n \tCGlobalSymbol s_current_task;\n-\tCUtlString s_schedule_interrupt_reason;\n-\tCUtlString s_schedule_fail_reason;\n+\tCUtlString s_prev_schedule;\n+\tCUtlString s_npc_current_movement;\n+\tCUtlString s_last_task_end_location;\n \tCUtlVector< CGlobalSymbol > conditions;\n \tCUtlVector< CGlobalSymbol > anim_events;\n-\tCGlobalSymbol e_action_body_section;\n-\tCGlobalSymbol e_movement_body_section;\n+\tAI_BaseNPCAnimGraph_DebugSnapshotData_t animgraph;\n+\tAI_Navigator_DebugSnapshotData_t navigator;\n+\tAI_MotorServices_DebugSnapshotData_t motorServices;\n+\tAI_FacingServices_DebugSnapshotData_t facingServices;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_DefaultNPC_DebugSnapshotData_t.h",
          "status": "modified",
          "additions": 5,
          "deletions": 15,
          "changes": 20,
          "patch": "@@ -6,19 +6,10 @@\n //\t\"tactic_interrupt_conditions\":\n //\t[\n //\t],\n-//\t\"s_npc_current_movement\": \"\",\n-//\t\"path_query_schedule\":\n+//\t\"path_query\":\n //\t{\n-//\t\t\"m_sInitialQueryName\": \"\",\n-//\t\t\"m_sCurrentQueryName\": \"\",\n-//\t\t\"m_nMode\": \"\",\n-//\t\t\"m_nType\": \"\",\n-//\t\t\"m_nState\": \"\"\n-//\t},\n-//\t\"path_query_tactic\":\n-//\t{\n-//\t\t\"m_sInitialQueryName\": \"\",\n-//\t\t\"m_sCurrentQueryName\": \"\",\n+//\t\t\"m_nInitialMovementId\": \"\",\n+//\t\t\"m_nCurrentMovementId\": \"\",\n //\t\t\"m_nMode\": \"\",\n //\t\t\"m_nType\": \"\",\n //\t\t\"m_nState\": \"\"\n@@ -27,14 +18,13 @@\n //\t[\n //\t]\n //}\n+// MPropertyFriendlyName = \"Default NPC\"\n class AI_DefaultNPC_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n {\n \tCGlobalSymbol s_npc_current_ability;\n \tCGlobalSymbol s_npc_tactic_current;\n \tCGlobalSymbol s_npc_tactic_phase;\n \tCUtlVector< CGlobalSymbol > tactic_interrupt_conditions;\n-\tCUtlString s_npc_current_movement;\n-\tAI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query_schedule;\n-\tAI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query_tactic;\n+\tAI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query;\n \tCUtlVector< AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t > path_queries_speculative;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_DefaultNPC_DebugSnapshotData_t__PathQuery_t.h",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -1,15 +1,15 @@\n // MGetKV3ClassDefaults = {\n-//\t\"m_sInitialQueryName\": \"\",\n-//\t\"m_sCurrentQueryName\": \"\",\n+//\t\"m_nInitialMovementId\": \"\",\n+//\t\"m_nCurrentMovementId\": \"\",\n //\t\"m_nMode\": \"\",\n //\t\"m_nType\": \"\",\n //\t\"m_nState\": \"\"\n //}\n // MDebugSnapshotDataSummaryFn (UNKNOWN FOR PARSER)\n class AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t\n {\n-\tCGlobalSymbol m_sInitialQueryName;\n-\tCGlobalSymbol m_sCurrentQueryName;\n+\tCGlobalSymbol m_nInitialMovementId;\n+\tCGlobalSymbol m_nCurrentMovementId;\n \tCGlobalSymbol m_nMode;\n \tCGlobalSymbol m_nType;\n \tCGlobalSymbol m_nState;"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_FacingServices_DebugSnapshotData_t.h",
          "status": "added",
          "additions": 21,
          "deletions": 0,
          "changes": 21,
          "patch": "@@ -0,0 +1,21 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"npc_position\": null,\n+//\t\"facing_target_source\": \"\",\n+//\t\"facing_target\": null,\n+//\t\"schedule_facing_priority\": \"\",\n+//\t\"strafing_source\": \"\",\n+//\t\"strafing_enabled\": false,\n+//\t\"movement_id\": \"\"\n+//}\n+// MPropertyFriendlyName = \"Facing Services\"\n+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)\n+class AI_FacingServices_DebugSnapshotData_t\n+{\n+\tVectorWS npc_position;\n+\tCGlobalSymbol facing_target_source;\n+\tVectorWS facing_target;\n+\tCGlobalSymbol schedule_facing_priority;\n+\tCGlobalSymbol strafing_source;\n+\tbool strafing_enabled;\n+\tCGlobalSymbol movement_id;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_GroundRootMotionMotor_DebugSnapshotData_t.h",
          "status": "added",
          "additions": 45,
          "deletions": 0,
          "changes": 45,
          "patch": "@@ -0,0 +1,45 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"AI_GroundRootMotionMotor_DebugSnapshotData_t\",\n+//\t\"desired_movement_gait_set\": \"\",\n+//\t\"desired_movement_gait\": \"\",\n+//\t\"current_movement_gait_set\": \"\",\n+//\t\"current_movement_gait\": \"\",\n+//\t\"movement_setting_id\": \"\",\n+//\t\"gait_switch_blocked_reason\": \"\",\n+//\t\"b_goal_completion_allowed\": true,\n+//\t\"state\": \"\",\n+//\t\"n_state_active_tick_count\": 0,\n+//\t\"b_has_path\": false,\n+//\t\"f_remaining_ground_path_length\": -1.000000,\n+//\t\"f_current_speed\": -1.000000,\n+//\t\"move_type\": \"\",\n+//\t\"f_forward_strafing_angle_actual\": -1.000000,\n+//\t\"f_forward_strafing_angle_desired\": -1.000000,\n+//\t\"f_current_lean\": 0.000000,\n+//\t\"f_target_lean\": 0.000000,\n+//\t\"vec_events\":\n+//\t[\n+//\t]\n+//}\n+// MPropertyFriendlyName = \"Ground Root Motion Motor\"\n+class AI_GroundRootMotionMotor_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n+{\n+\tCGlobalSymbol desired_movement_gait_set;\n+\tCGlobalSymbol desired_movement_gait;\n+\tCGlobalSymbol current_movement_gait_set;\n+\tCGlobalSymbol current_movement_gait;\n+\tCGlobalSymbol movement_setting_id;\n+\tCGlobalSymbol gait_switch_blocked_reason;\n+\tbool b_goal_completion_allowed;\n+\tCGlobalSymbol state;\n+\tint32 n_state_active_tick_count;\n+\tbool b_has_path;\n+\tfloat32 f_remaining_ground_path_length;\n+\tfloat32 f_current_speed;\n+\tCGlobalSymbol move_type;\n+\tfloat32 f_forward_strafing_angle_actual;\n+\tfloat32 f_forward_strafing_angle_desired;\n+\tfloat32 f_current_lean;\n+\tfloat32 f_target_lean;\n+\tCUtlVector< AI_GroundRootMotionMotor_DebugSnapshotData_t::Event_t > vec_events;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_GroundRootMotionMotor_DebugSnapshotData_t__Event_t.h",
          "status": "renamed",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -2,7 +2,7 @@\n //\t\"description\": \"\",\n //\t\"location\": null\n //}\n-class AI_MotorGroundAnimgraph_DebugSnapshotData_t::Event_t\n+class AI_GroundRootMotionMotor_DebugSnapshotData_t::Event_t\n {\n \tCUtlString description;\n \tVectorWS location;"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_MotorGroundAnimgraph_DebugSnapshotData_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 28,
          "changes": 28,
          "patch": "@@ -1,28 +0,0 @@\n-// MGetKV3ClassDefaults = {\n-//\t\"_class\": \"AI_MotorGroundAnimgraph_DebugSnapshotData_t\",\n-//\t\"state\": \"\",\n-//\t\"b_has_path\": false,\n-//\t\"f_remaining_ground_path_length\": -1.000000,\n-//\t\"f_current_speed\": -1.000000,\n-//\t\"move_type\": \"\",\n-//\t\"f_move_heading_actual\": -1.000000,\n-//\t\"f_move_heading_desired\": -1.000000,\n-//\t\"f_current_lean\": 0.000000,\n-//\t\"f_target_lean\": 0.000000,\n-//\t\"vec_events\":\n-//\t[\n-//\t]\n-//}\n-class AI_MotorGroundAnimgraph_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n-{\n-\tCGlobalSymbol state;\n-\tbool b_has_path;\n-\tfloat32 f_remaining_ground_path_length;\n-\tfloat32 f_current_speed;\n-\tCGlobalSymbol move_type;\n-\tfloat32 f_move_heading_actual;\n-\tfloat32 f_move_heading_desired;\n-\tfloat32 f_current_lean;\n-\tfloat32 f_target_lean;\n-\tCUtlVector< AI_MotorGroundAnimgraph_DebugSnapshotData_t::Event_t > vec_events;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_MotorServices_DebugSnapshotData_t.h",
          "status": "added",
          "additions": 22,
          "deletions": 0,
          "changes": 22,
          "patch": "@@ -0,0 +1,22 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"active_motor\": \"\",\n+//\t\"desired_speed\": 0.000000,\n+//\t\"motor_velocity\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"motor_path\":\n+//\t[\n+//\t]\n+//}\n+// MPropertyFriendlyName = \"Motor Services\"\n+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)\n+class AI_MotorServices_DebugSnapshotData_t\n+{\n+\tCGlobalSymbol active_motor;\n+\tfloat32 desired_speed;\n+\tVector motor_velocity;\n+\tCUtlVector< AI_MotorServices_DebugSnapshotData_t::MotorPathWaypoint_t > motor_path;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_MotorServices_DebugSnapshotData_t__MotorPathWaypoint_t.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"position\": null,\n+//\t\"nav_type\": 0,\n+//\t\"flags\": 0\n+//}\n+class AI_MotorServices_DebugSnapshotData_t::MotorPathWaypoint_t\n+{\n+\tVectorWS position;\n+\tuint32 nav_type;\n+\tuint32 flags;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_Motor_DebugSnapshotData_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 12,
          "changes": 12,
          "patch": "@@ -1,12 +0,0 @@\n-// MGetKV3ClassDefaults = {\n-//\t\"_class\": \"AI_Motor_DebugSnapshotData_t\",\n-//\t\"current_movement_gait_set\": \"\",\n-//\t\"current_movement_gait\": \"\",\n-//\t\"movement_setting_id\": \"\"\n-//}\n-class AI_Motor_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n-{\n-\tCGlobalSymbol current_movement_gait_set;\n-\tCGlobalSymbol current_movement_gait;\n-\tCGlobalSymbol movement_setting_id;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_Navigator_DebugSnapshotData_t.h",
          "status": "modified",
          "additions": 14,
          "deletions": 13,
          "changes": 27,
          "patch": "@@ -1,22 +1,23 @@\n // MGetKV3ClassDefaults = {\n-//\t\"_class\": \"AI_Navigator_DebugSnapshotData_t\",\n-//\t\"s_npc_nav_authority\": \"\",\n-//\t\"s_goal_nav_search_id\": \"\",\n+//\t\"s_movement_id\": \"\",\n+//\t\"s_movement_serial_number\": 0,\n //\t\"s_goal_source_location\": \"\",\n-//\t\"goal_actual_pos\": null,\n-//\t\"goal_base_pos\": null,\n+//\t\"last_waypoint_pos\": null,\n+//\t\"goal_location\": null,\n //\t\"waypoints\":\n //\t[\n-//\t]\n+//\t],\n+//\t\"s_arrival_movement_gait_set\": \"\"\n //}\n-// MDebugSnapshotDataRenderable\n-// MDebugSnapshotDataRenderByDefault\n-class AI_Navigator_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t\n+// MPropertyFriendlyName = \"Navigator\"\n+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)\n+class AI_Navigator_DebugSnapshotData_t\n {\n-\tCGlobalSymbol s_npc_nav_authority;\n-\tCGlobalSymbol s_goal_nav_search_id;\n+\tCGlobalSymbol s_movement_id;\n+\tuint32 s_movement_serial_number;\n \tCUtlString s_goal_source_location;\n-\tVectorWS goal_actual_pos;\n-\tVectorWS goal_base_pos;\n+\tVectorWS last_waypoint_pos;\n+\tVectorWS goal_location;\n \tCUtlVector< AI_Navigator_DebugSnapshotData_t::Waypoint_t > waypoints;\n+\tCGlobalSymbol s_arrival_movement_gait_set;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/AI_Navigator_DebugSnapshotData_t__Waypoint_t.h",
          "status": "modified",
          "additions": 3,
          "deletions": 1,
          "changes": 4,
          "patch": "@@ -1,11 +1,13 @@\n // MGetKV3ClassDefaults = {\n //\t\"position\": null,\n //\t\"nav_type\": 0,\n-//\t\"flags\": 0\n+//\t\"flags\": 0,\n+//\t\"is_pathcorner\": false\n //}\n class AI_Navigator_DebugSnapshotData_t::Waypoint_t\n {\n \tVectorWS position;\n \tuint32 nav_type;\n \tuint32 flags;\n+\tbool is_pathcorner;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/ActiveModelConfig_t.h",
          "status": "modified",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -1,3 +1,14 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"ActiveModelConfig_t\",\n+//\t\"m_Handle\": 0,\n+//\t\"m_Name\": \"\",\n+//\t\"m_AssociatedEntities\":\n+//\t[\n+//\t],\n+//\t\"m_AssociatedEntityNames\":\n+//\t[\n+//\t]\n+//}\n class ActiveModelConfig_t\n {\n \tModelConfigHandle_t m_Handle;"
        },
        {
          "filename": "DumpSource2/schemas/client/BeamClipStyle_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 7,
          "changes": 7,
          "patch": "@@ -1,7 +0,0 @@\n-enum BeamClipStyle_t : uint32_t\n-{\n-\tkNOCLIP = 0,\n-\tkGEOCLIP = 1,\n-\tkMODELCLIP = 2,\n-\tkBEAMCLIPSTYLE_NUMBITS = 2,\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/BeamType_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,7 +4,7 @@ enum BeamType_t : uint32_t\n \tBEAM_POINTS = 1,\n \tBEAM_ENTPOINT = 2,\n \tBEAM_ENTS = 3,\n-\tBEAM_HOSE = 4,\n+\txxBEAM_HOSExxunused = 4,\n \tBEAM_SPLINE = 5,\n \tBEAM_LASER = 6,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/Bidirectional_Messages.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+enum Bidirectional_Messages : uint32_t\n+{\n+\tbi_RebroadcastGameEvent = 16,\n+\tbi_RebroadcastSource = 17,\n+\tbi_GameEvent_DEPRECATED = 18,\n+\tbi_PredictionEvent = 19,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/BodySectionMutex_t.h",
          "status": "renamed",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,4 +1,4 @@\n-enum BodySectionAuthority_t : uint32_t\n+enum BodySectionMutex_t : uint32_t\n {\n \teNone = 0,\n \teLowerBody = 1,"
        },
        {
          "filename": "DumpSource2/schemas/client/CAnimEventListener.h",
          "status": "removed",
          "additions": 0,
          "deletions": 3,
          "changes": 3,
          "patch": "@@ -1,3 +0,0 @@\n-class CAnimEventListener : public CAnimEventListenerBase\n-{\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CAnimEventListenerBase.h",
          "status": "removed",
          "additions": 0,
          "deletions": 3,
          "changes": 3,
          "patch": "@@ -1,3 +0,0 @@\n-class CAnimEventListenerBase\n-{\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CAnimEventQueueListener.h",
          "status": "removed",
          "additions": 0,
          "deletions": 3,
          "changes": 3,
          "patch": "@@ -1,3 +0,0 @@\n-class CAnimEventQueueListener : public CAnimEventListenerBase\n-{\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CAnimGraph2InstancePtr.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CAnimGraph2InstancePtr\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CAnimGraphControllerPtr.h",
          "status": "added",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -0,0 +1,4 @@\n+class CAnimGraphControllerPtr\n+{\n+\tCAnimGraphControllerBase* m_pController;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBarnLightAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBarnLightAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseAnimGraph.h",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -1,11 +1,11 @@\n class CBaseAnimGraph : public C_BaseModelEntity\n {\n-\t// MSaveOpsForField = \"GetAnimGraphControllerManagerSaveRestoreOps\"\n \tCAnimGraphControllerManager m_graphControllerManager;\n-\t// MSaveOpsForField = \"GetAnimGraphControllerPtrSaveRestoreOps\"\n-\tCAnimGraphControllerBase* m_pMainGraphController;\n+\tCAnimGraphControllerPtr m_pMainGraphController;\n \tbool m_bInitiallyPopulateInterpHistory;\n \tbool m_bSuppressAnimEventSounds;\n+\tCEntityOutputTemplate< float32 > m_OnLayerCycleUpdated;\n+\tCEntityIOOutput m_OnExternalChoreoGraphChanged;\n \tbool m_bAnimGraphUpdateEnabled;\n \t// MNotSaved\n \tbool m_bAnimationUpdateScheduled;"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseAnimGraphAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBaseAnimGraphAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseAnimGraphAlias_baseanimating.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBaseAnimGraphAlias_baseanimating : public CBaseAnimGraph\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseAnimGraphController.h",
          "status": "modified",
          "additions": 40,
          "deletions": 4,
          "changes": 44,
          "patch": "@@ -1,3 +1,41 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_nAnimationAlgorithm\": \"eInvalid\",\n+//\t\"m_nNextExternalGraphHandle\": 0,\n+//\t\"m_vecSecondarySkeletonSlotIDs\":\n+//\t[\n+//\t],\n+//\t\"m_vecSecondarySkeletons\":\n+//\t[\n+//\t],\n+//\t\"m_nSecondarySkeletonMasterCount\": 0,\n+//\t\"m_flSoundSyncTime\": 0.000000,\n+//\t\"m_nActiveIKChainMask\": 0,\n+//\t\"m_hSequence\": -1,\n+//\t\"m_flSeqStartTime\": null,\n+//\t\"m_flSeqFixedCycle\": 0.000000,\n+//\t\"m_nAnimLoopMode\": \"ANIM_LOOP_MODE_USE_SEQUENCE_SETTINGS\",\n+//\t\"m_flPlaybackRate\": 1.000000,\n+//\t\"m_nNotifyState\": \"eDoNotNotify\",\n+//\t\"m_bNetworkedAnimationInputsChanged\": false,\n+//\t\"m_bNetworkedSequenceChanged\": false,\n+//\t\"m_bLastUpdateSkipped\": false,\n+//\t\"m_bSequenceFinished\": false,\n+//\t\"m_nPrevAnimUpdateTick\": null,\n+//\t\"m_hGraphDefinitionAG2\": \"\",\n+//\t\"m_nServerGraphInstanceIteration\": 0,\n+//\t\"m_nServerSerializationContextIteration\": 0,\n+//\t\"m_primaryGraphId\": 0,\n+//\t\"m_vecExternalGraphIds\":\n+//\t[\n+//\t],\n+//\t\"m_vecExternalClipIds\":\n+//\t[\n+//\t],\n+//\t\"m_sAnimGraph2Identifier\": \"\",\n+//\t\"m_pGraphInstanceAG2\": null,\n+//\t\"m_vecExternalGraphs\": null,\n+//\t\"m_nPrevAnimationAlgorithm\": \"eNone\"\n+//}\n class CBaseAnimGraphController : public CSkeletonAnimationController\n {\n \tAnimationAlgorithm_t m_nAnimationAlgorithm;\n@@ -33,9 +71,7 @@ class CBaseAnimGraphController : public CSkeletonAnimationController\n \tC_NetworkUtlVectorBase< ResourceId_t > m_vecExternalGraphIds;\n \tC_NetworkUtlVectorBase< ResourceId_t > m_vecExternalClipIds;\n \tCGlobalSymbol m_sAnimGraph2Identifier;\n-\t// MSaveOpsForField = \"GetAnimGraph2SaveRestoreOps\"\n-\tCNmGraphInstance* m_pGraphInstanceAG2;\n-\t// MSaveOpsForField = \"GetExternalAnimGraphSaveRestoreOps\"\n-\tCUtlVector< ExternalAnimGraph_t > m_vecExternalGraphs;\n+\tCAnimGraph2InstancePtr m_pGraphInstanceAG2;\n+\tCExternalAnimGraphList m_vecExternalGraphs;\n \tAnimationAlgorithm_t m_nPrevAnimationAlgorithm;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseEntity_SharedAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBaseEntity_SharedAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseGrenade_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBaseGrenade_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBaseModelEntityAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CBaseModelEntityAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CBodyComponent.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -1,3 +1,5 @@\n+// MGetKV3ClassDefaults = {\n+//}\n class CBodyComponent : public CEntityComponent\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/CBodyComponentBaseAnimGraph.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance\n {\n \tCBaseAnimGraphController m_animationController;"
        },
        {
          "filename": "DumpSource2/schemas/client/CBodyComponentPoint.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CBodyComponentPoint : public CBodyComponent\n {\n \tCGameSceneNode m_sceneNode;"
        },
        {
          "filename": "DumpSource2/schemas/client/CBodyComponentSkeletonInstance.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CBodyComponentSkeletonInstance : public CBodyComponent\n {\n \tCSkeletonInstance m_skeletonInstance;"
        },
        {
          "filename": "DumpSource2/schemas/client/CBreakableStageHelper.h",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -1,3 +1,6 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_nCurrentStage\": -1\n+//}\n class CBreakableStageHelper\n {\n \tint32 m_nCurrentStage;"
        },
        {
          "filename": "DumpSource2/schemas/client/CBuoyancyHelper.h",
          "status": "modified",
          "additions": 21,
          "deletions": 0,
          "changes": 21,
          "patch": "@@ -1,3 +1,24 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CBuoyancyHelper\",\n+//\t\"m_nFluidType\": \"\",\n+//\t\"m_flFluidDensity\": 1.000000,\n+//\t\"m_flNeutrallyBuoyantGravity\": 0.000000,\n+//\t\"m_flNeutrallyBuoyantLinearDamping\": 0.000000,\n+//\t\"m_flNeutrallyBuoyantAngularDamping\": 0.000000,\n+//\t\"m_bNeutrallyBuoyant\": false,\n+//\t\"m_vecFractionOfWheelSubmergedForWheelFriction\":\n+//\t[\n+//\t],\n+//\t\"m_vecWheelFrictionScales\":\n+//\t[\n+//\t],\n+//\t\"m_vecFractionOfWheelSubmergedForWheelDrag\":\n+//\t[\n+//\t],\n+//\t\"m_vecWheelDrag\":\n+//\t[\n+//\t]\n+//}\n class CBuoyancyHelper\n {\n \t// MPhysPtr"
        },
        {
          "filename": "DumpSource2/schemas/client/CCS2ChickenGraphController.h",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -2,7 +2,6 @@\n //\t\"_class\": \"CCS2ChickenGraphController\",\n //\t\"m_hExternalGraph\": 4294967295,\n //\t\"m_action\": null,\n-//\t\"m_actionSubtype\": null,\n //\t\"m_bActionReset\": null,\n //\t\"m_idleVariation\": null,\n //\t\"m_runVariation\": null,\n@@ -15,7 +14,6 @@\n class CCS2ChickenGraphController : public CAnimGraphControllerBase\n {\n \tCAnimGraph2ParamOptionalRef< CGlobalSymbol > m_action;\n-\tCAnimGraph2ParamOptionalRef< CGlobalSymbol > m_actionSubtype;\n \tCAnimGraph2ParamAutoResetOptionalRef m_bActionReset;\n \tCAnimGraph2ParamOptionalRef< float32 > m_idleVariation;\n \tCAnimGraph2ParamOptionalRef< float32 > m_runVariation;"
        },
        {
          "filename": "DumpSource2/schemas/client/CCS2UIPawnGraphController.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -3,6 +3,7 @@\n //\t\"m_hExternalGraph\": 4294967295,\n //\t\"m_nAnimationSeed\": null,\n //\t\"m_characterMode\": null,\n+//\t\"m_bCharacterModeReset\": null,\n //\t\"m_nTeamPreviewVariant\": null,\n //\t\"m_nTeamPreviewRandom\": null,\n //\t\"m_nTeamPreviewPosition\": null,\n@@ -19,6 +20,7 @@ class CCS2UIPawnGraphController : public CAnimGraphControllerBase\n {\n \tCAnimGraph2ParamOptionalRef< float32 > m_nAnimationSeed;\n \tCAnimGraph2ParamOptionalRef< CGlobalSymbol > m_characterMode;\n+\tCAnimGraph2ParamOptionalRef< bool > m_bCharacterModeReset;\n \tCAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewVariant;\n \tCAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewRandom;\n \tCAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewPosition;"
        },
        {
          "filename": "DumpSource2/schemas/client/CCSGO_TeamPreviewCharacterPosition_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CCSGO_TeamPreviewCharacterPosition_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CCSPlayerController_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CCSPlayerController_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CCSPlayer_MovementServices.h",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -29,7 +29,6 @@ class CCSPlayer_MovementServices : public CPlayer_MovementServices_Humanoid\n \tVector m_vecUp;\n \tint32 m_nGameCodeHasMovedPlayerAfterCommand;\n \tGameTime_t m_fStashGrenadeParameterWhen;\n-\tuint64 m_nButtonDownMaskPrev;\n \tbool m_bUseFrictionStashedSpeed;\n \tfloat32 m_flUseFrictionStashedSpeedUntilFrac;\n \tfloat32 m_flFrictionStashedSpeed;"
        },
        {
          "filename": "DumpSource2/schemas/client/CCSWeaponBase_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CCSWeaponBase_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CChoreoComponent.h",
          "status": "modified",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": "@@ -1,8 +1,18 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CChoreoComponent\",\n+//\t\"m_hOwner\": null,\n+//\t\"m_nExernalChoreoGraphCount\": 0,\n+//\t\"m_sActiveExternalChoreoGraphSlotID\": \"\",\n+//\t\"m_nNextSceneEventId\": 0,\n+//\t\"m_flAllowResponsesEndTime\": null\n+//}\n class CChoreoComponent\n {\n \t// MNotSaved\n \tCNetworkVarChainer __m_pChainEntity;\n \tCHandle< C_BaseModelEntity > m_hOwner;\n+\tint32 m_nExernalChoreoGraphCount;\n+\tCGlobalSymbol m_sActiveExternalChoreoGraphSlotID;\n \tSceneEventId_t m_nNextSceneEventId;\n \tGameTime_t m_flAllowResponsesEndTime;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CChoreo_GraphController.h",
          "status": "added",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -0,0 +1,13 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CChoreo_GraphController\",\n+//\t\"m_hExternalGraph\": 4294967295,\n+//\t\"m_eChoreoState\": null,\n+//\t\"m_tChoreoTargetWarp\": null,\n+//\t\"m_tChoreoExitWarp\": null\n+//}\n+class CChoreo_GraphController : public CAnimGraphControllerBase\n+{\n+\tCAnimGraph2ParamOptionalRef< CGlobalSymbol > m_eChoreoState;\n+\tCAnimGraph2ParamOptionalRef< CTransform > m_tChoreoTargetWarp;\n+\tCAnimGraph2ParamOptionalRef< CTransform > m_tChoreoExitWarp;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CClientAlphaProperty.h",
          "status": "modified",
          "additions": 14,
          "deletions": 0,
          "changes": 14,
          "patch": "@@ -1,3 +1,17 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CClientAlphaProperty\",\n+//\t\"m_nDistFadeStart\": 0,\n+//\t\"m_nDistFadeEnd\": 0,\n+//\t\"m_nDesyncOffset\": 0,\n+//\t\"m_bAlphaOverride\": 0,\n+//\t\"m_bShadowAlphaOverride\": 0,\n+//\t\"m_nRenderMode\": 0,\n+//\t\"m_nRenderFX\": 0,\n+//\t\"m_nAlpha\": 255,\n+//\t\"m_flFadeScale\": 0.000000,\n+//\t\"m_flRenderFxStartTime\": null,\n+//\t\"m_flRenderFxDuration\": 0.000000\n+//}\n class CClientAlphaProperty : public IClientAlphaProperty\n {\n \tuint16 m_nDistFadeStart;"
        },
        {
          "filename": "DumpSource2/schemas/client/CCollisionProperty.h",
          "status": "modified",
          "additions": 75,
          "deletions": 0,
          "changes": 75,
          "patch": "@@ -1,7 +1,82 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CCollisionProperty\",\n+//\t\"m_collisionAttribute\":\n+//\t{\n+//\t\t\"m_nInteractsAs\": 131072,\n+//\t\t\"m_nInteractsWith\": 0,\n+//\t\t\"m_nInteractsExclude\": 0,\n+//\t\t\"m_nEntityId\": 0,\n+//\t\t\"m_nOwnerId\": 4294967295,\n+//\t\t\"m_nHierarchyId\": 0,\n+//\t\t\"m_nDetailLayerMask\": 0,\n+//\t\t\"m_nDetailLayerMaskType\": 0,\n+//\t\t\"m_nTargetDetailLayer\": 0,\n+//\t\t\"m_nCollisionGroup\": 4,\n+//\t\t\"m_nCollisionFunctionMask\": 7\n+//\t},\n+//\t\"m_vecMins\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vecMaxs\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_usSolidFlags\": 0,\n+//\t\"m_nSolidType\": \"SOLID_NONE\",\n+//\t\"m_triggerBloat\": 0,\n+//\t\"m_nSurroundType\": \"USE_OBB_COLLISION_BOUNDS\",\n+//\t\"m_CollisionGroup\": 4,\n+//\t\"m_nEnablePhysics\": 1,\n+//\t\"m_flBoundingRadius\": 0.000000,\n+//\t\"m_vecSpecifiedSurroundingMins\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vecSpecifiedSurroundingMaxs\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vecSurroundingMaxs\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vecSurroundingMins\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vCapsuleCenter1\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vCapsuleCenter2\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_flCapsuleRadius\": 0.000000\n+//}\n class CCollisionProperty\n {\n \tVPhysicsCollisionAttribute_t m_collisionAttribute;\n+\t// MSaveBehavior (UNKNOWN FOR PARSER)\n \tVector m_vecMins;\n+\t// MSaveBehavior (UNKNOWN FOR PARSER)\n \tVector m_vecMaxs;\n \tuint8 m_usSolidFlags;\n \tSolidType_t m_nSolidType;"
        },
        {
          "filename": "DumpSource2/schemas/client/CDebugSnapshotData_t.h",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -9,7 +9,6 @@ class CDebugSnapshotData_t\n \tCTransformWS m_userTransform;\n \tCGenericShapeProxy m_userShape;\n \tColor m_drawColor;\n-\t// MKV3TransferSaveOpsForField = \"GetUtlVectorAllocateSaveOps< CDebugDrawHistoryData >\"\n \tCUtlVector< CDebugDrawHistoryData* > m_vecDebugOverlayData;\n \tDebugSnapshotBaseStructuredData_t* m_pStructuredData;\n \tCHandle< C_BaseEntity > m_hEntity;"
        },
        {
          "filename": "DumpSource2/schemas/client/CDecalInstance.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -10,6 +10,7 @@ class CDecalInstance\n \tVector m_vPositionLS;\n \tVector m_vPositionOS;\n \tVector m_vNormalLS;\n+\tVector m_vNormalOS;\n \tVector m_vSAxisLS;\n \tDecalFlags_t m_nFlags;\n \tColor m_Color;"
        },
        {
          "filename": "DumpSource2/schemas/client/CDestructiblePartsComponent.h",
          "status": "modified",
          "additions": 8,
          "deletions": 2,
          "changes": 10,
          "patch": "@@ -1,9 +1,15 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_vecDamageTakenByHitGroup\":\n+//\t[\n+//\t],\n+//\t\"m_hOwner\": null,\n+//\t\"m_pAnimGraphDestructibleGraphController\": null\n+//}\n class CDestructiblePartsComponent\n {\n \t// MNotSaved\n \tCNetworkVarChainer __m_pChainEntity;\n \tCUtlVector< uint16 > m_vecDamageTakenByHitGroup;\n \tCHandle< C_BaseModelEntity > m_hOwner;\n-\t// MSaveOpsForField = \"GetAnimGraphControllerPtrSaveRestoreOps\"\n-\tCBaseAnimGraphDestructibleParts_GraphController* m_pAnimGraphDestructibleGraphController;\n+\tCAnimGraphControllerPtr m_pAnimGraphDestructibleGraphController;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvCombinedLightProbeVolumeAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CEnvCombinedLightProbeVolumeAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvCubemapAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CEnvCubemapAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvLightProbeVolumeAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CEnvLightProbeVolumeAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvSkyAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CEnvSkyAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvSoundscape.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -2,7 +2,7 @@ class CEnvSoundscape : public C_BaseEntity\n {\n \tCEntityIOOutput m_OnPlay;\n \tfloat32 m_flRadius;\n-\tCUtlSymbolLarge m_soundEventName;\n+\tCGameSoundEventName m_soundEventName;\n \tbool m_bOverrideWithEvent;\n \t// MNotSaved\n \tint32 m_soundscapeIndex;"
        },
        {
          "filename": "DumpSource2/schemas/client/CEnvWindSharedAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CEnvWindSharedAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CExternalAnimGraphList.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CExternalAnimGraphList\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CFlashbangProjectile_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CFlashbangProjectile_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CFlashlightEffect.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,7 +4,7 @@ class CFlashlightEffect\n \tbool m_bMuzzleFlashEnabled;\n \tfloat32 m_flMuzzleFlashBrightness;\n \tQuaternion m_quatMuzzleFlashOrientation;\n-\tVector m_vecMuzzleFlashOrigin;\n+\tVectorWS m_vecMuzzleFlashOrigin;\n \tfloat32 m_flFov;\n \tfloat32 m_flFarZ;\n \tfloat32 m_flLinearAtten;"
        },
        {
          "filename": "DumpSource2/schemas/client/CFootstepControl_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CFootstepControl_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CGameSceneNode.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CGameSceneNode\n {\n \t// MNotSaved\n@@ -56,5 +57,4 @@ class CGameSceneNode\n \tCUtlStringToken m_name;\n \tCUtlStringToken m_hierarchyAttachName;\n \tfloat32 m_flClientLocalScale;\n-\tVector m_vRenderOrigin;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CGameSceneNodeHandle.h",
          "status": "modified",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -1,3 +1,8 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CGameSceneNodeHandle\",\n+//\t\"m_hOwner\": null,\n+//\t\"m_name\": \"\"\n+//}\n class CGameSceneNodeHandle\n {\n \tCEntityHandle m_hOwner;"
        },
        {
          "filename": "DumpSource2/schemas/client/CGlobalLightBase.h",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -1,7 +1,7 @@\n class CGlobalLightBase\n {\n \tbool m_bSpotLight;\n-\tVector m_SpotLightOrigin;\n+\tVectorWS m_SpotLightOrigin;\n \tQAngle m_SpotLightAngles;\n \tVector m_ShadowDirection;\n \tVector m_AmbientDirection;\n@@ -35,10 +35,10 @@ class CGlobalLightBase\n \tfloat32 m_flFoWDarkness;\n \tbool m_bEnableSeparateSkyboxFog;\n \tVector m_vFowColor;\n-\tVector m_ViewOrigin;\n+\tVectorWS m_ViewOrigin;\n \tQAngle m_ViewAngles;\n \tfloat32 m_flViewFoV;\n-\tVector[8] m_WorldPoints;\n+\tVectorWS[8] m_WorldPoints;\n \tVector2D m_vFogOffsetLayer0;\n \tVector2D m_vFogOffsetLayer1;\n \tCHandle< C_BaseEntity > m_hEnvWind;"
        },
        {
          "filename": "DumpSource2/schemas/client/CGlowProperty.h",
          "status": "modified",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -1,3 +1,8 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CGlowProperty\",\n+//\t\"m_iGlowType\": 0,\n+//\t\"m_bEligibleForScreenHighlight\": false\n+//}\n class CGlowProperty\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/CGrenadeTracer_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CGrenadeTracer_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CHitboxComponent.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CHitboxComponent\",\n+//\t\"m_flBoundsExpandRadius\": 0.000000\n+//}\n class CHitboxComponent : public CEntityComponent\n {\n \tfloat32 m_flBoundsExpandRadius;"
        },
        {
          "filename": "DumpSource2/schemas/client/CInfoInteraction.h",
          "status": "removed",
          "additions": 0,
          "deletions": 18,
          "changes": 18,
          "patch": "@@ -1,18 +0,0 @@\n-class CInfoInteraction : public C_PointEntity\n-{\n-\tSceneRequestHandle_t m_hSceneRequest;\n-\tSceneOpportunityHandle_t m_hSceneOpportunity;\n-\tbool m_bEnabled;\n-\tbool m_bStartDisabled;\n-\tCUtlSymbolLarge m_strSceneVDataName;\n-\tCUtlSymbolLarge m_strPulseVDataName;\n-\tfloat32 m_flRadius;\n-\tfloat32 m_flOwnerFOV;\n-\tCUtlSymbolLarge m_strLocalInterestReqTags;\n-\tCUtlSymbolLarge m_strLocalInterestOptTags;\n-\tCUtlSymbolLarge m_strLookTarget;\n-\tfloat32 m_flDuration;\n-\tfloat32 m_flCooldown;\n-\tint32 m_nRepeatCount;\n-\tbool m_bDisableOnExit;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CLC_Messages.h",
          "status": "added",
          "additions": 17,
          "deletions": 0,
          "changes": 17,
          "patch": "@@ -0,0 +1,17 @@\n+enum CLC_Messages : uint32_t\n+{\n+\tclc_ClientInfo = 20,\n+\tclc_Move = 21,\n+\tclc_VoiceData = 22,\n+\tclc_BaselineAck = 23,\n+\tclc_RespondCvarValue = 25,\n+\tclc_LoadingProgress = 27,\n+\tclc_SplitPlayerConnect = 28,\n+\tclc_SplitPlayerDisconnect = 30,\n+\tclc_ServerStatus = 31,\n+\tclc_RequestPause = 33,\n+\tclc_CmdKeyValues = 34,\n+\tclc_RconServerDetails = 35,\n+\tclc_HltvReplay = 36,\n+\tclc_Diagnostic = 37,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CLightComponent.h",
          "status": "modified",
          "additions": 120,
          "deletions": 0,
          "changes": 120,
          "patch": "@@ -1,3 +1,123 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CLightComponent\",\n+//\t\"m_Color\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"m_SecondaryColor\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"m_flBrightness\": 0.000000,\n+//\t\"m_flBrightnessScale\": 1.000000,\n+//\t\"m_flBrightnessMult\": 1.000000,\n+//\t\"m_flRange\": 0.000000,\n+//\t\"m_flFalloff\": 0.000000,\n+//\t\"m_flAttenuation0\": 0.000000,\n+//\t\"m_flAttenuation1\": 0.000000,\n+//\t\"m_flAttenuation2\": 0.000000,\n+//\t\"m_flTheta\": 0.000000,\n+//\t\"m_flPhi\": 0.000000,\n+//\t\"m_hLightCookie\": \"\",\n+//\t\"m_nCascades\": 0,\n+//\t\"m_nCastShadows\": 0,\n+//\t\"m_nShadowWidth\": 0,\n+//\t\"m_nShadowHeight\": 0,\n+//\t\"m_bRenderDiffuse\": true,\n+//\t\"m_nRenderSpecular\": 1,\n+//\t\"m_bRenderTransmissive\": true,\n+//\t\"m_flOrthoLightWidth\": 0.000000,\n+//\t\"m_flOrthoLightHeight\": 0.000000,\n+//\t\"m_nStyle\": 0,\n+//\t\"m_Pattern\": \"\",\n+//\t\"m_nCascadeRenderStaticObjects\": -1,\n+//\t\"m_flShadowCascadeCrossFade\": 0.000000,\n+//\t\"m_flShadowCascadeDistanceFade\": 0.000000,\n+//\t\"m_flShadowCascadeDistance0\": 0.000000,\n+//\t\"m_flShadowCascadeDistance1\": 0.000000,\n+//\t\"m_flShadowCascadeDistance2\": 0.000000,\n+//\t\"m_flShadowCascadeDistance3\": 0.000000,\n+//\t\"m_nShadowCascadeResolution0\": 0,\n+//\t\"m_nShadowCascadeResolution1\": 0,\n+//\t\"m_nShadowCascadeResolution2\": 0,\n+//\t\"m_nShadowCascadeResolution3\": 0,\n+//\t\"m_bUsesBakedShadowing\": false,\n+//\t\"m_nShadowPriority\": -1,\n+//\t\"m_nBakedShadowIndex\": -1,\n+//\t\"m_nLightPathUniqueId\": 0,\n+//\t\"m_nLightMapUniqueId\": 0,\n+//\t\"m_bRenderToCubemaps\": true,\n+//\t\"m_bAllowSSTGeneration\": true,\n+//\t\"m_nDirectLight\": 0,\n+//\t\"m_nBounceLight\": 0,\n+//\t\"m_flBounceScale\": 0.000000,\n+//\t\"m_flFadeMinDist\": 0.000000,\n+//\t\"m_flFadeMaxDist\": 0.000000,\n+//\t\"m_flShadowFadeMinDist\": 0.000000,\n+//\t\"m_flShadowFadeMaxDist\": 0.000000,\n+//\t\"m_bEnabled\": false,\n+//\t\"m_bFlicker\": false,\n+//\t\"m_bPrecomputedFieldsValid\": false,\n+//\t\"m_vPrecomputedBoundsMins\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vPrecomputedBoundsMaxs\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vPrecomputedOBBOrigin\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vPrecomputedOBBAngles\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_vPrecomputedOBBExtent\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"m_flPrecomputedMaxRange\": 0.000000,\n+//\t\"m_nFogLightingMode\": 0,\n+//\t\"m_flFogContributionStength\": 1.000000,\n+//\t\"m_flNearClipPlane\": 1.000000,\n+//\t\"m_SkyColor\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"m_flSkyIntensity\": 0.000000,\n+//\t\"m_SkyAmbientBounce\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"m_bUseSecondaryColor\": false,\n+//\t\"m_flLightStyleStartTime\": null,\n+//\t\"m_flCapsuleLength\": 0.000000,\n+//\t\"m_flMinRoughness\": 0.000000\n+//}\n class CLightComponent : public CEntityComponent\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/CLightEntityAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CLightEntityAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CMapInfo_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CMapInfo_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CModelState.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CModelState\n {\n \tCStrongHandle< InfoForResourceTypeCModel > m_hModel;"
        },
        {
          "filename": "DumpSource2/schemas/client/CNMEventPulseState_t.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_eventID\": \"\"\n+//}\n+class CNMEventPulseState_t\n+{\n+\tCGlobalSymbol m_eventID;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CNetworkOriginCellCoordQuantizedVectorWS.h",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": "@@ -0,0 +1,10 @@\n+class CNetworkOriginCellCoordQuantizedVectorWS\n+{\n+\tuint16 m_cellX;\n+\tuint16 m_cellY;\n+\tuint16 m_cellZ;\n+\tuint16 m_nOutsideWorld;\n+\tCNetworkedQuantizedFloat m_vecX;\n+\tCNetworkedQuantizedFloat m_vecY;\n+\tCNetworkedQuantizedFloat m_vecZ;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CNetworkOriginQuantizedVectorWS.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+class CNetworkOriginQuantizedVectorWS\n+{\n+\tCNetworkedQuantizedFloat m_vecX;\n+\tCNetworkedQuantizedFloat m_vecY;\n+\tCNetworkedQuantizedFloat m_vecZ;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CNetworkTransmitComponent.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CNetworkTransmitComponent\",\n+//\t\"m_nTransmitStateOwnedCounter\": 0\n+//}\n class CNetworkTransmitComponent\n {\n \tuint8 m_nTransmitStateOwnedCounter;"
        },
        {
          "filename": "DumpSource2/schemas/client/CNetworkedSequenceOperation.h",
          "status": "modified",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -1,3 +1,14 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CNetworkedSequenceOperation\",\n+//\t\"m_hSequence\": -1,\n+//\t\"m_flPrevCycle\": 0.000000,\n+//\t\"m_flCycle\": 0.000000,\n+//\t\"m_flWeight\": 1.000000,\n+//\t\"m_bSequenceChangeNetworked\": false,\n+//\t\"m_bDiscontinuity\": false,\n+//\t\"m_flPrevCycleFromDiscontinuity\": 0.000000,\n+//\t\"m_flPrevCycleForAnimEventDetection\": 0.000000\n+//}\n class CNetworkedSequenceOperation\n {\n \tHSequence m_hSequence;"
        },
        {
          "filename": "DumpSource2/schemas/client/CNmEventConsumerPulse.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CNmEventConsumerPulse\"\n+//}\n+class CNmEventConsumerPulse : public CNmEventConsumer\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CParticleSystemAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CParticleSystemAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CPathNode.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,6 +4,6 @@ class CPathNode : public C_PointEntity\n \tVector m_vOutTangentLocal;\n \tCUtlString m_strParentPathUniqueID;\n \tCUtlString m_strPathNodeParameter;\n-\tCTransform m_xWSPrevParent;\n+\tCTransformWS m_xWSPrevParent;\n \tCHandle< CPathWithDynamicNodes > m_hPath;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CPathQueryComponent.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CPathQueryComponent : public CEntityComponent, public CPathQueryUtil\n {\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CPathQueryUtil.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CPathQueryUtil\n {\n \tCTransform m_PathToEntityTransform;"
        },
        {
          "filename": "DumpSource2/schemas/client/CPhysicsBodyGameMarkupData.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -7,5 +7,5 @@\n class CPhysicsBodyGameMarkupData\n {\n \t// MPropertyDescription = \"Physics Body Data By Bone Name\"\n-\tCUtlOrderedMap< CUtlString, CPhysicsBodyGameMarkup > m_PhysicsBodyMarkupByBoneName;\n+\tCUtlDict< CPhysicsBodyGameMarkup > m_PhysicsBodyMarkupByBoneName;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CPlayerPawnComponent.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -1,5 +1,7 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CPlayerPawnComponent\n {\n \t// MNotSaved\n \tCNetworkVarChainer __m_pChainEntity;\n+\tCAnimGraphControllerPtr m_pComponentGraphController;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CPointValueRemapperAPI.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CPointValueRemapperAPI\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CPrecipitationVData.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,6 +1,8 @@\n // MGetKV3ClassDefaults = {\n //\t\"_class\": \"CPrecipitationVData\",\n //\t\"m_szParticlePrecipitationEffect\": \"\",\n+//\t\"m_szParticlePrecipitationPuddleEffect\": \"\",\n+//\t\"m_szParticlePrecipitationPostEffect\": \"\",\n //\t\"m_flInnerDistance\": 32.000000,\n //\t\"m_nAttachType\": \"PATTACH_ABSORIGIN_FOLLOW\",\n //\t\"m_bBatchSameVolumeType\": true,\n@@ -16,6 +18,8 @@\n class CPrecipitationVData : public CEntitySubclassVDataBase\n {\n \tCResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationEffect;\n+\tCResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationPuddleEffect;\n+\tCResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationPostEffect;\n \tfloat32 m_flInnerDistance;\n \tParticleAttachment_t m_nAttachType;\n \tbool m_bBatchSameVolumeType;"
        },
        {
          "filename": "DumpSource2/schemas/client/CPropDataComponent.h",
          "status": "modified",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -1,3 +1,16 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CPropDataComponent\",\n+//\t\"m_flDmgModBullet\": 1.000000,\n+//\t\"m_flDmgModClub\": 1.000000,\n+//\t\"m_flDmgModExplosive\": 1.000000,\n+//\t\"m_flDmgModFire\": 1.000000,\n+//\t\"m_iszPhysicsDamageTableName\": \"\",\n+//\t\"m_iszBasePropData\": \"\",\n+//\t\"m_nInteractions\": 0,\n+//\t\"m_bSpawnMotionDisabled\": false,\n+//\t\"m_nDisableTakePhysicsDamageSpawnFlag\": 0,\n+//\t\"m_nMotionDisabledSpawnFlag\": 0\n+//}\n class CPropDataComponent : public CEntityComponent\n {\n \tfloat32 m_flDmgModBullet;"
        },
        {
          "filename": "DumpSource2/schemas/client/CPulseAnimFuncs.h",
          "status": "removed",
          "additions": 0,
          "deletions": 3,
          "changes": 3,
          "patch": "@@ -1,3 +0,0 @@\n-class CPulseAnimFuncs\n-{\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CPulseCell_LerpCameraSettings.h",
          "status": "modified",
          "additions": 12,
          "deletions": 0,
          "changes": 12,
          "patch": "@@ -1,6 +1,18 @@\n // MGetKV3ClassDefaults = {\n //\t\"_class\": \"CPulseCell_LerpCameraSettings\",\n //\t\"m_nEditorNodeID\": -1,\n+//\t\"m_BaseFlow_OnAfterCancel\":\n+//\t{\n+//\t\t\"m_SourceOutflowName\": \"\",\n+//\t\t\"m_nDestChunk\": -1,\n+//\t\t\"m_nInstruction\": -1\n+//\t},\n+//\t\"m_BaseFlow_WhileActive\":\n+//\t{\n+//\t\t\"m_SourceOutflowName\": \"\",\n+//\t\t\"m_nDestChunk\": -1,\n+//\t\t\"m_nInstruction\": -1\n+//\t},\n //\t\"m_WakeResume\":\n //\t{\n //\t\t\"m_SourceOutflowName\": \"\","
        },
        {
          "filename": "DumpSource2/schemas/client/CPulseCell_PlaySequence.h",
          "status": "modified",
          "additions": 12,
          "deletions": 7,
          "changes": 19,
          "patch": "@@ -1,6 +1,18 @@\n // MGetKV3ClassDefaults = {\n //\t\"_class\": \"CPulseCell_PlaySequence\",\n //\t\"m_nEditorNodeID\": -1,\n+//\t\"m_BaseFlow_OnAfterCancel\":\n+//\t{\n+//\t\t\"m_SourceOutflowName\": \"\",\n+//\t\t\"m_nDestChunk\": -1,\n+//\t\t\"m_nInstruction\": -1\n+//\t},\n+//\t\"m_BaseFlow_WhileActive\":\n+//\t{\n+//\t\t\"m_SourceOutflowName\": \"\",\n+//\t\t\"m_nDestChunk\": -1,\n+//\t\t\"m_nInstruction\": -1\n+//\t},\n //\t\"m_SequenceName\": \"\",\n //\t\"m_PulseAnimEvents\":\n //\t{\n@@ -13,12 +25,6 @@\n //\t\t\"m_SourceOutflowName\": \"\",\n //\t\t\"m_nDestChunk\": -1,\n //\t\t\"m_nInstruction\": -1\n-//\t},\n-//\t\"m_OnCanceled\":\n-//\t{\n-//\t\t\"m_SourceOutflowName\": \"\",\n-//\t\t\"m_nDestChunk\": -1,\n-//\t\t\"m_nInstruction\": -1\n //\t}\n //}\n // MPropertyFriendlyName = \"Play Sequence\"\n@@ -29,5 +35,4 @@ class CPulseCell_PlaySequence : public CPulseCell_BaseYieldingInflow\n \tCUtlString m_SequenceName;\n \tPulseNodeDynamicOutflows_t m_PulseAnimEvents;\n \tCPulse_ResumePoint m_OnFinished;\n-\tCPulse_ResumePoint m_OnCanceled;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CRR_Response.h",
          "status": "modified",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -1,3 +1,12 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_Type\": 0,\n+//\t\"m_szResponseName\": \"\",\n+//\t\"m_Params\":\n+//\t{\n+//\t\t\"odds\": 100,\n+//\t\t\"flags\": 0\n+//\t}\n+//}\n class CRR_Response\n {\n \tuint8 m_Type;"
        },
        {
          "filename": "DumpSource2/schemas/client/CRandSimTimer.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CRandSimTimer : public CSimpleSimTimer\n {\n \tfloat32 m_flMinInterval;"
        },
        {
          "filename": "DumpSource2/schemas/client/CRandStopwatch.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CRandStopwatch : public CStopwatchBase\n {\n \tfloat32 m_flMinInterval;"
        },
        {
          "filename": "DumpSource2/schemas/client/CRenderComponent.h",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -1,3 +1,6 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CRenderComponent\"\n+//}\n class CRenderComponent : public CEntityComponent\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/CRopeOverlapHit.h",
          "status": "modified",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -1,3 +1,9 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_hEntity\": null,\n+//\t\"m_vecOverlappingLinks\":\n+//\t[\n+//\t]\n+//}\n class CRopeOverlapHit\n {\n \tCHandle< C_BaseEntity > m_hEntity;"
        },
        {
          "filename": "DumpSource2/schemas/client/CSceneEventInfo.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -4,6 +4,10 @@ class CSceneEventInfo\n \tint32 m_iPriority;\n \tHSequence m_hSequence;\n \tfloat32 m_flWeight;\n+\tfloat32 m_flLastAccumulatedTime;\n+\tfloat32 m_flLastJumpFromTime;\n+\tfloat32 m_flLastJumpToTime;\n+\tfloat32 m_flLastCycle;\n \tCStrongHandle< InfoForResourceTypeCNmClip > m_hAnimClip;\n \tCGlobalSymbol m_sAnimClipSlot;\n \tCGlobalSymbol m_sAnimClipSlotWeight;"
        },
        {
          "filename": "DumpSource2/schemas/client/CScenePayloadVData.h",
          "status": "removed",
          "additions": 0,
          "deletions": 16,
          "changes": 16,
          "patch": "@@ -1,16 +0,0 @@\n-// MGetKV3ClassDefaults = {\n-//\t\"m_eNPCBehavior\": \"eTakeOver\",\n-//\t\"m_sPulseFile\": \"\",\n-//\t\"m_sSceneFile\": \"\",\n-//\t\"m_ePriority\": \"INTERACT_PRIORITY_NONE\"\n-//}\n-// MVDataRoot\n-// MVDataOverlayType = 1\n-// MVDataAssociatedFile = \"scripts/scenes.vdata\"\n-class CScenePayloadVData\n-{\n-\tENPCBehaviorOverride_t m_eNPCBehavior;\n-\tCResourceNameTyped< CWeakHandle< InfoForResourceTypeIPulseGraphDef > > m_sPulseFile;\n-\tCResourceNameTyped< CWeakHandle< InfoForResourceTypeCChoreoSceneResource > > m_sSceneFile;\n-\tInteractionPriority_t m_ePriority;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/CSimpleSimTimer.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CSimpleSimTimer\n {\n \tGameTime_t m_flNext;"
        },
        {
          "filename": "DumpSource2/schemas/client/CSkeletonAnimationController.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -1,4 +1,6 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CSkeletonAnimationController : public ISkeletonAnimationController\n {\n+\t// MNotSaved\n \tCSkeletonInstance* m_pSkeletonInstance;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CSkeletonInstance.h",
          "status": "modified",
          "additions": 3,
          "deletions": 2,
          "changes": 5,
          "patch": "@@ -1,13 +1,14 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CSkeletonInstance : public CGameSceneNode\n {\n \tCModelState m_modelState;\n \t// MNotSaved\n \tbool m_bUseParentRenderBounds;\n \tbool m_bDisableSolidCollisionsForHierarchy;\n \t// MNotSaved\n-\tbitfield:1 m_bDirtyMotionType;\n+\tbool m_bDirtyMotionType;\n \t// MNotSaved\n-\tbitfield:1 m_bIsGeneratingLatchedParentSpaceState;\n+\tbool m_bIsGeneratingLatchedParentSpaceState;\n \tCUtlStringToken m_materialGroup;\n \tuint8 m_nHitboxSet;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CSoundOpvarSetBoxEntity.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class CSoundOpvarSetBoxEntity : public C_SoundOpvarSetPointEntity\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/CSoundPatch.h",
          "status": "modified",
          "additions": 0,
          "deletions": 32,
          "changes": 32,
          "patch": "@@ -1,40 +1,8 @@\n-// MGetKV3ClassDefaults = {\n-//\t\"_class\": \"CSoundPatch\",\n-//\t\"m_pitch\":\n-//\t{\n-//\t\t\"m_current\": 0.000000,\n-//\t\t\"m_target\": 0.000000,\n-//\t\t\"m_rate\": 0.000000,\n-//\t\t\"m_forceupdate\": false\n-//\t},\n-//\t\"m_volume\":\n-//\t{\n-//\t\t\"m_current\": 0.000000,\n-//\t\t\"m_target\": 0.000000,\n-//\t\t\"m_rate\": 0.000000,\n-//\t\t\"m_forceupdate\": false\n-//\t},\n-//\t\"m_iszSoundScriptName\": \"\",\n-//\t\"m_hEnt\": null,\n-//\t\"m_isPlaying\": 0,\n-//\t\"m_Filter\":\n-//\t{\n-//\t\t\"_class\": \"CCopyRecipientFilter\",\n-//\t\t\"m_Flags\": 0,\n-//\t\t\"m_Recipients\":\n-//\t\t[\n-//\t\t],\n-//\t\t\"m_slotPlayerExcludedDueToPrediction\": -1\n-//\t},\n-//\t\"m_flCloseCaptionDuration\": 2.000000\n-//}\n class CSoundPatch\n {\n \tCSoundEnvelope m_pitch;\n \tCSoundEnvelope m_volume;\n-\t// MKV3TransferSaveOpsForField = \"GetEngineTimeSaveRestoreOps\"\n \tfloat32 m_shutdownTime;\n-\t// MKV3TransferSaveOpsForField = \"GetEngineTimeSaveRestoreOps\"\n \tfloat32 m_flLastTime;\n \tCUtlSymbolLarge m_iszSoundScriptName;\n \tCHandle< C_BaseEntity > m_hEnt;"
        },
        {
          "filename": "DumpSource2/schemas/client/CStopwatchBase.h",
          "status": "modified",
          "additions": 2,
          "deletions": 1,
          "changes": 3,
          "patch": "@@ -1,4 +1,5 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CStopwatchBase : public CSimpleSimTimer\n {\n-\tbool m_fIsRunning;\n+\tbool m_bIsRunning;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/CTakeDamageResult.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -43,6 +43,7 @@\n //\t\"m_nHealthBefore\": 0,\n //\t\"m_flDamageDealt\": 0.000000,\n //\t\"m_flPreModifiedDamage\": 0.000000,\n+//\t\"m_vDamagePosition\": null,\n //\t\"m_nTotalledHealthLost\": 0,\n //\t\"m_flTotalledDamageDealt\": 0.000000,\n //\t\"m_flTotalledPreModifiedDamage\": 0.000000,\n@@ -61,6 +62,7 @@ class CTakeDamageResult\n \tint32 m_nHealthBefore;\n \tfloat32 m_flDamageDealt;\n \tfloat32 m_flPreModifiedDamage;\n+\tVectorWS m_vDamagePosition;\n \tint32 m_nTotalledHealthLost;\n \tfloat32 m_flTotalledDamageDealt;\n \tfloat32 m_flTotalledPreModifiedDamage;"
        },
        {
          "filename": "DumpSource2/schemas/client/CTimeline.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = null\n class CTimeline : public IntervalTimer\n {\n \tfloat32[64] m_flValues;"
        },
        {
          "filename": "DumpSource2/schemas/client/CWorldCompositionChunkReferenceElement_t.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_strMapToLoad\": \"\",\n+//\t\"m_strLandmarkName\": \"\"\n+//}\n class CWorldCompositionChunkReferenceElement_t\n {\n \tCUtlString m_strMapToLoad;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BaseCSGrenadeProjectile.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -1,11 +1,11 @@\n class C_BaseCSGrenadeProjectile : public C_BaseGrenade\n {\n-\tVector m_vInitialPosition;\n+\tVectorWS m_vInitialPosition;\n \tVector m_vInitialVelocity;\n \tint32 m_nBounces;\n \tCStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex;\n \tint32 m_nExplodeEffectTickBegin;\n-\tVector m_vecExplodeEffectOrigin;\n+\tVectorWS m_vecExplodeEffectOrigin;\n \tGameTime_t m_flSpawnTime;\n \tVector vecLastTrailLinePos;\n \tGameTime_t flNextTrailLineTime;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BaseEntity.h",
          "status": "modified",
          "additions": 1,
          "deletions": 3,
          "changes": 4,
          "patch": "@@ -70,8 +70,6 @@ class C_BaseEntity : public CEntityInstance\n \t// MNotSaved\n \tGameTime_t m_flCreateTime;\n \t// MNotSaved\n-\tfloat32 m_flSpeed;\n-\t// MNotSaved\n \tuint16 m_EntClientFlags;\n \t// MNotSaved\n \tbool m_bClientSideRagdoll;\n@@ -80,7 +78,7 @@ class C_BaseEntity : public CEntityInstance\n \tuint32 m_spawnflags;\n \t// MNotSaved\n \tGameTick_t m_nNextThinkTick;\n-\t// MSaveFlags = 4096\n+\t// MSaveBehavior (UNKNOWN FOR PARSER)\n \tuint32 m_fFlags;\n \t// MNotSaved\n \tVector m_vecAbsVelocity;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BaseModelEntity.h",
          "status": "modified",
          "additions": 1,
          "deletions": 3,
          "changes": 4,
          "patch": "@@ -3,7 +3,6 @@ class C_BaseModelEntity : public C_BaseEntity\n \t// MNotSaved\n \tCRenderComponent* m_CRenderComponent;\n \tCHitboxComponent m_CHitboxComponent;\n-\t// MPtrAutoallocate\n \tCChoreoComponent* m_pChoreoComponent;\n \tHitGroup_t m_nDestructiblePartInitialStateDestructed0;\n \tHitGroup_t m_nDestructiblePartInitialStateDestructed1;\n@@ -20,7 +19,6 @@ class C_BaseModelEntity : public C_BaseEntity\n \tbool m_bDestructiblePartInitialStateDestructed2_GenerateBreakpieces;\n \tbool m_bDestructiblePartInitialStateDestructed3_GenerateBreakpieces;\n \tbool m_bDestructiblePartInitialStateDestructed4_GenerateBreakpieces;\n-\t// MPtrAutoallocate\n \tCDestructiblePartsComponent* m_pDestructiblePartsSystemComponent;\n \t// MNotSaved\n \tbool m_bInitModelEffects;\n@@ -52,6 +50,6 @@ class C_BaseModelEntity : public C_BaseEntity\n \tColor m_ClientOverrideTint;\n \t// MNotSaved\n \tbool m_bUseClientOverrideTint;\n-\t// MSaveOpsForField = \"GetHitgroupDisableListSaveRestoreOps\"\n+\t// MKV3TransferSaveOpsForField = \"GetHitgroupDisableListSaveRestoreOps\"\n \tuint32[1] m_bvDisabledHitGroups;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BaseModelEntity__Emphasized_Phoneme.h",
          "status": "modified",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -1,3 +1,10 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_sClassName\": \"\",\n+//\t\"m_flAmount\": 0.000000,\n+//\t\"m_bRequired\": false,\n+//\t\"m_bBasechecked\": false,\n+//\t\"m_bValid\": false\n+//}\n class C_BaseModelEntity::Emphasized_Phoneme\n {\n \tCUtlString m_sClassName;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BasePropDoor.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -9,11 +9,11 @@ class C_BasePropDoor : public C_DynamicProp\n \t// MNotSaved\n \tbool m_bNoNPCs;\n \t// MNotSaved\n-\tVector m_closedPosition;\n+\tVectorWS m_closedPosition;\n \t// MNotSaved\n \tQAngle m_closedAngles;\n \t// MNotSaved\n \tCHandle< C_BasePropDoor > m_hMaster;\n \t// MNotSaved\n-\tVector m_vWhereToSetLightingOrigin;\n+\tVectorWS m_vWhereToSetLightingOrigin;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BaseTrigger.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -7,6 +7,7 @@ class C_BaseTrigger : public C_BaseToggle\n \tCEntityIOOutput m_OnTouching;\n \tCEntityIOOutput m_OnTouchingEachEntity;\n \tCEntityIOOutput m_OnNotTouching;\n+\tCEntityIOOutput m_OnTouchingChanged;\n \tCUtlVector< CHandle< C_BaseEntity > > m_hTouchingEntities;\n \tCUtlSymbolLarge m_iFilterName;\n \tCHandle< CBaseFilter > m_hFilter;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Beam.h",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -21,7 +21,6 @@ class C_Beam : public C_BaseModelEntity\n \tfloat32 m_fStartFrame;\n \tfloat32 m_fSpeed;\n \tfloat32 m_flFrame;\n-\tBeamClipStyle_t m_nClipStyle;\n \tbool m_bTurnedOff;\n \tVectorWS m_vecEndPos;\n \tCHandle< C_BaseEntity > m_hEndEntity;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_BulletHitModel.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -5,5 +5,5 @@ class C_BulletHitModel : public CBaseAnimGraph\n \tCHandle< C_BaseEntity > m_hPlayerParent;\n \tbool m_bIsHit;\n \tfloat32 m_flTimeCreated;\n-\tVector m_vecStartPos;\n+\tVectorWS m_vecStartPos;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGO_MapPreviewCameraPathNode_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSGO_MapPreviewCameraPathNode_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGO_MapPreviewCameraPath_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSGO_MapPreviewCameraPath_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGO_PreviewModel_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSGO_PreviewModel_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGO_PreviewPlayer_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSGO_PreviewPlayer_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGO_TeamPreviewCamera_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSGO_TeamPreviewCamera_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSGameRules.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -63,8 +63,8 @@ class C_CSGameRules : public C_TeamplayRules\n \tint32[30] m_iMatchStats_PlayersAlive_T;\n \tfloat32[32] m_TeamRespawnWaveTimes;\n \tGameTime_t[32] m_flNextRespawnWave;\n-\tVector m_vMinimapMins;\n-\tVector m_vMinimapMaxs;\n+\tVectorWS m_vMinimapMins;\n+\tVectorWS m_vMinimapMaxs;\n \tfloat32[8] m_MinimapVerticalSectionHeights;\n \tuint64 m_ullLocalMatchID;\n \tint32[10] m_nEndMatchMapGroupVoteTypes;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSObserverPawn_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSObserverPawn_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSPlayerPawn.h",
          "status": "modified",
          "additions": 3,
          "deletions": 4,
          "changes": 7,
          "patch": "@@ -40,10 +40,9 @@ class C_CSPlayerPawn : public C_CSPlayerPawnBase\n \tbool m_bMustSyncRagdollState;\n \tint32 m_nRagdollDamageBone;\n \tVector m_vRagdollDamageForce;\n-\tVector m_vRagdollDamagePosition;\n \tchar[64] m_szRagdollDamageWeaponName;\n \tbool m_bRagdollDamageHeadshot;\n-\tVector m_vRagdollServerOrigin;\n+\tVectorWS m_vRagdollServerOrigin;\n \tGameTime_t m_lastLandTime;\n \tbool m_bOnGroundLastTick;\n \tCHandle< C_CS2HudModelArms > m_hHudModelArms;\n@@ -81,11 +80,11 @@ class C_CSPlayerPawn : public C_CSPlayerPawnBase\n \tbool m_bOldIsScoped;\n \tbool m_bHasDeathInfo;\n \tfloat32 m_flDeathInfoTime;\n-\tVector m_vecDeathInfoOrigin;\n+\tVectorWS m_vecDeathInfoOrigin;\n \tGameTime_t m_grenadeParameterStashTime;\n \tbool m_bGrenadeParametersStashed;\n \tQAngle m_angStashedShootAngles;\n-\tVector m_vecStashedGrenadeThrowPosition;\n+\tVectorWS m_vecStashedGrenadeThrowPosition;\n \tVector m_vecStashedVelocity;\n \tbool m_bShouldAutobuyDMWeapons;\n \tGameTime_t m_fImmuneToGunGameDamageTime;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSPlayerPawnBase_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSPlayerPawnBase_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSPlayerPawn_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CSPlayerPawn_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CSPlayerResource.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -3,8 +3,8 @@ class C_CSPlayerResource : public C_BaseEntity\n \tbool[12] m_bHostageAlive;\n \tbool[12] m_isHostageFollowingSomeone;\n \tCEntityIndex[12] m_iHostageEntityIDs;\n-\tVector m_bombsiteCenterA;\n-\tVector m_bombsiteCenterB;\n+\tVectorWS m_bombsiteCenterA;\n+\tVectorWS m_bombsiteCenterB;\n \tint32[4] m_hostageRescueX;\n \tint32[4] m_hostageRescueY;\n \tint32[4] m_hostageRescueZ;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Chicken.h",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": "@@ -1,7 +1,5 @@\n class C_Chicken : public C_DynamicProp, public IHasAttributes\n {\n-\tCHandle< CBaseAnimGraph > m_hHolidayHatAddon;\n-\tbool m_jumpedThisFrame;\n \tCHandle< C_CSPlayerPawn > m_leader;\n \tC_AttributeContainer m_AttributeManager;\n \tbool m_bAttributesInitialized;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_ColorCorrection.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,7 +1,7 @@\n class C_ColorCorrection : public C_BaseEntity\n {\n \t// MNotSaved\n-\tVector m_vecOrigin;\n+\tVectorWS m_vecOrigin;\n \t// MNotSaved\n \tfloat32 m_MinFalloff;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CommandContext.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"needsprocessing\": false,\n+//\t\"command_number\": 0\n+//}\n class C_CommandContext\n {\n \tbool needsprocessing;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_CsmFovOverride_API.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class C_CsmFovOverride_API\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/C_DynamicProp.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -15,6 +15,7 @@ class C_DynamicProp : public C_BreakableProp\n \tbool m_bFiredStartEndOutput;\n \t// MNotSaved\n \tbool m_bForceNpcExclude;\n+\tbool m_bCreateMovableSurfaceGraph;\n \t// MNotSaved\n \tbool m_bCreateNonSolid;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_EntityDissolve.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -17,9 +17,9 @@ class C_EntityDissolve : public C_BaseModelEntity\n \t// MNotSaved\n \tGameTime_t m_flNextSparkTime;\n \t// MNotSaved\n-\tEntityDisolveType_t m_nDissolveType;\n+\tEntityDissolveType_t m_nDissolveType;\n \t// MNotSaved\n-\tVector m_vDissolverOrigin;\n+\tVectorWS m_vDissolverOrigin;\n \t// MNotSaved\n \tuint32 m_nMagnitude;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_EnvWindShared.h",
          "status": "modified",
          "additions": 12,
          "deletions": 0,
          "changes": 12,
          "patch": "@@ -1,3 +1,15 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"C_EnvWindShared\",\n+//\t\"m_iMinWind\": 0,\n+//\t\"m_iMaxWind\": 0,\n+//\t\"m_windRadius\": 0,\n+//\t\"m_iMinGust\": 0,\n+//\t\"m_iMaxGust\": 0,\n+//\t\"m_flMinGustDelay\": 0.000000,\n+//\t\"m_flMaxGustDelay\": 0.000000,\n+//\t\"m_flGustDuration\": 0.000000,\n+//\t\"m_iGustDirChange\": 0\n+//}\n class C_EnvWindShared\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Fish.h",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": "@@ -1,7 +1,7 @@\n class C_Fish : public CBaseAnimGraph\n {\n \t// MNotSaved\n-\tVector m_pos;\n+\tVectorWS m_pos;\n \t// MNotSaved\n \tVector m_vel;\n \t// MNotSaved\n@@ -21,11 +21,11 @@ class C_Fish : public CBaseAnimGraph\n \t// MNotSaved\n \tfloat32 m_wiggleRate;\n \t// MNotSaved\n-\tVector m_actualPos;\n+\tVectorWS m_actualPos;\n \t// MNotSaved\n \tQAngle m_actualAngles;\n \t// MNotSaved\n-\tVector m_poolOrigin;\n+\tVectorWS m_poolOrigin;\n \t// MNotSaved\n \tfloat32 m_waterLevel;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Hostage.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -10,13 +10,13 @@ class C_Hostage : public C_BaseCombatCharacter\n \tbool m_bHandsHaveBeenCut;\n \tCHandle< C_CSPlayerPawn > m_hHostageGrabber;\n \tGameTime_t m_fLastGrabTime;\n-\tVector m_vecGrabbedPos;\n+\tVectorWS m_vecGrabbedPos;\n \tGameTime_t m_flRescueStartTime;\n \tGameTime_t m_flGrabSuccessTime;\n \tGameTime_t m_flDropStartTime;\n \tGameTime_t m_flDeadOrRescuedTime;\n \tCountdownTimer m_blinkTimer;\n-\tVector m_lookAt;\n+\tVectorWS m_lookAt;\n \tCountdownTimer m_lookAroundTimer;\n \tbool m_isInit;\n \tAttachmentHandle_t m_eyeAttachment;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Inferno.h",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": "@@ -6,8 +6,8 @@ class C_Inferno : public C_BaseModelEntity\n \tCStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoOutlinePointsSnapshot;\n \tCStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoClimbingOutlinePointsSnapshot;\n \tCStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoDecalsSnapshot;\n-\tVector[64] m_firePositions;\n-\tVector[64] m_fireParentPositions;\n+\tVectorWS[64] m_firePositions;\n+\tVectorWS[64] m_fireParentPositions;\n \tbool[64] m_bFireIsBurning;\n \tVector[64] m_BurnNormal;\n \tint32 m_fireCount;\n@@ -21,7 +21,7 @@ class C_Inferno : public C_BaseModelEntity\n \tint32 m_nlosperiod;\n \tfloat32 m_maxFireHalfWidth;\n \tfloat32 m_maxFireHeight;\n-\tVector m_minBounds;\n-\tVector m_maxBounds;\n+\tVectorWS m_minBounds;\n+\tVectorWS m_maxBounds;\n \tfloat32 m_flLastGrassBurnThink;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_LocalTempEntity.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -43,11 +43,11 @@ class C_LocalTempEntity : public CBaseAnimGraph\n \t// MNotSaved\n \tint32 m_iLastCollisionFrame;\n \t// MNotSaved\n-\tVector m_vLastCollisionOrigin;\n+\tVectorWS m_vLastCollisionOrigin;\n \t// MNotSaved\n \tVector m_vecTempEntVelocity;\n \t// MNotSaved\n-\tVector m_vecPrevAbsOrigin;\n+\tVectorWS m_vecPrevAbsOrigin;\n \t// MNotSaved\n \tVector m_vecTempEntAcceleration;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_ParticleSystem.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -15,6 +15,8 @@ class C_ParticleSystem : public C_BaseModelEntity\n \tVector[4] m_vServerControlPoints;\n \tuint8[4] m_iServerControlPointAssignments;\n \tCHandle< C_BaseEntity >[64] m_hControlPointEnts;\n+\tbool m_bDataStringLocalized;\n+\tCUtlString m_strDataString;\n \tbool m_bNoSave;\n \tbool m_bNoFreeze;\n \tbool m_bNoRamp;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_PlantedC4.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -26,7 +26,7 @@ class C_PlantedC4 : public CBaseAnimGraph, public IHasAttributes\n \tCHandle< C_CSPlayerPawn > m_pBombDefuser;\n \tGameTime_t m_fLastDefuseTime;\n \tCBasePlayerController* m_pPredictionOwner;\n-\tVector m_vecC4ExplodeSpectatePos;\n+\tVectorWS m_vecC4ExplodeSpectatePos;\n \tQAngle m_vecC4ExplodeSpectateAng;\n \tfloat32 m_flC4ExplodeSpectateDuration;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_PlayerSprayDecal.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -4,8 +4,8 @@ class C_PlayerSprayDecal : public C_ModelPointEntity\n \tuint32 m_unAccountID;\n \tuint32 m_unTraceID;\n \tuint32 m_rtGcTime;\n-\tVector m_vecEndPos;\n-\tVector m_vecStart;\n+\tVectorWS m_vecEndPos;\n+\tVectorWS m_vecStart;\n \tVector m_vecLeft;\n \tVector m_vecNormal;\n \tint32 m_nPlayer;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_PointClientUIWorldPanel.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -35,4 +35,5 @@ class C_PointClientUIWorldPanel : public C_BaseClientUIEntity\n \tbool m_bOnlyRenderToTexture;\n \tbool m_bDisableMipGen;\n \tint32 m_nExplicitImageLayout;\n+\tbool m_bIgnoreParentOrientation;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_PointCommentaryNode.h",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -11,7 +11,6 @@ class C_PointCommentaryNode : public CBaseAnimGraph\n \tint32 m_iNodeNumber;\n \tint32 m_iNodeNumberMax;\n \tbool m_bListenedTo;\n-\t// MSaveOpsForField = \"GetSoundSaveRestoreOps\"\n \tCSoundPatch* m_sndCommentary;\n \tCHandle< C_BaseEntity > m_hViewPosition;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/C_PointValueRemapper.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -25,5 +25,5 @@ class C_PointValueRemapper : public C_BaseEntity\n \tbool m_bFirstUpdate;\n \tfloat32 m_flPreviousValue;\n \tGameTime_t m_flPreviousUpdateTickTime;\n-\tVector m_vecPreviousTestPoint;\n+\tVectorWS m_vecPreviousTestPoint;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_ShatterGlassShardPhysics.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,4 +1,4 @@\n-class C_ShatterGlassShardPhysics : public C_PhysicsProp\n+class C_ShatterGlassShardPhysics : public C_BaseModelEntity\n {\n \t// MNotSaved\n \tshard_model_desc_t m_ShardDesc;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_SmokeGrenadeProjectile.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,7 +4,7 @@ class C_SmokeGrenadeProjectile : public C_BaseCSGrenadeProjectile\n \tbool m_bDidSmokeEffect;\n \tint32 m_nRandomSeed;\n \tVector m_vSmokeColor;\n-\tVector m_vSmokeDetonationPos;\n+\tVectorWS m_vSmokeDetonationPos;\n \tC_NetworkUtlVectorBase< uint8 > m_VoxelFrameData;\n \tint32 m_nVoxelFrameDataSize;\n \tint32 m_nVoxelUpdate;"
        },
        {
          "filename": "DumpSource2/schemas/client/C_SoundOpvarSetAABBEntity.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,3 +1,3 @@\n-class C_SoundOpvarSetAABBEntity : public C_SoundOpvarSetPointEntity\n+class C_SoundOpvarSetAABBEntity : public CSoundOpvarSetBoxEntity\n {\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_Sprite.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -25,4 +25,5 @@ class C_Sprite : public C_BaseModelEntity\n \tint32 m_nSpriteWidth;\n \t// MNotSaved\n \tint32 m_nSpriteHeight;\n+\tfloat32 m_flSpeed;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_TriggerPhysics.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -10,7 +10,7 @@ class C_TriggerPhysics : public C_BaseTrigger\n \tfloat32 m_flDampingRatio;\n \tVector m_vecLinearForcePointAt;\n \tbool m_bCollapseToForcePoint;\n-\tVector m_vecLinearForcePointAtWorld;\n+\tVectorWS m_vecLinearForcePointAtWorld;\n \tVector m_vecLinearForceDirection;\n \tbool m_bConvertToDebrisWhenPossible;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/C_fogplayerparams_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class C_fogplayerparams_t\n {\n \tCHandle< C_FogController > m_hCtrl;"
        },
        {
          "filename": "DumpSource2/schemas/client/ChoreoExternalAnimgraphControlState_t.h",
          "status": "modified",
          "additions": 17,
          "deletions": 11,
          "changes": 28,
          "patch": "@@ -3,18 +3,24 @@ enum ChoreoExternalAnimgraphControlState_t : uint32_t\n \t// MPropertyFriendlyName = \"None\"\n \t// MAlternateSemanticName = \"None\"\n \teNone = 0,\n-\t// MPropertyFriendlyName = \"Begin\"\n-\t// MAlternateSemanticName = \"Begin\"\n-\teBegin = 1,\n-\t// MPropertyFriendlyName = \"Looping\"\n-\t// MAlternateSemanticName = \"Looping\"\n-\teLooping = 2,\n \t// MPropertyFriendlyName = \"Exit\"\n \t// MAlternateSemanticName = \"Exit\"\n-\teExit = 3,\n-\t// MPropertyFriendlyName = \"Abort\"\n-\t// MAlternateSemanticName = \"Abort\"\n-\teAbort = 4,\n+\teExit = 1,\n+\t// MPropertyFriendlyName = \"State_01\"\n+\t// MAlternateSemanticName = \"State_01\"\n+\teState01 = 2,\n+\t// MPropertyFriendlyName = \"State_02\"\n+\t// MAlternateSemanticName = \"State_02\"\n+\teState02 = 3,\n+\t// MPropertyFriendlyName = \"State_03\"\n+\t// MAlternateSemanticName = \"State_03\"\n+\teState03 = 4,\n+\t// MPropertyFriendlyName = \"State_04\"\n+\t// MAlternateSemanticName = \"State_04\"\n+\teState04 = 5,\n+\t// MPropertyFriendlyName = \"State_05\"\n+\t// MAlternateSemanticName = \"State_05\"\n+\teState05 = 6,\n \t// MPropertySuppressEnumerator\n-\teCount = 5,\n+\teCount = 7,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/ChoreoStrafeMode_t.h",
          "status": "added",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -0,0 +1,9 @@\n+enum ChoreoStrafeMode_t : uint32_t\n+{\n+\t// MPropertyFriendlyName = \"Default\"\n+\tDEFAULT = 0,\n+\t// MPropertyFriendlyName = \"Enable\"\n+\tENABLE = 1,\n+\t// MPropertyFriendlyName = \"Disable\"\n+\tDISABLE = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/DIALOG_TYPE.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum DIALOG_TYPE : uint32_t\n+{\n+\tDIALOG_MSG = 0,\n+\tDIALOG_MENU = 1,\n+\tDIALOG_TEXT = 2,\n+\tDIALOG_ENTRY = 3,\n+\tDIALOG_ASKCONNECT = 4,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/DebugDrawBoneTransforms_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -4,6 +4,7 @@\n //\t[\n //\t]\n //}\n+// MPropertyFriendlyName = \"Bone Transforms\"\n class DebugDrawBoneTransforms_t : public DebugSnapshotBaseStructuredData_t\n {\n \tCUtlVectorFixedGrowable< CTransform, 128 > vecBones;"
        },
        {
          "filename": "DumpSource2/schemas/client/DebugOverlayBits_t.h",
          "status": "modified",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -118,4 +118,13 @@ enum DebugOverlayBits_t : uint64_t\n \t// MPropertyFriendlyName = \"Minimal Text\"\n \t// MPropertyDescription = \"Only draw the base name and subclass, but no other text data\"\n \tOVERLAY_MINIMAL_TEXT = 2199023255552,\n+\t// MPropertyFriendlyName = \"NPC God Mode\"\n+\t// MPropertyDescription = \"This NPC will take no damage or react to it\"\n+\tOVERLAY_NPC_GOD_MODE = 4398046511104,\n+\t// MPropertyFriendlyName = \"NPC Anim AI Handshakes\"\n+\t// MPropertyDescription = \"show handshaking between AI and Animgraphs\"\n+\tOVERLAY_NPC_ANIM_AI_HANDSHAKES_BIT = 8796093022208,\n+\t// MPropertyFriendlyName = \"NPC Path Queries\"\n+\t// MPropertyDescription = \"show path query processing\"\n+\tOVERLAY_NPC_PATH_QUERIES_BIT = 17592186044416,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/DebugSnapshotBaseStructuredData_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,6 +1,7 @@\n // MGetKV3ClassDefaults = {\n //\t\"_class\": \"DebugSnapshotBaseStructuredData_t\"\n //}\n+// MPropertyFriendlyName = \"Base Structured Data\"\n class DebugSnapshotBaseStructuredData_t\n {\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/DestructiblePartDamageRequest_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -6,6 +6,7 @@\n //\t\"m_nDamageType\": \"DMG_BLAST\",\n //\t\"m_flBreakDamage\": 0.000000,\n //\t\"m_flBreakDamageRadius\": 24.000000,\n+//\t\"m_hAttacker\": null,\n //\t\"m_vWsBreakDamageOrigin\": null,\n //\t\"m_vWsBreakDamageForce\":\n //\t[\n@@ -23,6 +24,7 @@ class DestructiblePartDamageRequest_t\n \tDamageTypes_t m_nDamageType;\n \tfloat32 m_flBreakDamage;\n \tfloat32 m_flBreakDamageRadius;\n+\tCHandle< C_BaseEntity > m_hAttacker;\n \tVectorWS m_vWsBreakDamageOrigin;\n \tVector m_vWsBreakDamageForce;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/EBaseClientMessages.h",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": "@@ -0,0 +1,10 @@\n+enum EBaseClientMessages : uint32_t\n+{\n+\tCM_CustomGameEvent = 280,\n+\tCM_CustomGameEventBounce = 281,\n+\tCM_ClientUIEvent = 282,\n+\tCM_DevPaletteVisibilityChanged = 283,\n+\tCM_WorldUIControllerHasPanelChanged = 284,\n+\tCM_RotateAnchor = 285,\n+\tCM_MAX_BASE = 300,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EBaseEntityMessages.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum EBaseEntityMessages : uint32_t\n+{\n+\tEM_PlayJingle = 136,\n+\tEM_ScreenOverlay = 137,\n+\tEM_PropagateForce = 139,\n+\tEM_DoSpark = 140,\n+\tEM_FixAngle = 141,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EBaseGameEvents.h",
          "status": "added",
          "additions": 18,
          "deletions": 0,
          "changes": 18,
          "patch": "@@ -0,0 +1,18 @@\n+enum EBaseGameEvents : uint32_t\n+{\n+\tGE_VDebugGameSessionIDEvent = 200,\n+\tGE_PlaceDecalEvent = 201,\n+\tGE_ClearWorldDecalsEvent = 202,\n+\tGE_ClearEntityDecalsEvent = 203,\n+\tGE_ClearDecalsForEntityEvent = 204,\n+\tGE_Source1LegacyGameEventList = 205,\n+\tGE_Source1LegacyListenEvents = 206,\n+\tGE_Source1LegacyGameEvent = 207,\n+\tGE_SosStartSoundEvent = 208,\n+\tGE_SosStopSoundEvent = 209,\n+\tGE_SosSetSoundEventParams = 210,\n+\tGE_SosSetLibraryStackFields = 211,\n+\tGE_SosStopSoundEventHash = 212,\n+\tGE_ClothStiffenAnimEvent = 213,\n+\tGE_ClothEffectAnimEvent = 214,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EBasePredictionEvents.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum EBasePredictionEvents : uint32_t\n+{\n+\tBPE_StringCommand = 128,\n+\tBPE_Teleport = 130,\n+\tBPE_Diagnostic = 16384,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EBaseUserMessages.h",
          "status": "added",
          "additions": 54,
          "deletions": 0,
          "changes": 54,
          "patch": "@@ -0,0 +1,54 @@\n+enum EBaseUserMessages : uint32_t\n+{\n+\tUM_AchievementEvent = 101,\n+\tUM_CurrentTimescale = 104,\n+\tUM_DesiredTimescale = 105,\n+\tUM_Fade = 106,\n+\tUM_GameTitle = 107,\n+\tUM_HudMsg = 110,\n+\tUM_HudText = 111,\n+\tUM_ColoredText = 113,\n+\tUM_RequestState = 114,\n+\tUM_ResetHUD = 115,\n+\tUM_Rumble = 116,\n+\tUM_SayText = 117,\n+\tUM_SayText2 = 118,\n+\tUM_SayTextChannel = 119,\n+\tUM_Shake = 120,\n+\tUM_ShakeDir = 121,\n+\tUM_WaterShake = 122,\n+\tUM_TextMsg = 124,\n+\tUM_ScreenTilt = 125,\n+\tUM_VoiceMask = 128,\n+\tUM_SendAudio = 130,\n+\tUM_ItemPickup = 131,\n+\tUM_AmmoDenied = 132,\n+\tUM_ShowMenu = 134,\n+\tUM_CreditsMsg = 135,\n+\tUM_CloseCaptionPlaceholder = 142,\n+\tUM_CameraTransition = 143,\n+\tUM_AudioParameter = 144,\n+\tUM_ParticleManager = 145,\n+\tUM_HudError = 146,\n+\tUM_CustomGameEvent = 148,\n+\tUM_AnimGraphUpdate = 149,\n+\tUM_HapticsManagerPulse = 150,\n+\tUM_HapticsManagerEffect = 151,\n+\tUM_UpdateCssClasses = 153,\n+\tUM_ServerFrameTime = 154,\n+\tUM_LagCompensationError = 155,\n+\tUM_RequestDllStatus = 156,\n+\tUM_RequestUtilAction = 157,\n+\tUM_UtilActionResponse = 158,\n+\tUM_DllStatusResponse = 159,\n+\tUM_RequestInventory = 160,\n+\tUM_InventoryResponse = 161,\n+\tUM_RequestDiagnostic = 162,\n+\tUM_DiagnosticResponse = 163,\n+\tUM_ExtraUserData = 164,\n+\tUM_NotifyResponseFound = 165,\n+\tUM_PlayResponseConditional = 166,\n+\tUM_UserSentBugBug = 167,\n+\tUM_UsageReport = 168,\n+\tUM_MAX_BASE = 200,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECSPredictionEvents.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum ECSPredictionEvents : uint32_t\n+{\n+\tCSPE_DamageTag = 1,\n+\tCSPE_PlayerTeleport = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECSUsrMsg_DisconnectToLobby_Action.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum ECSUsrMsg_DisconnectToLobby_Action : uint32_t\n+{\n+\tk_ECSUsrMsg_DisconnectToLobby_Action_Default = 0,\n+\tk_ECSUsrMsg_DisconnectToLobby_Action_GoQueue = 1,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EChickenActivity.h",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": "@@ -0,0 +1,10 @@\n+enum EChickenActivity : uint32_t\n+{\n+\tIdle = 0,\n+\tSquat = 1,\n+\tWalk = 2,\n+\tRun = 3,\n+\tGlide = 4,\n+\tLand = 5,\n+\tPanic = 6,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EClientReportingVersion.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum EClientReportingVersion : uint32_t\n+{\n+\tk_EClientReportingVersion_OldVersion = 0,\n+\tk_EClientReportingVersion_BetaVersion = 1,\n+\tk_EClientReportingVersion_SupportsTrustedMode = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EClientUIEvent.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum EClientUIEvent : uint32_t\n+{\n+\tEClientUIEvent_Invalid = 0,\n+\tEClientUIEvent_DialogFinished = 1,\n+\tEClientUIEvent_FireOutput = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECommunityItemAttribute.h",
          "status": "added",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -0,0 +1,13 @@\n+enum ECommunityItemAttribute : uint32_t\n+{\n+\tk_ECommunityItemAttribute_Invalid = 0,\n+\tk_ECommunityItemAttribute_CardBorder = 1,\n+\tk_ECommunityItemAttribute_Level = 2,\n+\tk_ECommunityItemAttribute_IssueNumber = 3,\n+\tk_ECommunityItemAttribute_TradableTime = 4,\n+\tk_ECommunityItemAttribute_StorePackageID = 5,\n+\tk_ECommunityItemAttribute_CommunityItemAppID = 6,\n+\tk_ECommunityItemAttribute_CommunityItemType = 7,\n+\tk_ECommunityItemAttribute_ProfileModiferEnabled = 8,\n+\tk_ECommunityItemAttribute_ExpiryTime = 9,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECommunityItemClass.h",
          "status": "added",
          "additions": 14,
          "deletions": 0,
          "changes": 14,
          "patch": "@@ -0,0 +1,14 @@\n+enum ECommunityItemClass : uint32_t\n+{\n+\tk_ECommunityItemClass_Invalid = 0,\n+\tk_ECommunityItemClass_Badge = 1,\n+\tk_ECommunityItemClass_GameCard = 2,\n+\tk_ECommunityItemClass_ProfileBackground = 3,\n+\tk_ECommunityItemClass_Emoticon = 4,\n+\tk_ECommunityItemClass_BoosterPack = 5,\n+\tk_ECommunityItemClass_Consumable = 6,\n+\tk_ECommunityItemClass_GameGoo = 7,\n+\tk_ECommunityItemClass_ProfileModifier = 8,\n+\tk_ECommunityItemClass_Scene = 9,\n+\tk_ECommunityItemClass_SalienItem = 10,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECsgoGCMsg.h",
          "status": "added",
          "additions": 112,
          "deletions": 0,
          "changes": 112,
          "patch": "@@ -0,0 +1,112 @@\n+enum ECsgoGCMsg : uint32_t\n+{\n+\tk_EMsgGCCStrike15_v2_Base = 9100,\n+\tk_EMsgGCCStrike15_v2_MatchmakingStart = 9101,\n+\tk_EMsgGCCStrike15_v2_MatchmakingStop = 9102,\n+\tk_EMsgGCCStrike15_v2_MatchmakingClient2ServerPing = 9103,\n+\tk_EMsgGCCStrike15_v2_MatchmakingGC2ClientUpdate = 9104,\n+\tk_EMsgGCCStrike15_v2_MatchmakingServerReservationResponse = 9106,\n+\tk_EMsgGCCStrike15_v2_MatchmakingGC2ClientReserve = 9107,\n+\tk_EMsgGCCStrike15_v2_MatchmakingClient2GCHello = 9109,\n+\tk_EMsgGCCStrike15_v2_MatchmakingGC2ClientHello = 9110,\n+\tk_EMsgGCCStrike15_v2_MatchmakingGC2ClientAbandon = 9112,\n+\tk_EMsgGCCStrike15_v2_MatchmakingOperator2GCBlogUpdate = 9117,\n+\tk_EMsgGCCStrike15_v2_ServerNotificationForUserPenalty = 9118,\n+\tk_EMsgGCCStrike15_v2_ClientReportPlayer = 9119,\n+\tk_EMsgGCCStrike15_v2_ClientReportServer = 9120,\n+\tk_EMsgGCCStrike15_v2_ClientCommendPlayer = 9121,\n+\tk_EMsgGCCStrike15_v2_ClientReportResponse = 9122,\n+\tk_EMsgGCCStrike15_v2_ClientCommendPlayerQuery = 9123,\n+\tk_EMsgGCCStrike15_v2_ClientCommendPlayerQueryResponse = 9124,\n+\tk_EMsgGCCStrike15_v2_WatchInfoUsers = 9126,\n+\tk_EMsgGCCStrike15_v2_ClientRequestPlayersProfile = 9127,\n+\tk_EMsgGCCStrike15_v2_PlayersProfile = 9128,\n+\tk_EMsgGCCStrike15_v2_PlayerOverwatchCaseUpdate = 9131,\n+\tk_EMsgGCCStrike15_v2_PlayerOverwatchCaseAssignment = 9132,\n+\tk_EMsgGCCStrike15_v2_PlayerOverwatchCaseStatus = 9133,\n+\tk_EMsgGCCStrike15_v2_GC2ClientTextMsg = 9134,\n+\tk_EMsgGCCStrike15_v2_Client2GCTextMsg = 9135,\n+\tk_EMsgGCCStrike15_v2_MatchEndRunRewardDrops = 9136,\n+\tk_EMsgGCCStrike15_v2_MatchEndRewardDropsNotification = 9137,\n+\tk_EMsgGCCStrike15_v2_ClientRequestWatchInfoFriends2 = 9138,\n+\tk_EMsgGCCStrike15_v2_MatchList = 9139,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestCurrentLiveGames = 9140,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestRecentUserGames = 9141,\n+\tk_EMsgGCCStrike15_v2_GC2ServerReservationUpdate = 9142,\n+\tk_EMsgGCCStrike15_v2_ClientVarValueNotificationInfo = 9144,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestTournamentGames = 9146,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestFullGameInfo = 9147,\n+\tk_EMsgGCCStrike15_v2_GiftsLeaderboardRequest = 9148,\n+\tk_EMsgGCCStrike15_v2_GiftsLeaderboardResponse = 9149,\n+\tk_EMsgGCCStrike15_v2_ServerVarValueNotificationInfo = 9150,\n+\tk_EMsgGCCStrike15_v2_ClientSubmitSurveyVote = 9152,\n+\tk_EMsgGCCStrike15_v2_Server2GCClientValidate = 9153,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestLiveGameForUser = 9154,\n+\tk_EMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockRequest = 9156,\n+\tk_EMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockResponse = 9157,\n+\tk_EMsgGCCStrike15_v2_AccountPrivacySettings = 9158,\n+\tk_EMsgGCCStrike15_v2_SetMyActivityInfo = 9159,\n+\tk_EMsgGCCStrike15_v2_MatchListRequestTournamentPredictions = 9160,\n+\tk_EMsgGCCStrike15_v2_MatchListUploadTournamentPredictions = 9161,\n+\tk_EMsgGCCStrike15_v2_DraftSummary = 9162,\n+\tk_EMsgGCCStrike15_v2_ClientRequestJoinFriendData = 9163,\n+\tk_EMsgGCCStrike15_v2_ClientRequestJoinServerData = 9164,\n+\tk_EMsgGCCStrike15_v2_GC2ClientTournamentInfo = 9167,\n+\tk_EMsgGC_GlobalGame_Subscribe = 9168,\n+\tk_EMsgGC_GlobalGame_Unsubscribe = 9169,\n+\tk_EMsgGC_GlobalGame_Play = 9170,\n+\tk_EMsgGCCStrike15_v2_AcknowledgePenalty = 9171,\n+\tk_EMsgGCCStrike15_v2_Client2GCRequestPrestigeCoin = 9172,\n+\tk_EMsgGCCStrike15_v2_GC2ClientGlobalStats = 9173,\n+\tk_EMsgGCCStrike15_v2_Client2GCStreamUnlock = 9174,\n+\tk_EMsgGCCStrike15_v2_FantasyRequestClientData = 9175,\n+\tk_EMsgGCCStrike15_v2_FantasyUpdateClientData = 9176,\n+\tk_EMsgGCCStrike15_v2_GCToClientSteamdatagramTicket = 9177,\n+\tk_EMsgGCCStrike15_v2_ClientToGCRequestTicket = 9178,\n+\tk_EMsgGCCStrike15_v2_ClientToGCRequestElevate = 9179,\n+\tk_EMsgGCCStrike15_v2_GlobalChat = 9180,\n+\tk_EMsgGCCStrike15_v2_GlobalChat_Subscribe = 9181,\n+\tk_EMsgGCCStrike15_v2_GlobalChat_Unsubscribe = 9182,\n+\tk_EMsgGCCStrike15_v2_ClientAuthKeyCode = 9183,\n+\tk_EMsgGCCStrike15_v2_GotvSyncPacket = 9184,\n+\tk_EMsgGCCStrike15_v2_ClientPlayerDecalSign = 9185,\n+\tk_EMsgGCCStrike15_v2_ClientLogonFatalError = 9187,\n+\tk_EMsgGCCStrike15_v2_ClientPollState = 9188,\n+\tk_EMsgGCCStrike15_v2_Party_Register = 9189,\n+\tk_EMsgGCCStrike15_v2_Party_Unregister = 9190,\n+\tk_EMsgGCCStrike15_v2_Party_Search = 9191,\n+\tk_EMsgGCCStrike15_v2_Party_Invite = 9192,\n+\tk_EMsgGCCStrike15_v2_Account_RequestCoPlays = 9193,\n+\tk_EMsgGCCStrike15_v2_ClientGCRankUpdate = 9194,\n+\tk_EMsgGCCStrike15_v2_ClientRequestOffers = 9195,\n+\tk_EMsgGCCStrike15_v2_ClientAccountBalance = 9196,\n+\tk_EMsgGCCStrike15_v2_ClientPartyJoinRelay = 9197,\n+\tk_EMsgGCCStrike15_v2_ClientPartyWarning = 9198,\n+\tk_EMsgGCCStrike15_v2_SetEventFavorite = 9200,\n+\tk_EMsgGCCStrike15_v2_GetEventFavorites_Request = 9201,\n+\tk_EMsgGCCStrike15_v2_ClientPerfReport = 9202,\n+\tk_EMsgGCCStrike15_v2_GetEventFavorites_Response = 9203,\n+\tk_EMsgGCCStrike15_v2_ClientRequestSouvenir = 9204,\n+\tk_EMsgGCCStrike15_v2_GC2ClientRefuseSecureMode = 9206,\n+\tk_EMsgGCCStrike15_v2_GC2ClientRequestValidation = 9207,\n+\tk_EMsgGCCStrike15_v2_ClientRedeemMissionReward = 9209,\n+\tk_EMsgGCCStrike15_ClientDeepStats = 9210,\n+\tk_EMsgGCCStrike15_StartAgreementSessionInGame = 9211,\n+\tk_EMsgGCCStrike15_v2_GC2ClientInitSystem = 9212,\n+\tk_EMsgGCCStrike15_v2_GC2ClientInitSystem_Response = 9213,\n+\tk_EMsgGCCStrike15_v2_PrivateQueues = 9214,\n+\tk_EMsgGCCStrike15_v2_MatchListTournamentOperatorMgmt = 9215,\n+\tk_EMsgGCCStrike15_v2_BetaEnrollment = 9217,\n+\tk_EMsgGCCStrike15_v2_SetPlayerLeaderboardSafeName = 9218,\n+\tk_EMsgGCCStrike15_v2_ClientRedeemFreeReward = 9219,\n+\tk_EMsgGCCStrike15_v2_ClientNetworkConfig = 9220,\n+\tk_EMsgGCCStrike15_v2_GC2ClientNotifyXPShop = 9221,\n+\tk_EMsgGCCStrike15_v2_Client2GcAckXPShopTracks = 9222,\n+\tk_EMsgGCCStrike15_v2_MatchmakingGC2ClientSearchStats = 9223,\n+\tk_EMsgGCCStrike15_v2_PremierSeasonSummary = 9224,\n+\tk_EMsgGCCStrike15_v2_RequestRecurringMissionSchedule = 9225,\n+\tk_EMsgGCCStrike15_v2_RecurringMissionSchema = 9226,\n+\tk_EMsgGCCStrike15_v2_VolatileItemClaimReward = 9227,\n+\tk_EMsgGCCStrike15_v2_VolatileShopSubscribe = 9228,\n+\tk_EMsgGCCStrike15_v2_SetClanId = 9229,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECsgoGameEvents.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+enum ECsgoGameEvents : uint32_t\n+{\n+\tGE_PlayerAnimEventId = 450,\n+\tGE_RadioIconEventId = 451,\n+\tGE_FireBulletsId = 452,\n+\tGE_PlayerBulletHitId = 453,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECsgoSteamUserStat.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum ECsgoSteamUserStat : uint32_t\n+{\n+\tk_ECsgoSteamUserStat_XpEarnedGames = 1,\n+\tk_ECsgoSteamUserStat_MatchWinsCompetitive = 2,\n+\tk_ECsgoSteamUserStat_SurvivedDangerZone = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ECstrike15UserMessages.h",
          "status": "added",
          "additions": 81,
          "deletions": 0,
          "changes": 81,
          "patch": "@@ -0,0 +1,81 @@\n+enum ECstrike15UserMessages : uint32_t\n+{\n+\tCS_UM_VGUIMenu = 301,\n+\tCS_UM_Geiger = 302,\n+\tCS_UM_Train = 303,\n+\tCS_UM_HudText = 304,\n+\tCS_UM_SayText = 305,\n+\tCS_UM_SayText2 = 306,\n+\tCS_UM_TextMsg = 307,\n+\tCS_UM_HudMsg = 308,\n+\tCS_UM_ResetHud = 309,\n+\tCS_UM_GameTitle = 310,\n+\tCS_UM_Shake = 312,\n+\tCS_UM_Fade = 313,\n+\tCS_UM_Rumble = 314,\n+\tCS_UM_CloseCaption = 315,\n+\tCS_UM_CloseCaptionDirect = 316,\n+\tCS_UM_SendAudio = 317,\n+\tCS_UM_RawAudio = 318,\n+\tCS_UM_VoiceMask = 319,\n+\tCS_UM_RequestState = 320,\n+\tCS_UM_Damage = 321,\n+\tCS_UM_RadioText = 322,\n+\tCS_UM_HintText = 323,\n+\tCS_UM_KeyHintText = 324,\n+\tCS_UM_ProcessSpottedEntityUpdate = 325,\n+\tCS_UM_ReloadEffect = 326,\n+\tCS_UM_AdjustMoney = 327,\n+\tCS_UM_UpdateTeamMoney = 328,\n+\tCS_UM_StopSpectatorMode = 329,\n+\tCS_UM_KillCam = 330,\n+\tCS_UM_DesiredTimescale = 331,\n+\tCS_UM_CurrentTimescale = 332,\n+\tCS_UM_AchievementEvent = 333,\n+\tCS_UM_MatchEndConditions = 334,\n+\tCS_UM_DisconnectToLobby = 335,\n+\tCS_UM_PlayerStatsUpdate = 336,\n+\tCS_UM_ClientInfo = 339,\n+\tCS_UM_XRankGet = 340,\n+\tCS_UM_XRankUpd = 341,\n+\tCS_UM_CallVoteFailed = 345,\n+\tCS_UM_VoteStart = 346,\n+\tCS_UM_VotePass = 347,\n+\tCS_UM_VoteFailed = 348,\n+\tCS_UM_VoteSetup = 349,\n+\tCS_UM_ServerRankRevealAll = 350,\n+\tCS_UM_SendLastKillerDamageToClient = 351,\n+\tCS_UM_ServerRankUpdate = 352,\n+\tCS_UM_ItemPickup = 353,\n+\tCS_UM_ShowMenu = 354,\n+\tCS_UM_BarTime = 355,\n+\tCS_UM_AmmoDenied = 356,\n+\tCS_UM_MarkAchievement = 357,\n+\tCS_UM_MatchStatsUpdate = 358,\n+\tCS_UM_ItemDrop = 359,\n+\tCS_UM_SendPlayerItemDrops = 361,\n+\tCS_UM_RoundBackupFilenames = 362,\n+\tCS_UM_SendPlayerItemFound = 363,\n+\tCS_UM_ReportHit = 364,\n+\tCS_UM_XpUpdate = 365,\n+\tCS_UM_QuestProgress = 366,\n+\tCS_UM_ScoreLeaderboardData = 367,\n+\tCS_UM_PlayerDecalDigitalSignature = 368,\n+\tCS_UM_WeaponSound = 369,\n+\tCS_UM_UpdateScreenHealthBar = 370,\n+\tCS_UM_EntityOutlineHighlight = 371,\n+\tCS_UM_SSUI = 372,\n+\tCS_UM_SurvivalStats = 373,\n+\tCS_UM_DisconnectToLobby2 = 374,\n+\tCS_UM_EndOfMatchAllPlayersData = 375,\n+\tCS_UM_PostRoundDamageReport = 376,\n+\tCS_UM_RoundEndReportData = 379,\n+\tCS_UM_CurrentRoundOdds = 380,\n+\tCS_UM_DeepStats = 381,\n+\tCS_UM_ShootInfo = 383,\n+\tCS_UM_CounterStrafe = 385,\n+\tCS_UM_DamagePrediction = 386,\n+\tCS_UM_RecurringMissionSchema = 387,\n+\tCS_UM_SendPlayerLoadout = 388,\n+\tCS_UM_WeaponMagDrop = 389,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EDemoCommands.h",
          "status": "added",
          "additions": 25,
          "deletions": 0,
          "changes": 25,
          "patch": "@@ -0,0 +1,25 @@\n+enum EDemoCommands : uint32_t\n+{\n+\tDEM_Error = -1,\n+\tDEM_Stop = 0,\n+\tDEM_FileHeader = 1,\n+\tDEM_FileInfo = 2,\n+\tDEM_SyncTick = 3,\n+\tDEM_SendTables = 4,\n+\tDEM_ClassInfo = 5,\n+\tDEM_StringTables = 6,\n+\tDEM_Packet = 7,\n+\tDEM_SignonPacket = 8,\n+\tDEM_ConsoleCmd = 9,\n+\tDEM_CustomData = 10,\n+\tDEM_CustomDataCallbacks = 11,\n+\tDEM_UserCmd = 12,\n+\tDEM_FullPacket = 13,\n+\tDEM_SaveGame = 14,\n+\tDEM_SpawnGroups = 15,\n+\tDEM_AnimationData = 16,\n+\tDEM_AnimationHeader = 17,\n+\tDEM_Recovery = 18,\n+\tDEM_Max = 19,\n+\tDEM_IsCompressed = 64,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EDestructibleParts_DestroyParameterFlags.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -8,6 +8,7 @@ enum EDestructibleParts_DestroyParameterFlags : uint32_t\n \tForceDamageApply = 8,\n \tIgnoreKillEntityFlag = 16,\n \tIgnoreHealthCheck = 32,\n+\tApplyPhysicsForce = 64,\n \t// MEnumeratorIsNotAFlag\n \tDefault = 7,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCBaseClientMsg.h",
          "status": "added",
          "additions": 14,
          "deletions": 0,
          "changes": 14,
          "patch": "@@ -0,0 +1,14 @@\n+enum EGCBaseClientMsg : uint32_t\n+{\n+\tk_EMsgGCClientWelcome = 4004,\n+\tk_EMsgGCServerWelcome = 4005,\n+\tk_EMsgGCClientHello = 4006,\n+\tk_EMsgGCServerHello = 4007,\n+\tk_EMsgGCClientConnectionStatus = 4009,\n+\tk_EMsgGCServerConnectionStatus = 4010,\n+\tk_EMsgGCClientHelloPartner = 4011,\n+\tk_EMsgGCClientHelloPW = 4012,\n+\tk_EMsgGCClientHelloR2 = 4013,\n+\tk_EMsgGCClientHelloR3 = 4014,\n+\tk_EMsgGCClientHelloR4 = 4015,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCBaseMsg.h",
          "status": "added",
          "additions": 18,
          "deletions": 0,
          "changes": 18,
          "patch": "@@ -0,0 +1,18 @@\n+enum EGCBaseMsg : uint32_t\n+{\n+\tk_EMsgGCSystemMessage = 4001,\n+\tk_EMsgGCReplicateConVars = 4002,\n+\tk_EMsgGCConVarUpdated = 4003,\n+\tk_EMsgGCInQueue = 4008,\n+\tk_EMsgGCInviteToParty = 4501,\n+\tk_EMsgGCInvitationCreated = 4502,\n+\tk_EMsgGCPartyInviteResponse = 4503,\n+\tk_EMsgGCKickFromParty = 4504,\n+\tk_EMsgGCLeaveParty = 4505,\n+\tk_EMsgGCServerAvailable = 4506,\n+\tk_EMsgGCClientConnectToServer = 4507,\n+\tk_EMsgGCGameServerInfo = 4508,\n+\tk_EMsgGCError = 4509,\n+\tk_EMsgGCReplay_UploadedToYouTube = 4510,\n+\tk_EMsgGCLANServerAvailable = 4511,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCBaseProtoObjectTypes.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum EGCBaseProtoObjectTypes : uint32_t\n+{\n+\tk_EProtoObjectPartyInvite = 1001,\n+\tk_EProtoObjectLobbyInvite = 1002,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCItemCustomizationNotification.h",
          "status": "added",
          "additions": 31,
          "deletions": 0,
          "changes": 31,
          "patch": "@@ -0,0 +1,31 @@\n+enum EGCItemCustomizationNotification : uint32_t\n+{\n+\tk_EGCItemCustomizationNotification_NameItem = 1006,\n+\tk_EGCItemCustomizationNotification_UnlockCrate = 1007,\n+\tk_EGCItemCustomizationNotification_XRayItemReveal = 1008,\n+\tk_EGCItemCustomizationNotification_XRayItemClaim = 1009,\n+\tk_EGCItemCustomizationNotification_CasketTooFull = 1011,\n+\tk_EGCItemCustomizationNotification_CasketContents = 1012,\n+\tk_EGCItemCustomizationNotification_CasketAdded = 1013,\n+\tk_EGCItemCustomizationNotification_CasketRemoved = 1014,\n+\tk_EGCItemCustomizationNotification_CasketInvFull = 1015,\n+\tk_EGCItemCustomizationNotification_NameBaseItem = 1019,\n+\tk_EGCItemCustomizationNotification_RemoveItemName = 1030,\n+\tk_EGCItemCustomizationNotification_RemoveSticker = 1053,\n+\tk_EGCItemCustomizationNotification_ExtractSticker = 1054,\n+\tk_EGCItemCustomizationNotification_EncapsulateSticker = 1055,\n+\tk_EGCItemCustomizationNotification_ApplySticker = 1086,\n+\tk_EGCItemCustomizationNotification_StatTrakSwap = 1088,\n+\tk_EGCItemCustomizationNotification_RemovePatch = 1089,\n+\tk_EGCItemCustomizationNotification_ApplyPatch = 1090,\n+\tk_EGCItemCustomizationNotification_ApplyKeychain = 1091,\n+\tk_EGCItemCustomizationNotification_RemoveKeychain = 1092,\n+\tk_EGCItemCustomizationNotification_ActivateFanToken = 9178,\n+\tk_EGCItemCustomizationNotification_ActivateOperationCoin = 9179,\n+\tk_EGCItemCustomizationNotification_GraffitiUnseal = 9185,\n+\tk_EGCItemCustomizationNotification_GenerateSouvenir = 9204,\n+\tk_EGCItemCustomizationNotification_ClientRedeemMissionReward = 9209,\n+\tk_EGCItemCustomizationNotification_ClientRedeemFreeReward = 9219,\n+\tk_EGCItemCustomizationNotification_XpShopUseTicket = 9221,\n+\tk_EGCItemCustomizationNotification_XpShopAckTracks = 9222,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCItemMsg.h",
          "status": "added",
          "additions": 150,
          "deletions": 0,
          "changes": 150,
          "patch": "@@ -0,0 +1,150 @@\n+enum EGCItemMsg : uint32_t\n+{\n+\tk_EMsgGCBase = 1000,\n+\tk_EMsgGCSetItemPosition = 1001,\n+\tk_EMsgGCCraft = 1002,\n+\tk_EMsgGCCraftResponse = 1003,\n+\tk_EMsgGCDelete = 1004,\n+\tk_EMsgGCVerifyCacheSubscription = 1005,\n+\tk_EMsgGCNameItem = 1006,\n+\tk_EMsgGCUnlockCrate_DEPRECATED = 1007,\n+\tk_EMsgGCUnlockCrateResponse = 1008,\n+\tk_EMsgGCPaintItem = 1009,\n+\tk_EMsgGCPaintItemResponse = 1010,\n+\tk_EMsgGCGoldenWrenchBroadcast = 1011,\n+\tk_EMsgGCMOTDRequest = 1012,\n+\tk_EMsgGCMOTDRequestResponse = 1013,\n+\tk_EMsgGCAddItemToSocket_DEPRECATED = 1014,\n+\tk_EMsgGCAddItemToSocketResponse_DEPRECATED = 1015,\n+\tk_EMsgGCAddSocketToBaseItem_DEPRECATED = 1016,\n+\tk_EMsgGCAddSocketToItem_DEPRECATED = 1017,\n+\tk_EMsgGCAddSocketToItemResponse_DEPRECATED = 1018,\n+\tk_EMsgGCNameBaseItem = 1019,\n+\tk_EMsgGCNameBaseItemResponse = 1020,\n+\tk_EMsgGCRemoveSocketItem_DEPRECATED = 1021,\n+\tk_EMsgGCRemoveSocketItemResponse_DEPRECATED = 1022,\n+\tk_EMsgGCCustomizeItemTexture = 1023,\n+\tk_EMsgGCCustomizeItemTextureResponse = 1024,\n+\tk_EMsgGCUseItemRequest = 1025,\n+\tk_EMsgGCUseItemResponse = 1026,\n+\tk_EMsgGCGiftedItems_DEPRECATED = 1027,\n+\tk_EMsgGCRemoveItemName = 1030,\n+\tk_EMsgGCRemoveItemPaint = 1031,\n+\tk_EMsgGCGiftWrapItem = 1032,\n+\tk_EMsgGCGiftWrapItemResponse = 1033,\n+\tk_EMsgGCDeliverGift = 1034,\n+\tk_EMsgGCDeliverGiftResponseGiver = 1035,\n+\tk_EMsgGCDeliverGiftResponseReceiver = 1036,\n+\tk_EMsgGCUnwrapGiftRequest = 1037,\n+\tk_EMsgGCUnwrapGiftResponse = 1038,\n+\tk_EMsgGCSetItemStyle = 1039,\n+\tk_EMsgGCUsedClaimCodeItem = 1040,\n+\tk_EMsgGCSortItems = 1041,\n+\tk_EMsgGC_RevolvingLootList_DEPRECATED = 1042,\n+\tk_EMsgGCLookupAccount = 1043,\n+\tk_EMsgGCLookupAccountResponse = 1044,\n+\tk_EMsgGCLookupAccountName = 1045,\n+\tk_EMsgGCLookupAccountNameResponse = 1046,\n+\tk_EMsgGCUpdateItemSchema = 1049,\n+\tk_EMsgGCRemoveCustomTexture = 1051,\n+\tk_EMsgGCRemoveCustomTextureResponse = 1052,\n+\tk_EMsgGCRemoveMakersMark = 1053,\n+\tk_EMsgGCRemoveMakersMarkResponse = 1054,\n+\tk_EMsgGCRemoveUniqueCraftIndex = 1055,\n+\tk_EMsgGCRemoveUniqueCraftIndexResponse = 1056,\n+\tk_EMsgGCSaxxyBroadcast = 1057,\n+\tk_EMsgGCBackpackSortFinished = 1058,\n+\tk_EMsgGCCollectItem = 1061,\n+\tk_EMsgGCItemAcknowledged__DEPRECATED = 1062,\n+\tk_EMsgGC_ReportAbuse = 1065,\n+\tk_EMsgGC_ReportAbuseResponse = 1066,\n+\tk_EMsgGCNameItemNotification = 1068,\n+\tk_EMsgGCApplyConsumableEffects = 1069,\n+\tk_EMsgGCConsumableExhausted = 1070,\n+\tk_EMsgGCShowItemsPickedUp = 1071,\n+\tk_EMsgGCClientDisplayNotification = 1072,\n+\tk_EMsgGCApplyStrangePart = 1073,\n+\tk_EMsgGC_IncrementKillCountAttribute = 1074,\n+\tk_EMsgGC_IncrementKillCountResponse = 1075,\n+\tk_EMsgGCApplyPennantUpgrade = 1076,\n+\tk_EMsgGCSetItemPositions = 1077,\n+\tk_EMsgGCApplyEggEssence = 1078,\n+\tk_EMsgGCNameEggEssenceResponse = 1079,\n+\tk_EMsgGCPaintKitItem = 1080,\n+\tk_EMsgGCPaintKitBaseItem = 1081,\n+\tk_EMsgGCPaintKitItemResponse = 1082,\n+\tk_EMsgGCGiftedItems = 1083,\n+\tk_EMsgGCUnlockItemStyle = 1084,\n+\tk_EMsgGCUnlockItemStyleResponse = 1085,\n+\tk_EMsgGCApplySticker = 1086,\n+\tk_EMsgGCItemAcknowledged = 1087,\n+\tk_EMsgGCStatTrakSwap = 1088,\n+\tk_EMsgGCUserTrackTimePlayedConsecutively = 1089,\n+\tk_EMsgGCItemCustomizationNotification = 1090,\n+\tk_EMsgGCModifyItemAttribute = 1091,\n+\tk_EMsgGCCasketItemAdd = 1092,\n+\tk_EMsgGCCasketItemExtract = 1093,\n+\tk_EMsgGCCasketItemLoadContents = 1094,\n+\tk_EMsgGCTradingBase = 1500,\n+\tk_EMsgGCTrading_InitiateTradeRequest = 1501,\n+\tk_EMsgGCTrading_InitiateTradeResponse = 1502,\n+\tk_EMsgGCTrading_StartSession = 1503,\n+\tk_EMsgGCTrading_SetItem = 1504,\n+\tk_EMsgGCTrading_RemoveItem = 1505,\n+\tk_EMsgGCTrading_UpdateTradeInfo = 1506,\n+\tk_EMsgGCTrading_SetReadiness = 1507,\n+\tk_EMsgGCTrading_ReadinessResponse = 1508,\n+\tk_EMsgGCTrading_SessionClosed = 1509,\n+\tk_EMsgGCTrading_CancelSession = 1510,\n+\tk_EMsgGCTrading_TradeChatMsg = 1511,\n+\tk_EMsgGCTrading_ConfirmOffer = 1512,\n+\tk_EMsgGCTrading_TradeTypingChatMsg = 1513,\n+\tk_EMsgGCServerBrowser_FavoriteServer = 1601,\n+\tk_EMsgGCServerBrowser_BlacklistServer = 1602,\n+\tk_EMsgGCServerRentalsBase = 1700,\n+\tk_EMsgGCItemPreviewCheckStatus = 1701,\n+\tk_EMsgGCItemPreviewStatusResponse = 1702,\n+\tk_EMsgGCItemPreviewRequest = 1703,\n+\tk_EMsgGCItemPreviewRequestResponse = 1704,\n+\tk_EMsgGCItemPreviewExpire = 1705,\n+\tk_EMsgGCItemPreviewExpireNotification = 1706,\n+\tk_EMsgGCItemPreviewItemBoughtNotification = 1707,\n+\tk_EMsgGCDev_NewItemRequest = 2001,\n+\tk_EMsgGCDev_NewItemRequestResponse = 2002,\n+\tk_EMsgGCDev_PaintKitDropItem = 2003,\n+\tk_EMsgGCDev_SchemaReservationRequest = 2004,\n+\tk_EMsgGCStoreGetUserData = 2500,\n+\tk_EMsgGCStoreGetUserDataResponse = 2501,\n+\tk_EMsgGCStorePurchaseInit_DEPRECATED = 2502,\n+\tk_EMsgGCStorePurchaseInitResponse_DEPRECATED = 2503,\n+\tk_EMsgGCStorePurchaseFinalize = 2504,\n+\tk_EMsgGCStorePurchaseFinalizeResponse = 2505,\n+\tk_EMsgGCStorePurchaseCancel = 2506,\n+\tk_EMsgGCStorePurchaseCancelResponse = 2507,\n+\tk_EMsgGCStorePurchaseQueryTxn = 2508,\n+\tk_EMsgGCStorePurchaseQueryTxnResponse = 2509,\n+\tk_EMsgGCStorePurchaseInit = 2510,\n+\tk_EMsgGCStorePurchaseInitResponse = 2511,\n+\tk_EMsgGCBannedWordListRequest = 2512,\n+\tk_EMsgGCBannedWordListResponse = 2513,\n+\tk_EMsgGCToGCBannedWordListBroadcast = 2514,\n+\tk_EMsgGCToGCBannedWordListUpdated = 2515,\n+\tk_EMsgGCToGCDirtySDOCache = 2516,\n+\tk_EMsgGCToGCDirtyMultipleSDOCache = 2517,\n+\tk_EMsgGCToGCUpdateSQLKeyValue = 2518,\n+\tk_EMsgGCToGCIsTrustedServer = 2519,\n+\tk_EMsgGCToGCIsTrustedServerResponse = 2520,\n+\tk_EMsgGCToGCBroadcastConsoleCommand = 2521,\n+\tk_EMsgGCServerVersionUpdated = 2522,\n+\tk_EMsgGCToGCWebAPIAccountChanged = 2524,\n+\tk_EMsgGCRequestAnnouncements = 2525,\n+\tk_EMsgGCRequestAnnouncementsResponse = 2526,\n+\tk_EMsgGCRequestPassportItemGrant = 2527,\n+\tk_EMsgGCClientVersionUpdated = 2528,\n+\tk_EMsgGCRecurringSubscriptionStatus = 2530,\n+\tk_EMsgGCAdjustEquipSlotsManual = 2531,\n+\tk_EMsgGCAdjustEquipSlotsShuffle = 2532,\n+\tk_EMsgGCOpenCrate = 2534,\n+\tk_EMsgGCAcknowledgeRentalExpiration = 2535,\n+\tk_EMsgGCVolatileItemLoadContents = 2536,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCMsgResponse.h",
          "status": "added",
          "additions": 14,
          "deletions": 0,
          "changes": 14,
          "patch": "@@ -0,0 +1,14 @@\n+enum EGCMsgResponse : uint32_t\n+{\n+\tk_EGCMsgResponseOK = 0,\n+\tk_EGCMsgResponseDenied = 1,\n+\tk_EGCMsgResponseServerError = 2,\n+\tk_EGCMsgResponseTimeout = 3,\n+\tk_EGCMsgResponseInvalid = 4,\n+\tk_EGCMsgResponseNoMatch = 5,\n+\tk_EGCMsgResponseUnknownError = 6,\n+\tk_EGCMsgResponseNotLoggedOn = 7,\n+\tk_EGCMsgFailedToCreate = 8,\n+\tk_EGCMsgLimitExceeded = 9,\n+\tk_EGCMsgCommitUnfinalized = 10,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCSystemMsg.h",
          "status": "added",
          "additions": 95,
          "deletions": 0,
          "changes": 95,
          "patch": "@@ -0,0 +1,95 @@\n+enum EGCSystemMsg : uint32_t\n+{\n+\tk_EGCMsgInvalid = 0,\n+\tk_EGCMsgMulti = 1,\n+\tk_EGCMsgGenericReply = 10,\n+\tk_EGCMsgSystemBase = 50,\n+\tk_EGCMsgAchievementAwarded = 51,\n+\tk_EGCMsgConCommand = 52,\n+\tk_EGCMsgStartPlaying = 53,\n+\tk_EGCMsgStopPlaying = 54,\n+\tk_EGCMsgStartGameserver = 55,\n+\tk_EGCMsgStopGameserver = 56,\n+\tk_EGCMsgWGRequest = 57,\n+\tk_EGCMsgWGResponse = 58,\n+\tk_EGCMsgGetUserGameStatsSchema = 59,\n+\tk_EGCMsgGetUserGameStatsSchemaResponse = 60,\n+\tk_EGCMsgGetUserStatsDEPRECATED = 61,\n+\tk_EGCMsgGetUserStatsResponse = 62,\n+\tk_EGCMsgAppInfoUpdated = 63,\n+\tk_EGCMsgValidateSession = 64,\n+\tk_EGCMsgValidateSessionResponse = 65,\n+\tk_EGCMsgLookupAccountFromInput = 66,\n+\tk_EGCMsgSendHTTPRequest = 67,\n+\tk_EGCMsgSendHTTPRequestResponse = 68,\n+\tk_EGCMsgPreTestSetup = 69,\n+\tk_EGCMsgRecordSupportAction = 70,\n+\tk_EGCMsgGetAccountDetails_DEPRECATED = 71,\n+\tk_EGCMsgReceiveInterAppMessage = 73,\n+\tk_EGCMsgFindAccounts = 74,\n+\tk_EGCMsgPostAlert = 75,\n+\tk_EGCMsgGetLicenses = 76,\n+\tk_EGCMsgGetUserStats = 77,\n+\tk_EGCMsgGetCommands = 78,\n+\tk_EGCMsgGetCommandsResponse = 79,\n+\tk_EGCMsgAddFreeLicense = 80,\n+\tk_EGCMsgAddFreeLicenseResponse = 81,\n+\tk_EGCMsgGetIPLocation = 82,\n+\tk_EGCMsgGetIPLocationResponse = 83,\n+\tk_EGCMsgSystemStatsSchema = 84,\n+\tk_EGCMsgGetSystemStats = 85,\n+\tk_EGCMsgGetSystemStatsResponse = 86,\n+\tk_EGCMsgSendEmail = 87,\n+\tk_EGCMsgSendEmailResponse = 88,\n+\tk_EGCMsgGetEmailTemplate = 89,\n+\tk_EGCMsgGetEmailTemplateResponse = 90,\n+\tk_EGCMsgGrantGuestPass = 91,\n+\tk_EGCMsgGrantGuestPassResponse = 92,\n+\tk_EGCMsgGetAccountDetails = 93,\n+\tk_EGCMsgGetAccountDetailsResponse = 94,\n+\tk_EGCMsgGetPersonaNames = 95,\n+\tk_EGCMsgGetPersonaNamesResponse = 96,\n+\tk_EGCMsgMultiplexMsg = 97,\n+\tk_EGCMsgMultiplexMsgResponse = 98,\n+\tk_EGCMsgWebAPIRegisterInterfaces = 101,\n+\tk_EGCMsgWebAPIJobRequest = 102,\n+\tk_EGCMsgWebAPIJobRequestHttpResponse = 104,\n+\tk_EGCMsgWebAPIJobRequestForwardResponse = 105,\n+\tk_EGCMsgMemCachedGet = 200,\n+\tk_EGCMsgMemCachedGetResponse = 201,\n+\tk_EGCMsgMemCachedSet = 202,\n+\tk_EGCMsgMemCachedDelete = 203,\n+\tk_EGCMsgMemCachedStats = 204,\n+\tk_EGCMsgMemCachedStatsResponse = 205,\n+\tk_EGCMsgMasterSetDirectory = 220,\n+\tk_EGCMsgMasterSetDirectoryResponse = 221,\n+\tk_EGCMsgMasterSetWebAPIRouting = 222,\n+\tk_EGCMsgMasterSetWebAPIRoutingResponse = 223,\n+\tk_EGCMsgMasterSetClientMsgRouting = 224,\n+\tk_EGCMsgMasterSetClientMsgRoutingResponse = 225,\n+\tk_EGCMsgSetOptions = 226,\n+\tk_EGCMsgSetOptionsResponse = 227,\n+\tk_EGCMsgSystemBase2 = 500,\n+\tk_EGCMsgGetPurchaseTrustStatus = 501,\n+\tk_EGCMsgGetPurchaseTrustStatusResponse = 502,\n+\tk_EGCMsgUpdateSession = 503,\n+\tk_EGCMsgGCAccountVacStatusChange = 504,\n+\tk_EGCMsgCheckFriendship = 505,\n+\tk_EGCMsgCheckFriendshipResponse = 506,\n+\tk_EGCMsgGetPartnerAccountLink = 507,\n+\tk_EGCMsgGetPartnerAccountLinkResponse = 508,\n+\tk_EGCMsgDPPartnerMicroTxns = 512,\n+\tk_EGCMsgDPPartnerMicroTxnsResponse = 513,\n+\tk_EGCMsgVacVerificationChange = 518,\n+\tk_EGCMsgAccountPhoneNumberChange = 519,\n+\tk_EGCMsgInviteUserToLobby = 523,\n+\tk_EGCMsgGetGamePersonalDataCategoriesRequest = 524,\n+\tk_EGCMsgGetGamePersonalDataCategoriesResponse = 525,\n+\tk_EGCMsgGetGamePersonalDataEntriesRequest = 526,\n+\tk_EGCMsgGetGamePersonalDataEntriesResponse = 527,\n+\tk_EGCMsgTerminateGamePersonalDataEntriesRequest = 528,\n+\tk_EGCMsgTerminateGamePersonalDataEntriesResponse = 529,\n+\tk_EGCMsgRecurringSubscriptionStatusChange = 530,\n+\tk_EGCMsgDirectServiceMethod = 531,\n+\tk_EGCMsgDirectServiceMethodResponse = 532,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EGCToGCMsg.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+enum EGCToGCMsg : uint32_t\n+{\n+\tk_EGCToGCMsgMasterAck = 150,\n+\tk_EGCToGCMsgMasterAckResponse = 151,\n+\tk_EGCToGCMsgRouted = 152,\n+\tk_EGCToGCMsgRoutedReply = 153,\n+\tk_EMsgUpdateSessionIP = 154,\n+\tk_EMsgRequestSessionIP = 155,\n+\tk_EMsgRequestSessionIPResponse = 156,\n+\tk_EGCToGCMsgMasterStartupComplete = 157,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EHapticPulseType.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum EHapticPulseType : uint32_t\n+{\n+\tVR_HAND_HAPTIC_PULSE_LIGHT = 0,\n+\tVR_HAND_HAPTIC_PULSE_MEDIUM = 1,\n+\tVR_HAND_HAPTIC_PULSE_STRONG = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EHitGroup.h",
          "status": "added",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -0,0 +1,13 @@\n+enum EHitGroup : uint32_t\n+{\n+\tEHG_Generic = 0,\n+\tEHG_Head = 1,\n+\tEHG_Chest = 2,\n+\tEHG_Stomach = 3,\n+\tEHG_LeftArm = 4,\n+\tEHG_RightArm = 5,\n+\tEHG_LeftLeg = 6,\n+\tEHG_RightLeg = 7,\n+\tEHG_Gear = 8,\n+\tEHG_Miss = 9,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EInitSystemResult.h",
          "status": "added",
          "additions": 12,
          "deletions": 0,
          "changes": 12,
          "patch": "@@ -0,0 +1,12 @@\n+enum EInitSystemResult : uint32_t\n+{\n+\tk_EInitSystemResult_Invalid = 0,\n+\tk_EInitSystemResult_Success = 1,\n+\tk_EInitSystemResult_None = 2,\n+\tk_EInitSystemResult_NotFound = 3,\n+\tk_EInitSystemResult_Existing = 4,\n+\tk_EInitSystemResult_FailedOpen = 5,\n+\tk_EInitSystemResult_Mismatch = 6,\n+\tk_EInitSystemResult_FailedInit = 7,\n+\tk_EInitSystemResult_Max = 8,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ENPCBehaviorOverride_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -1,5 +0,0 @@\n-enum ENPCBehaviorOverride_t : uint32_t\n-{\n-\teKeepExisting = 0,\n-\teTakeOver = 1,\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/ENetworkDisconnectionReason.h",
          "status": "added",
          "additions": 124,
          "deletions": 0,
          "changes": 124,
          "patch": "@@ -0,0 +1,124 @@\n+enum ENetworkDisconnectionReason : uint32_t\n+{\n+\tNETWORK_DISCONNECT_INVALID = 0,\n+\tNETWORK_DISCONNECT_SHUTDOWN = 1,\n+\tNETWORK_DISCONNECT_DISCONNECT_BY_USER = 2,\n+\tNETWORK_DISCONNECT_DISCONNECT_BY_SERVER = 3,\n+\tNETWORK_DISCONNECT_LOST = 4,\n+\tNETWORK_DISCONNECT_OVERFLOW = 5,\n+\tNETWORK_DISCONNECT_STEAM_BANNED = 6,\n+\tNETWORK_DISCONNECT_STEAM_INUSE = 7,\n+\tNETWORK_DISCONNECT_STEAM_TICKET = 8,\n+\tNETWORK_DISCONNECT_STEAM_LOGON = 9,\n+\tNETWORK_DISCONNECT_STEAM_AUTHCANCELLED = 10,\n+\tNETWORK_DISCONNECT_STEAM_AUTHALREADYUSED = 11,\n+\tNETWORK_DISCONNECT_STEAM_AUTHINVALID = 12,\n+\tNETWORK_DISCONNECT_STEAM_VACBANSTATE = 13,\n+\tNETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE = 14,\n+\tNETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT = 15,\n+\tNETWORK_DISCONNECT_STEAM_DROPPED = 16,\n+\tNETWORK_DISCONNECT_STEAM_OWNERSHIP = 17,\n+\tNETWORK_DISCONNECT_SERVERINFO_OVERFLOW = 18,\n+\tNETWORK_DISCONNECT_TICKMSG_OVERFLOW = 19,\n+\tNETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW = 20,\n+\tNETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW = 21,\n+\tNETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW = 22,\n+\tNETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW = 23,\n+\tNETWORK_DISCONNECT_SNAPSHOTOVERFLOW = 24,\n+\tNETWORK_DISCONNECT_SNAPSHOTERROR = 25,\n+\tNETWORK_DISCONNECT_RELIABLEOVERFLOW = 26,\n+\tNETWORK_DISCONNECT_BADDELTATICK = 27,\n+\tNETWORK_DISCONNECT_NOMORESPLITS = 28,\n+\tNETWORK_DISCONNECT_TIMEDOUT = 29,\n+\tNETWORK_DISCONNECT_DISCONNECTED = 30,\n+\tNETWORK_DISCONNECT_LEAVINGSPLIT = 31,\n+\tNETWORK_DISCONNECT_DIFFERENTCLASSTABLES = 32,\n+\tNETWORK_DISCONNECT_BADRELAYPASSWORD = 33,\n+\tNETWORK_DISCONNECT_BADSPECTATORPASSWORD = 34,\n+\tNETWORK_DISCONNECT_HLTVRESTRICTED = 35,\n+\tNETWORK_DISCONNECT_NOSPECTATORS = 36,\n+\tNETWORK_DISCONNECT_HLTVUNAVAILABLE = 37,\n+\tNETWORK_DISCONNECT_HLTVSTOP = 38,\n+\tNETWORK_DISCONNECT_KICKED = 39,\n+\tNETWORK_DISCONNECT_BANADDED = 40,\n+\tNETWORK_DISCONNECT_KICKBANADDED = 41,\n+\tNETWORK_DISCONNECT_HLTVDIRECT = 42,\n+\tNETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA = 43,\n+\tNETWORK_DISCONNECT_PURESERVER_MISMATCH = 44,\n+\tNETWORK_DISCONNECT_USERCMD = 45,\n+\tNETWORK_DISCONNECT_REJECTED_BY_GAME = 46,\n+\tNETWORK_DISCONNECT_MESSAGE_PARSE_ERROR = 47,\n+\tNETWORK_DISCONNECT_INVALID_MESSAGE_ERROR = 48,\n+\tNETWORK_DISCONNECT_BAD_SERVER_PASSWORD = 49,\n+\tNETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION = 50,\n+\tNETWORK_DISCONNECT_CONNECTION_FAILURE = 51,\n+\tNETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS = 52,\n+\tNETWORK_DISCONNECT_RECONNECTION = 53,\n+\tNETWORK_DISCONNECT_LOOPSHUTDOWN = 54,\n+\tNETWORK_DISCONNECT_LOOPDEACTIVATE = 55,\n+\tNETWORK_DISCONNECT_HOST_ENDGAME = 56,\n+\tNETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE = 57,\n+\tNETWORK_DISCONNECT_CREATE_SERVER_FAILED = 58,\n+\tNETWORK_DISCONNECT_EXITING = 59,\n+\tNETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE = 60,\n+\tNETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY = 61,\n+\tNETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL = 62,\n+\tNETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP = 63,\n+\tNETWORK_DISCONNECT_CLIENT_NO_MAP = 64,\n+\tNETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP = 65,\n+\tNETWORK_DISCONNECT_SERVER_REQUIRES_STEAM = 66,\n+\tNETWORK_DISCONNECT_STEAM_DENY_MISC = 67,\n+\tNETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 68,\n+\tNETWORK_DISCONNECT_SERVER_SHUTDOWN = 69,\n+\tNETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 71,\n+\tNETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 72,\n+\tNETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 73,\n+\tNETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS = 74,\n+\tNETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY = 75,\n+\tNETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG = 76,\n+\tNETWORK_DISCONNECT_LOCALPROBLEM_OTHER = 77,\n+\tNETWORK_DISCONNECT_REMOTE_TIMEOUT = 79,\n+\tNETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING = 80,\n+\tNETWORK_DISCONNECT_REMOTE_OTHER = 81,\n+\tNETWORK_DISCONNECT_REMOTE_BADCRYPT = 82,\n+\tNETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED = 83,\n+\tNETWORK_DISCONNECT_UNUSUAL = 84,\n+\tNETWORK_DISCONNECT_INTERNAL_ERROR = 85,\n+\tNETWORK_DISCONNECT_REJECT_BADCHALLENGE = 128,\n+\tNETWORK_DISCONNECT_REJECT_NOLOBBY = 129,\n+\tNETWORK_DISCONNECT_REJECT_BACKGROUND_MAP = 130,\n+\tNETWORK_DISCONNECT_REJECT_SINGLE_PLAYER = 131,\n+\tNETWORK_DISCONNECT_REJECT_HIDDEN_GAME = 132,\n+\tNETWORK_DISCONNECT_REJECT_LANRESTRICT = 133,\n+\tNETWORK_DISCONNECT_REJECT_BADPASSWORD = 134,\n+\tNETWORK_DISCONNECT_REJECT_SERVERFULL = 135,\n+\tNETWORK_DISCONNECT_REJECT_INVALIDRESERVATION = 136,\n+\tNETWORK_DISCONNECT_REJECT_FAILEDCHANNEL = 137,\n+\tNETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY = 138,\n+\tNETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY = 139,\n+\tNETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH = 140,\n+\tNETWORK_DISCONNECT_REJECT_OLDPROTOCOL = 141,\n+\tNETWORK_DISCONNECT_REJECT_NEWPROTOCOL = 142,\n+\tNETWORK_DISCONNECT_REJECT_INVALIDCONNECTION = 143,\n+\tNETWORK_DISCONNECT_REJECT_INVALIDCERTLEN = 144,\n+\tNETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN = 145,\n+\tNETWORK_DISCONNECT_REJECT_STEAM = 146,\n+\tNETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 147,\n+\tNETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 148,\n+\tNETWORK_DISCONNECT_REJECT_BANNED = 149,\n+\tNETWORK_DISCONNECT_KICKED_TEAMKILLING = 150,\n+\tNETWORK_DISCONNECT_KICKED_TK_START = 151,\n+\tNETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 152,\n+\tNETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 153,\n+\tNETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 154,\n+\tNETWORK_DISCONNECT_KICKED_TEAMHURTING = 155,\n+\tNETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 156,\n+\tNETWORK_DISCONNECT_KICKED_VOTEDOFF = 157,\n+\tNETWORK_DISCONNECT_KICKED_IDLE = 158,\n+\tNETWORK_DISCONNECT_KICKED_SUICIDE = 159,\n+\tNETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 160,\n+\tNETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 161,\n+\tNETWORK_DISCONNECT_KICKED_INPUTAUTOMATION = 162,\n+\tNETWORK_DISCONNECT_KICKED_VACNETABNORMALBEHAVIOR = 163,\n+\tNETWORK_DISCONNECT_KICKED_INSECURECLIENT = 164,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EProtoDebugVisiblity.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum EProtoDebugVisiblity : uint32_t\n+{\n+\tk_EProtoDebugVisibility_Always = 0,\n+\tk_EProtoDebugVisibility_Server = 70,\n+\tk_EProtoDebugVisibility_ValveServer = 80,\n+\tk_EProtoDebugVisibility_GC = 90,\n+\tk_EProtoDebugVisibility_Never = 100,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EQueryCvarValueStatus.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+enum EQueryCvarValueStatus : uint32_t\n+{\n+\teQueryCvarValueStatus_ValueIntact = 0,\n+\teQueryCvarValueStatus_CvarNotFound = 1,\n+\teQueryCvarValueStatus_NotACvar = 2,\n+\teQueryCvarValueStatus_CvarProtected = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ESOMsg.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+enum ESOMsg : uint32_t\n+{\n+\tk_ESOMsg_Create = 21,\n+\tk_ESOMsg_Update = 22,\n+\tk_ESOMsg_Destroy = 23,\n+\tk_ESOMsg_CacheSubscribed = 24,\n+\tk_ESOMsg_CacheUnsubscribed = 25,\n+\tk_ESOMsg_UpdateMultiple = 26,\n+\tk_ESOMsg_CacheSubscriptionCheck = 27,\n+\tk_ESOMsg_CacheSubscriptionRefresh = 28,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ESceneRequestState_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 7,
          "changes": 7,
          "patch": "@@ -1,7 +0,0 @@\n-enum ESceneRequestState_t : uint32_t\n-{\n-\tINACTIVE = 0,\n-\tACTIVE = 1,\n-\tFINISHED = 2,\n-\tFAILED = 3,\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/ESource2PlayStatsFieldType.h",
          "status": "added",
          "additions": 21,
          "deletions": 0,
          "changes": 21,
          "patch": "@@ -0,0 +1,21 @@\n+enum ESource2PlayStatsFieldType : uint32_t\n+{\n+\tSource2PlayStats_Invalid = 0,\n+\tSource2PlayStats_UInt64 = 1,\n+\tSource2PlayStats_UInt32 = 2,\n+\tSource2PlayStats_UInt16 = 3,\n+\tSource2PlayStats_UInt8 = 4,\n+\tSource2PlayStats_Int64 = 5,\n+\tSource2PlayStats_Int32 = 6,\n+\tSource2PlayStats_Int16 = 7,\n+\tSource2PlayStats_Int8 = 8,\n+\tSource2PlayStats_Float64 = 9,\n+\tSource2PlayStats_Float32 = 10,\n+\tSource2PlayStats_Bool = 11,\n+\tSource2PlayStats_String = 12,\n+\tSource2PlayStats_LowCardinalityString = 13,\n+\tSource2PlayStats_UTCDateTime = 14,\n+\tSource2PlayStats_SteamIDTrustBucket = 15,\n+\tSource2PlayStats_SteamIDTrustBucketMin = 16,\n+\tSource2PlayStats_SteamID = 17,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ESplitScreenMessageType.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum ESplitScreenMessageType : uint32_t\n+{\n+\tMSG_SPLITSCREEN_ADDUSER = 0,\n+\tMSG_SPLITSCREEN_REMOVEUSER = 1,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ETEProtobufIds.h",
          "status": "added",
          "additions": 26,
          "deletions": 0,
          "changes": 26,
          "patch": "@@ -0,0 +1,26 @@\n+enum ETEProtobufIds : uint32_t\n+{\n+\tTE_EffectDispatchId = 400,\n+\tTE_ArmorRicochetId = 401,\n+\tTE_BeamEntPointId = 402,\n+\tTE_BeamEntsId = 403,\n+\tTE_BeamPointsId = 404,\n+\tTE_BeamRingId = 405,\n+\tTE_BubblesId = 408,\n+\tTE_BubbleTrailId = 409,\n+\tTE_DecalId = 410,\n+\tTE_WorldDecalId = 411,\n+\tTE_EnergySplashId = 412,\n+\tTE_FizzId = 413,\n+\tTE_ShatterSurfaceId = 414,\n+\tTE_GlowSpriteId = 415,\n+\tTE_ImpactId = 416,\n+\tTE_MuzzleFlashId = 417,\n+\tTE_BloodStreamId = 418,\n+\tTE_ExplosionId = 419,\n+\tTE_DustId = 420,\n+\tTE_LargeFunnelId = 421,\n+\tTE_SparksId = 422,\n+\tTE_PhysicsPropId = 423,\n+\tTE_SmokeId = 426,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ETeam.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+enum ETeam : uint32_t\n+{\n+\tET_Unknown = 0,\n+\tET_Spectator = 1,\n+\tET_Terrorist = 2,\n+\tET_CT = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EUnlockStyle.h",
          "status": "added",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -0,0 +1,9 @@\n+enum EUnlockStyle : uint32_t\n+{\n+\tk_UnlockStyle_Succeeded = 0,\n+\tk_UnlockStyle_Failed_PreReq = 1,\n+\tk_UnlockStyle_Failed_CantAfford = 2,\n+\tk_UnlockStyle_Failed_CantCommit = 3,\n+\tk_UnlockStyle_Failed_CantLockCache = 4,\n+\tk_UnlockStyle_Failed_CantAffordAttrib = 5,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EWeaponType.h",
          "status": "added",
          "additions": 15,
          "deletions": 0,
          "changes": 15,
          "patch": "@@ -0,0 +1,15 @@\n+enum EWeaponType : uint32_t\n+{\n+\tEWT_Knife = 0,\n+\tEWT_Pistol = 1,\n+\tEWT_SubMachineGun = 2,\n+\tEWT_Rifle = 3,\n+\tEWT_Shotgun = 4,\n+\tEWT_SniperRifle = 5,\n+\tEWT_MachineGun = 6,\n+\tEWT_C4 = 7,\n+\tEWT_Grenade = 8,\n+\tEWT_Equipment = 9,\n+\tEWT_StackableItem = 10,\n+\tEWT_Unknown = 11,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EngineCountdownTimer.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = null\n class EngineCountdownTimer\n {\n \tfloat32 m_duration;"
        },
        {
          "filename": "DumpSource2/schemas/client/EntityDissolveType_t.h",
          "status": "renamed",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,4 +1,4 @@\n-enum EntityDisolveType_t : uint32_t\n+enum EntityDissolveType_t : uint32_t\n {\n \tENTITY_DISSOLVE_INVALID = -1,\n \tENTITY_DISSOLVE_NORMAL = 0,"
        },
        {
          "filename": "DumpSource2/schemas/client/EntityRenderAttribute_t.h",
          "status": "modified",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -1,3 +1,14 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"EntityRenderAttribute_t\",\n+//\t\"m_ID\": <HIDDEN FOR DIFF>,\n+//\t\"m_Values\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t]\n+//}\n class EntityRenderAttribute_t\n {\n \tCUtlStringToken m_ID;"
        },
        {
          "filename": "DumpSource2/schemas/client/EventBugBugComplete_t.h",
          "status": "added",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -0,0 +1,4 @@\n+class EventBugBugComplete_t\n+{\n+\tEventBugBug_t* m_pPayload;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/EventBugBug_t.h",
          "status": "added",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -0,0 +1,3 @@\n+class EventBugBug_t\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ExternalAnimGraph_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 8,
          "changes": 8,
          "patch": "@@ -1,8 +0,0 @@\n-class ExternalAnimGraph_t\n-{\n-\tExternalAnimGraphHandle_t m_hExtGraphHandle;\n-\tCGlobalSymbol m_sExternalGraphSlotID;\n-\tCStrongHandleCopyable< InfoForResourceTypeCNmGraphDefinition > m_hGraphDefinition;\n-\tCHandle< CBaseAnimGraph > m_hExternalGraphOwner;\n-\tExternalAnimGraphInactiveBehavior_t m_nInactiveBehavior;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/GCClientLauncherType.h",
          "status": "added",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -0,0 +1,7 @@\n+enum GCClientLauncherType : uint32_t\n+{\n+\tGCClientLauncherType_DEFAULT = 0,\n+\tGCClientLauncherType_PERFECTWORLD = 1,\n+\tGCClientLauncherType_STEAMCHINA = 2,\n+\tGCClientLauncherType_SOURCE2 = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/GCConnectionStatus.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum GCConnectionStatus : uint32_t\n+{\n+\tGCConnectionStatus_HAVE_SESSION = 0,\n+\tGCConnectionStatus_GC_GOING_DOWN = 1,\n+\tGCConnectionStatus_NO_SESSION = 2,\n+\tGCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3,\n+\tGCConnectionStatus_NO_STEAM = 4,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/GCProtoBufMsgSrc.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum GCProtoBufMsgSrc : uint32_t\n+{\n+\tGCProtoBufMsgSrc_Unspecified = 0,\n+\tGCProtoBufMsgSrc_FromSystem = 1,\n+\tGCProtoBufMsgSrc_FromSteamID = 2,\n+\tGCProtoBufMsgSrc_FromGC = 3,\n+\tGCProtoBufMsgSrc_ReplySystem = 4,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/GC_BannedWordType.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum GC_BannedWordType : uint32_t\n+{\n+\tGC_BANNED_WORD_DISABLE_WORD = 0,\n+\tGC_BANNED_WORD_ENABLE_WORD = 1,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/GameAnimEventIndex_t.h",
          "status": "modified",
          "additions": 20,
          "deletions": 7,
          "changes": 27,
          "patch": "@@ -30,11 +30,24 @@ enum GameAnimEventIndex_t : uint32_t\n \tAE_ENABLE_PLATFORM_PLAYER_FOLLOWS_YAW = 27,\n \tAE_ENABLE_PLATFORM_PLAYER_IGNORES_YAW = 28,\n \tAE_DESTRUCTIBLE_PART_DESTROY = 29,\n-\tAE_CL_WEAPON_TRANSITION_INTO_HAND = 30,\n-\tAE_SV_ATTACH_SILENCER_COMPLETE = 31,\n-\tAE_SV_DETACH_SILENCER_COMPLETE = 32,\n-\tAE_CL_EJECT_MAG = 33,\n-\tAE_WPN_COMPLETE_RELOAD = 34,\n-\tAE_WPN_HEALTHSHOT_INJECT = 35,\n-\tAE_GRENADE_THROW_COMPLETE = 36,\n+\tAE_VEHICLE_ENTER_FINISHED = 30,\n+\tAE_VEHICLE_EXIT_FINISHED = 31,\n+\tAE_SCRIPT_FIRE_EVENT_01 = 32,\n+\tAE_SCRIPT_FIRE_EVENT_02 = 33,\n+\tAE_SCRIPT_FIRE_EVENT_03 = 34,\n+\tAE_SCRIPT_FIRE_EVENT_04 = 35,\n+\tAE_SCRIPT_FIRE_EVENT_05 = 36,\n+\tAE_SCRIPT_FIRE_EVENT_06 = 37,\n+\tAE_SCRIPT_FIRE_EVENT_07 = 38,\n+\tAE_SCRIPT_FIRE_EVENT_08 = 39,\n+\tAE_SCRIPT_FIRE_EVENT_09 = 40,\n+\tAE_SCRIPT_FIRE_EVENT_10 = 41,\n+\tAE_CL_WEAPON_TRANSITION_INTO_HAND = 42,\n+\tAE_SV_ATTACH_SILENCER_COMPLETE = 43,\n+\tAE_SV_DETACH_SILENCER_COMPLETE = 44,\n+\tAE_CL_EJECT_MAG = 45,\n+\tAE_WPN_COMPLETE_RELOAD = 46,\n+\tAE_WPN_HEALTHSHOT_INJECT = 47,\n+\tAE_GRENADE_THROW_COMPLETE = 48,\n+\tAE_COUNT = 49,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/IClientAlphaProperty.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class IClientAlphaProperty\n {\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/INavPathCostAreaFilter.h",
          "status": "added",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -0,0 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n+class INavPathCostAreaFilter\n+{\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ISkeletonAnimationController.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class ISkeletonAnimationController\n {\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/InteractionPassive_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 6,
          "changes": 6,
          "patch": "@@ -1,6 +0,0 @@\n-enum InteractionPassive_t : uint32_t\n-{\n-\tINTERACT_PASSIVE_NONE = 0,\n-\tINTERACT_PASSIVE_LOOKAT = 1,\n-\tINTERACT_PASSIVE_SPEAK = 2,\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/InteractionPriority_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 8,
          "changes": 8,
          "patch": "@@ -1,8 +0,0 @@\n-enum InteractionPriority_t : uint32_t\n-{\n-\tINTERACT_PRIORITY_NONE = 0,\n-\tINTERACT_PRIORITY_PASSIVE = 1,\n-\tINTERACT_PRIORITY_LOW = 2,\n-\tINTERACT_PRIORITY_MED = 3,\n-\tINTERACT_PRIORITY_HIGH = 4,\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/IntervalTimer.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = null\n class IntervalTimer\n {\n \tGameTime_t m_timestamp;"
        },
        {
          "filename": "DumpSource2/schemas/client/NET_Messages.h",
          "status": "added",
          "additions": 16,
          "deletions": 0,
          "changes": 16,
          "patch": "@@ -0,0 +1,16 @@\n+enum NET_Messages : uint32_t\n+{\n+\tnet_NOP = 0,\n+\tnet_Disconnect_Legacy = 1,\n+\tnet_SplitScreenUser = 3,\n+\tnet_Tick = 4,\n+\tnet_StringCmd = 5,\n+\tnet_SetConVar = 6,\n+\tnet_SignonState = 7,\n+\tnet_SpawnGroup_Load = 8,\n+\tnet_SpawnGroup_ManifestUpdate = 9,\n+\tnet_SpawnGroup_SetCreationTick = 11,\n+\tnet_SpawnGroup_Unload = 12,\n+\tnet_SpawnGroup_LoadCompleted = 13,\n+\tnet_DebugOverlay = 15,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/P2P_Messages.h",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": "@@ -0,0 +1,10 @@\n+enum P2P_Messages : uint32_t\n+{\n+\tp2p_TextMessage = 256,\n+\tp2p_Voice = 257,\n+\tp2p_Ping = 258,\n+\tp2p_VRAvatarPosition = 259,\n+\tp2p_WatchSynchronization = 260,\n+\tp2p_FightingGame_GameData = 261,\n+\tp2p_FightingGame_Connection = 262,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/PARTICLE_MESSAGE.h",
          "status": "added",
          "additions": 45,
          "deletions": 0,
          "changes": 45,
          "patch": "@@ -0,0 +1,45 @@\n+enum PARTICLE_MESSAGE : uint32_t\n+{\n+\tGAME_PARTICLE_MANAGER_EVENT_CREATE = 0,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE = 1,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD = 2,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION = 3,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK = 4,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_ENT = 5,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET = 6,\n+\tGAME_PARTICLE_MANAGER_EVENT_DESTROY = 7,\n+\tGAME_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING = 8,\n+\tGAME_PARTICLE_MANAGER_EVENT_RELEASE = 9,\n+\tGAME_PARTICLE_MANAGER_EVENT_LATENCY = 10,\n+\tGAME_PARTICLE_MANAGER_EVENT_SHOULD_DRAW = 11,\n+\tGAME_PARTICLE_MANAGER_EVENT_FROZEN = 12,\n+\tGAME_PARTICLE_MANAGER_EVENT_CHANGE_CONTROL_POINT_ATTACHMENT = 13,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION = 14,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_FOW_PROPERTIES = 15,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_TEXT = 16,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_SHOULD_CHECK_FOW = 17,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_MODEL = 18,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_SNAPSHOT = 19,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_TEXTURE_ATTRIBUTE = 20,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_GENERIC_FLAG = 21,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_TINT_AND_DESAT = 22,\n+\tGAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED = 23,\n+\tGAME_PARTICLE_MANAGER_EVENT_SKIP_TO_TIME = 24,\n+\tGAME_PARTICLE_MANAGER_EVENT_CAN_FREEZE = 25,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT = 26,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM = 27,\n+\tGAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE = 28,\n+\tGAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING = 29,\n+\tGAME_PARTICLE_MANAGER_EVENT_ADD_MODELLIST_OVERRIDE_ELEMENT = 30,\n+\tGAME_PARTICLE_MANAGER_EVENT_CLEAR_MODELLIST_OVERRIDE = 31,\n+\tGAME_PARTICLE_MANAGER_EVENT_CREATE_PHYSICS_SIM = 32,\n+\tGAME_PARTICLE_MANAGER_EVENT_DESTROY_PHYSICS_SIM = 33,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_VDATA = 34,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_MATERIAL_OVERRIDE = 35,\n+\tGAME_PARTICLE_MANAGER_EVENT_ADD_FAN = 36,\n+\tGAME_PARTICLE_MANAGER_EVENT_UPDATE_FAN = 37,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_CLUSTER_GROWTH = 38,\n+\tGAME_PARTICLE_MANAGER_EVENT_REMOVE_FAN = 39,\n+\tGAME_PARTICLE_MANAGER_EVENT_CREATE_SMOKE_GRID = 40,\n+\tGAME_PARTICLE_MANAGER_EVENT_SET_OVERRIDE_TEXTURE = 41,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ParticleNode_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,7 +4,7 @@ class ParticleNode_t\n \tParticleIndex_t m_iIndex;\n \tGameTime_t m_flStartTime;\n \tfloat32 m_flGrowthDuration;\n-\tVector m_vecGrowthOrigin;\n+\tVectorWS m_vecGrowthOrigin;\n \tfloat32 m_flEndcapTime;\n \tbool m_bMarkedForDelete;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/PhysObjectHeader_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -4,7 +4,7 @@ class PhysObjectHeader_t\n \tPhysInterfaceId_t type;\n \tCHandle< C_BaseEntity > hEntity;\n \tCUtlSymbolLarge fieldName;\n-\tint32 nObjects;\n+\tbool bSaveObject;\n \tCUtlSymbolLarge modelName;\n \tAABB_t bbox;\n \tphysics_save_sphere_t sphere;"
        },
        {
          "filename": "DumpSource2/schemas/client/PhysicsRagdollPose_t.h",
          "status": "modified",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -1,3 +1,10 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"PhysicsRagdollPose_t\",\n+//\t\"m_Transforms\":\n+//\t[\n+//\t],\n+//\t\"m_hOwner\": null\n+//}\n class PhysicsRagdollPose_t\n {\n \tC_NetworkUtlVectorBase< CTransform > m_Transforms;"
        },
        {
          "filename": "DumpSource2/schemas/client/PrefetchType.h",
          "status": "added",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -0,0 +1,4 @@\n+enum PrefetchType : uint32_t\n+{\n+\tPFT_SOUND = 0,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/PreviewCharacterBannerAnimation.h",
          "status": "modified",
          "additions": 11,
          "deletions": 10,
          "changes": 21,
          "patch": "@@ -19,14 +19,15 @@ enum PreviewCharacterBannerAnimation : uint32_t\n \tBANNER_4SHOT_D = 15,\n \tCELEBRATE_STRETCH_NOWEAP_IDLE0 = 16,\n \tBANNER_BOMB_PLANT = 17,\n-\tBANNER_BOMB_DEFUSAL_VER = 18,\n-\tBANNER_FIRE = 19,\n-\tBANNER_BOMB_BLAST_TOSS = 20,\n-\tBANNER_BOMB_BLAST01 = 21,\n-\tBANNER_BOMB_BLAST02 = 22,\n-\tBANNER_BOMB_BLAST03 = 23,\n-\tBANNER_CELEBRATE_01 = 24,\n-\tBANNER_CELEBRATE_02 = 25,\n-\tBANNER_CELEBRATE_03 = 26,\n-\tBANNER_CELEBRATE_04 = 27,\n+\tBANNER_BOMB_DEFUSAL_VER1 = 18,\n+\tBANNER_BOMB_DEFUSAL_VER2 = 19,\n+\tBANNER_FIRE = 20,\n+\tBANNER_BOMB_BLAST_TOSS = 21,\n+\tBANNER_BOMB_BLAST01 = 22,\n+\tBANNER_BOMB_BLAST02 = 23,\n+\tBANNER_BOMB_BLAST03 = 24,\n+\tBANNER_CELEBRATE_01 = 25,\n+\tBANNER_CELEBRATE_02 = 26,\n+\tBANNER_CELEBRATE_03 = 27,\n+\tBANNER_CELEBRATE_04 = 28,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/QuestType.h",
          "status": "added",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -0,0 +1,5 @@\n+enum QuestType : uint32_t\n+{\n+\tk_EQuestType_Operation = 1,\n+\tk_EQuestType_RecurringMission = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/RagdollCreationParams_t.h",
          "status": "modified",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -1,3 +1,8 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_bForceCurrentWorldTransform\": false,\n+//\t\"m_bUseLRURetirement\": true,\n+//\t\"m_nHealthToGrant\": 0\n+//}\n class RagdollCreationParams_t\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/ReplayEventType_t.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum ReplayEventType_t : uint32_t\n+{\n+\tREPLAY_EVENT_CANCEL = 0,\n+\tREPLAY_EVENT_DEATH = 1,\n+\tREPLAY_EVENT_GENERIC = 2,\n+\tREPLAY_EVENT_STUCK_NEED_FULL_UPDATE = 3,\n+\tREPLAY_EVENT_VICTORY = 4,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/RequestPause_t.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum RequestPause_t : uint32_t\n+{\n+\tRP_PAUSE = 0,\n+\tRP_UNPAUSE = 1,\n+\tRP_TOGGLEPAUSE = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/ResponseParams.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"odds\": 100,\n+//\t\"flags\": 0\n+//}\n class ResponseParams\n {\n \tint16 odds;"
        },
        {
          "filename": "DumpSource2/schemas/client/SVC_Messages.h",
          "status": "added",
          "additions": 34,
          "deletions": 0,
          "changes": 34,
          "patch": "@@ -0,0 +1,34 @@\n+enum SVC_Messages : uint32_t\n+{\n+\tsvc_ServerInfo = 40,\n+\tsvc_FlattenedSerializer = 41,\n+\tsvc_ClassInfo = 42,\n+\tsvc_SetPause = 43,\n+\tsvc_CreateStringTable = 44,\n+\tsvc_UpdateStringTable = 45,\n+\tsvc_VoiceInit = 46,\n+\tsvc_VoiceData = 47,\n+\tsvc_Print = 48,\n+\tsvc_Sounds = 49,\n+\tsvc_SetView = 50,\n+\tsvc_ClearAllStringTables = 51,\n+\tsvc_CmdKeyValues = 52,\n+\tsvc_BSPDecal = 53,\n+\tsvc_SplitScreen = 54,\n+\tsvc_PacketEntities = 55,\n+\tsvc_Prefetch = 56,\n+\tsvc_Menu = 57,\n+\tsvc_GetCvarValue = 58,\n+\tsvc_StopSound = 59,\n+\tsvc_PeerList = 60,\n+\tsvc_PacketReliable = 61,\n+\tsvc_HLTVStatus = 62,\n+\tsvc_ServerSteamID = 63,\n+\tsvc_FullFrameSplit = 70,\n+\tsvc_RconServerDetails = 71,\n+\tsvc_UserMessage = 72,\n+\tsvc_Broadcast_Command = 74,\n+\tsvc_HltvFixupOperatorStatus = 75,\n+\tsvc_UserCmds = 76,\n+\tsvc_NextMsgPredicted = 77,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/SVC_Messages_LowFrequency.h",
          "status": "added",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -0,0 +1,4 @@\n+enum SVC_Messages_LowFrequency : uint32_t\n+{\n+\tsvc_dummy = 600,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/SceneInterestTags_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 4,
          "changes": 4,
          "patch": "@@ -1,4 +0,0 @@\n-class SceneInterestTags_t\n-{\n-\tCUtlVector< CUtlString > m_Tags;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/SceneOpportunityHandle_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -1,5 +0,0 @@\n-// MIsBoxedIntegerType\n-class SceneOpportunityHandle_t\n-{\n-\tint32 m_Value;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/SceneRequestHandle_t.h",
          "status": "removed",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -1,5 +0,0 @@\n-// MIsBoxedIntegerType\n-class SceneRequestHandle_t\n-{\n-\tint32 m_Value;\n-};"
        },
        {
          "filename": "DumpSource2/schemas/client/ShatterGlassEntityPoolState_t.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum ShatterGlassEntityPoolState_t : uint32_t\n+{\n+\tENTITY_POOL_STATE_INVALID = 0,\n+\tENTITY_POOL_STATE_AVAILABLE = 1,\n+\tENTITY_POOL_STATE_IN_USE = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/SignonState_t.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+enum SignonState_t : uint32_t\n+{\n+\tSIGNONSTATE_NONE = 0,\n+\tSIGNONSTATE_CHALLENGE = 1,\n+\tSIGNONSTATE_CONNECTED = 2,\n+\tSIGNONSTATE_NEW = 3,\n+\tSIGNONSTATE_PRESPAWN = 4,\n+\tSIGNONSTATE_SPAWN = 5,\n+\tSIGNONSTATE_FULL = 6,\n+\tSIGNONSTATE_CHANGELEVEL = 7,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/SolidType_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 1,
          "changes": 3,
          "patch": "@@ -8,5 +8,6 @@ enum SolidType_t : uint8_t\n \tSOLID_POINT = 5,\n \tSOLID_VPHYSICS = 6,\n \tSOLID_CAPSULE = 7,\n-\tSOLID_LAST = 8,\n+\tSOLID_CYLINDER = 8,\n+\tSOLID_LAST = 9,\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/SpawnGroupFlags_t.h",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -0,0 +1,11 @@\n+enum SpawnGroupFlags_t : uint32_t\n+{\n+\tSPAWN_GROUP_LOAD_ENTITIES_FROM_SAVE = 1,\n+\tSPAWN_GROUP_DONT_SPAWN_ENTITIES = 2,\n+\tSPAWN_GROUP_SYNCHRONOUS_SPAWN = 4,\n+\tSPAWN_GROUP_IS_INITIAL_SPAWN_GROUP = 8,\n+\tSPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES = 16,\n+\tSPAWN_GROUP_BLOCK_UNTIL_LOADED = 64,\n+\tSPAWN_GROUP_LOAD_STREAMING_DATA = 128,\n+\tSPAWN_GROUP_CREATE_NEW_SCENE_WORLD = 256,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/StanceType_t.h",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1,6 +1,6 @@\n enum StanceType_t : uint32_t\n {\n-\t// MPropertySuppressEnumerator\n+\t// MPropertyFriendlyName = \"Current\"\n \tSTANCE_CURRENT = -1,\n \t// MPropertyFriendlyName = \"Default\"\n \tSTANCE_DEFAULT = 0,"
        },
        {
          "filename": "DumpSource2/schemas/client/SummaryTakeDamageInfo_t.h",
          "status": "modified",
          "additions": 97,
          "deletions": 0,
          "changes": 97,
          "patch": "@@ -1,3 +1,100 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"nSummarisedCount\": 0,\n+//\t\"info\":\n+//\t{\n+//\t\t\"_class\": \"CTakeDamageInfo\",\n+//\t\t\"m_vecDamageForce\":\n+//\t\t[\n+//\t\t\t0.000000,\n+//\t\t\t0.000000,\n+//\t\t\t0.000000\n+//\t\t],\n+//\t\t\"m_vecDamagePosition\": null,\n+//\t\t\"m_vecReportedPosition\": null,\n+//\t\t\"m_vecDamageDirection\":\n+//\t\t[\n+//\t\t\t0.000000,\n+//\t\t\t0.000000,\n+//\t\t\t0.000000\n+//\t\t],\n+//\t\t\"m_hInflictor\": null,\n+//\t\t\"m_hAttacker\": null,\n+//\t\t\"m_hAbility\": null,\n+//\t\t\"m_flDamage\": 0.000000,\n+//\t\t\"m_flTotalledDamage\": 0.000000,\n+//\t\t\"m_bitsDamageType\": \"\",\n+//\t\t\"m_iDamageCustom\": 0,\n+//\t\t\"m_iAmmoType\": \"\",\n+//\t\t\"m_flOriginalDamage\": 0.000000,\n+//\t\t\"m_bShouldBleed\": false,\n+//\t\t\"m_bShouldSpark\": false,\n+//\t\t\"m_nDamageFlags\": \"\",\n+//\t\t\"m_iHitGroupId\": \"HITGROUP_INVALID\",\n+//\t\t\"m_nNumObjectsPenetrated\": 0,\n+//\t\t\"m_flFriendlyFireDamageReductionRatio\": 1.000000,\n+//\t\t\"m_bStoppedBullet\": false,\n+//\t\t\"m_DestructibleHitGroupRequests\":\n+//\t\t[\n+//\t\t]\n+//\t},\n+//\t\"result\":\n+//\t{\n+//\t\t\"m_pOriginatingInfo\":\n+//\t\t{\n+//\t\t\t\"_class\": \"CTakeDamageInfo\",\n+//\t\t\t\"m_vecDamageForce\":\n+//\t\t\t[\n+//\t\t\t\t0.000000,\n+//\t\t\t\t0.000000,\n+//\t\t\t\t0.000000\n+//\t\t\t],\n+//\t\t\t\"m_vecDamagePosition\": null,\n+//\t\t\t\"m_vecReportedPosition\": null,\n+//\t\t\t\"m_vecDamageDirection\":\n+//\t\t\t[\n+//\t\t\t\t0.000000,\n+//\t\t\t\t0.000000,\n+//\t\t\t\t0.000000\n+//\t\t\t],\n+//\t\t\t\"m_hInflictor\": null,\n+//\t\t\t\"m_hAttacker\": null,\n+//\t\t\t\"m_hAbility\": null,\n+//\t\t\t\"m_flDamage\": 0.000000,\n+//\t\t\t\"m_flTotalledDamage\": 0.000000,\n+//\t\t\t\"m_bitsDamageType\": \"\",\n+//\t\t\t\"m_iDamageCustom\": 0,\n+//\t\t\t\"m_iAmmoType\": \"\",\n+//\t\t\t\"m_flOriginalDamage\": 0.000000,\n+//\t\t\t\"m_bShouldBleed\": false,\n+//\t\t\t\"m_bShouldSpark\": false,\n+//\t\t\t\"m_nDamageFlags\": \"\",\n+//\t\t\t\"m_iHitGroupId\": \"HITGROUP_INVALID\",\n+//\t\t\t\"m_nNumObjectsPenetrated\": 0,\n+//\t\t\t\"m_flFriendlyFireDamageReductionRatio\": 1.000000,\n+//\t\t\t\"m_bStoppedBullet\": false,\n+//\t\t\t\"m_DestructibleHitGroupRequests\":\n+//\t\t\t[\n+//\t\t\t]\n+//\t\t},\n+//\t\t\"m_DestructibleHitGroupRequests\":\n+//\t\t[\n+//\t\t],\n+//\t\t\"m_nHealthLost\": 0,\n+//\t\t\"m_nHealthBefore\": 0,\n+//\t\t\"m_flDamageDealt\": 0.000000,\n+//\t\t\"m_flPreModifiedDamage\": 0.000000,\n+//\t\t\"m_vDamagePosition\": null,\n+//\t\t\"m_nTotalledHealthLost\": 0,\n+//\t\t\"m_flTotalledDamageDealt\": 0.000000,\n+//\t\t\"m_flTotalledPreModifiedDamage\": 0.000000,\n+//\t\t\"m_flNewDamageAccumulatorValue\": 0.000000,\n+//\t\t\"m_nDamageFlags\": \"\",\n+//\t\t\"m_bWasDamageSuppressed\": false,\n+//\t\t\"m_bSuppressFlinch\": false,\n+//\t\t\"m_nOverrideFlinchHitGroup\": \"HITGROUP_INVALID\"\n+//\t},\n+//\t\"hTarget\": null\n+//}\n class SummaryTakeDamageInfo_t\n {\n \tint32 nSummarisedCount;"
        },
        {
          "filename": "DumpSource2/schemas/client/TimedEvent.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_TimeBetweenEvents\": -1.000000,\n+//\t\"m_fNextEvent\": 0.000000\n+//}\n class TimedEvent\n {\n \tfloat32 m_TimeBetweenEvents;"
        },
        {
          "filename": "DumpSource2/schemas/client/VPhysicsCollisionAttribute_t.h",
          "status": "modified",
          "additions": 14,
          "deletions": 0,
          "changes": 14,
          "patch": "@@ -1,3 +1,17 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"VPhysicsCollisionAttribute_t\",\n+//\t\"m_nInteractsAs\": 0,\n+//\t\"m_nInteractsWith\": 0,\n+//\t\"m_nInteractsExclude\": 0,\n+//\t\"m_nEntityId\": 0,\n+//\t\"m_nOwnerId\": 0,\n+//\t\"m_nHierarchyId\": 0,\n+//\t\"m_nDetailLayerMask\": 0,\n+//\t\"m_nDetailLayerMaskType\": 0,\n+//\t\"m_nTargetDetailLayer\": 0,\n+//\t\"m_nCollisionGroup\": 0,\n+//\t\"m_nCollisionFunctionMask\": 0\n+//}\n class VPhysicsCollisionAttribute_t\n {\n \tuint64 m_nInteractsAs;"
        },
        {
          "filename": "DumpSource2/schemas/client/VoiceDataFormat_t.h",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -0,0 +1,6 @@\n+enum VoiceDataFormat_t : uint32_t\n+{\n+\tVOICEDATA_FORMAT_STEAM = 0,\n+\tVOICEDATA_FORMAT_ENGINE = 1,\n+\tVOICEDATA_FORMAT_OPUS = 2,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/WrappedPhysicsJoint_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -1,3 +1,5 @@\n+// MGetKV3ClassDefaults = {\n+//}\n class WrappedPhysicsJoint_t\n {\n \t// MPhysPtr"
        },
        {
          "filename": "DumpSource2/schemas/client/audioparams_t.h",
          "status": "modified",
          "additions": 19,
          "deletions": 1,
          "changes": 20,
          "patch": "@@ -1,6 +1,24 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"audioparams_t\",\n+//\t\"localSound\":\n+//\t[\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull,\n+//\t\tnull\n+//\t],\n+//\t\"soundscapeIndex\": 0,\n+//\t\"localBits\": 0,\n+//\t\"soundscapeEntityListIndex\": 0,\n+//\t\"soundEventHash\": 0\n+//}\n class audioparams_t\n {\n-\tVector[8] localSound;\n+\tVectorWS[8] localSound;\n \tint32 soundscapeIndex;\n \tuint8 localBits;\n \tint32 soundscapeEntityListIndex;"
        },
        {
          "filename": "DumpSource2/schemas/client/constraint_hingeparams_t.h",
          "status": "modified",
          "additions": 10,
          "deletions": 1,
          "changes": 11,
          "patch": "@@ -1,6 +1,15 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"worldPosition\": null,\n+//\t\"worldAxisDirection\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t]\n+//}\n class constraint_hingeparams_t\n {\n-\tVector worldPosition;\n+\tVectorWS worldPosition;\n \tVector worldAxisDirection;\n \t// MNotSaved\n \tconstraint_axislimit_t hingeAxis;"
        },
        {
          "filename": "DumpSource2/schemas/client/eRollType.h",
          "status": "added",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -0,0 +1,8 @@\n+enum eRollType : uint32_t\n+{\n+\tROLL_NONE = -1,\n+\tROLL_STATS = 0,\n+\tROLL_CREDITS = 1,\n+\tROLL_LATE_JOIN_LOGO = 2,\n+\tROLL_OUTTRO = 3,\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/entitytable_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -12,7 +12,8 @@\n //\t\t0.000000,\n //\t\t0.000000,\n //\t\t0.000000\n-//\t]\n+//\t],\n+//\t\"m_pPrecacheEntityKeys\": null\n //}\n class entitytable_t\n {\n@@ -25,6 +26,5 @@ class entitytable_t\n \tCUtlSymbolLarge globalname;\n \tCUtlSymbolLarge entityname;\n \tVector landmarkModelSpace;\n-\t// MKV3TransferSaveOpsForField = \"GetEntityKeyValuesSaveRestoreOps\"\n \tCEntityKeyValues* m_pPrecacheEntityKeys;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/fogparams_t.h",
          "status": "modified",
          "additions": 35,
          "deletions": 0,
          "changes": 35,
          "patch": "@@ -1,3 +1,38 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"fogparams_t\",\n+//\t\"dirPrimary\":\n+//\t[\n+//\t\t1.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"colorPrimary\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"colorSecondary\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"start\": 0.000000,\n+//\t\"end\": 0.000000,\n+//\t\"farz\": 0.000000,\n+//\t\"maxdensity\": 0.000000,\n+//\t\"exponent\": 0.000000,\n+//\t\"HDRColorScale\": 0.000000,\n+//\t\"duration\": 0.000000,\n+//\t\"blendtobackground\": 0.000000,\n+//\t\"scattering\": 0.000000,\n+//\t\"locallightscale\": 1.000000,\n+//\t\"enable\": false,\n+//\t\"blend\": false\n+//}\n class fogparams_t\n {\n \tVector dirPrimary;"
        },
        {
          "filename": "DumpSource2/schemas/client/globalentity_t.h",
          "status": "modified",
          "additions": 6,
          "deletions": 2,
          "changes": 8,
          "patch": "@@ -1,8 +1,12 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"state\": \"GLOBAL_OFF\",\n+//\t\"counter\": 0\n+//}\n class globalentity_t\n {\n-\t// MSaveOpsForField = \"GetGlobalSymbolDataOps\"\n+\t// MKV3TransferSaveOpsForField = \"GetGlobalSymbolDataOps\"\n \tCUtlSymbol name;\n-\t// MSaveOpsForField = \"GetGlobalSymbolDataOps\"\n+\t// MKV3TransferSaveOpsForField = \"GetGlobalSymbolDataOps\"\n \tCUtlSymbol levelName;\n \tGLOBALESTATE state;\n \tint32 counter;"
        },
        {
          "filename": "DumpSource2/schemas/client/globalentitydatabase_t.h",
          "status": "added",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -0,0 +1,9 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_list\":\n+//\t[\n+//\t]\n+//}\n+class globalentitydatabase_t\n+{\n+\tCUtlVector< globalentity_t > m_list;\n+};"
        },
        {
          "filename": "DumpSource2/schemas/client/hudtextparms_t.h",
          "status": "modified",
          "additions": 20,
          "deletions": 0,
          "changes": 20,
          "patch": "@@ -1,3 +1,23 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"color1\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"color2\":\n+//\t[\n+//\t\t0,\n+//\t\t0,\n+//\t\t0,\n+//\t\t0\n+//\t],\n+//\t\"effect\": 0,\n+//\t\"channel\": 0,\n+//\t\"x\": 0.000000,\n+//\t\"y\": 0.000000\n+//}\n class hudtextparms_t\n {\n \tColor color1;"
        },
        {
          "filename": "DumpSource2/schemas/client/levellist_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 7,
          "changes": 9,
          "patch": "@@ -2,12 +2,7 @@\n //\t\"m_sMapName\": \"\",\n //\t\"m_sLandmarkName\": \"\",\n //\t\"m_hEntLandmark\": null,\n-//\t\"m_vecLandmarkOrigin\":\n-//\t[\n-//\t\t0.000000,\n-//\t\t0.000000,\n-//\t\t0.000000\n-//\t],\n+//\t\"m_vecLandmarkOrigin\": null,\n //\t\"m_vecLandmarkAngles\":\n //\t[\n //\t\t0.000000,\n@@ -20,6 +15,6 @@ class levellist_t\n \tCUtlString m_sMapName;\n \tCUtlString m_sLandmarkName;\n \tCEntityHandle m_hEntLandmark;\n-\tVector m_vecLandmarkOrigin;\n+\tVectorWS m_vecLandmarkOrigin;\n \tQAngle m_vecLandmarkAngles;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/physics_save_sphere_t.h",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -1,3 +1,6 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"radius\": 0.000000\n+//}\n class physics_save_sphere_t\n {\n \tfloat32 radius;"
        },
        {
          "filename": "DumpSource2/schemas/client/ragdoll_t.h",
          "status": "modified",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -1,3 +1,16 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"list\":\n+//\t[\n+//\t],\n+//\t\"hierarchyJoints\":\n+//\t[\n+//\t],\n+//\t\"boneIndex\":\n+//\t[\n+//\t],\n+//\t\"allowStretch\": false,\n+//\t\"unused\": false\n+//}\n class ragdoll_t\n {\n \tCUtlVector< ragdollelement_t > list;"
        },
        {
          "filename": "DumpSource2/schemas/client/ragdollelement_t.h",
          "status": "modified",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -1,3 +1,14 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"originParentSpace\":\n+//\t[\n+//\t\t0.000000,\n+//\t\t0.000000,\n+//\t\t0.000000\n+//\t],\n+//\t\"parentIndex\": 0,\n+//\t\"m_flRadius\": 0.000000,\n+//\t\"m_nHeight\": 0\n+//}\n class ragdollelement_t\n {\n \tVector originParentSpace;"
        },
        {
          "filename": "DumpSource2/schemas/client/ragdollhierarchyjoint_t.h",
          "status": "modified",
          "additions": 4,
          "deletions": 0,
          "changes": 4,
          "patch": "@@ -1,3 +1,7 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"parentIndex\": -1,\n+//\t\"childIndex\": -1\n+//}\n class ragdollhierarchyjoint_t\n {\n \tint32 parentIndex;"
        },
        {
          "filename": "DumpSource2/schemas/client/sky3dparams_t.h",
          "status": "modified",
          "additions": 2,
          "deletions": 1,
          "changes": 3,
          "patch": "@@ -1,7 +1,8 @@\n+// MGetKV3ClassDefaults = null\n class sky3dparams_t\n {\n \tint16 scale;\n-\tVector origin;\n+\tVectorWS origin;\n \t// MNotSaved\n \tbool bClip3DSkyBoxNearToWorldFar;\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/client/sndopvarlatchdata_t.h",
          "status": "modified",
          "additions": 9,
          "deletions": 1,
          "changes": 10,
          "patch": "@@ -1,8 +1,16 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"sndopvarlatchdata_t\",\n+//\t\"m_iszStack\": \"\",\n+//\t\"m_iszOperator\": \"\",\n+//\t\"m_iszOpvar\": \"\",\n+//\t\"m_flVal\": 0.000000,\n+//\t\"m_vPos\": null\n+//}\n class sndopvarlatchdata_t\n {\n \tCUtlSymbolLarge m_iszStack;\n \tCUtlSymbolLarge m_iszOperator;\n \tCUtlSymbolLarge m_iszOpvar;\n \tfloat32 m_flVal;\n-\tVector m_vPos;\n+\tVectorWS m_vPos;\n };"
        },
        {
          "filename": "DumpSource2/schemas/client/thinkfunc_t.h",
          "status": "modified",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": "@@ -1,3 +1,9 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"m_think\": \"\",\n+//\t\"m_nContext\": \"\",\n+//\t\"m_nNextThinkTick\": null,\n+//\t\"m_nLastThinkTick\": null\n+//}\n class thinkfunc_t\n {\n \tBASEPTR m_think;"
        },
        {
          "filename": "DumpSource2/schemas/entity2/CEntityAttributeTable.h",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": "@@ -1,5 +1,5 @@\n class CEntityAttributeTable\n {\n-\tCUtlOrderedMap< CUtlStringToken, Attribute_t > m_Attributes;\n-\tCUtlOrderedMap< CUtlStringToken, CUtlString > m_Names;\n+\tCUtlOrderedMap< CUtlStringTokenNoRegistration, Attribute_t > m_Attributes;\n+\tCUtlOrderedMap< CUtlStringTokenNoRegistration, CUtlString > m_Names;\n };"
        },
        {
          "filename": "DumpSource2/schemas/entity2/CEntityIdentity.h",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1,3 +1,4 @@\n+// MGetKV3ClassDefaults = Could not parse KV3 Defaults\n class CEntityIdentity\n {\n \t// MNotSaved"
        },
        {
          "filename": "DumpSource2/schemas/entity2/CScriptComponent.h",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": "@@ -1,3 +1,6 @@\n+// MGetKV3ClassDefaults = {\n+//\t\"_class\": \"CScriptComponent\"\n+//}\n class CScriptComponent : public CEntityComponent\n {\n \t// MNotSaved"
        }
      ]
    },
    {
      "event_id": "gh:382cfd2",
      "detected_at_utc": "2026-07-10T20:56:44.759Z",
      "commit_date_utc": "2026-07-08T22:54:05Z",
      "commit": {
        "sha": "382cfd288910a2d774a6e6d10428a83416e60da2",
        "short": "382cfd2",
        "message": "2000870 | 253 files | M\tProtobufs/clientmessages.proto, M\tProtobufs/cs_prediction_events.proto, M\tProtobufs/cs_usercmd.proto, M\tProtobufs/cstrike15_gcmessages.proto, M\tProtobufs/cstrike15_usermessages.proto, M\tProtobufs/gameevents.proto, M\tProtobufs/netmessages.proto, M\tProtobufs/networkbasetypes.proto, M\tProtobufs/prediction_events.proto, M\tProtobufs/source2_steam_stats.proto, M\tProtobufs/usercmd.proto, M\tProtobufs/usermessages.proto, M\tProtobufs/valveextensions.proto, M\tcontent/csgo/maps/editor/zoo/scripts/point_script.d.ts, M\tcontent/csgo/maps/editor/zoo/scripts/setup.js, M\tgame/bin/assettypes_common.txt, M\tgame/bin/built_from_cl.txt, M\tgame/bin/win64/Qt5Core_strings.txt, M\tgame/bin/win64/Qt5Gui_strings.txt, M\tgame/bin/win64/Qt5Widgets_strings.txt, M\tgame/bin/win64/SDL3_strings.txt, M\tgame/bin/win64/animationsystem_strings.txt, M\tgame/bin/win64/assetbrowser_strings.txt, M\tgame/bin/win64/assetpreview_strings.txt, M\tgame/bin/win64/assetrename_strings.txt, M\tgame/bin/win64/assetsystem_strings.txt, M\tgame/bin/win64/bugreporter_file",
        "url": "https://github.com/SteamTracking/GameTracking-CS2/commit/382cfd288910a2d774a6e6d10428a83416e60da2"
      },
      "classification": {
        "tags": [
          "items",
          "scripts",
          "ui",
          "localization",
          "assets",
          "misc",
          "content-change"
        ],
        "important_files": [
          "content/csgo/maps/editor/zoo/scripts/point_script.d.ts",
          "content/csgo/maps/editor/zoo/scripts/setup.js",
          "game/core/pak01_dir/panorama/styles/popups/popup_manager.css",
          "game/core/pak01_dir/panorama/styles/tooltips/tooltip_base.css",
          "game/core/pak01_dir/resource/toolhelp_particles_english.txt",
          "game/core/pak01_dir/resource/valve_english.txt",
          "game/core/pak01_dir/scripts/replay_compatability_settings.txt",
          "game/core/pak01_dir/scripts/tools/animgrapheditor/graph_view_styles.vdata",
          "game/core/pak01_dir/scripts/tools/pulse_scene_styles_v2.vdata",
          "game/csgo/import_scripts/bin/tier0_strings.txt",
          "game/csgo/import_scripts/bin/vstdlib_strings.txt",
          "game/csgo/pak01_dir/maps/editor/zoo/scripts/setup.js",
          "game/csgo/pak01_dir/maps/workshop_compatibility_versions.txt",
          "game/csgo/pak01_dir/panorama/layout/base_globalpanels.xml",
          "game/csgo/pak01_dir/panorama/layout/buymenu.xml",
          "game/csgo/pak01_dir/panorama/layout/chat.xml",
          "game/csgo/pak01_dir/panorama/layout/color_picker.xml",
          "game/csgo/pak01_dir/panorama/layout/color_picker_hue.xml",
          "game/csgo/pak01_dir/panorama/layout/color_picker_saturation_value.xml",
          "game/csgo/pak01_dir/panorama/layout/endofmatch-rank.xml",
          "game/csgo/pak01_dir/panorama/layout/endofmatch-win.xml",
          "game/csgo/pak01_dir/panorama/layout/endofmatch.xml",
          "game/csgo/pak01_dir/panorama/layout/friendslist.xml",
          "game/csgo/pak01_dir/panorama/layout/friendtile.xml",
          "game/csgo/pak01_dir/panorama/layout/honor_icon.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hud.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/huddeathnotice.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/huddeathpanel.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudhealthammocenter.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudprogressbar.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudreticle.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudteamcounter.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudweaponselection.xml",
          "game/csgo/pak01_dir/panorama/layout/hud/hudwinpanel.xml",
          "game/csgo/pak01_dir/panorama/layout/leaderboard.xml",
          "game/csgo/pak01_dir/panorama/layout/mainmenu.xml",
          "game/csgo/pak01_dir/panorama/layout/mainmenu_play.xml",
          "game/csgo/pak01_dir/panorama/layout/matchinfo.xml",
          "game/csgo/pak01_dir/panorama/layout/player_stats_card.xml",
          "game/csgo/pak01_dir/panorama/layout/playercard.xml",
          "game/csgo/pak01_dir/panorama/layout/popups/popup_directchallenge_join.xml",
          "game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboard_namelock.xml",
          "game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboards.xml",
          "game/csgo/pak01_dir/panorama/layout/popups/popup_offers_laptop_interface.xml",
          "game/csgo/pak01_dir/panorama/layout/popups/popup_premier_pick_ban.xml",
          "game/csgo/pak01_dir/panorama/layout/scoreboard.xml",
          "game/csgo/pak01_dir/panorama/layout/scoreboard_owner.xml",
          "game/csgo/pak01_dir/panorama/layout/simple_player_tile.xml",
          "game/csgo/pak01_dir/panorama/layout/teamintromenu.xml",
          "game/csgo/pak01_dir/panorama/layout/teamselectmenu.xml",
          "game/csgo/pak01_dir/panorama/layout/vanity_player_info.xml",
          "game/csgo/pak01_dir/panorama/layout/vanityloadout_inspect.xml",
          "game/csgo/pak01_dir/panorama/scripts/common/formattext.js",
          "game/csgo/pak01_dir/panorama/scripts/endofmatch-rank.js",
          "game/csgo/pak01_dir/panorama/scripts/endofmatch-win.js",
          "game/csgo/pak01_dir/panorama/scripts/friendlobby.js",
          "game/csgo/pak01_dir/panorama/scripts/friendtile.js",
          "game/csgo/pak01_dir/panorama/scripts/hud/hudwinpanel.js",
          "game/csgo/pak01_dir/panorama/scripts/inspect.js",
          "game/csgo/pak01_dir/panorama/scripts/leaderboard.js",
          "game/csgo/pak01_dir/panorama/scripts/mapdraft.js",
          "game/csgo/pak01_dir/panorama/scripts/mock_adapter.js",
          "game/csgo/pak01_dir/panorama/scripts/party.js",
          "game/csgo/pak01_dir/panorama/scripts/player_stats_card.js",
          "game/csgo/pak01_dir/panorama/scripts/playercard.js",
          "game/csgo/pak01_dir/panorama/scripts/popups/popup_inspect_action-bar.js",
          "game/csgo/pak01_dir/panorama/scripts/scoreboard.js",
          "game/csgo/pak01_dir/panorama/scripts/teamintromenu.js",
          "game/csgo/pak01_dir/panorama/scripts/vanity_player_info.js",
          "game/csgo/pak01_dir/panorama/styles/color_picker.css",
          "game/csgo/pak01_dir/panorama/styles/csgostyles.css",
          "game/csgo/pak01_dir/panorama/styles/hud/hud.css",
          "game/csgo/pak01_dir/panorama/styles/hud/hudhealthammocenter.css",
          "game/csgo/pak01_dir/panorama/styles/popups/popup_offers_laptop_interface.css",
          "game/csgo/pak01_dir/panorama/styles/scoreboard.css",
          "game/csgo/pak01_dir/resource/csgo_english.txt",
          "game/csgo/pak01_dir/resource/mod.gameevents",
          "game/csgo/pak01_dir/resource/toolhelp_cs2_item_editor_english.txt",
          "game/csgo/pak01_dir/scripts/items/items_game.txt",
          "game/csgo/pak01_dir/scripts/soundmixers.txt"
        ]
      },
      "ai_summary": "Item/game definitions updated (items_game.txt changed). Likely tweaks to skins, stickers, or item config.",
      "stats": {
        "files_changed": 253,
        "additions": 34873,
        "deletions": 16548
      },
      "files": [
        {
          "filename": "Protobufs/clientmessages.proto",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -5,7 +5,6 @@ enum EBaseClientMessages {\n \tCM_DevPaletteVisibilityChanged = 283;\n \tCM_WorldUIControllerHasPanelChanged = 284;\n \tCM_RotateAnchor = 285;\n-\tCM_ListenForResponseFound = 286;\n \tCM_MAX_BASE = 300;\n }\n \n@@ -47,7 +46,3 @@ message CClientMsg_WorldUIControllerHasPanelChangedEvent {\n message CClientMsg_RotateAnchor {\n \toptional float angle = 1;\n }\n-\n-message CClientMsg_ListenForResponseFound {\n-\toptional int32 player_slot = 1 [default = -1];\n-}"
        },
        {
          "filename": "Protobufs/cs_prediction_events.proto",
          "status": "modified",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": "@@ -3,10 +3,18 @@ import \"prediction_events.proto\";\n \n enum ECSPredictionEvents {\n \tCSPE_DamageTag = 1;\n+\tCSPE_PlayerTeleport = 3;\n }\n \n message CCSPredictionEvent_DamageTag {\n \toptional float flinch_mod_small = 1;\n \toptional float flinch_mod_large = 2;\n \toptional float friendly_fire_damage_reduction_ratio = 3;\n }\n+\n+message CCSPredictionEvent_PlayerTeleport {\n+\toptional bool relative = 1;\n+\toptional .CMsgVector origin = 2;\n+\toptional .CMsgQAngle angles = 3;\n+\toptional .CMsgVector velocity = 4;\n+}"
        },
        {
          "filename": "Protobufs/cs_usercmd.proto",
          "status": "modified",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": "@@ -1,17 +1,24 @@\n+import \"valveextensions.proto\";\n import \"networkbasetypes.proto\";\n import \"usercmd.proto\";\n \n message CSGOInterpolationInfoPB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional int32 src_tick = 1 [default = -1];\n \toptional int32 dst_tick = 2 [default = -1];\n \toptional float frac = 3 [default = 0];\n }\n \n message CSGOInterpolationInfoPB_CL {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional float frac = 3 [default = 0];\n }\n \n message CSGOInputHistoryEntryPB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional .CMsgQAngle view_angles = 2;\n \toptional int32 render_tick_count = 4;\n \toptional float render_tick_fraction = 5;\n@@ -30,6 +37,8 @@ message CSGOInputHistoryEntryPB {\n }\n \n message CSGOUserCmdPB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional .CBaseUserCmdPB base = 1;\n \trepeated .CSGOInputHistoryEntryPB input_history = 2;\n \toptional int32 attack1_start_history_index = 6 [default = -1];"
        },
        {
          "filename": "Protobufs/cstrike15_gcmessages.proto",
          "status": "modified",
          "additions": 7,
          "deletions": 0,
          "changes": 7,
          "patch": "@@ -111,6 +111,7 @@ enum ECsgoGCMsg {\n \tk_EMsgGCCStrike15_v2_RecurringMissionSchema = 9226;\n \tk_EMsgGCCStrike15_v2_VolatileItemClaimReward = 9227;\n \tk_EMsgGCCStrike15_v2_VolatileShopSubscribe = 9228;\n+\tk_EMsgGCCStrike15_v2_SetClanId = 9229;\n }\n \n enum ECsgoSteamUserStat {\n@@ -681,6 +682,7 @@ message CMsgGCCStrike15_v2_ServerNotificationForUserPenalty {\n \toptional uint32 reason = 2;\n \toptional uint32 seconds = 3;\n \toptional bool communication_cooldown = 4;\n+\toptional uint32 cheating_penalty_level = 5;\n }\n \n message CMsgGCCStrike15_v2_ClientReportPlayer {\n@@ -1246,6 +1248,7 @@ message CSOPersonaDataPublic {\n \toptional bool elevated_state = 3;\n \toptional uint32 xp_trail_timestamp_refresh = 4;\n \toptional uint32 xp_trail_level = 5;\n+\toptional uint32 clan_id = 6;\n }\n \n message CSOAccountRecurringMission {\n@@ -1440,6 +1443,10 @@ message CMsgGCCStrike15_v2_ClientAccountBalance {\n \toptional string url = 2;\n }\n \n+message CMsgGCCStrike15_v2_SetClanId {\n+\toptional uint32 clan_id = 1;\n+}\n+\n message CMsgGCCStrike15_v2_ClientPartyJoinRelay {\n \toptional uint32 accountid = 1;\n \toptional uint64 lobbyid = 2;"
        },
        {
          "filename": "Protobufs/cstrike15_usermessages.proto",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -240,6 +240,7 @@ message CCSUsrMsg_WeaponSound {\n \toptional string sound = 5;\n \toptional float game_timestamp = 6;\n \toptional fixed32 source_soundscapeid = 7;\n+\toptional bool stealth = 8;\n }\n \n message CCSUsrMsg_WeaponMagDrop {"
        },
        {
          "filename": "Protobufs/gameevents.proto",
          "status": "modified",
          "additions": 21,
          "deletions": 0,
          "changes": 21,
          "patch": "@@ -14,6 +14,8 @@ enum EBaseGameEvents {\n \tGE_SosSetSoundEventParams = 210;\n \tGE_SosSetLibraryStackFields = 211;\n \tGE_SosStopSoundEventHash = 212;\n+\tGE_ClothStiffenAnimEvent = 213;\n+\tGE_ClothEffectAnimEvent = 214;\n }\n \n message CMsgVDebugGameSessionIDEvent {\n@@ -36,6 +38,7 @@ message CMsgPlaceDecalEvent {\n \toptional uint64 material_id = 11;\n \toptional uint32 sequence_name = 12;\n \toptional .CMsgVector position_objectspace = 14;\n+\toptional .CMsgVector normal_objectspace = 15;\n }\n \n message CMsgClearWorldDecalsEvent {\n@@ -119,3 +122,21 @@ message CMsgSosSetLibraryStackFields {\n \toptional fixed32 stack_hash = 1;\n \toptional bytes packed_fields = 5;\n }\n+\n+message CMsgClothStiffenAnimEvent {\n+\toptional int32 source_entity_index = 1 [default = -1];\n+\toptional int32 vertex_set_hash = 2;\n+\toptional float intensity = 3;\n+\toptional float length = 4;\n+\toptional float speed_in = 5;\n+\toptional float speed_out = 6;\n+}\n+\n+message CMsgClothEffectAnimEvent {\n+\toptional int32 source_entity_index = 1 [default = -1];\n+\toptional int32 effect_name_hash = 2;\n+\toptional int32 operation = 3;\n+\toptional int32 flags = 4;\n+\toptional string tags = 5;\n+\toptional .CMsgVector pte = 6;\n+}"
        },
        {
          "filename": "Protobufs/netmessages.proto",
          "status": "modified",
          "additions": 3,
          "deletions": 1,
          "changes": 4,
          "patch": "@@ -427,12 +427,13 @@ message CSVCMsg_UpdateStringTable {\n \n message CSVCMsg_VoiceData {\n \toptional .CMsgVoiceAudio audio = 1;\n-\toptional int32 client = 2 [default = -1];\n+\toptional int32 client_deprecated = 2 [default = -1];\n \toptional bool proximity = 3;\n \toptional fixed64 xuid = 4;\n \toptional int32 audible_mask = 5;\n \toptional uint32 tick = 6;\n \toptional int32 passthrough = 7;\n+\toptional int32 entity = 8 [default = -1];\n }\n \n message CSVCMsg_PacketReliable {\n@@ -641,6 +642,7 @@ message CMsgServerUserCmd {\n \toptional int32 player_slot = 3 [default = -1];\n \toptional int32 server_tick_executed = 4;\n \toptional int32 client_tick = 5;\n+\toptional bytes delta_data = 6;\n }\n \n message CSVCMsg_UserCommands {"
        },
        {
          "filename": "Protobufs/networkbasetypes.proto",
          "status": "modified",
          "additions": 13,
          "deletions": 0,
          "changes": 13,
          "patch": "@@ -1,3 +1,4 @@\n+import \"valveextensions.proto\";\n import \"google/protobuf/descriptor.proto\";\n import \"network_connection.proto\";\n \n@@ -44,37 +45,49 @@ enum SpawnGroupFlags_t {\n }\n \n message CMsgVector {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional float x = 1;\n \toptional float y = 2;\n \toptional float z = 3;\n \toptional float w = 4;\n }\n \n message CMsgVector2D {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional float x = 1;\n \toptional float y = 2;\n }\n \n message CMsgQAngle {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional float x = 1;\n \toptional float y = 2;\n \toptional float z = 3;\n }\n \n message CMsgQuaternion {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional float x = 1;\n \toptional float y = 2;\n \toptional float z = 3;\n \toptional float w = 4;\n }\n \n message CMsgTransform {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional .CMsgVector position = 1;\n \toptional float scale = 2;\n \toptional .CMsgQuaternion orientation = 3;\n }\n \n message CMsgRGBA {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional int32 r = 1;\n \toptional int32 g = 2;\n \toptional int32 b = 3;"
        },
        {
          "filename": "Protobufs/prediction_events.proto",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -10,6 +10,7 @@ message CPredictionEvent_Teleport {\n \toptional .CMsgVector origin = 1;\n \toptional .CMsgQAngle angles = 2;\n \toptional float drop_to_ground_range = 3;\n+\toptional .CMsgVector velocity = 4;\n }\n \n message CPredictionEvent_StringCommand {"
        },
        {
          "filename": "Protobufs/source2_steam_stats.proto",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -207,4 +207,5 @@ message CUserMessage_UserSentBugBug {\n \toptional uint32 build_id = 4;\n \toptional int32 osversion = 5;\n \toptional string command_logs = 6;\n+\toptional int32 bugbug_no = 7;\n }"
        },
        {
          "filename": "Protobufs/usercmd.proto",
          "status": "modified",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": "@@ -1,12 +1,17 @@\n+import \"valveextensions.proto\";\n import \"networkbasetypes.proto\";\n \n message CInButtonStatePB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional uint64 buttonstate1 = 1;\n \toptional uint64 buttonstate2 = 2;\n \toptional uint64 buttonstate3 = 3;\n }\n \n message CSubtickMoveStep {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional uint64 button = 1;\n \toptional bool pressed = 2;\n \toptional float when = 3;\n@@ -17,10 +22,14 @@ message CSubtickMoveStep {\n }\n \n message CBaseUserCmdExecutionNotes {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional string ignored_reason = 1;\n }\n \n message CBaseUserCmdPB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional int32 legacy_command_number = 1;\n \toptional int32 client_tick = 2;\n \toptional uint32 prediction_offset_ticks_x256 = 17;\n@@ -43,5 +52,7 @@ message CBaseUserCmdPB {\n }\n \n message CUserCmdBasePB {\n+\toption (codegen_delta_encoder) = true;\n+\n \toptional .CBaseUserCmdPB base = 1;\n }"
        },
        {
          "filename": "Protobufs/usermessages.proto",
          "status": "modified",
          "additions": 5,
          "deletions": 22,
          "changes": 27,
          "patch": "@@ -2,8 +2,6 @@ import \"networkbasetypes.proto\";\n \n enum EBaseUserMessages {\n \tUM_AchievementEvent = 101;\n-\tUM_CloseCaption = 102;\n-\tUM_CloseCaptionDirect = 103;\n \tUM_CurrentTimescale = 104;\n \tUM_DesiredTimescale = 105;\n \tUM_Fade = 106;\n@@ -52,13 +50,13 @@ enum EBaseUserMessages {\n \tUM_NotifyResponseFound = 165;\n \tUM_PlayResponseConditional = 166;\n \tUM_UserSentBugBug = 167;\n+\tUM_UsageReport = 168;\n \tUM_MAX_BASE = 200;\n }\n \n enum EBaseEntityMessages {\n \tEM_PlayJingle = 136;\n \tEM_ScreenOverlay = 137;\n-\tEM_RemoveAllDecals = 138;\n \tEM_PropagateForce = 139;\n \tEM_DoSpark = 140;\n \tEM_FixAngle = 141;\n@@ -127,20 +125,6 @@ message CUserMessageAchievementEvent {\n \toptional uint32 achievement = 1;\n }\n \n-message CUserMessageCloseCaption {\n-\toptional fixed32 hash = 1;\n-\toptional float duration = 2;\n-\toptional bool from_player = 3;\n-\toptional int32 ent_index = 4 [default = -1];\n-}\n-\n-message CUserMessageCloseCaptionDirect {\n-\toptional fixed32 hash = 1;\n-\toptional float duration = 2;\n-\toptional bool from_player = 3;\n-\toptional int32 ent_index = 4 [default = -1];\n-}\n-\n message CUserMessageCloseCaptionPlaceholder {\n \toptional string string = 1;\n \toptional float duration = 2;\n@@ -305,11 +289,6 @@ message CEntityMessageScreenOverlay {\n \toptional .CEntityMsg entity_msg = 2;\n }\n \n-message CEntityMessageRemoveAllDecals {\n-\toptional bool remove_decals = 1;\n-\toptional .CEntityMsg entity_msg = 2;\n-}\n-\n message CEntityMessagePropagateForce {\n \toptional .CMsgVector impulse = 1;\n \toptional .CEntityMsg entity_msg = 2;\n@@ -872,3 +851,7 @@ message CUserMessage_PlayResponseConditional {\n \toptional float pre_delay = 5;\n \toptional int32 mix_priority = 6;\n }\n+\n+message CUserMessage_UsageReport {\n+\toptional string usage = 1;\n+}"
        },
        {
          "filename": "Protobufs/valveextensions.proto",
          "status": "modified",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": "@@ -1,10 +1,15 @@\n import \"google/protobuf/descriptor.proto\";\n \n+extend .google.protobuf.MessageOptions {\n+\toptional bool codegen_delta_encoder = 61000 [default = false];\n+}\n+\n extend .google.protobuf.FieldOptions {\n \toptional bool valve_map_field = 61000 [default = false];\n \toptional bool valve_map_key = 61001 [default = false];\n \toptional int32 diff_encode_field = 61002 [default = 0];\n \toptional bool delta_ignore = 61003 [default = false];\n+\toptional int32 untrusted_delta_max = 61008 [default = 256];\n \toptional uint32 steamml_max_entries = 61004 [default = 0];\n \toptional bool steamml_is_timestamp = 61005 [default = false];\n \toptional uint32 steamlearn_count = 61006 [default = 0];"
        },
        {
          "filename": "content/csgo/maps/editor/zoo/scripts/point_script.d.ts",
          "status": "modified",
          "additions": 13,
          "deletions": 9,
          "changes": 22,
          "patch": "@@ -78,6 +78,16 @@ declare module \"cs_script/point_script\"\n         /** Set when the OnThink callback should next be run. The exact time will be on the tick nearest to the specified time, which may be earlier or later. */\n         SetNextThink(time: number): void;\n \n+        /**\n+         * Queue up a callback to be invoked once, after all entities have executed their think functions this tick (eg. player input has been handled, projectiles have moved).\n+         * This can be useful for delaying until a clean moment when an entity isn't mid-computation and might ignore or misinterpret.\n+         * This can be useful for delaying until the world is in a consistent state.\n+         * Callbacks queued up during a post entity think callback will be invoked in the same tick.\n+         * @experimental This method is experimental and may experience breaking changes.\n+         * Please send feedback to CSGOTeamFeedback@valvesoftware.com with \"cs_script Feedback\" in the subject line.\n+         */\n+        QueueAfterThinks( callback: () => void ): void;\n+\n         /** Called when the point_script entity is activated */\n         OnActivate(callback: () => void): void;\n         /** Called when input RunScriptInput is triggered on the point_script entity with a parameter value that matches name. */\n@@ -139,6 +149,8 @@ declare module \"cs_script/point_script\"\n          * This will be called for all impacts of a bullet before any player damage events are called.\n          */\n         OnBulletImpact(callback: (event: { weapon: CSWeaponBase, position: Vector, hitEntity: Entity }) => void): void;\n+        /** Called when a weapon is dropped. */\n+        OnWeaponDrop(callback: (event: { weapon: CSWeaponBase }) => void): void;\n         /** Called when a grenade is thrown. `projectile` is the newly created grenade projectile. */\n         OnGrenadeThrow(callback: (event: { weapon: CSWeaponBase, projectile: Entity }) => void): void;\n         /** Called when a grenade bounces off a surface. `bounces` is the number of bounces so far. */\n@@ -551,6 +563,7 @@ declare module \"cs_script/point_script\"\n     export class CSWeaponBase extends BaseModelEntity {\n         GetData(): CSWeaponData;\n         GetOwner(): CSPlayerPawn | undefined;\n+        GetOriginalOwner(): CSPlayerPawn | undefined;\n         GetClipAmmo(): number;\n         SetClipAmmo(ammo: number): void;\n         GetReserveAmmo(): number;\n@@ -645,12 +658,3 @@ declare module \"cs_script/point_script\"\n     /** @deprecated This enum will be removed in a future update */\n     export enum CSDamageType { }\n }\n-\n-/**\n- * @deprecated This unreleased feature will be removed in a future update as will the ability to load vts assets.\n- */\n-declare module \"server/serverpointentity\" { }\n-/**\n- * @deprecated This unreleased feature will be removed in a future update as will the ability to load vts assets.\n- */\n-declare module \"server/cspointscript\" { }"
        },
        {
          "filename": "content/csgo/maps/editor/zoo/scripts/setup.js",
          "status": "modified",
          "additions": 11,
          "deletions": 1,
          "changes": 12,
          "patch": "@@ -1,4 +1,4 @@\n-import { CSDamageFlags, Instance } from \"cs_script/point_script\";\n+import { CSDamageFlags, CSDamageTypes, Instance } from \"cs_script/point_script\";\n \n Instance.ServerCommand(\"sv_cheats 1\");\n Instance.ServerCommand(\"mp_warmup_offline_enabled 1\");\n@@ -19,3 +19,13 @@ Instance.OnModifyPlayerDamage(({ player }) => {\n         return { damageFlags: CSDamageFlags.PREVENT_DEATH };\n     }\n });\n+\n+Instance.OnPlayerDamage((event) => {\n+    if (event.damageTypes == CSDamageTypes.SLASH) {\n+        Instance.QueueAfterThinks(() => {\n+            const velocity = event.player.GetAbsVelocity();\n+            velocity.z += 500;\n+            event.player.Teleport({ velocity });\n+        });\n+    }\n+});"
        },
        {
          "filename": "game/bin/assettypes_common.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1238,7 +1238,7 @@\n \t\t\tm_nAssetTypeVersion = 1\n \t\t\tm_LimitToMods = \n \t\t\t[\n-\t\t\t\t\"csgo\",\"csgo_lv\"\n+\t\t\t\t\"csgo\",\"csgo_lv\",\"tf\"\n \t\t\t]\n \t\t\tm_Blocks = \n \t\t\t["
        },
        {
          "filename": "game/bin/built_from_cl.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": "@@ -1 +1 @@\n-10800193\n+10808792"
        },
        {
          "filename": "game/bin/win64/Qt5Core_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -16202,7 +16202,6 @@ Z{Z}Z\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n-\\n\\t\\n\\n\\n\\v\\n\\f\\n\\r\\n\n \\niscii-gjr\n \\niscii-ori\n \\ntmN"
        },
        {
          "filename": "game/bin/win64/Qt5Gui_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -31517,7 +31517,6 @@ ZoomOut\n \\n?count@QBitArray@@QEBAHXZ\n \\n?count@QByteArray@@QEBAHD@Z\n \\n\\n?closingDown@QCoreApplication@@SA_NXZ\n-\\n\\t\\n\\n\\n\\v\\n\\f\\n\\r\\n\n \\n\\t\\n\\t\\t\\t\\n\\t\\n\\t\\t\n \\nendstream\\n\n \\nendstream\\nendobj\\n"
        },
        {
          "filename": "game/bin/win64/Qt5Widgets_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": "@@ -16623,7 +16623,6 @@ Z{pWU~\n \\n\\?setToIdentity@QMatrix4x4@@QEAAXXZ\n \\n\\f?data@QStringListModel@@UEBA?AVQVariant@@AEBVQModelIndex@@H@Z\n \\n\\n?closingDown@QCoreApplication@@SA_NXZ\n-\\n\\t\\n\\n\\n\\v\\n\\f\\n\\r\\n\n \\n\\tactiveGestures:\n \\n\\tcanceled:\n \\n\\tfinished:"
        },
        {
          "filename": "game/bin/win64/SDL3_strings.txt",
          "status": "modified",
          "additions": 172,
          "deletions": 47,
          "changes": 219,
          "patch": "@@ -11,6 +11,8 @@\n  (timestamp=%I64u which=%d axis=%u value=%d)\n  (timestamp=%I64u which=%d ball=%u xrel=%d yrel=%d)\n  (timestamp=%I64u which=%d button=%u state=%s)\n+ (timestamp=%I64u which=%d button_id='%s')\n+ (timestamp=%I64u which=%d capsense=%u state=%s)\n  (timestamp=%I64u which=%d data[0]=%f data[1]=%f data[2]=%f data[3]=%f data[4]=%f data[5]=%f)\n  (timestamp=%I64u which=%d hat=%u value=%u)\n  (timestamp=%I64u which=%d sensor=%d data[0]=%f data[1]=%f data[2]=%f)\n@@ -43,6 +45,7 @@\n  Pen\n  System Control\n  Thelio \n+!\"2D textures must have a layer count of 1\"\n !\"Alpha-to-coverage enabled but no color targets present!\"\n !\"Blit destination texture must be created with the COLOR_TARGET usage flag\"\n !\"Blit destination texture must be non-NULL\"\n@@ -99,7 +102,6 @@\n !\"For any texture: usage cannot contain both GRAPHICS_STORAGE_READ and SAMPLER\"\n !\"For any texture: width, height, and layer_count_or_depth must be >= 1\"\n !\"For array textures: sample_count must be SDL_GPU_SAMPLECOUNT_1\"\n-!\"For array textures: usage must not contain DEPTH_STENCIL_TARGET\"\n !\"For cube array textures: layer_count_or_depth must be a multiple of 6\"\n !\"For cube array textures: sample_count must be SDL_GPU_SAMPLECOUNT_1\"\n !\"For cube array textures: the format is unsupported for the given usage\"\n@@ -190,7 +192,6 @@\n $E4A(\n %.2x%.2x%.2x%.2x\n %.2x-%.2x-%.2x-%.2x-%.2x-%.2x\n-%02hhX\n %I64d\n %S (0x%.4x/0x%.4x)\n %d,%d,%d,%d\n@@ -231,6 +232,7 @@ $E4A(\n (>sdr_white_point\n (Standard system devices) \n )98&F\n+)UUU\n */EZFRD64.DLL\n *7Asig\n *c36\n@@ -240,8 +242,6 @@ $E4A(\n ,DIT\n ,hint:SDL_GAMECONTROLLER_USE_BUTTON_LABELS:=1\n ,hint:SDL_GAMECONTROLLER_USE_GAMECUBE_LABELS:=1\n--\\\\.\\pipe\\HID#VID_045E&PID_028E&IG_00#%*X&%*X&%*X#%d#%*u\n--gameinput.dll\n . In Accept Drag and Drop, window %u, %s Fallback WM_DROPFILES\n . In Accept Drag and Drop, window %u, disabled Full OLE IDropTarget\n . In Accept Drag and Drop, window %u, enabled Full OLE IDropTarget\n@@ -270,6 +270,7 @@ $E4A(\n .\\D3D12\\\n .color_scale\n .dx.countersS\n+.fptable\n /MND\n 0 SeE\n 000000000000\n@@ -575,11 +576,14 @@ $E4A(\n 03000000fa1900000706000000000000,Team 5,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,\n 03000000fa190000f0ff000000000000,Acteck AGJ-3200,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,\n 03000000fa2d00000100000000000000,3DRUDDER,leftx:a0,lefty:a1,rightx:a5,righty:a2,\n+03000000ff1100003133000000000000,Oklick W-2,crc:2004,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:+a1,leftx:a0,paddle1:b7,paddle2:b6,rightshoulder:b5,rightstick:b11,righttrigger:-a1,start:b9,x:b0,y:b1,\n+03000000ff1100003133000000000000,Oklick W-2,crc:faf6,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:+a1,leftx:a0,paddle1:b7,paddle2:b6,rightshoulder:b5,rightstick:b11,righttrigger:-a1,start:b9,x:b0,y:b1,\n 03000000ff1100003133000000000000,SVEN X-PAD,a:b2,b:b3,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a4,start:b5,x:b0,y:b1,\n 03000000ff1100004133000000000000,USB Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a4,righty:a2,start:b9,x:b3,y:b0,\n 03000000ffff00000000000000000000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,\n+03wR\n 0>3n\n-0@OPENGL32.DLL\n+0@SDL_OPENGL_ES_DRIVER\n 0KP\\rG\n 0KP\\rG z\n 0P18\n@@ -597,7 +601,7 @@ $E4A(\n 28O0b`\n 2>X94>\n 2@Q0b\n-2\\vp(g\n+2\\vpl\\\n 2scRGB_output\n 3-bit IMA ADPCM currently not supported\n 3333\n@@ -621,8 +625,8 @@ $E4A(\n 4r`M\n 4ur%\n 504944564944\n+53tk\n 55BODXIL\n-56tk\n 5G7A ,\"tex_norm\n 5dbpm\n 6 De\n@@ -653,21 +657,34 @@ $E4A(\n 8BitDo SF30 Pro\n 8BitDo SN30 Pro\n 8BitDo Tech Ltd\n+8Bitdo Pro 2 Controller\n+8Bitdo Pro 3 Controller\n+8Bitdo SF30 Controller\n+8Bitdo SN30 Controller\n+8Bitdo Ultimate 2 Wireless Controller\n 8]W5#\n :333?\n-:PS4 Controller\n :dx.entryPointsS\n :dx.shaderModelS\n :dx.viewIdStateS\n <&UVLeftTop\n+<8bunz8\n+<action content=\"%s\" activationType=\"foreground\" arguments=\"%s\"/>\n <unspecified>\n+<x5a\n >cs{og>\n-?Out of device-local memory, allocating buffers on host-local memory, expect degraded performance!\n+?4\\fZ2\n+?<TUUUU\n+?NUY\n+?VK_ERROR_OUT_OF_HOST_MEMORY\n ?VK_SUCCESS\n+?XXVx\n ?ff>6fg\n ?ff>ff?\n ?fooff?\n-@Paz@\n+?hPK\n+?i!VPCr(\n+?nWr\n @entryPointOutput\n @entryPointOutput.color\n @entryPointOutput.pointSize\n@@ -756,7 +773,6 @@ BCoInitialize() failed\n BL\\fE\\f\n BMP file with bad dimensions (%dx%d)\n BP\\f1\\f\n-BSDL_JOYSTICK_HIDAPI_PS4\n BTJq\n B\\fp\\v0\n Backbone One\n@@ -911,6 +927,7 @@ Corrupt JPEG\n Corrupt PNG\n Could not acquire swapchain!\n Could not allocate space to read DB into memory\n+Could not bind EGL API\n Could not create D3D12CommandQueue\n Could not create D3D12Device\n Could not create DXGIFactory\n@@ -1035,7 +1052,7 @@ Couldn't load GLES2 function %s: %s\n Couldn't load GetOpenFileName/GetSaveFileName from library\n Couldn't load an overriding SDL library. Please fix or remove the SDL3_DYNAMIC_API environment variable. Using the default SDL.\n Couldn't load stick calibration\n-Couldn't locate our .exe\n+Couldn't locate module\n Couldn't locate our prefpath\n Couldn't lock clipboard data\n Couldn't obtain language info\n@@ -1045,7 +1062,6 @@ Couldn't open given URL.\n Couldn't override SDL library. Using a newer SDL build might help. Please fix or remove the SDL3_DYNAMIC_API environment variable. Using the default SDL.\n Couldn't parse %s\n Couldn't parse GUID from %s\n-Couldn't parse Xbox report descriptor: %s\n Couldn't parse name from %s\n Couldn't query controller info\n Couldn't query controller status\n@@ -1066,6 +1082,7 @@ Couldn't set up raw input handling\n Couldn't setup USB mode\n Couldn't start USB reports\n Couldn't update tray entry label\n+Couldn't write capabilities_packet packet\n Couldn't write feature report\n Couldn't write init packet\n CrSel\n@@ -1189,6 +1206,7 @@ Device lost and couldn't be recovered\n Device not found\n Device not supported by the lg4ff hidapi haptic driver\n Device was already lost and can't accept new opens\n+DeviceHotplugThread\n DialogBoxIndirectParamW\n Direct3DCreate9\n Direct3DCreate9Ex\n@@ -1217,6 +1235,7 @@ DragQueryFileW\n DrawTextW\n Driving Force EX\n Dropping back to a slower method.\n+DualSense Edge Wireless Controller\n DualSense Wireless Controller\n DuplicateHandle()\n DwmEnableBlurBehindWindow\n@@ -1251,7 +1270,6 @@ EGL_KHR_gl_colorspace\n EGL_KHR_surfaceless_context\n EGL_NOT_INITIALIZED\n EGL_SUCCESS\n-EGt1\n ERROR: \n EXECUTION\n Effect data must at least contain a command byte\n@@ -1383,12 +1401,13 @@ Failed to retrieve swapchain descriptor!\n Failed to send ID_DONGLE_GET_WIRELESS_STATE request\n Failed to serialize RootSignature: %s\n File dialog driver unsupported\n+File is not a JPEG file\n File is not a PNG file\n-File is not a Windows BMP file\n File length did not exactly match the destination length\n FillRect\n Find\n FlashWindowEx\n+FlsGetValue2\n Flydigi Apex 2\n Flydigi Apex 3\n Flydigi Apex 4\n@@ -1446,7 +1465,6 @@ GL 3.x is not supported\n GLES2_CreatePalette\n GLES2_CreateRenderer\n GLES2_CreateTexture\n-GLES2_DestroyRenderer\n GLES2_RenderReadPixels\n GLES2_RunCommandQueue\n GLES2_UpdatePalette\n@@ -1482,6 +1500,7 @@ GL_INVALID_VALUE\n GL_NO_ERROR\n GL_OES_EGL_image_external\n GL_OES_surfaceless_context\n+GL_OES_texture_npot\n GL_OUT_OF_MEMORY\n GL_RenderReadPixels\n GL_RunCommandQueue\n@@ -1492,20 +1511,20 @@ GL_UpdatePalette\n GL_UpdateTexture\n GL_UpdateTextureNV\n GL_UpdateTextureYUV\n-GSDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS\n GW'WF\n-GameInput QueryInterface failed\n+G\\r%Gt\n GameInputCreate\n GameInputCreate failed\n+GameInputInitialize\n GamePad-\n GamePad-%d\n GameSir\n GameSir Controller\n-GameSir-G7 Pro (HID)\n-GameSir-G7 Pro 8K (HID)\n-GameSir: Device detected - G7 Pro 8K HID mode (PID 0x%04X)\n-GameSir: Device detected - G7 Pro HID mode (PID 0x%04X)\n+GameSir-G7 Pro 8K\n+GameSir: Device detected - G7 Pro 8K mode (PID 0x%04X)\n+GameSir: failed to send SDL mode switch command (0xA2, 0x01)\n Gamepad %u not found\n+Gamesir Xbox Controller\n Gcoeff\n GenerateConsoleCtrlEvent\n GetAsyncKeyState\n@@ -1517,6 +1536,7 @@ GetClipboardData\n GetClipboardFormatNameA\n GetClipboardSequenceNumber\n GetCurrentDirectoryW failed\n+GetCurrentPackageFullName\n GetCursorPos\n GetDIBits\n GetDefaultStride failed\n@@ -1532,6 +1552,8 @@ GetEraseBackgroundModeHint: invalid value for SDL_HINT_WINDOWS_ERASE_BACKGROUND_\n GetFileTime\n GetFileVersionInfoA\n GetFileVersionInfoSizeA\n+GetFileVersionInfoSizeW\n+GetFileVersionInfoW\n GetFocus\n GetICMProfileW\n GetIoRingInfo\n@@ -1556,6 +1578,12 @@ GetPointerDeviceRects\n GetPointerPenInfo\n GetPointerType\n GetPresentParameters()\n+GetProcAddress failed for RoActivateInstance\n+GetProcAddress failed for RoGetActivationFactory\n+GetProcAddress failed for WindowsCreateString\n+GetProcAddress failed for WindowsCreateStringReference\n+GetProcAddress failed for WindowsDeleteString\n+GetProcAddress failed for WindowsGetStringRawBuffer\n GetPropW\n GetQueueStatus\n GetRawInputBuffer\n@@ -1566,7 +1594,9 @@ GetRenderTargetData()\n GetSaveFileNameW\n GetSurfaceLevel()\n GetSwapChain()\n+GetSystemDirectoryW\n GetSystemPowerStatus\n+GetTempFileNameW\n GetTextExtentPoint32A\n GetTextMetricsW\n GetThreadDpiAwarenessContext\n@@ -1641,6 +1671,7 @@ Haptic: Updating effect type is illegal.\n Hb$E\n Hb$E\\v\n Help\n+HiUL\n HidD_FreePreparsedData\n HidD_GetAttributes\n HidD_GetFeature\n@@ -1707,7 +1738,7 @@ IDAT\n IDAT section larger than 2^30 bytes\n IDXGIDevice1::SetMaximumFrameLatency\n IDXGIFactory2::CreateSwapChainForHwnd\n-IDXGIFactory6::EnumAdapterByGPUPreference\n+IDXGIFactory6::EnumAdapterByGpuPreference\n IDXGISwapChain1::QueryInterface\n IDXGISwapChain1::SetRotation\n IDXGISwapChain3::SetColorSpace1\n@@ -1977,6 +2008,7 @@ LoadCursorW\n LoadIconW\n LoadLibraryW\n Loaded vendored D3D12Core.dll\n+LocalAlloc\n LockRect()\n Logitech ChillStream\n Logitech Driving Force GT\n@@ -2071,10 +2103,10 @@ Negative swap interval unsupported in this GL\n Nhubh4!\n Nintendo\n Nintendo Co., Ltd.\n+Nintendo Family Computer Controller (1)\n+Nintendo Family Computer Controller (2)\n Nintendo GameCube Controller\n Nintendo GameCube WaveBird controllers do not support rumble\n-Nintendo HVC Controller (1)\n-Nintendo HVC Controller (2)\n Nintendo N64 Controller\n Nintendo NES Controller (L)\n Nintendo NES Controller (R)\n@@ -2121,10 +2153,13 @@ Not a PNG\n Not enough data in queue\n Not enough data in queue (resample)\n Not enough resources to create thread\n+Notifications must have a title\n+Notifications require Windows 10 or higher\n Null surface in frame %i\n Number of buttons exceeds limit of %d\n Numlock\n OLEAUT32.dll\n+OPENGL32.DLL\n OSG1\n OSG12\n OSG14\n@@ -2153,6 +2188,7 @@ Oper\n Operation invalid on popup windows\n Out of BAR memory, allocating uniform buffers on host-local memory, expect degraded performance!\n Out of bounds reading report data\n+Out of device-local memory, allocating buffers on host-local memory, expect degraded performance!\n Out of device-local memory, allocating textures on host-local memory!\n Out of memory\n Out of memory - aborting\n@@ -2217,6 +2253,7 @@ PNG not supported: unsupported color depth\n POSITION\n PRESSURE\n PS3 Controller\n+PS4 Controller\n PSV0\n PSV04\n PSV0L\n@@ -2261,6 +2298,7 @@ Public share unavailable on Windows\n QANBA USA, LLC\n QANBA USA,LLC\n QEAD\n+QW@3\n Q\\n%Wv3\n Qanba\n QkkXa\n@@ -2277,17 +2315,21 @@ RESOURCE_MANIPULATION\n RIFF form type is not WAVE (not a Waveform file)\n RIFF size truncates chunk\n ROTATION\n-RSDS|\n+RSDS \n RTS0\n RTS0$\n RTS0H\n+Raw input thread exiting, unexpected wait result: %lu\n Rcoeff\n Read timed out\n Reading from\n Reading past end of flushed track\n Reading past end of incomplete track\n+RegDeleteKeyValueW\n+RegGetValueW\n RegOpenKeyExW\n RegQueryValueExW\n+RegSetKeyValueW\n RegisterClassExW\n RegisterClassW\n RegisterClipboardFormatW\n@@ -2327,8 +2369,11 @@ Right Hyper\n Right Meta\n Right Shift\n Right Windows\n+RoActivateInstance\n+RoGetActivationFactory\n RtlGetVersion\n Rumble failed, device disconnected\n+Rumble is disabled because the adapter is not at least of firmware 0x7\n Running the effect\n S16BE\n S16LE\n@@ -2479,7 +2524,7 @@ SDL generic title storage driver\n SDL generic user storage driver\n SDL offscreen video driver\n SDL revision: %s\n-SDL-release-3.4.0-265-g31404a9dc\n+SDL-release-3.4.0-1051-g0fa422231\n SDL.app.metadata.copyright\n SDL.app.metadata.creator\n SDL.app.metadata.identifier\n@@ -2568,6 +2613,16 @@ SDL.joystick.cap.player_led\n SDL.joystick.cap.rgb_led\n SDL.joystick.cap.rumble\n SDL.joystick.cap.trigger_rumble\n+SDL.notification.action_count\n+SDL.notification.actions\n+SDL.notification.header_icon\n+SDL.notification.image\n+SDL.notification.message\n+SDL.notification.priority\n+SDL.notification.replaces\n+SDL.notification.sound\n+SDL.notification.title\n+SDL.notification.transient\n SDL.process.background\n SDL.process.create.args\n SDL.process.create.background\n@@ -2725,6 +2780,7 @@ SDL.window.create.win32.pixel_format_hwnd\n SDL.window.shape\n SDL.window.win32.hdc\n SDL.window.win32.instance\n+SDL2_COMPAT\n SDL3_DYNAMIC_API\n SDLAudio%c%d\n SDLCamera%d\n@@ -2983,6 +3039,7 @@ SDL_EGL_LIBRARY\n SDL_EGL_LoadLibraryOnly() has not been called or has failed.\n SDL_EGL_SetAttributeCallbacks\n SDL_ENABLE_SCREEN_KEYBOARD\n+SDL_ENABLE_STEAM_SCREEN_KEYBOARD\n SDL_EVENT_AUDIO_DEVICE_ADDED\n SDL_EVENT_AUDIO_DEVICE_FORMAT_CHANGED\n SDL_EVENT_AUDIO_DEVICE_REMOVED\n@@ -3015,6 +3072,8 @@ SDL_EVENT_GAMEPAD_ADDED\n SDL_EVENT_GAMEPAD_AXIS_MOTION\n SDL_EVENT_GAMEPAD_BUTTON_DOWN\n SDL_EVENT_GAMEPAD_BUTTON_UP\n+SDL_EVENT_GAMEPAD_CAPSENSE_RELEASE\n+SDL_EVENT_GAMEPAD_CAPSENSE_TOUCH\n SDL_EVENT_GAMEPAD_REMAPPED\n SDL_EVENT_GAMEPAD_REMOVED\n SDL_EVENT_GAMEPAD_SENSOR_UPDATE\n@@ -3046,6 +3105,7 @@ SDL_EVENT_MOUSE_BUTTON_UP\n SDL_EVENT_MOUSE_MOTION\n SDL_EVENT_MOUSE_REMOVED\n SDL_EVENT_MOUSE_WHEEL\n+SDL_EVENT_NOTIFICATION_ACTION_INVOKED\n SDL_EVENT_PEN_AXIS\n SDL_EVENT_PEN_BUTTON_DOWN\n SDL_EVENT_PEN_BUTTON_UP\n@@ -3097,6 +3157,7 @@ SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED\n SDL_EVENT_WINDOW_RESIZED\n SDL_EVENT_WINDOW_RESTORED\n SDL_EVENT_WINDOW_SAFE_AREA_CHANGED\n+SDL_EVENT_WINDOW_SETTINGS_CHANGED\n SDL_EVENT_WINDOW_SHOWN\n SDL_EndGPUComputePass\n SDL_EndGPUComputePass_REAL\n@@ -3111,6 +3172,17 @@ SDL_EnumerateStorageDirectory\n SDL_EventEnabled\n SDL_FILE_DIALOG_DRIVER\n SDL_FORCE_RAISEWINDOW\n+SDL_FORMFACTOR_CAR\n+SDL_FORMFACTOR_CONSOLE\n+SDL_FORMFACTOR_DESKTOP\n+SDL_FORMFACTOR_HANDHELD\n+SDL_FORMFACTOR_HEADSET\n+SDL_FORMFACTOR_LAPTOP\n+SDL_FORMFACTOR_PHONE\n+SDL_FORMFACTOR_TABLET\n+SDL_FORMFACTOR_TV\n+SDL_FORMFACTOR_UNKNOWN\n+SDL_FORMFACTOR_WATCH\n SDL_FRAMEBUFFER_ACCELERATION\n SDL_FillSurfaceRect\n SDL_FillSurfaceRect(): dst\n@@ -3135,8 +3207,10 @@ SDL_GAMECONTROLLER_SENSOR_FUSION\n SDL_GAMECONTROLLER_USE_BUTTON_LABELS\n SDL_GAMECONTROLLER_USE_GAMECUBE_LABELS\n SDL_GDKResumeGPU\n+SDL_GDKResumeRenderer\n SDL_GDKSuspendComplete\n SDL_GDKSuspendGPU\n+SDL_GDKSuspendRenderer\n SDL_GL_CreateContext\n SDL_GL_DestroyContext\n SDL_GL_ExtensionSupported\n@@ -3170,6 +3244,7 @@ SDL_GamepadConnected\n SDL_GamepadEventsEnabled\n SDL_GamepadHasAxis\n SDL_GamepadHasButton\n+SDL_GamepadHasCapSense\n SDL_GamepadHasSensor\n SDL_GamepadSensorEnabled\n SDL_GenerateMipmapsForGPUTexture\n@@ -3226,6 +3301,8 @@ SDL_GetDaysInMonth\n SDL_GetDefaultAssertionHandler\n SDL_GetDefaultLogOutputFunction\n SDL_GetDefaultTextureScaleMode\n+SDL_GetDeviceFormFactor\n+SDL_GetDeviceFormFactorName\n SDL_GetDirect3D9AdapterIndex\n SDL_GetDisplayForPoint\n SDL_GetDisplayForRect\n@@ -3254,6 +3331,7 @@ SDL_GetGamepadBindings\n SDL_GetGamepadButtonFromString\n SDL_GetGamepadButtonLabel\n SDL_GetGamepadButtonLabelForType\n+SDL_GetGamepadCapSense\n SDL_GetGamepadConnectionState\n SDL_GetGamepadFirmwareVersion\n SDL_GetGamepadFromID\n@@ -3538,6 +3616,7 @@ SDL_HasSSE2\n SDL_HasSSE3\n SDL_HasSSE41\n SDL_HasSSE42\n+SDL_HasSVE2\n SDL_IME_IMPLEMENTED_UI\n SDL_INVALID_PARAM_CHECKS\n SDL_IOFromConstMem\n@@ -3557,25 +3636,31 @@ SDL_IsJoystickHaptic\n SDL_IsJoystickVirtual\n SDL_IsMainThread\n SDL_IsMouseHaptic\n+SDL_IsPhone\n SDL_IsTV\n SDL_IsTablet\n+SDL_IsUbuntuTouch\n SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS\n SDL_JOYSTICK_ARCADESTICK_DEVICES\n SDL_JOYSTICK_ARCADESTICK_DEVICES_EXCLUDED\n SDL_JOYSTICK_BLACKLIST_DEVICES\n SDL_JOYSTICK_BLACKLIST_DEVICES_EXCLUDED\n SDL_JOYSTICK_CHECK_EZFRD64\n SDL_JOYSTICK_DIRECTINPUT\n+SDL_JOYSTICK_DRUM_DEVICES\n SDL_JOYSTICK_ENHANCED_REPORTS\n SDL_JOYSTICK_FLIGHTSTICK_DEVICES\n SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED\n SDL_JOYSTICK_GAMECUBE_DEVICES\n SDL_JOYSTICK_GAMECUBE_DEVICES_EXCLUDED\n SDL_JOYSTICK_GAMEINPUT\n+SDL_JOYSTICK_GAMEINPUT_RAW\n+SDL_JOYSTICK_GUITAR_DEVICES\n SDL_JOYSTICK_HAPTIC_AXES\n SDL_JOYSTICK_HIDAPI\n SDL_JOYSTICK_HIDAPI_8BITDO\n SDL_JOYSTICK_HIDAPI_COMBINED\n+SDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS\n SDL_JOYSTICK_HIDAPI_FLYDIGI\n SDL_JOYSTICK_HIDAPI_GAMECUBE\n SDL_JOYSTICK_HIDAPI_GAMECUBE_RUMBLE_BRAKE\n@@ -3589,6 +3674,7 @@ SDL_JOYSTICK_HIDAPI_LUNA\n SDL_JOYSTICK_HIDAPI_NINTENDO_CLASSIC\n SDL_JOYSTICK_HIDAPI_PS3\n SDL_JOYSTICK_HIDAPI_PS3_SIXAXIS_DRIVER\n+SDL_JOYSTICK_HIDAPI_PS4\n SDL_JOYSTICK_HIDAPI_PS4_REPORT_INTERVAL\n SDL_JOYSTICK_HIDAPI_PS5\n SDL_JOYSTICK_HIDAPI_PS5_PLAYER_LED\n@@ -3633,6 +3719,8 @@ SDL_LoadFile\n SDL_LoadFileAsync\n SDL_LoadFile_IO\n SDL_LoadFunction\n+SDL_LoadJPG\n+SDL_LoadJPG_IO\n SDL_LoadObject\n SDL_LoadPNG\n SDL_LoadPNG_IO\n@@ -3689,8 +3777,7 @@ SDL_Metal_GetLayer\n SDL_MixAudio\n SDL_MixAudio(): unknown audio format\n SDL_NO_SIGNAL_HANDLERS\n-SDL_OPENGL_ES_DRIVER\n-SDL_OPENGL_FORCE_SRGB_CAPABLE\n+SDL_OPENGL_FORCE_SRGB_FRAMEBUFFER\n SDL_OPENGL_LIBRARY\n SDL_OPENXR_LIBRARY\n SDL_OnApplicationDidChangeStatusBarOrientation\n@@ -3757,6 +3844,8 @@ SDL_PIXELFORMAT_MJPG\n SDL_PIXELFORMAT_NV12\n SDL_PIXELFORMAT_NV21\n SDL_PIXELFORMAT_P010\n+SDL_PIXELFORMAT_P408\n+SDL_PIXELFORMAT_P416\n SDL_PIXELFORMAT_RGB24\n SDL_PIXELFORMAT_RGB332\n SDL_PIXELFORMAT_RGB48\n@@ -3850,6 +3939,7 @@ SDL_ReleaseWindowFromGPUDevice\n SDL_ReloadGamepadMappings\n SDL_RemoveEventWatch\n SDL_RemoveHintCallback\n+SDL_RemoveNotification\n SDL_RemovePath\n SDL_RemoveStoragePath\n SDL_RemoveSurfaceAlternateImages\n@@ -3889,6 +3979,7 @@ SDL_RenderViewportSet\n SDL_Renderer\n SDL_ReportAssertion\n SDL_RequestAndroidPermission\n+SDL_RequestNotificationPermission\n SDL_ResetAssertionReport\n SDL_ResetHint\n SDL_ResetHints\n@@ -3905,6 +3996,7 @@ SDL_RunHapticEffect\n SDL_RunOnMainThread\n SDL_STORAGE_TITLE_DRIVER\n SDL_STORAGE_USER_DRIVER\n+SDL_SURFACE_MALLOC\n SDL_SaveBMP\n SDL_SaveBMP_IO\n SDL_SaveFile\n@@ -3950,6 +4042,9 @@ SDL_SetGPUBlendConstants_REAL\n SDL_SetGPUBufferName\n SDL_SetGPURenderState\n SDL_SetGPURenderStateFragmentUniforms\n+SDL_SetGPURenderStateSamplerBindings\n+SDL_SetGPURenderStateStorageBuffers\n+SDL_SetGPURenderStateStorageTextures\n SDL_SetGPUScissor\n SDL_SetGPUScissor_REAL\n SDL_SetGPUStencilReference\n@@ -4046,6 +4141,8 @@ SDL_ShouldInit\n SDL_ShouldQuit\n SDL_ShowAndroidToast\n SDL_ShowFileDialogWithProperties\n+SDL_ShowNotification\n+SDL_ShowNotificationWithProperties\n SDL_ShowOpenFileDialog\n SDL_ShowOpenFolderDialog\n SDL_ShowSaveFileDialog\n@@ -4131,7 +4228,6 @@ SDL_WAVE_FACT_CHUNK\n SDL_WAVE_RIFF_CHUNK_SIZE\n SDL_WAVE_TRUNCATION\n SDL_WINDOWS_CLOSE_ON_ALT_F4\n-SDL_WINDOWS_DETECT_DEVICE_HOTPLUG\n SDL_WINDOWS_DPI_AWARENESS\n SDL_WINDOWS_ENABLE_MENU_MNEMONICS\n SDL_WINDOWS_ENABLE_MESSAGELOOP\n@@ -4140,6 +4236,7 @@ SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL\n SDL_WINDOWS_INTRESOURCE_ICON\n SDL_WINDOWS_INTRESOURCE_ICON_SMALL\n SDL_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS\n+SDL_WINDOWS_RAW_KEYBOARD_INPUTSINK\n SDL_WINDOWS_USE_D3D9EX\n SDL_WINDOW_ACTIVATE_WHEN_RAISED\n SDL_WINDOW_ACTIVATE_WHEN_SHOWN\n@@ -4185,11 +4282,11 @@ SDL_WriteU32LE\n SDL_WriteU64BE\n SDL_WriteU64LE\n SDL_WriteU8\n-SDL_XINPUT_ENABLED\n SDL_abs\n SDL_acos\n SDL_acosf\n SDL_aligned_alloc\n+SDL_aligned_alloc_zero\n SDL_aligned_free\n SDL_app\n SDL_asin\n@@ -4360,6 +4457,9 @@ SDL_wcsnlen\n SDL_wcsnstr\n SDL_wcsstr\n SDL_wcstol\n+SDL_wcstoll\n+SDL_wcstoul\n+SDL_wcstoull\n SDL_window%u-%8.8d.bmp\n SDLasyncio%d\n SETUPAPI.dll\n@@ -4424,7 +4524,6 @@ SetLED failed, device disconnected\n SetLayeredWindowAttributes\n SetLayeredWindowAttributes()\n SetMenuItemInfoW\n-SetNamedPipeHandleState\n SetNamedPipeHandleState()\n SetParent\n SetPixel\n@@ -4481,6 +4580,7 @@ Software renderer doesn't have an output surface\n Sound buffer size must be between %d and %d\n Space\n Steam Controller\n+Steam Controller HID Write FAILED! rc: %d. SDL_Error: %s\n Steam Deck\n Steam cloud is disabled for this application\n Steam cloud is disabled for this user\n@@ -4498,7 +4598,6 @@ SteamAPI_ISteamRemoteStorage_GetQuota\n SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount\n SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp\n SteamAPI_SteamRemoteStorage_v016\n-SteamDeck\n SteamRemoteStorage only supports INT32_MAX read size\n SteamRemoteStorage only supports INT32_MAX write size\n SteamRemoteStorage unavailable\n@@ -4517,6 +4616,7 @@ Stream has no source format\n SubmitIoRing\n Surface already associated with window\n Surface doesn't have a colorkey\n+Surface doesn't use a palette\n Surfaces must not be locked during blit\n SwapBuffers\n SwapBuffers()\n@@ -4531,6 +4631,7 @@ SystemParametersInfoW\n System\\CurrentControlSet\\Control\\MediaCategories\\{%02X%02X%02X%02X-%02X%02X-%02X%02X-%02X%02X-%02X%02X%02X%02X%02X%02X}\n T 3K\n TANGENTIAL_PRESSURE\n+TBZD\n TEST\n TEXCOORD\n TINTLGNT.IME\n@@ -4545,8 +4646,9 @@ Texture doesn't have a palette\n Texture format %s not supported by OpenGL\n Texture format %s not supported by SDL_GPU\n Texture format must be NV12, NV21, or P010\n-Texture format must be YV12 or IYUV\n+Texture format must be YV12, IYUV, P408, or P416\n Texture format not supported\n+Texture framebuffer was incomplete\n Texture has no default usage mode!\n Texture is not currently available\n Texture isn't palettized format\n@@ -4585,6 +4687,7 @@ Tj!t\n TlsSetValue()\n ToUnicode\n Tooltip and popup menu windows must specify a parent window\n+Touch\n TrackMouseEvent\n TrackPopupMenu\n Trackpad\n@@ -4760,7 +4863,6 @@ VK_ERROR_NATIVE_WINDOW_IN_USE_KHR\n VK_ERROR_NOT_PERMITTED_EXT\n VK_ERROR_OUT_OF_DATE_KHR\n VK_ERROR_OUT_OF_DEVICE_MEMORY\n-VK_ERROR_OUT_OF_HOST_MEMORY\n VK_ERROR_OUT_OF_POOL_MEMORY\n VK_ERROR_SURFACE_LOST_KHR\n VK_ERROR_TOO_MANY_OBJECTS\n@@ -4779,6 +4881,7 @@ VK_KHR_driver_properties\n VK_KHR_get_memory_requirements2\n VK_KHR_get_physical_device_properties2\n VK_KHR_maintenance1\n+VK_KHR_portability_enumeration\n VK_KHR_portability_subset\n VK_KHR_sampler_ycbcr_conversion\n VK_KHR_surface\n@@ -4808,6 +4911,7 @@ Validation layers not found, continuing without validation\n Validation layers partially enabled, some warnings may not be available\n Values of 'indices' out of bounds\n VerQueryValueA\n+VerQueryValueW\n VertexShaderConstants\n Very large image (corrupt?)\n Vff6A \n@@ -4841,6 +4945,7 @@ Vulkan is not loaded\n Vulkan loader library already loaded\n Vulkan: Could not create Vulkan instance\n Vulkan: Failed to determine a suitable physical device\n+Vulkan: Failed to load OpenXR: %s\n Vulkan: SDL_Vulkan_LoadLibrary failed!\n W6A \n WARN\n@@ -4886,7 +4991,8 @@ Window must be created with SDL_WINDOW_TRANSPARENT\n Window must have a parent to enable the modal state; use SDL_SetWindowParent() to set the parent first.\n Window not claimed by this device\n Window surface is invalid, please call SDL_GetWindowSurface() to get a new surface\n-Windows error, CommDlgExtendedError: %ld\n+Windows does not support custom notification sounds outside an MSIX package\n+Windows error, CommDlgExtendedError: %lu\n Windows-style path separators ('\\') not permitted, use '/' instead.\n Windows.Xbox.Input.ArcadeStick\n Windows.Xbox.Input.Chatpad\n@@ -4895,6 +5001,10 @@ Windows.Xbox.Input.Gamepad\n Windows.Xbox.Input.Headset\n Windows.Xbox.Input.NavigationController\n Windows.Xbox.Input.Wheel\n+WindowsCreateString\n+WindowsCreateStringReference\n+WindowsDeleteString\n+WindowsGetStringRawBuffer\n Wireless Gamepad\n Wireless HORIPAD For Steam\n Wj\\r/5bp\n@@ -4920,25 +5030,26 @@ XInputGetCapabilities\n XInputGetState\n XInputSetState\n XInputSetState() failed\n+XJSr\n+XM`8q\n XR_APILAYER_LUNARG_core_validation\n XR_KHR_D3D12_enable\n XR_KHR_vulkan_enable2\n XTILT\n XXXX PNG chunk not known\n X\\f=1=IM\n+X\\vty\n Xbox\n Xbox 360 Controller\n Xbox 360 Wireless Controller\n+Xbox 360 Wireless Racing Wheel\n Xbox Adaptive Controller\n Xbox One Chatpad\n Xbox One Controller\n Xbox One Elite 2 Controller\n Xbox One Elite Controller\n Xbox One S Controller\n-Xbox One report descriptor: size = %d\n Xbox Series X Controller\n-Xbox report descriptor missing expected usages, ignoring\n-Xbox report descriptor not available\n Xbox360\n XboxOne\n Y + U + V would overflow\n@@ -4947,7 +5058,7 @@ YTILT\n YUV textures require a Vulkan device that supports VK_KHR_sampler_ycbcr_conversion\n YUY2!\n YV12!\n-YV12, IYUV, NV12, NV21 textures only support full surface locks\n+YV12, IYUV, P408, P416, NV12, NV21 textures only support full surface locks\n YVYU!\n Yoffset\n You are using the SDL disk i/o audio driver!\n@@ -4957,6 +5068,7 @@ You must specify an out pointer for the OpenXR system ID\n You probably don't have a working Vulkan driver installed. %s %s %s(%d)\n Ypitch\n Yplane\n+ZUIKI EVOTOP\n ZUIKI MASCON PRO\n ZvfkJ\n [DXIL\\f\n@@ -4966,12 +5078,12 @@ ZvfkJ\n [slot %d]\n \\6s{o6\n \\B1L\n+\\\\.\\pipe\\HID#VID_045E&PID_028E&IG_00#%*X&%*X&%*X#%d#%*u\n \\\\?\\HID#VID_28DE&PID_11FF&IG_0%d\n \\f<3h>2LayerOrDepth\n \\fB0bp\n \\fCC8\n \\fc=Ac\n-\\fp\\vPHc\n \\fzP\\nqa\n \\n%.2d:      \n \\n\\nSDL assertion report.\\n\n@@ -4986,8 +5098,10 @@ ZvfkJ\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\n \\v60JA\n _SDL_WAKEUP\n+__preserve_none\n ` aCcY\n `0mF\n+`UUUUU\n a 4mC\n a 80\n a:b0,b:b1,back:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,lefttrigger:a4,leftx:a0,lefty:a1,misc1:b11,misc2:b4,rightshoulder:b10,righttrigger:b7,start:b6,x:a5,y:b2,\n@@ -5018,6 +5132,7 @@ a_position\n a_texCoord\n abort\n abxy\n+acosf\n adapterIndex\n aligning pitch would overflow\n altivec\n@@ -5078,7 +5193,7 @@ desc\n desc missing sensor descriptions\n desc missing touchpad descriptions\n destination\n-dialogg\n+dialog\n direct-to-disk audio\n direct3d\n direct3d11\n@@ -5104,6 +5219,7 @@ dst_spec->freq\n dummy\n dxgi.dll\n dxgidebug.dll\n+e<bN\n eW|T\n eglBindAPI\n eglChooseConfig\n@@ -5220,7 +5336,6 @@ glEnableVertexAttribArray\n glEnd\n glFinish\n glFramebufferTexture2D\n-glFramebufferTexture2D() failed\n glFramebufferTexture2DEXT\n glFramebufferTexture2DEXT() failed\n glGenBuffers\n@@ -5288,6 +5403,7 @@ glVertex3fv\n glVertexAttribPointer\n glVertexPointer\n glViewport\n+gpio_ir_recv\n graphicsPipelineCreateInfo\n graphics_pipeline\n guide\n@@ -5299,6 +5415,7 @@ h6%O\n h;uO\n hC@L\n hDXIL`\n+hOy'=\n h\\vKs#BU\n handle\n haptic\n@@ -5349,6 +5466,7 @@ k_eControllerType_\n key already exists and replace is disabled\n ksI#+s\n kz#+c\n+l,kg<i\n laIO\n lasx\n latin_letters\n@@ -5382,8 +5500,9 @@ misc%d\n misc1\n misc1:b11,\n misc1:b11,misc2:b12,\n-misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15\n misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,\n+misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,touchpad:b17,misc2:b16\n+misc1:b11,paddle1:b13,paddle2:b12,misc2:b14,misc3:b15,\n misc2\n misc2:b15,misc3:b16,\n misc3\n@@ -5395,6 +5514,7 @@ mouse_input\n n/zX\n n33>0\n n33>0x\n+n5SDL_XINPUT_ENABLED\n n;3n\n nC@L\n ncolors\n@@ -5435,10 +5555,9 @@ p\\v|0b\n paddle1\n paddle1:b11,paddle2:b12,\n paddle1:b11,paddle2:b12,paddle3:b13,paddle4:b14,\n-paddle1:b11,paddle2:b12,paddle3:b13,paddle4:b14,misc2:b15,misc3:b16,\n paddle1:b11,paddle2:b13,paddle3:b12,paddle4:b14,\n paddle1:b12,paddle2:b11,paddle3:b14,paddle4:b13,\n-paddle1:b13,paddle2:b12,paddle3:b15,paddle4:b14,misc2:b11,misc3:b16,misc4:b17\n+paddle1:b13,paddle2:b12,paddle3:b15,paddle4:b14,misc1:b11\n paddle1:b14,paddle2:b13,\n paddle1:b16,paddle2:b15,paddle3:b14,paddle4:b13,\n paddle2\n@@ -5457,6 +5576,7 @@ platform:\n point\n points\n poweroff\n+powf\n pressed\n projectionAndView\n ps_2_0\n@@ -5478,6 +5598,7 @@ qYVYU\n queue\n quiet\n r,s,d\n+rX0p\n raw mouse input\n read size overflow\n realloc_func\n@@ -5513,6 +5634,7 @@ sensor\n sig_ld4\n sig_st\n sig_stD\n+silent\n size_indices\n skip\n slot_index exceeds MAX_UNIFORM_BUFFERS_PER_STAGE\n@@ -5543,12 +5665,12 @@ stream\n streams\n strict\n surface\n+sve2\n swapchain_texture\n switchpro\n system\n t0P18r \n t0bp\n-t:DualSense Edge Wireless Controller\n tex%d\n texel_size\n text/plain\n@@ -5905,12 +6027,14 @@ vkUnmapMemory\n vkUpdateDescriptorSets\n vkWaitForFences\n vkWaitForFences()\n+vmg$9\n vulkan\n vulkan-1.dll\n w0_row\n w0bp\n w1_row\n w2_row\n+wFile is not a Windows BMP file\n waitevent\n wasapi\n wglChoosePixelFormatARB\n@@ -5928,6 +6052,7 @@ wglSwapIntervalEXT\n wglSwapIntervalEXT()\n width * 4 would overflow\n width * bpp would overflow\n+width * height * bpp would overflow\n width * height would overflow\n width + 1 would overflow\n window"
        },
        {
          "filename": "game/bin/win64/animationsystem_strings.txt",
          "status": "modified",
          "additions": 288,
          "deletions": 96,
          "changes": 384,
          "patch": "@@ -10,7 +10,7 @@\n    + WeightList[%d]  :: %s\\n\n   %i bytes : %s %f : (%s)\\n\n   %i bytes : %s : (%s)\\n\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -26,25 +26,30 @@\n  %s : Animations loaded but no animation data found\\n\n  %s : animtable hash too small: %d elements / %d buckets\\n\n  %s : seqtable hash too small: %d elements / %d buckets\\n\n- (08@HPX`jP\n- (08@HPZP\n- (08@JP\n+ (08@HPX`jp\n+ (08@HPXbp\n+ (08@HPZp\n+ (08@HRp\n+ (08@Jp\n+ (0X`hpzp\n  * %d WeightLists\\n\n  * ScaleSet[%d] :: %s\\n\n  * WeightList[%d] :: %s\\n\n  ** Entrypoint For Method '%s'\n  - (Additive)\n  <-- Arg '%s'\n  <-- Retval '%s'\n- B0=q\n+ Aconst char *__cdecl Reflection::Internal::GetFuncName<class CEmitTagActionUpdater>(void)\n  Vector b\n  [*OBSERVABLE*]\n+ \\tV_coshf\n  \\t\\n\\r@()[]{}=&,:*|;'!\n \"Limit Count: \" + m_nLimitCount\n #################################\\n\n #Angle\n #Position\n #Scale\n+#\\tV_exp2f\n #data\n %d CallInfos:\\n\n %d Cells:\\n\n@@ -80,51 +85,60 @@\n %d.Transform( %s, Vector( %.2f, %.2f, %.2f ), DegreeEuler( %.2f %.2f %.2f ) )\\n\n %d.Worldspace( %s, %d, %.2f )\n %d.Worldspace( %s, %d, %.2f )\\n\n+%s %s: %s - %s - %s\\n\n %s '%s' (%s)\n %s (%.2f, %.2f, %.2f)\n-%s (%d) - %s\\n\n %s (Color)\n %s (Material)\n %s - %.1f%%, %.2fs, frame %.1f %s\n %s : param %s %s : %f\\n\n %s Target\n %s follows %s\n+%s%02d:%02d\n %s::%s (%u)\n %s::%s (Entity Output Handler)\n %s\\n%2.f - Pos: %.2f, Orient: %.2f\n %s_color\n %s_matgrp\n 'Play reversed' has no effect when used with time synchronization!\n (%f, %f, %f)\n-(1It\n-(1wt\n-(9Et\n-(9Ot\n-(AHt\n-(Azt\n+(1iw\n+(5hw\n+(92w\n+(AFw\n (Blend1D):m_flBlendValue\n (Blend1D):m_resetCount\n-(I1t\n-(I6t\n-(Myt\n-(Q8t\n-(QBt\n-(QLt\n-(Qft\n-(Qxt\n-(YXt\n-(ast\n-(eRt\n-(q7t\n-(qEt\n-(uzt\n+(I4w\n+(Ikw\n+(M0w\n+(Mtw\n+(QZw\n+(UJw\n+(Ugw\n+(YPw\n+(aCw\n+(anw\n+(aqw\n+(e1w\n+(e5w\n+(fPgb\n+(ipw\n+(ivw\n+(mew\n+(myw\n+(y7w\n+(yBw\n+(yLw\n ** Invalid ID **\n *** Test failure: \"%s\"\n ***\\nShared activity collision with private activity! %s<->%s [%i]\\n***\\n\n ***\\nShared<->Private Activity collision!\\n***\\n\n ***\\nShared<->Private Event collision!\\n***\\n\n *>PlayerInputAnimMotorInstance\n - Scripted Sequence: \n+.0Ob\n+.0ab\n+.0lb\n .?AU?$ArrayWrapper@V?$CUtlVector@UCWeightPreview@@HV?$CUtlVectorMemory_Growable@UCWeightPreview@@H$0A@@@@@@Detail@Reflection@@\n .?AU?$ArrayWrapper@V?$CUtlVector@V?$CSmartPtr@VCAnimComponentInstance@@VCRefCountAccessor@@@@HV?$CUtlVectorMemory_Growable@V?$CSmartPtr@VCAnimComponentInstance@@VCRefCountAccessor@@@@H$0A@@@@@@Detail@Reflection@@\n .?AU?$ArrayWrapper@V?$CUtlVector@V?$CSmartPtr@VCAnimMotorInstance@@VCRefCountAccessor@@@@HV?$CUtlVectorMemory_Growable@V?$CSmartPtr@VCAnimMotorInstance@@VCRefCountAccessor@@@@H$0A@@@@@@Detail@Reflection@@\n@@ -446,6 +460,7 @@\n .?AUCFootMotionStatus@@\n .?AUCMorphSetData@@\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AUCSequenceGroupData@@\n .?AUCWeightPreview@@\n@@ -455,6 +470,7 @@\n .?AUIStringAccessor@?$StringAttrBase@VObjectName@Attribute@@@Detail@Attribute@@\n .?AUIStringAccessor@?$StringAttrBase@VObjectUserData@Attribute@@@Detail@Attribute@@\n .?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCAimMatrixUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCAimMatrixUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCAnimStateMachineUpdater@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@PEBVCAnimStateMachineUpdater@@P83@EBAXAEAVCAnimUpdateContext@@H@Z@Z@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCAnimationLayer@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@V?$CPackedDataOffset@VCAnimationLayer@@@@P8CAnimationLayer@@EAAXAEAVCAnimUpdateContext@@H@Z@Z@\n@@ -479,13 +495,13 @@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCSelectorUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCStateMachineUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCStateMachineUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@\n .?AV<lambda_1>@?1???$MakeNetVarCallback@VCTargetSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCTargetSelectorUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@\n+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@\n .?AV<lambda_1>@CAnimParameterInstance@@\n .?AV<lambda_1>@CConcreteAnimParameter@@\n .?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n .?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n-.?AV?$CAnimNetVarDataOps@V?$CAnimNetVar@I@@$0CF@@@\n-.?AV?$CAnimNetVarDataOps@V?$CAnimNetVar@M@@$00@@\n .?AV?$CBaseAppSystem@VIAnimationSystem@@@@\n .?AV?$CBaseConcreteToolAttr@EVCEnumAnimParameter@@@@\n .?AV?$CBaseConcreteToolAttr@HUIKSolverSettings_t@@@@\n@@ -1305,6 +1321,7 @@\n .?AV?$_Func_base@_NPEBVCAnimComponentInstance@@@std@@\n .?AV?$_Func_base@_NPEBVCAnimParameterBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAimMatrixUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCAimMatrixUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAnimStateMachineUpdater@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@PEBVCAnimStateMachineUpdater@@P84@EBAXAEAVCAnimUpdateContext@@H@Z@Z@XAEAV5@H@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAnimationLayer@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@V?$CPackedDataOffset@VCAnimationLayer@@@@P8CAnimationLayer@@EAAXAEAVCAnimUpdateContext@@H@Z@Z@XAEAV6@H@std@@\n@@ -1329,9 +1346,11 @@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCSelectorUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCStateMachineUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCStateMachineUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCTargetSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCTargetSelectorUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@CAnimParameterInstance@@VColor@@PEBV2@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@CConcreteAnimParameter@@VColor@@PEBVCAnimParameterBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V?$_Mem_fn@P8CActionComponentInstance@@EBAAEBVCUtlString@@XZ@std@@AEBVCUtlString@@PEBVCActionComponentInstance@@@std@@\n@@ -2042,13 +2061,29 @@\n .?AVUseReflectionEditor@AnimGraph@Attribute@@\n .?AVUsesCustomCurrentValue@MotionMatching@Attribute@@\n .?AVUsesCustomSampleInterpolation@MotionMatching@Attribute@@\n+.PLb\n+.PMb\n+.PPb\n+.Pjb\n+.pDb\n+.pKb\n+.pMb\n+.pjb\n .vagrp_c/.vanim_c mismatch :: %s :: %s\\n\n-08@HRP\n-08BP\n+08@HRp\n+08@Jp\n+08Bp\n 180_recovery\n-2\\vpD\n 2_BONE_IK\n-8@JP\n+6 Fb\n+6 gb\n+6P>b\n+6pFb\n+6pYb\n+6p^b\n+8!ww\n+8@Jp\n+8Fpcb\n ::embedded_animation\n :NetworkedCycle:CycleZeroTime\n :NetworkedCycle:CyclesPerSecond\n@@ -2073,18 +2108,36 @@\n <Invalid State>\n <map_key>\n <map_value>\n+<non-RTTI type>\n <none>\\n\n <pair_a> \n <pair_b> \n == PulseGraphDef ==\\n\n ========================================\\nNew Pose Recipe Max Size\\nNumOps: %i\\nBuffer Used: %i\\nPose Operations:\\n\n+=CConstraintTarget\n =CNmTransitionNode::CDefinition\n+>0Vb\n+>0fb\n+>P8b\n+>PFb\n >fff?\n+>pgb\n+?AnimVectorSource\n ?CMotionDataSet\n ?MGetKV3ClassDefaults\n-?Move Heading\n+?const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)\n ?expf\n ?m_flPosition\n+@08N\n+@6P9b\n+@6P;b\n+@6p]b\n+@>0Bb\n+@HPX`hv0Rb\n+@N@Sb\n+@Referenced graph resource failed to load or is invalid: %s\n+@V@const char *__cdecl Reflection::Internal::GetFuncName<class IPathAnimMotorInstance>(void)\n+@const char *__cdecl Reflection::Internal::GetFuncName<class IPairedSequenceComponentInstance>(void)\n @fff>fff>fff>fff>\n A string associated with this Cursor, to use later for remote Kill or Wait requests. Cursors can have any number of Tags associated with them.\n ACT_NEUTRAL_REF_POSE\n@@ -2137,7 +2190,6 @@ AE_WPN_NEXTCLIP_TO_POSEPARAM\n AE_WPN_PLAYWPNSOUND\n AE_ZOMBIE_POPHEADCRAB event format missing velocity parameter! Usage: event AE_ZOMBIE_POPHEADCRAB \"<BoneName> <Speed>\" \\n\n ATTACHMENT_INFLUENCE_FLAGS_NONE\n-A\\v:0h\n Abs Float\n Abs Int\n Absolute value (float)\n@@ -2147,18 +2199,21 @@ Active\n Active Motor\n Active Motor Index\n Actual Target\n+Add Flags\n Add R%d <- R%d + R%d\n+Add flags to the given value.\n Add the array 'b' to the end of 'a'.\n AddSequence( %s, %.3f ) : %.3f\n Adding %d ScaleSets SequenceGroup[%d] :: %s\\n\n Adding %d WeightLists SequenceGroup[%d] :: %s\\n\n Additive Blend\n Additive Blend (Masked): %.2f%%\n Additive Blend: %.2f%%\n+AdditiveBlendTask - Trying to perform an additive blend using a parent space pose\n Adjusted foot position; offset: %.2f\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n AllocateAndLoad failed for '%s' (%s)\\n\n AllocateAndLoad failed for '%s'\\n\n-Always\n And R%d <- R%d && R%d\n Anim Clip\n AnimGraph\n@@ -2205,27 +2260,32 @@ Array Remove Invalid Elements\n Array Set Count\n Array Shuffle\n Assert True\n-Async Fire C%d:I%d\n+AssetBrowse( %s )\n+AssetBrowse()\n+Async Call Method (Child Cursor) C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n Attempting to perform a global blend without a bone mask! This is not supported so falling back to a local blend!\n Attribute\n BLEND_PREALIGNED|\n Bad FLC data for resource '%s': %s\\n\n Bad KV3 data for resource '%s': %s\\n\n Bad KV3 data in control block for '%s': %s\\n\n Bad block type for embedded animation data\\n\n-Bad count in ArraySetCount (%d)\n Bad data block index for vagrp embedded animation data (%d)\\n\n Bad max in ArrayFirstNElements (%d)\n Bad reinterpret on ArrayAppend\n Bad reinterpret on ArrayInsert\n Bad reinterpret on ArrayRemoveElementMatching\n Base-10 logarithm\n Base-2 logarithm\n+Basic string support.\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n Begin testing a condition composed of Observable variable references. Continues checking until true.\n Blend (Masked): %.2f%%\n Blend: %.2f%%\n BlendNode\n+BlendTask - Trying to perform an blend with mismatched pose types (additive/parent-space)\n Block Selection\n Bm_Plane\n BodyGroup: %s => %d\n@@ -2240,7 +2300,11 @@ BoneConstraintRbf :: input bone count %d != input pose count %d :: %s\\n\n BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\\n\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\animationsystem\\_vpc_animationsystem\\unity\\win64\\_msvc_\\Retail\\animationsystem.pdb\n C:\\buildworker\\csgo_rel_win64\\build\\src\\animationsystem\\animationsystem.cpp\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\animlib\\animpose.cpp\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\animlib\\animskeleton.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\animlib\\graph\\animgraph_instance.cpp\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\animlib\\graph\\nodes\\animgraphnode_chainlookat.cpp\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\animlib\\tasksystem\\tasks\\animtask_chainlookat.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\mathlib\\range.h\n CAnimNetVar\n CAnimValue\n@@ -2299,12 +2363,18 @@ CModelBodyGroupName\n CModelBoneName\n CModelMaterialGroupName\n CMotionTransform\n+CNmChainLookatNode::CDefinition::InstantiateNode\n+CNmChainLookatTask::CNmChainLookatTask\n+CNmFloatChannelData\n+CNmFloatChannelData::ChannelSettings_t\n+CNmFloatChannelSet_t\n CNmGraphDefinition::KV3TransferPostLoadFn failed to FindDeclaredClass( '%s' )\n CNmGraphInstance::CNmGraphInstance\n CNmGraphInstance::EvaluateGraph\n CNmGraphInstance::GetCurrentGraphTimingInfo\n+CNmPose::DrawDebug\n+CNmSkeleton::DrawDebug\n CPPScript Component\n-CPairedSequenceInstanceData\n CParentAttachmentName\n CParticleCollectionBindingInstance::HACK_UnusedBinding\n CParticleNamedValueRef\n@@ -2320,9 +2390,9 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -2332,26 +2402,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n CPulseCell_PickBestOutflowSelector::ProcessSelector\n CPulseCell_Step_CallExternalMethod '%s'\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseMathlib::AbsFloat\n CPulseMathlib::AbsInt\n CPulseMathlib::ArcCos\n@@ -2388,6 +2460,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -2417,16 +2490,21 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseTestScriptLib::AssertTrue\n CPulseTestScriptLib::IndicateTestFailure\n CPulseTestScriptLib::IsInTestMode\n CPulseTestScriptLib::RegisterTestCheckpoint\n CPulseTestScriptLib::TestModeAssertTrue\n+CREATE_CHILD_CURSOR_OUTFLOW\n CRelativeArray\n CResourceName\n CResourceNameTyped\n@@ -2441,6 +2519,7 @@ CURVE_TANGENT_MIRROR\n CURVE_TANGENT_SINE\n CURVE_TANGENT_SPLINE\n CUtlBinaryBlock\n+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount\n CUtlDict<class CAttachment,class CDefFastCaselessStringLess>::Insert\n CUtlDict<class CHitBoxSet,class CDefFastCaselessStringLess>::Insert\n CUtlDict<class IParamLookupHelper const *,class CDefFastCaselessStringLess>::Insert\n@@ -2452,6 +2531,7 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CGlobalSymbol,int,class CMemAl\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CMaterialDrawDescriptor,int,class CMemAllocAllocator>,class CMaterialDrawDescriptor,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CMeshletDescriptor,int,class CMemAllocAllocator>,class CMeshletDescriptor,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CNmBoneWeightList,int,class CMemAllocAllocator>,class CNmBoneWeightList,int>::InsertBeforeGetPtr\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CNmFloatChannelSet_t,int,class CMemAllocAllocator>,class CNmFloatChannelSet_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct AABB_t,int,class CMemAllocAllocator>,struct AABB_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CConstraintSlave,int,class CMemAllocAllocator>,struct CConstraintSlave,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CMaterialDrawDescriptor::RigidMeshPart_t,int,class CMemAllocAllocator>,struct CMaterialDrawDescriptor::RigidMeshPart_t,int>::InsertBeforeGetPtr\n@@ -2461,8 +2541,10 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDrawDescriptor_t,int,class CMemAllocAllocator>,struct CSceneObjectData::RTProxyDrawDescriptor_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CGlobalSymbol,struct CPPScriptParamHandle,class CDefEquals<class CGlobalSymbol>,struct DefaultHashFunctor<class CGlobalSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CGlobalSymbol,struct CPPScriptParamHandle,class CDefEquals<class CGlobalSymbol>,struct DefaultHashFunctor<class CGlobalSymbol>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlString,struct VertexColor_t,class CDefEquals<class CUtlString>,struct DefaultHashFunctor<class CUtlString>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlString,struct VertexColor_t,class CDefEquals<class CUtlString>,struct DefaultHashFunctor<class CUtlString>,int>::HashBucket_t,int>::AddMultipleToTail\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct NmBoneMaskSetDefinition_t,int,class CMemAllocAllocator>,struct NmBoneMaskSetDefinition_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,3,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,4,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,5,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr\n@@ -2482,11 +2564,11 @@ CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CNmStateNode::Ti\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,10,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,30,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,8,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr\n+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage\n+CUtlStringToken\n CUtlVectorFixedGrowable\n CWeakHandle\n Call C%d:I%d (%s)\n-Cancel\n-Cancel observing.\n Cannot allocate abstract class\n Cannot construct abstract class\n Cannot convert KV3 type '%s' (%u) to a string token\n@@ -2506,8 +2588,8 @@ Cannot register variable %s more than once\n Cannot register variable %s: it has no components\n Cannot register variable %s: only float variables can have multiple components\n Cant find specified alignment bone ID ('%s') for target warp node\n-Cant find specified bone ID ('%s') for chain end\n Cant find specified bone IDs or there are not enough bones in the specified chains ('%s, %s') for two bone effector node\n+Cant find specified effector bone ID ('%s') for lookat\n Ceiling - round float up to nearest integer)\n Ceiling Float\n Chain Lookat\n@@ -2523,8 +2605,9 @@ Clamp value to range (float)\n Clamp value to range (int)\n Class does not allow allocation from its schema binding\n Class does not allow construction from its schema binding\n+Clip Selector: Failed to select a valid option!\n Commit Step\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n Completed\n Computes 2 ( 2.71...) raised to a power\n Computes e ( 2.71...) raised to a power\n@@ -2541,7 +2624,6 @@ Convert radians (0-pi) to degrees (0-180)\n Copy 'element' to the end of 'a', increasing its count by one.\n Copy R%d <- R%d\n Cosine of angle. Input in radians, output in radians\n-Couldn't find bone mask with ID: %s\n Couldn't load KV3 for resource: %s\n Count the number of codepoints in the string (unicode-aware). If you want rendered glyphs, you probably want to consider using Panorama.\n Creating Bone Masks for Skeleton: Could find secondary skeleton for bone mask: %s\\n\n@@ -2558,6 +2640,8 @@ Cursor Has Tag\n Cursors Allowed To Run Parallel\n Cursors Allowed To Wait\n CycleControlClipNode\n+Cylinder - Centered (SLOW PERF)\n+Cylinder - Ground (SLOW PERF)\n DOT_TO_MORPH\n Damped Value Component\n DampedPathAnimMotorInstance\n@@ -2582,6 +2666,7 @@ Domain: %s\\n\n Dot Product Vector\n Dot Product of Vector a \n Down\n+DualHull\n ENUM_\n Effector: %s\n Element Access R%d <- R%d[R%d]\n@@ -2626,9 +2711,9 @@ Entity Attribute Base\n Entity Attribute Float\n Entity Attribute Int\n EntityName\n+Enum support.\n Eq R%d <- R%d == R%d\n Error in SolveCubic\\n\n-Error: %s (%d) - %s\\n\n Evaluate the curve at the specified input position\n Evaluate the gradient at a position between 0 and 1\n EvaluateGraph\n@@ -2650,12 +2735,13 @@ FLAG_MESH|\n FLAG_PHYSICS|\n FLAG_PROCEDURAL|\n FLAG_RIGIDLENGTH|\n+F`fb\n Face Down Path\n Face Look Target\n Facing Mode\n Fail Outflow\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to apply FLC data to resource '%s': %s\\n\n Failed to call CBaseIntrospectedToKV3TypeManager::Init\n Failed to compile Fuse script: %s\\n\n@@ -2666,7 +2752,9 @@ FeetSettings\n Final pivot orientation\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find first element 'a' which compare equal to 'element' and return its index.\n+Fired\n Fixed Section\n Float Curve (%s)\n Float To Game Time\n@@ -2688,6 +2776,8 @@ FootAdjustmentNode\n FootLock:m_resetCount\n FootPinning:ResetCount\n Force Facing\n+Format Duration String From Seconds\n+Fp-b\n Frac\n Fractional component (ie. returns 0.34 for 12.34)\n FrameUpdate\n@@ -2718,42 +2808,45 @@ GetVar R%d <- V%d (%s)\n GetVar R%d <=MOVE*V%d (%s)\n GlobalSymbol\n Gradient()\n+Graph\n GraphNodes\n GridBlendNode\n HAC K  Unused Binding\n HELPER_BONE\n+Has All Flags\n+Has Any Flags\n HasPath\n Hinge Axis\n HitReact:m_hitCount\n HitReact:m_resetCount\n+ID Selector: Failed to select a valid option for ID: %s!\n IK Target: %s\n IKChainDataPoleVectorForAxis::X\n IKChainDataPoleVectorForAxis::Y\n IKChainDataPoleVectorForAxis::Z\n IKV3TransferInterface_AllowRawStringTokenTransfer\n IKV3TransferInterface_ResourceSave\n-IKV3TransferInterface_UtlSymbolLarge\n IND)ind)\"\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If specified, each wait interval will vary randomly between WaitInterval this value\n If this cursor spawns other work via Fire And Forget, should this Tag be inherited?\n Ignoring mismatched anim :: %s :: %s\\n\n Indicate Test Failure\n Indicate that a checkpoint has been reached.\n Indicates a test failure if Value is false.\n Indicates a test failure if value is false; only tested when running unit tests\n+Info\n Initial tilt bone orientation.\n Insert 'element' in the given index in 'a', increasing its count by one and moving the elements after index.\n Integer Divide\n Integer division - unlike the divide (/) node, this will truncate any remainder (floor) and return an integer.\n Intercept point.\n-Invalid chain end bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request\n Invalid component specifier \".%s\" used on variable \"%s\"\n Invalid effector bone ID ('%s') specified in input target\n Invalid effector bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request\n Invalid input detected for target selector\n+Invalid input target bone ID ('%s') specified\n Invalid left effector bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request\n Invalid number of parameters.  Specify a flag you want to toggle.\n Invalid property specification\n@@ -2776,14 +2869,22 @@ KV3 save transfer failed: %s\n KeyValues3\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n Km_IKChains\n LOD %i\n LOD Component\n LOD Off\n LabelledDebugHelperDebug\n LeanMatrixNode\n Leap to Chunk C%d\n+LegacyAnimFieldType_t::BOOLEAN\n+LegacyAnimFieldType_t::COLOR32\n+LegacyAnimFieldType_t::FLOAT32\n+LegacyAnimFieldType_t::INT32\n+LegacyAnimFieldType_t::QUATERNION\n+LegacyAnimFieldType_t::SCALE32\n+LegacyAnimFieldType_t::VECTOR2D\n+LegacyAnimFieldType_t::VECTOR3D\n+LegacyAnimFieldType_t::VECTOR4D\n Length (magnitude) of Vector\n Length (magnitude) of Vector2D\n Length Vector\n@@ -2805,9 +2906,12 @@ Look Pitch (World)\n Low LOD\n MAlternateSemanticName\n MAtomicTransfersAsPlainString\n+MESH_BUFFER_USAGE_VERTEX_EMISSIVE\n MFgdHelper\n MIsStringAndTokenType\n MKV3TransferName\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MModelGameData\n MORPH\n MPropertyArrayElementNameKey\n@@ -2820,18 +2924,21 @@ MPropertySortPriority\n MPropertySuppressField\n MPulseExpressionAlias\n MPulseFunctionHiddenInTool\n+MPulseTypeRestriction\n MVDataRoot\n Make Angle\n Make Angle From Forward Vector\n Make Color\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -2870,6 +2977,7 @@ ModelAttachmentName()\n ModelBodyGroupName()\n ModelBoneName()\n ModelMaterialGroupName()\n+ModelSpaceBlendTask - Trying to perform a model-space blend using an additive pose\n MorphChannel\n MotionMatching:SelectionChangeCount\n MotionMatching:clipIndex.index\n@@ -2889,6 +2997,7 @@ MoveData\n Movement Component\n MoverNode\n Mul R%d <- R%d * R%d\n+N@Bad count in ArraySetCount (%d)\n NULL CELL \n Natural logarithm (base e)\n Neg R%d <- -R%d\n@@ -2903,18 +3012,19 @@ No DATA block for resource\\n\n No ID Set\n No Orientation Warp Event Found!\n No effector bone ID specified in input target\n+No input target bone ID specified\n No valid warp events detected! Either no events present or start time is after warp events.\n NodeID %d port '%s' called from C%d:I%d\n Normalize Vector a\n Not R%d <- !R%d\n Not Set\n+Not enough bones, there are not enough bones in the chain to achieve the requested chain length, chain is limited to %d bones\n Not safe to 'new' this class due to alignment requirements\n ORIENT\n On Interval\n On True\n OnInterval\n Only wrote %d (of %d) values when saving map!\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Or R%d <- R%d || R%d\n Orientation Warp failed since there is not enough time left to warp or we're past the warp event!\n@@ -2929,21 +3039,30 @@ Outflow List\n Overlay Blend\n Overlay Blend (Masked): %.2f%%\n Overlay Blend: %.2f%%\n+OverlayBlendTask - Trying to perform an overlay blend with mismatched pose types ( additive/parent-space )\n OverlayProjectionDirection\n-P08J \n+P08@Jp\n+P08J\n+P08N\n+P6pLb\n+P6plb\n PARENT\n+PF_TYPE_CONTROL_POINT_IS_SET\n POSE_SPACE_BONE\n POSE_SPACE_MORPH\n Packed data buffer overflow: %d > %d\\n\n-PackedBlobNormal\n Paired Sequence Component\n PairedSeq:m_hSequence\n PanelID\n ParamList\n+Parameterized Clip Selector: Failed to select a valid option!\n+Parameterized Selector: Failed to select a valid option!\n Parameters\n Parent\n Parent Map: %s\\n\n+Parent VData\n ParentAttachmentName()\n+Particle (%s) (%s)\n Particle Binding\n Particle Binding (Real)\n ParticleParamID_t\n@@ -2962,23 +3081,25 @@ Position progress\\t\\t\\t[%f]\n PrevActive\n Previous normal\n Prl Eval\n+Proceed Immediately\n Process Selector\n Program has invalid instruction %i\n Program uses more temp variables than are supported. Needs %i, max is %i\n PropWorldOrigin\n Pulse domain which enables particle content to query leaf code to introspect game state.\n+PulseDurationStringFormat_t\n QAngle\n Quaternion\n QuaternionStorage\n R Sqrt\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RESOURCE_TYPE_ANIMATION_GROUP_INTERNAL\n RESOURCE_TYPE_ANIMATION_INTERNAL\n RESOURCE_TYPE_NM_CLIP\n RESOURCE_TYPE_NM_GRAPH\n RESOURCE_TYPE_NM_SKELETON\n RESOURCE_TYPE_SEQUENCE_GROUP_INTERNAL\n ROTATION\n-R\\vp!F\n R\\vp!y\n Rad2 Deg\n Ragdoll Component\n@@ -2990,15 +3111,16 @@ Read Cached Pose\n Reciprocoal square root (1/sqrt)\n Reference Pose Task\n Referenced clip resource failed to load or is invalid: %s\n-Referenced graph resource failed to load or is invalid: %s\n Register Test Checkpoint\n Reinterpret Instance %s R%d <- %s R%d\n Remap Clamped Float\n Remap Value Component\n Remap and clamp input value from input range to output range (float)\n+Remove Flags\n Remove Tag From Cursor\n Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n Requested next step\n@@ -3029,6 +3151,7 @@ Scale INV R%d <- R%d / R%d\n Scale R%d <- R%d * R%d\n Script Component\n Selected Option\n+Selector: Failed to select a valid option!\n SelectorNode\n Sequence out of range: %d\n Sequence( %s, %.3f ) : %.3f\n@@ -3076,19 +3199,19 @@ Start a timer with the specified duration, fire the OnInterval output\n State Machine Component\n StateMachineNode\n Steps Remaining\n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n String Length\n Strings Are Equal Case Sensitive\n Sub R%d <- R%d - R%d\n Symbol\n+Synchronous - Wait for this node to fully complete before proceeding.\n TAG_\n THEM\n TILT_TWIST\n TWIST\n-T\\tV_log2f\n Tag Cursor\n Tag Self When Complete\n+TagActionStatus\n TagStatus\n TanFrameQuat\n Tangent of angle. Input in radians, output in radians\n@@ -3102,9 +3225,12 @@ Target Warp: XY warp curve blowout detected! Falling back to LERP!\n Target Warp: trying to XY warp a section with no displacement, falling back to LERP!\n Target Warp: trying to XY warp to under the distance threshold, falling back to LERP!\n Target warp exceed accurate sampling error threshold! Switching to inaccurate sampling!\n+TargetCastForModify\n TargetSelectorNode\n+Task\n Test Mode Assert True\n TestCheckpoint: %s\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n Tilt bone after tilt.\n Tilt delta from up offset\n Time Remaining\n@@ -3113,12 +3239,20 @@ ToPivot\n Tried to load a polymorphic pointer with no '%s' key\n Tried to load resource reference '%s' from a value without a resource reference specific type.\n Trying to set an offset on an unset node!\n+Turn a time in seconds into a display string. NOT localized.\n TurnHelperNode\n Two Bone IK\n TypeManager\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n Unable to parse AE_SV_DUSTTRAIL event \"%s\"\\n\n Unknown Morph Control :: %s WeightList :: %s Model :: %s\\n\n Unknown binary operator\n+Unknown format type\n Unknown function \"%s\"\n Unknown unary operator\n Unknown variable \"%s\"\n@@ -3129,7 +3263,13 @@ Unnamed Tag\n Unsupported use of property accessor \"%s.%s\", property accessors can only be used variables\n Unsupported version %d for resource '%s' (Expected %d)\\n\n UpdateContext\n+UpscalerType_t\n Used to flag a test as having failed.\n+V@jb\n+VDATA\n+VDataChoice( %s )\n+VDataChoice()\n+VPkb\n Value 0-1 how far along duration (always 0 if duration is -1)\n Variable \"%s\" has %i components, a specific component must be specified, for example use: \"%s.x\"\n Variable '%s' is referenced but not declared in this system (%s). Adding a fallback now.\\n\n@@ -3147,7 +3287,7 @@ Virtual Parameter\n WARNING: Failed to convert introspected block for file: %s\\n\n WARNING: Invalid resource version (%d): %s\\n\n Wait Complete\n-Warning: %s (%d) - %s\\n\n+Wake Cursors With Tag\n Warp\n Warp XY\n Warp XYZ\n@@ -3156,14 +3296,17 @@ Warp attempted for animation with invalid warp events!\n Warping orientation progress %f\n Weight: %.2f%%\n Weights\n-When False\n-When True\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n+While False\n+While True\n World Vector To Vector\n World space tilt normal\n Write Cached Pose\n X (Red   / Forward)\n X to the Y power\n-X`hrP\n+X`hrp\n+Xf0db\n Y (Green / Left)\n Yield, Resume=%s\n Z (Blue  / Up)\n@@ -3179,44 +3322,42 @@ Zero input vector for info node!\n [NOP]\n [RETURN R%d]\n [RETURN]\n-\\n\\tV_atanf\n+\\f\\tV_acosd\n+\\nOww\n \\rRESOURCE_TYPE_ANIMGRAPH\n+\\r\\nnexttoken\n \\t%d (%d) : %s %s %s %s\\n\n \\t%d:%d - %s (agrp vs agrp flag mismatch) %s:%s (promoted to match existing) %s:%s\\n\n \\t%d:%d - %s (match)\\n\n \\t%d:%d - %s (skipped)\\n\n \\t%d:%d - %s\\n\n \\tError\\n\n-\\tV_acosd\n \\tV_asind\n+\\tV_atand\n+\\tV_atanf\n \\tV_cosd\n-\\tV_coshf\n-\\tV_exp2f\n \\tV_tand\n \\tV_tanhf\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_FindGlobalSymbolByHash\n-\\tg_bUpdateStringTokenDatabase\n-\\tnexttoken\n _CustomCommand\n _CustomCommand%d\n+_\\tV_log2f\n __CursorQueue__\n __FireCursorsParent__\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n ______________________\n __current_metadata_table_stack\n _autoreset\n-`apt\n-`qot\n-`qqt\n-`uft\n+`6p;b\n+`6p<b\n+`Q6w\n+`ixw\n a:fulltype\n a:typeparam\n-a\\tV_powd\n acosf\n+allflags\n allowed_api_features\n allowed_requirements\n always_run\n@@ -3225,7 +3366,7 @@ anim_data_block\n animationsystem.dll\n animgraphlib\n animlib\n-animnetvar\n+anyflags\n attachment_point\n attachment_point_cp1\n attachment_type_cp1\n@@ -3234,6 +3375,7 @@ bInherit\n bValue\n bentnormal\n biased\n+binary\n bindPose\n bind_pose\n blend_anim_events\n@@ -3309,7 +3451,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CAnimGraphNetworkSet\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimGraphSettingsGroup>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimInputDamping>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance*>(void)\n-const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimNodeInstanceBase>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimParameterBase>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CAnimParameterInstance*>(void)\n@@ -3361,7 +3502,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CDirectPlaybackAnimN\n const char *__cdecl Reflection::Internal::GetFuncName<class CDirectPlaybackUpdateNode>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CDirectionalBlendUpdateNode>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CDistanceRemainingMetricEvaluator>(void)\n-const char *__cdecl Reflection::Internal::GetFuncName<class CEmitTagActionUpdater>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CEnumAnimParameter>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CEnumAnimParameterInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CExpressionActionUpdater>(void)\n@@ -3433,7 +3573,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollAnimTag>(voi\n const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollComponentInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollComponentUpdater>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollUpdateNode>(void)\n-const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentUpdater>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CRootUpdateNode>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class CSelectorUpdateNode>(void)\n@@ -3519,9 +3658,7 @@ const char *__cdecl Reflection::Internal::GetFuncName<class IMotionGraphPreviewN\n const char *__cdecl Reflection::Internal::GetFuncName<class IMotionMatchingAnimNodeInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IMotionMetricInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IMovementComponentInstance>(void)\n-const char *__cdecl Reflection::Internal::GetFuncName<class IPairedSequenceComponentInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IParticleAnimTag>(void)\n-const char *__cdecl Reflection::Internal::GetFuncName<class IPathAnimMotorInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IPlayerInputAnimMotorInstance>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IRagdollAnimTag>(void)\n const char *__cdecl Reflection::Internal::GetFuncName<class IRagdollComponentInstance>(void)\n@@ -3552,14 +3689,19 @@ cycle\n deg2rad\n detach_from_owner\n domain_scope\n+eCenteredCylinder\n+eGroundCylinder\n e_action_desired_shared\n e_movement_type_desired_shared\n element\n-elems\n embedded_animation\n emptyanimwithnoeffect\n exp2\n+expression_type\n+f 2b\n+f@const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance>(void)\n fSpeedScale\n+f`Vb\n fast\n fetched: %s : %.3f\\n\n ffffff\n@@ -3581,6 +3723,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -3611,27 +3754,33 @@ game:tools/images/animgraph_editor/animgraph_icon_statemachine.png\n game:tools/images/animgraph_editor/animgraph_parameter_base.png\n game:tools/images/animgraph_editor/animgraph_parameter_virtual_base.png\n game:tools/images/animgraph_editor/animgraph_tag_base.png\n-h]et\n+ground_offset\n handshakeTypes\n+hpzp\n hsequence\n idiv\n instantly\n is_selector\n kAnimGraphSaveRestoreVersion\n keyvalues\n kv3:ParticleParamID_t\n+l\\tV_powd\n length2d\n length3d\n lerp\n log2\n lowprecisionuv\n lowprecisionuv1\n+m_BoneMergeLinks\n m_EndEffectorFixedOffsetAttachment\n m_Format\n m_HingeAxis\n+m_Metadata\n m_ParentJoint\n m_PoleVectorForAxis\n+m_SequencePoint\n m_Stops\n+m_TagStatus\n m_TagValue\n m_attachments\n m_bBakedTwoSided\n@@ -3648,25 +3797,51 @@ m_bParentJointRequiresAlignment\n m_bUseCompressedNormalTangent\n m_bUseNewPoleVectorForAxis\n m_bUseShadowFastPath\n+m_chainWeights\n+m_channelIDs\n+m_channelSettings\n+m_compressedOffsets\n m_deltaTransform\\t\\t\\t\\t[%f] [%s]\n m_eRbfType\n-m_externalMethodTargetGraph\n+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_enabledNodeIdx\n+m_endEffectorBoneID\n+m_endEffectorForwardAxis\n+m_endEffectorOffset\n+m_fEmissiveFactor\n m_flMaxRadians\n m_flMinRadians\n m_flSlopeIncoming\n m_flSlopeOutgoing\n+m_flTagStartAnimTime\n+m_floatChannelData\n+m_floatChannelSets\n+m_hCursorOnOtherGraph\n m_hGraphDefinition->m_instanceRequiredMemory > 0\n m_hitboxsets\n m_influenceFlags\n+m_materialGroupToken\n m_morphSet\n+m_nChainLength > 1 && m_nChainLength < 8\n+m_nChildNode\n m_nCurrStackSize\n m_nCurrentWakeIndex\n+m_nCursorID\n m_nGraphID\n-m_nSequenceTagIndex\n+m_nParentHash\n+m_nSrcDrawIndex\n+m_nVertexEmissiveFormat\n+m_nVertexEmissiveOffset\n+m_nVertexEmissiveStride\n+m_nVertexEmissiveVB\n+m_nYieldToken\n m_pIsHandshakeDisabled\n+m_params.m_nNumBonesInChain < 8\n m_qFixupRotation\n m_rbfParameters\n-m_sLastSequenceName\n+m_rootBvhNodes\n+m_setID\n m_stack\n matrix3x4_t\n matrix3x4a_t\n@@ -3677,19 +3852,27 @@ model bone %d is out of bounds, probably attempting to use an animation from dif\n modellib\n morph_texture\n nDenominator\n+nFormat\n nKillPriority\n nMaxElements\n nNumerator\n+nRemainderDigits\n+nRemainderNoiseDigits\n nValue\n+nWakePriority\n+n`ob\n no samples\n numframes\n-o\\tV_sind\n offBeforeFinished\n offWhenFinished\n optionallycompressedtangentframe\n-p0j \n+options.m_pBoneWeights->Count() >= m_boneIDs.Count()\n+options.m_pBoneWeights->Count() >= m_pSkeleton->GetNumBones()\n+p08@H^\n+p6`Bb\n pCheckpointName\n pDescription\n+pFp-b\n pTagName\n parameters\n parent to constrained\n@@ -3703,7 +3886,6 @@ propattr_force_readonly\n pulse_node_custom_attributes\n pulse_runtime_lib\n r>BoneSetup\n-r\\tV_sinhf\n r\\vp!4\n rad2deg\n random_position\n@@ -3718,6 +3900,7 @@ round\n rsqrt\n saturate\n scriptsToRun\n+select\n self\n sequence_tag_spans\n sign\n@@ -3727,11 +3910,12 @@ solidCollisionAtZeroWeight\n sound_base\n speedFunction\n std::pair\n+stiffen\n stop_on_layer_seq_change\n stop_on_layer_seq_change_instantly\n stop_on_seq_change_instantly\n strValue\n-tBSheetSequenceIntegerId_t\n+tBRenderBufferFlags_t\n tagCount\n tagValue\n tangent\n@@ -3740,6 +3924,7 @@ texcoord\n to constrain\n tools/images/pulse_editor/cursor_kill.png\n tools/images/pulse_editor/kill_cursor_with_tag.png\n+type_restriction_is_enum_flags\n use_layer_sequence\n vForward\n vJOnPlane2\n@@ -3748,12 +3933,19 @@ vJOnPlane4\n vLookTarget\n vMsTargetPosition\\t\\t\\t[%f] [%s]\n vVOnPlane1\n+value:fulltype\n vecValue\n vecValueA\n vecValueB\n very_fast\n+vpSb\n weaponType\n whileCurrent\n worldrelative\n zDconst char *__cdecl Reflection::Internal::GetFuncName<class CFootPinningPoseOperation>(void)\n+z\\tV_sind\n zero dir\n+{ item_factory = 'IntervalTimer' }\n+}\\rPAb\n+}\\tV_sinhf\n+~0Mb"
        },
        {
          "filename": "game/bin/win64/assetbrowser_strings.txt",
          "status": "modified",
          "additions": 104,
          "deletions": 96,
          "changes": 200,
          "patch": "@@ -1,4 +1,4 @@\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -109,6 +109,7 @@\n #\\f?focusNextPrevChild@QTextEdit@@MEAA_N_N@Z\n #\\n?columnCount@QSortFilterProxyModel@@UEBAHAEBVQModelIndex@@@Z\n #\\r?hide@QWidget@@QEAAXXZ\n+#\\tV_exp2f\n #have\n $#?windowIcon@QWidget@@QEBA?AVQIcon@@XZ\n $[?setRange@QDoubleValidator@@UEAAXNNH@Z\n@@ -154,6 +155,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n %s File\n %s [optional]\n %s [specificity: %d]\n+%s%02d:%02d\n %s%s: DynamicWidget: %s\\n\n %s: %s [Incremental=%s, HasSentBegin=%s] (%p)\\n\n %s: Initialize (%p) for [ m_bInIncrementalUpdate -> false ]\\n\n@@ -236,6 +238,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n -> Success (%d attempts)\\n\n .#?windowTitle@QWidget@@QEBA?AVQString@@XZ\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AUVDataInitInfo_t@@\n .?AV<lambda_10>@?BM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n@@ -256,6 +259,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AV<lambda_17>@?CI@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_18>@?CM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_19>@?CN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n@@ -277,6 +281,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AV<lambda_27>@?DJ@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_28>@?DM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_29>@?DN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n .?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@\n@@ -495,6 +500,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AV?$_Func_impl_no_alloc@V<lambda_17>@?CI@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_18>@?CM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_19>@?CN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n@@ -516,6 +522,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AV?$_Func_impl_no_alloc@V<lambda_27>@?DJ@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_28>@?DM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_29>@?DN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n@@ -602,11 +609,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AVCBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CQToolSceneWidget@@SAPEAVCBindTargetDescriptorBase@@XZ@\n .?AVCDeleteWorkingSetsPromptDialog@@\n .?AVCEmptySequence@@\n-.?AVCFolderItemAsset@@\n-.?AVCFolderItemBase@@\n-.?AVCFolderItemCollector@@\n-.?AVCFolderItemFiles@@\n-.?AVCFolderItemFolder@@\n .?AVCGCStylePropInfo@@\n .?AVCGlobalHotkeyCommands@@\n .?AVCGraphCanvasDragOperation@@\n@@ -676,7 +678,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AVCQAssetSelectionWidget@@\n .?AVCQAssetTable@@\n .?AVCQAssetTagSelectWidget@@\n-.?AVCQAssetTreeModel@@\n .?AVCQAssetTypeSelectWidget@@\n .?AVCQAssetViewBase@@\n .?AVCQAttributeEditor_AssetBrowse@@\n@@ -764,7 +765,8 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n .?AVCQNoDeleteWidgetAction@@\n .?AVCQOffscreenGraphCanvasView@@\n .?AVCQPoolableWidget@@\n-.?AVCQRichItemListPicker@@\n+.?AVCQRichItemListPickerDialog@@\n+.?AVCQRichItemListPickerWidget@@\n .?AVCQScreenCaptureOverlay@@\n .?AVCQScrollableWidgetList@@\n .?AVCQSelectionListItemDelegate@@\n@@ -957,6 +959,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n /\\r?hideEvent@QScrollBar@@MEAAXPEAVQHideEvent@@@Z\n /\\v?event@QAbstractScrollArea@@MEAA_NPEAVQEvent@@@Z\n /]?size@QImage@@QEBA?AVQSize@@XZ\n+0oNj\n 0x%1\n 0x%p = %s '%s'\n 1\"?updateGeometry@QWidget@@QEAAXXZ\n@@ -1015,7 +1018,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n 1OnAddTagClicked()\n 1OnAllSelected()\n 1OnAlphaChanged()\n-1OnAssetListModelChanged()\n 1OnAssetPanelDoubleClicked(int)\n 1OnAssetSelectionChanged()\n 1OnBrowse()\n@@ -1161,7 +1163,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n 1SetShowDependingOnMe(bool)\n 1SetShowHiddenAssets(bool)\n 1SetShowRejectedAssets(bool)\n-1SetThumbnailBackground(QString)\n 1ShowAssetInfo()\n 1ShowOptionsDialog()\n 1ShowSubassetDefinitions()\n@@ -1323,6 +1324,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n 8\\f?focusOutEvent@QTextBrowser@@MEAAXPEAVQFocusEvent@@@Z\n 8\\v?event@QCompleter@@MEAA_NPEAVQEvent@@@Z\n 8]?size@QPixmap@@QEBA?AVQSize@@XZ\n+9>-memory-\n 9\\f?focusOutEvent@QTextEdit@@MEAAXPEAVQFocusEvent@@@Z\n : Add\n :\\f?focusOutEvent@QWidget@@MEAAXPEAVQFocusEvent@@@Z\n@@ -1338,6 +1340,7 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n <DESCRIPTION>\\n\n <Match any value>\n <NONE>\n+<SceneSystem\n <\\f?deallocate@QArrayData@@SAXPEAU1@_K1@Z\n <\\f?focusPolicy@QWidget@@QEBA?AW4FocusPolicy@Qt@@XZ\n <\\v?event@QDockWidget@@MEAA_NPEAVQEvent@@@Z\n@@ -1352,8 +1355,8 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n <local only>\n <missing file>\n <no p4>\n+<non-RTTI type>\n <none>\\n\n-<texcoord\n = (During)\n == PulseGraphDef ==\\n\n =ACTIVITY WEIGHTS\n@@ -1853,7 +1856,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n ?closeEvent@QDialog@@MEAAXPEAVQCloseEvent@@@Z\n ?closeEvent@QDockWidget@@MEAAXPEAVQCloseEvent@@@Z\n ?closeEvent@QWidget@@MEAAXPEAVQCloseEvent@@@Z\n-?collapse@QTreeView@@QEAAXAEBVQModelIndex@@@Z\n ?collapseAll@QTreeView@@QEAAXXZ\n ?column@QTableWidgetItem@@QEBAHXZ\n ?columnCount@QGridLayout@@QEBAHXZ\n@@ -3134,7 +3136,6 @@ $\\r?end@QString@@QEBAPEBVQChar@@XZ\n @#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z\n @Palette \n @Palette '%s' already defined!\n-@\\tV_isinfd\n @\\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z\n @fff>fff>fff>fff>\n A compound list that matches if any parts matches\n@@ -3155,13 +3156,16 @@ Absolute value (int)\n Accept\n AcceptColorInternal\n AcceptIfItemPicked\n+Accepted\n Actions\n ActivateAllAssetsTab\n Active Window Widget\n+Add Flags\n Add R%d <- R%d + R%d\n Add Tag\n Add Tag...\n Add another filter criteria\n+Add flags to the given value.\n Add implicit assets to working set\n Add the array 'b' to the end of 'a'.\n AddAssets\n@@ -3174,6 +3178,7 @@ Additional filter from tool context:<pre> \"%1\" </pre>(Click to toggle)\n Additional pixel spacing between children\n Addr\n Address\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n AfterDataModelsUpdated\n Alignment of STRETCH will be ignored due to FixedSize property\n AllSelected\n@@ -3251,7 +3256,9 @@ AssetStats\n Assets\n Assets:\\n\n AssetsRightClicked\n-Async Fire C%d:I%d\n+Async Call Method (Child Cursor) C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n Attempted a typeid of nullptr pointer!\n Attempted to pop off of an empty CUtlQueue. Please check before using this method.\n Attempting to register the command %s for context %s multiple times\\n\n@@ -3278,7 +3285,6 @@ Backspace\n BackwardPortContainer\n Bad Path\n Bad checkstate (expected eg. 'PartiallyChecked')\n-Bad count in ArraySetCount (%d)\n Bad horizontalPolicy \"%s\"\n Bad max in ArrayFirstNElements (%d)\n Bad number '%s'\n@@ -3294,6 +3300,7 @@ Base-2 logarithm\n BasePort\n BasePortContainer\n Base_Palette\n+Basic string support.\n BeforeDataModelsUpdated\n Begin mouse capture [%i]: %s\\n\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n@@ -3341,11 +3348,11 @@ CBufferString\n CColorGradient\n CDeleteWorkingSetsPromptDialog\n CEntityNameString\n+CFailed to allocate an instance of a class of type '%s'\n CGenericFilterDomain::IListener\n CGlobalHotkeyCommands\n CGlobalSymbol\n CGlobalSymbolCaseSensitive\n-CIKV3TransferInterface_ResourceLoad\n CInputBindManager::HandleInputCode recursion depth got too deep.\\n\n CKV3MemberNameSet\n CKV3MemberNameWithStorage\n@@ -3372,9 +3379,9 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -3384,26 +3391,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n CPulseCell_PickBestOutflowSelector::ProcessSelector\n CPulseCell_Step_CallExternalMethod '%s'\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseMathlib::AbsFloat\n CPulseMathlib::AbsInt\n CPulseMathlib::ArcCos\n@@ -3440,6 +3449,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -3469,11 +3479,15 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseTestScriptLib::AssertTrue\n CPulseTestScriptLib::IndicateTestFailure\n CPulseTestScriptLib::IsInTestMode\n@@ -3508,8 +3522,6 @@ CQAssetSelectionWidget\n CQAssetTable\n CQAssetTagSelectWidget\n CQAssetTagSelectWidget*\n-CQAssetTree\n-CQAssetTreeModel\n CQAssetTypeSelectWidget\n CQAssetTypeSelectWidget*\n CQAssetViewBase\n@@ -3600,9 +3612,9 @@ CQGraphCanvasView\n CQGraphCanvasViewMiniMap\n CQHeaderViewWithCheckboxes\n CQHeaderViewWithStretchFactors\n-CQHierarchyItemDelegate\n CQHoverButton\n CQHoverHideToolButton\n+CQIndexedButton\n CQInputBindEditor\n CQInputBindManager\n CQInputBindManager_BindableWidgetInfo\n@@ -3620,12 +3632,14 @@ CQMenuOperationAction\n CQMoveToChangelistInterface\n CQMultiSelectWidget\n CQResizableMiniMapFrame\n-CQRichItemListPicker\n+CQRichItemListPickerDialog\n+CQRichItemListPickerWidget\n CQRichItemListPicker_Choice_Internal*\n CQRichItemListPicker_Group_Internal*\n CQScreenCaptureOverlay\n CQScrollableWidgetList\n CQSharedToolsMenu\n+CQSimpleNumericInput\n CQSlider\n CQSlider::wheelEvent - blend towards cursor/default\n CQSliderLineEditFloat\n@@ -3645,14 +3659,14 @@ CQTagWidget\n CQTagWidget { \\tbackground-color : rgb( %1 ); \\tborder: 2px solid rgb( %2 ); \\tborder-radius: %3px; } QLabel { \\tcolor: rgb( %4 ); \\tfont: bold 11px; } \n CQToolSceneSettingsPopup\n CQToolSceneWidget\n-CQTreeTagItemDelegate\n CQTreeWidgetWithArrowEvents\n CQTreeWidgetWithHover\n CQWidgetDebugHighlight\n CQWidgetDebugger\n CQWorkingSetTreeView\n CQWorkingSetsModel\n CQWorkingSetsWidget\n+CREATE_CHILD_CURSOR_OUTFLOW\n CRenameWorkingSetDialog\n CRenderOptionsPopupUI\n CSocketConnection.WriteToEndpoint Failed\\n\n@@ -3675,7 +3689,6 @@ CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::G\n CUtlDict<struct CQInputBindEditor::BindingContextInfo_t *,class CDefFastCaselessStringLess>::Insert\n CUtlHashtable<IAssetDir*>*\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator>::EnsureCapacity\n-CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n@@ -3688,22 +3701,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CM\n CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage\n CUtlQueue<int,class CUtlLeanVector<struct CUtlQueueNode_t<int>,int,class CMemAllocAllocator> >::RemoveAtTail\n-CUtlRBTree<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,class CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::Node_t,class CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlVector<IAsset*>\n CUtlVector<IAsset*>*\n CUtlVector<IAssetType*>\n@@ -3712,7 +3709,6 @@ Call C%d:I%d (%s)\n CameraLookAtSelection\n Can't connect to perforce server.\n Cancel\n-Cancel observing.\n CancelClicked\n Cannot Debug\n Cannot add multiple root layouts to the same widget\n@@ -3729,7 +3725,6 @@ CapToggle\n Caps\n Ceiling - round float up to nearest integer)\n Ceiling Float\n-Cgraphcanvas_debug_layout\n Changelist\n Changelist description\n Check Requirement\n@@ -3766,7 +3761,6 @@ Close the group automatically after a short wait (good for 'success' messages)\n Close the group automatically when the associated parent process exits (good for sticky 'error' messages)\n CloseWorkingSetTab\n Collapse All\n-Collapsed\n Color Picker\n Color of the background. Can be specified as hex, [r, g, b, a], or a predefined color.\n Color of the border. Can be specified as hex, [r, g, b, a], or a predefined color.\n@@ -3777,7 +3771,7 @@ Command Name\n Command.%s.%s\n Command:\\n%1\\nWorking Directory:\\n%2\n Commit Step\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n Compile Dependency (Content)\n Compile Dependency (Game)\n Completed\n@@ -3850,7 +3844,6 @@ Cursors Allowed To Wait\n Custom Color\n Custom Colors\n DELETE\n-D\\tV_isvalidhex\n Data_Branch1xy\n Data_Branch1zBranch2x\n Data_Branch2yz\n@@ -3919,6 +3912,7 @@ DragStarted\n DragUpdated\n DrawBoneNamesChanged\n DrawSkyboxChanged\n+DualHull\n DummyNoOp\n Duplicate Tab\n Duplicate tab\n@@ -3966,6 +3960,7 @@ EnsureModsVisibleForAssets\n EnsureTypesVisible\n Enter\n EntityName\n+Enum support.\n Eq R%d <- R%d == R%d\n Error (problem that prevents task success)\n EscapePressed\n@@ -3981,7 +3976,6 @@ ExitAndResetToolSettings\n ExitTools\n Exp2\n Expand All\n-Expanded\n Expanding\n Expected '%s'\n Expected SizePolicy to be a table or array\n@@ -3998,7 +3992,6 @@ FLT_MAX\n FY?setDevicePixelRatio@QPixmap@@QEAAXN@Z\n F\\v?event@QGroupBox@@MEAA_NPEAVQEvent@@@Z\n Fail Outflow\n-Failed to allocate an instance of a class\n Failed to convert value '%s' to enum/flags '%s' (expecting eg. '%s')\n Failed to create widget %s\n Failed to determine mod name for file:<br>%1\n@@ -4013,16 +4006,15 @@ Fast Asset Search\n FastAssetPicked\n FatColor_t\n File '%1'\n-File Hierarchy\n Files Belonging to Selected Assets\n-Files:\n Fill the thumbnail cache for all assets.\n FillRect\n Filter Part\n-Filter name/description:\n Filter paths\n+Filter type/description:\n Filter:\n Filter: \n+FilterApplied\n FilterBar\n FilterChanged\n FilterEdited\n@@ -4032,6 +4024,7 @@ Fimage\n Find\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find first element 'a' which compare equal to 'element' and return its index.\n Find:\n FindItemsOverlapping\n@@ -4069,6 +4062,7 @@ Foreground color. Either text or curve.\n Foreground width for curves\n Foreground_Color\n Foreground_Width\n+Format Duration String From Seconds\n ForwardPortContainer\n Frac\n Fractional component (ie. returns 0.34 for 12.34)\n@@ -4120,12 +4114,13 @@ HKEY_CLASSES_ROOT\\\n HKEY_CURRENT_USER\\\n HKEY_CURRENT_USER\\Software\\Valve\\Tools\n HKEY_LOCAL_MACHINE\\\n+Has All Flags\n+Has Any Flags\n HeaderCheckStateChanged\n Hex:\n Hide cursor during camera manipulation\n Hide unless error/warning occurs\n HideCoreMod\n-Hierarchy\n Highlight '%1' In %2\n History\n History - %s\n@@ -4170,7 +4165,6 @@ I\\r?hitButton@QCheckBox@@MEBA_NAEBVQPoint@@@Z\n Identity\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If checked, all tool windows will render continuously, if not checked, only the tool window with focus will render\n If specified, each wait interval will vary randomly between WaitInterval this value\n If this cursor spawns other work via Fire And Forget, should this Tag be inherited?\n@@ -4234,6 +4228,7 @@ Jump to Instr I%d\n K ?toggled@QAbstractButton@@QEAAX_N@Z\n KV3 Pointer\n K\\r?hitButton@QRadioButton@@MEBA_NAEBVQPoint@@@Z\n+K\\tV_isinfd\n K\\v?event@QLineEdit@@UEAA_NPEAVQEvent@@@Z\n Key Bindings\n KeyState\n@@ -4242,7 +4237,6 @@ KeyValues3\n KeyValues3*\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n LMouse\n LMouseDoubleClick\n LT?pixel@QImage@@QEBAIHH@Z\n@@ -4300,11 +4294,14 @@ M?globalY@QMouseEvent@@QEBAHXZ\n MATERIALTOFACESELECTION \n MAtomicTransfersAsPlainString\n MENU\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MMouse\n MMouseDoubleClick\n MPropertyFlattenIntoParentRow\n MPulseExpressionAlias\n MPulseFunctionHiddenInTool\n+MPulseTypeRestriction\n MWheelDn\n MWheelLeft\n MWheelRight\n@@ -4318,12 +4315,14 @@ Make Color\n Make Graph Root\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -4409,6 +4408,7 @@ N?height@QPaintDevice@@QEBAHXZ\n N?height@QPixmap@@QEBAHXZ\n N?horizontalAdvance@QFontMetrics@@QEBAHAEBVQString@@H@Z\n N?index@QStandardItemModel@@UEBA?AVQModelIndex@@HHAEBV2@@Z\n+N@Bad count in ArraySetCount (%d)\n NO COMMAND TARGET\n NO_UI\n NT?pixelColor@QImage@@QEBA?AVQColor@@HH@Z\n@@ -4488,6 +4488,7 @@ NumToggle\n OP?isNull@QIcon@@QEBA_NXZ\n OR List\n OR: This group will match if ANY of the parts match\\n(Click to toggle to AND)\n+O\\tV_isvalidhex\n Oa?width@QImage@@QEBAHXZ\n OkClicked\n On Interval\n@@ -4590,6 +4591,7 @@ OnNamePartChanged\n OnNewFilterChanged\n OnNodeClicked\n OnNotToggled\n+OnNumericInputChanged\n OnOptionChanged\n OnOptionsChanged\n OnP4EditChecked\n@@ -4708,7 +4710,6 @@ OpenRoot\n OpenSelectedInTools\n OpenVConsole\n OpenWorkingSet\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Options...\n Or R%d <- R%d || R%d\n@@ -4730,7 +4731,6 @@ P?item@QStandardItemModel@@QEBAPEAVQStandardItem@@HH@Z\n P?itemData@QStandardItemModel@@UEBA?AV?$QMap@HVQVariant@@@@AEBVQModelIndex@@@Z\n P?jumpToNextImage@QImageReader@@QEAA_NXZ\n P\\f?font@QTableWidgetItem@@QEBA?AVQFont@@XZ\n-PackedBlobNormal\n Padding\n Padding_Bottom\n Padding_Left\n@@ -4752,6 +4752,7 @@ PanoramaStyle\n PanoramaVideo\n Parent Asset(s)\n Parent Map: %s\\n\n+Parent VData\n Parent or child assets\n ParentChildAssetHovered\n ParentChildAssetSelected\n@@ -4815,6 +4816,7 @@ Preview Anim Slider Enabled\n Preview Menu Enabled\n Preview Model Vertex Framing\n Previous\n+Proceed Immediately\n Process Selector\n PropEdModifyType_t\n PropEdSpecificAttr_t\n@@ -4829,6 +4831,7 @@ Pseudo-Classes\n Pull From Global Browser\n PullSelectionFromGlobalBrowser\n Pulse domain which enables particle content to query leaf code to introspect game state.\n+PulseDurationStringFormat_t\n Push Material to Blender\n Push Model to Blender\n Push To Global Browser\n@@ -4945,6 +4948,7 @@ Remap Clamped Float\n Remap and clamp input value from input range to output range (float)\n Remove\n Remove All\n+Remove Flags\n Remove From Most Recently Used\n Remove From Working Set\n Remove From Working Set (selected assets are implicit)\n@@ -4953,6 +4957,7 @@ Remove Tag\n Remove Tag From Cursor\n Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n RemoveColor\n@@ -5012,9 +5017,7 @@ RichItemList_Accept\n RichItemList_Reject\n Right Mouse (Average)\n RightClick\n-RightClickHierarchy\n RightClickSelectedAssets\n-Root Files:\n RootAsset\n RotateAboutTarget3D\n RotateLights\n@@ -5065,7 +5068,6 @@ Scale INV R%d <- R%d / R%d\n Scale R%d <- R%d * R%d\n Scan for assets that require specific attention.\n SceneCameraChanged\n-SceneSystem\n ScrLk\n ScrToggle\n Search Inside Files\n@@ -5135,7 +5137,6 @@ SetTabStyleBar\n SetTabStyleBrick\n SetTabStyleLine\n SetTabStyleNone\n-SetThumbnailBackground\n SetValueCenter\n SetValueHidden\n SetValueLeft\n@@ -5233,8 +5234,7 @@ Standin Dock\n Start a timer with the specified duration, fire the OnInterval output \n StartSendingCameraTo\n Statistics...\n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n StopSendingCameraTo\n String Length\n Strings Are Equal Case Sensitive\n@@ -5250,6 +5250,7 @@ Subasset references\n Subassets:\\n\n Switch to 'All Assets'\n SwitchToEngineWindow\n+Synchronous - Wait for this node to fully complete before proceeding.\n T?parent@QStandardItemModel@@UEBA?AVQModelIndex@@AEBV2@@Z\n T?pos@QCursor@@SA?AVQPoint@@XZ\n T?pos@QDropEvent@@QEBA?AVQPoint@@XZ\n@@ -5259,7 +5260,6 @@ TT?pixelSize@QFont@@QEBAHXZ\n TW?restoreOverrideCursor@QGuiApplication@@SAXXZ\n T\\n?doubleClickInterval@QApplication@@SAHXZ\n T\\t?canFetchMore@QSortFilterProxyModel@@UEBA_NAEBVQModelIndex@@@Z\n-T\\tV_log2f\n T\\v?event@QOpenGLWidget@@MEAA_NPEAVQEvent@@@Z\n Tab name:\n TabStyle_t\n@@ -5283,6 +5283,7 @@ The following files were included but are out-of-date. They should be recompiled\n The selected set has a lot of assets (%1) are you sure you want to copy to clipboard?\n The visible item with the highest interaction priority will react to hover/click at a given pixel. By default an item is not interactive.\n This asset has tags that indicate it's been rejected for shipping - avoid use!\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n Thumbnails\n Time since the start of the timer\n Tint property on the image or background image.\n@@ -5314,6 +5315,7 @@ Total files for this asset in all search paths\n Track Mouse & Focus\n TriggerSettingsSave\n TrySendVNotify - SendKV3 failed\\n\n+Turn a time in seconds into a display string. NOT localized.\n TypeSelectionChanged\n U?qt_metacall@QIntValidator@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z\n U?qt_metacall@QRegularExpressionValidator@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z\n@@ -5333,6 +5335,7 @@ Uncompiled files\n UnderMouse\n Unexpected trailing tokens\n Unhandled/unrecognized child entry (Must have a _class, or be a special entry like: vbox=[] hbox=[] grid=[[],[]] flowing=[] spacing=NUM stretch=NUM\n+Unknown format type\n Unknown property '%s'\n Unknown protocol.\n Unnamed Search\n@@ -5381,6 +5384,7 @@ V?removeColumns@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z\n V?removeRows@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z\n VAlign\n VConsole\n+VDATA\n VData:%s\n VNOTIFY_DISABLE\n VNotify\n@@ -5439,6 +5443,7 @@ WARNING: unhandled command '%s'\\n\n WIDGET DEBUGGER DELETING widget: 0x%p\\n\n WP?isNull@QTextCursor@@QEBA_NXZ\n Wait Complete\n+Wake Cursors With Tag\n WarnAboutMissingFiles\n WarnAboutUncompiledFiles\n WarnTrailingWhitespace\n@@ -5452,8 +5457,6 @@ Warning: The following files are included in the list but are missing, or not fr\n Warning: This text ends with whitespace\n Warning:\\nThe following paths were referenced but are not present on disk!\\nThey will not appear in the revision helper file listing:\\n\\n\n Weak Ref\n-When False\n-When True\n Where a child should be aligned on the horizontal axis:\n Where a child should be aligned on the vertical axis:\n Where an item should be laid out relative to its parent:\n@@ -5463,6 +5466,10 @@ Whether an item can be selected when the user draws a box on the canvas or not.\n Whether the background image repeats and how\n Whether the hittest region for an item should include its margin.\n Whether this item should propagate clicks to its ancestor items even when the click is outside their bounds. (Useful for flyout buttons)\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n+While False\n+While True\n Widget Debugger\n Widget Properties\n WidgetAssetAcceptedByListener\n@@ -5529,7 +5536,6 @@ Z?setPixelSize@QFont@@QEAAXH@Z\n Z?setPlainText@QTextDocument@@QEAAXAEBVQString@@@Z\n Z?setPointSize@QFont@@QEAAXH@Z\n ZX?setBackground@QTextFormat@@QEAAXAEBVQBrush@@@Z\n-Z\\tV_modfd\n Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z\n ZoomAllCamerasIn\n ZoomAllCamerasOut\n@@ -5605,7 +5611,6 @@ ZoomOutFromMiniMap\n \\f?disconnectNotify@QObject@@MEAAXAEBVQMetaMethod@@@Z\n \\f?dispose@QListData@@QEAAXXZ\n \\f?dispose@QListData@@SAXPEAUData@1@@Z\n-\\f?dropMimeData@QAbstractItemModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z\n \\f?dropMimeData@QAbstractListModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z\n \\f?dropMimeData@QSortFilterProxyModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z\n \\f?dynamicMetaObject@QObjectData@@QEBAPEAUQMetaObject@@XZ\n@@ -5647,6 +5652,7 @@ ZoomOutFromMiniMap\n \\f\\n?cmp@QVariant@@QEBA_NAEBV1@@Z\n \\f\\n?deselect@QLineEdit@@QEAAXXZ\n \\f\\r?heightForWidth@QFormLayout@@UEBAHH@Z\n+\\f\\tV_acosd\n \\n-------------\\n\n \\n?arcTo@QPainterPath@@QEAAXAEBVQRectF@@NN@Z\n \\n?bits@QImage@@QEAAPEAEXZ\n@@ -5696,6 +5702,7 @@ ZoomOutFromMiniMap\n \\nYou are invoking a costly operation involving %1 Assets.\\nAre you sure?\\n\n \\nYour selection will open the %1 that may create up to %2 instances.\\nAre you sure?\\n\n \\n\\r?heightForWidth@QBoxLayout@@UEBAHH@Z\n+\\ng_flConfigMaxCoord\n \\r?darker@QColor@@QEBA?AV1@H@Z\n \\r?data@QStandardItem@@UEBA?AVQVariant@@H@Z\n \\r?data@QStandardItemModel@@UEBA?AVQVariant@@AEBVQModelIndex@@H@Z\n@@ -5752,18 +5759,15 @@ ZoomOutFromMiniMap\n \\t?defaultWidget@QWidgetAction@@QEBAPEAVQWidget@@XZ\n \\tQToolButton { \\t\\tbackground-color : rgb( 100, 100, 100 ); \\t\\tborder: 2px solid rgb( 200, 200, 200 ); \\t\\tborder-radius: %2px; \\t\\tbackground-image: url(game:tools/images/common/tag_add.png); \\t\\tbackground-repeat: no-repeat; \\t\\tbackground-position: center center; \\t\\tmargin: 3px; \\t} \\tQToolButton:hover:!pressed { \\t\\tbackground-color : rgb( 0, 0, 0 ); \\t\\tborder-color : rgb( 255, 255, 255 ); \\t} \n \\tT?parent@QWindow@@QEBAPEAV1@XZ\n-\\tV_acosd\n \\tV_asind\n+\\tV_atand\n \\tV_cosd\n-\\tV_exp2f\n \\tV_tand\n \\t\\f?data@QString@@QEBAPEBVQChar@@XZ\n \\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tw\n \\t_V_StringAfterPrefixCaseSensitive\n \\t_V_strcspn\n-\\tg_flConfigMaxCoord\n \\v ?willGrow@QHashData@@QEAA_NXZ\n \\v?brush@QPainter@@QEBAAEBVQBrush@@XZ\n \\v?brush@QPalette@@QEBAAEBVQBrush@@W4ColorRole@1@@Z\n@@ -5785,7 +5789,6 @@ ZoomOutFromMiniMap\n \\v?exec@QDialog@@UEAAHXZ\n \\v?exec@QMenu@@QEAAPEAVQAction@@AEBVQPoint@@PEAV2@@Z\n \\v?exec@QMenu@@QEAAPEAVQAction@@XZ\n-\\v?expand@QTreeView@@QEAAXAEBVQModelIndex@@@Z\n \\v?expandAll@QTreeView@@QEAAXXZ\n \\v?expandingDirections@QBoxLayout@@UEBA?AV?$QFlags@W4Orientation@Qt@@@@XZ\n \\v?expandingDirections@QFormLayout@@UEBA?AV?$QFlags@W4Orientation@Qt@@@@XZ\n@@ -5814,16 +5817,16 @@ _?texture@QBrush@@QEBA?AVQPixmap@@XZ\n _AssetMenuHelper\n _Q?lightness@QColor@@QEBAHXZ\n _\\r?horizontalOffset@QTreeView@@MEBAHXZ\n+_\\tV_log2f\n _\\v?event@QSlider@@UEAA_NPEAVQEvent@@@Z\n __AllKeys__\n __CursorQueue__\n __FireCursorsParent__\n __IsValveCQTabbedStyle\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n __standin_dock\n-_baked/*\n+_bakeresourcecache.vpk\n `?validate@QDoubleValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z\n `?validate@QIntValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z\n `?validate@QRegularExpressionValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z\n@@ -5840,10 +5843,12 @@ active_view\n aliceblue\n align\n all_properties\n+allflags\n allowed_api_features\n allowed_requirements\n and %d more...\n antiquewhite\n+anyflags\n application/x-source2-assetname\n aqua\n aquamarine\n@@ -5861,7 +5866,6 @@ attr_factory\n automatic_quiet_import\n azure\n bAccepted\n-bAscending\n bClear\n bContentOnly\n bDeleteLocalFiles\n@@ -5883,10 +5887,10 @@ background\n background-color: #22b14c\n backgroundEnabled\n backgroundFill\n-backgroundName\n backgroundStyle\n beige\n bentnormal\n+binary\n bisque\n black\n blanchedalmond\n@@ -5980,13 +5984,15 @@ dont_remind_today_checkbox\n e\"?validate@QSpinBox@@MEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z\n e\\f?foregroundRole@QWidget@@QEBA?AW4ColorRole@QPalette@@XZ\n e\\n?dragEnterEvent@QAbstractItemView@@MEAAXPEAVQDragEnterEvent@@@Z\n+e\\tV_modfd\n edit_filter\n editingFinished\n element\n end_as_info\n end_group\n even\n exclude\n+expression_type\n f\\n?dragEnterEvent@QAbstractScrollArea@@MEAAXPEAVQDragEnterEvent@@@Z\n f\\r?horizontalScrollbarAction@QAbstractItemView@@MEAAXH@Z\n fast\n@@ -6027,6 +6033,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -6172,6 +6179,7 @@ graphcanvas_cache_item_pixmap_max_render\n graphcanvas_cache_item_pixmap_max_render_debug\n graphcanvas_cache_item_pixmap_zoom_scale\n graphcanvas_cache_item_pixmap_zoom_step\n+graphcanvas_debug_layout\n graphcanvas_hover_item_info\n graphcanvas_random_background_color\n graphcanvas_threaded_find_items_overlapping\n@@ -6193,7 +6201,6 @@ h\\v?event@QTabWidget@@MEAA_NPEAVQEvent@@@Z\n ha?window@QPalette@@QEBAAEBVQBrush@@XZ\n hbox\n hcenter\n-helper\n hidden_types\n hittest\n honeydew\n@@ -6289,25 +6296,19 @@ m\\n?dragEnterEvent@QPlainTextEdit@@MEAAXPEAVQDragEnterEvent@@@Z\n m_Bindings\n m_Context\n m_InputMacros\n+m_Metadata\n+m_SequencePoint\n m_Stops\n m_TagValue\n-m_bBakedTwoSided\n-m_bCanBatchWithDynamicShaderConstants\n m_bConditionValue\n-m_bDrawLast\n m_bFirstEvaluate\n-m_bHasBakedLightingFromLightMap\n-m_bHasBakedLightingFromVertexStream\n-m_bIsNotMatchedToMaterial\n-m_bNoShadow\n-m_bOnlyShadow\n-m_bUseCompressedNormalTangent\n-m_bUseShadowFastPath\n-m_externalMethodTargetGraph\n m_flSlopeIncoming\n m_flSlopeOutgoing\n+m_hCursorOnOtherGraph\n m_nCurrentWakeIndex\n+m_nCursorID\n m_nGraphID\n+m_nYieldToken\n m_tail != QUEUE_ITERATOR_INVALID\n magenta\n mapped\n@@ -6364,7 +6365,6 @@ mistyrose\n moccasin\n mod_selection\n modelIndex\n-modelSortOrderChanged\n modeldoc_editor\n modeldoc_utils\n models/editor/axis_helper_thick.vmdl\n@@ -6373,10 +6373,10 @@ monitor_pid\n nAlpha\n nAssetCount\n nCol\n-nColumn\n nDelayInMS\n nDenominator\n nEngineToolID\n+nFormat\n nGroup\n nKillPriority\n nLogicalIndex\n@@ -6386,13 +6386,16 @@ nModifiers\n nMouseButton\n nNumerator\n nOptionIndex\n+nRemainderDigits\n+nRemainderNoiseDigits\n nRow\n nSecondaryId\n nTabIndex\n nTagHandle\n nToolID\n nToolId\n nValue\n+nWakePriority\n nX?setBold@QFont@@QEAAX_N@Z\n n\\n?dragEnterEvent@QTextEdit@@MEAAXPEAVQDragEnterEvent@@@Z\n n\\v?event@QToolButton@@MEAA_NPEAVQEvent@@@Z\n@@ -6405,7 +6408,6 @@ nth-child\n nth-last-child\n num_items\n o\\n?dragEnterEvent@QWidget@@MEAAXPEAVQDragEnterEvent@@@Z\n-o\\tV_sind\n o\\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z\n offsetDelta\n oldlace\n@@ -6470,6 +6472,7 @@ peachpuff\n peru\n pet_preview_gravity\n pet_preview_underwater\n+pet_preview_wind\n pickedColor\n pink\n plum\n@@ -6558,8 +6561,6 @@ spacing\n springgreen\n stacked\n stacked_one\n-std::optional\n-std_optional\n steelblue\n strValue\n stretch\n@@ -6583,6 +6584,9 @@ toggleViewAction\n tomato\n too_many_assets\n toolSpecificUI\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n toolbarArea\n toolhud_enable\n tools/colors/shared_colors.txt\n@@ -6631,6 +6635,7 @@ transparent\n tree\n turquoise\n typeList\n+type_restriction_is_enum_flags\n uT?pointAtPercent@QPainterPath@@QEBA?AVQPointF@@N@Z\n uV?read@QStandardItem@@UEAAXAEAVQDataStream@@@Z\n u\\n?connect@QObject@@SA?AVConnection@QMetaObject@@PEBV1@PEBD01W4ConnectionType@Qt@@@Z\n@@ -6646,6 +6651,7 @@ user_tab_name\n vForward\n vT?pointSize@QFont@@QEBAHXZ\n v\\v?eventFilter@QAbstractScrollArea@@MEAA_NPEAVQObject@@PEAVQEvent@@@Z\n+value:fulltype\n valueChanged\n valueChangedByEdit\n valueChangedBySlider\n@@ -6686,9 +6692,11 @@ yellow\n yellowgreen\n zU?qt_metacall@QDrag@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z\n z\\n?dragLeaveEvent@QTextEdit@@MEAAXPEAVQDragLeaveEvent@@@Z\n+z\\tV_sind\n z\\v?customEvent@QObject@@MEAAXPEAVQEvent@@@Z\n z\\v?eventFilter@QDialog@@MEAA_NPEAVQObject@@PEAVQEvent@@@Z\n { \"%1\",\\t{ %2, %3 },\\t\\t{ %4, %5 }\\t },\\n\n+{ item_factory = 'IntervalTimer' }\n {ColNo}\n {ContentFolder}\n {FileFolder}"
        },
        {
          "filename": "game/bin/win64/assetpreview_strings.txt",
          "status": "modified",
          "additions": 320,
          "deletions": 226,
          "changes": 546,
          "patch": null
        },
        {
          "filename": "game/bin/win64/assetrename_strings.txt",
          "status": "modified",
          "additions": 662,
          "deletions": 416,
          "changes": 1078,
          "patch": null
        },
        {
          "filename": "game/bin/win64/assetsystem_strings.txt",
          "status": "modified",
          "additions": 25,
          "deletions": 33,
          "changes": 58,
          "patch": "@@ -188,7 +188,6 @@\n #P0_?G0\n #Q7z\n #\\t#\\v#'#)#/#3#5#E#Q#S#Y#c#k#\n-#\\tV_fgets\n #\\v+(bF&drJ:x#\n #k+ka\\T\n #lyj\n@@ -203,6 +202,7 @@ $HypYkf\n $J6\"t\n $JXsZ\n $XI(6\n+$\\tV_expd\n $d`D-laM\n $f;Zv9l\\r\n $g#8lu#\n@@ -286,6 +286,7 @@ $prefix_element$\n %lu: Row out of range, max %lu\n %lu: Sample out of range, max %lu\n %lu:%s:%s:%d:%s\\n\n+%oNj\n %s %2d %02d:%02d:%02d %d%s\n %s %2d %02d:%02d:%02d%.*s %d%s\n %s %s HTTP/1.0\\r\\n\n@@ -478,6 +479,7 @@ $prefix_element$\n ,Reason=\n ,ShfPQ\n ,ZFDGn\n+,\\tV_fgets\n ,fQM(\n ,h11]\n ,hmQ#\n@@ -509,7 +511,6 @@ $prefix_element$\n -l34\n -mB:t\n -readonlyexceptleafiest\n--restricted_write_include\n -saveonlyleafiestassets\n -savereadonlyassets\n -~T\\viMOb\n@@ -869,7 +870,6 @@ $prefix_element$\n .?AVIUndoElement@@\n .?AVIVDataResourceListener@@\n .?AVIWorkingSet@@\n-.?AVVisitor@CDirTreeWatchManager@@\n .HCK\\v\n .Q.Ol\n .\\crypto\\asn1\\a_bitstr.c\n@@ -1164,7 +1164,6 @@ $prefix_element$\n 0pp@5tqE?|sO541\n 0tU+xc:\n 0x%llx\n-0|44\n 0}dV\n 1!1'1-191C1E1K1]1a1g1m1s1\n 11nN\n@@ -1206,6 +1205,7 @@ $prefix_element$\n 2\\fWQx\n 2\\nP!E\n 2\\rlhp\n+2\\vpD\n 2^pV\n 2a\"l\n 2bT~\n@@ -1238,7 +1238,6 @@ $prefix_element$\n 474E4U4W4c4i4m4\n 4<Td\n 4@AA\n-4CC:\\buildworker\\csgo_rel_win64\\build\\src\\public\\vpklib\\packedstore.h\n 4Ch;\n 4F0I\n 4Mv8\n@@ -1409,6 +1408,7 @@ $prefix_element$\n <YGr+\n <YVtV&\n <multi-typed>\n+<non-RTTI type>\n <unsupported>\n =!=-=3=7=?=C=o=s=u=y={=\n =&sf9\n@@ -1926,6 +1926,7 @@ BlackLevelDeltaV\n BlackLevelRepeatDim\n BlockingReloadCompileReplacementBufferAndChildren\n BoX5\n+Bp|I\n BrowInV\n Bs'n\n Bu 5\n@@ -2004,7 +2005,7 @@ CAssetSystem::InitializeAssetSystem\n CAssetSystem::NotifyResourceStatusChange( %s ) - %s\\n\n CAssetSystem::ProcessFileChanges unable to acquire the file change suspension cross-process mutex.\n CAssetSystem::Test_PreRecompileResourceAsset\n-CAssetSystem::UpdateAllAssetFileCRCs(), C:\\buildworker\\csgo_rel_win64\\build\\src\\assetsystem\\assetsystem.cpp:4605\n+CAssetSystem::UpdateAllAssetFileCRCs(), C:\\buildworker\\csgo_rel_win64\\build\\src\\assetsystem\\assetsystem.cpp:4454\n CAssetSystemTest::RunTests\n CAssetSystemTestSetup::DiscardInMemoryReplacement\n CAssetSystemTestSetup::EnsureAssetIsUpToDate\n@@ -2013,6 +2014,7 @@ CAsyncLoadResourceHeaderPromise::IsHeaderValid\n CAsyncLoadResourceHeaderPromise::StartNewReadRequest\n CBI]6\n CBufferString\n+CC:\\buildworker\\csgo_rel_win64\\build\\src\\public\\vpklib\\packedstore.h\n CCITT Group 3\n CCITT Group 4\n CCITT RLE\n@@ -2299,14 +2301,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<stru\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,64,int,class CMemAllocAllocator>,unsigned char,int>::AddMultipleToTail\n CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlSortVector<struct ChunkHashFraction_t,class CUtlSortVectorDefaultLess<struct ChunkHashFraction_t::SortKey_t>,class CUtlVector<struct ChunkHashFraction_t,int,class CUtlVectorMemory_Growable<struct ChunkHashFraction_t,int,0> > >::Find\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n CVDataAutoTagger\n@@ -3189,8 +3183,8 @@ FV|FgUV\n F\\rH'4\n Facial Animation File\n Factory for element type '%s' already exists (Check your IMPLEMENT_ELEMENT_FACTORY macros for duplicate lookupNames)\\n\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to allocate field info array\n Failed to allocate memory for %s (%ld elements of %ld bytes each)\n Failed to compute channel layout.\\n\n@@ -3310,9 +3304,7 @@ GRAPHICSTRING\n GTsW\n GXqN\n GXy{\n-Game \n Game (%s)\n-GameOther \n GeneralNames\n GeneralString\n Generator (compressed):\n@@ -3442,6 +3434,7 @@ ISSUING_DIST_POINT\n ITU-T\n IV block\n I\\tHA\\t981G'dc\n+If enabled, the up direction will be evaluated in world space, such that the object orientation does not affect the surface slope filtering. Additionally if Orient To Surface is 0, then and world space up is enabled, then the object orientation will not affect the rotation of detail model.\n IgnoreCompiledState set for type (%s)\n Ignoring already-handled file change: %s\\n\n Ignoring failure to traverse directory and/or watch for changes: %s\\n\n@@ -4252,7 +4245,6 @@ Proxy Certificate Information\n Public Key\n Public-Key\n Public-Key: (%d bit)\\n\n-P|44\n P|iC\\r\n Q*hd\n Q/xtJ2\n@@ -4406,7 +4398,7 @@ RSA_verify_PKCS1_PSS\n RSA_verify_PKCS1_PSS_mgf1\n RSDSd\n R\\r1>Vp\n-R\\vp|44\n+R\\vpD\n R]Di\n R_T5Y\n Radius Random\n@@ -4819,7 +4811,6 @@ TS_VERIFY_CERT\n TS_VERIFY_CTX_new\n TXJw^{\n TYPE=\n-T\\tV_log2f\n Tag \n Tag %d\n Tag Update Failed\n@@ -4926,7 +4917,6 @@ UTF8String\n UUUUUUUUUUUUUU<o(\n UUUUUUUUUUUa\\f\\v\n U\\8h(\n-U\\tV_logd\n U^Pg\n Ugi<\n Unable to create unknown element %s!\\n\n@@ -4968,6 +4958,7 @@ Updating asset dependency information...\n Updating dependencies: %d%% (%s/%s) - %s\n Usage: \"assetsystem_dump_table <table_name>\" where table_name is either * (for all) or one of:\\n\n Usage: assetsystem_check_compile_state <asset_name>\\n\n+Use World Space Up\n Use old behavior of calling ProcessFileChanges() immediately after recompiling a resource\n Using rule file '%s'\\n\n Ut]<E\n@@ -5057,8 +5048,6 @@ W3fp\n W3i+,\n W>peSp>9\n WARN: Discarding tags for unknown asset '%s'\\n\n-WARNING: -AssetTargetGameRoot directory '%s' does not exist\\n\n-WARNING: -assetmergegameother directory '%s' does not exist\\n\n WARNING: Asset '%s' refers to dependency '%s' from nonexistent mod '%s' (file '%s')\\n\n WARNING: Asset database '%s' - FindOrCreateAssetByAssetCanonicalPathSymbols failed for '%s'.\\n\n WARNING: Asset database '%s' - LoadPersistentInfo failed for '%s'.\\n\n@@ -5091,7 +5080,6 @@ WARNING: Reading dependencies from very old VPK: %s\\n\n WARNING: Suppressing on-demand recompile of asset %s - already tried with this fingerprint.\\n\n WARNING: VNotify abandoned after too many attempts:\\n%s\\n\n WARNING: drive-relative paths like '%s' are not allowed\\n\n-WARNING: unrecognized extension '%s' used with -restricted_write_include\\n\n WD%g\"0Q-)\n WDG,r3\n WIN32_BIND_FUNC\n@@ -5413,7 +5401,6 @@ Z~wl\n \\n%12s%s\n \\n5a=Z\n \\n:82H\n-\\nP|44\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n \\n\\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n \\n\\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n@@ -5451,7 +5438,7 @@ Z~wl\n \\tLa0+\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n \\tV_atan2d\n-\\tV_expd\n+\\tV_sscanf_s\n \\t\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StrSubst\n \\t_V_StringAfterPrefixCaseSensitive\n@@ -5467,7 +5454,6 @@ Z~wl\n \\v\\vTSG\n \\vj0k\n \\vjC7\n-\\vp|44\n ]1h=bfz\n ]FhSD}\n ]GT7]\n@@ -5488,6 +5474,8 @@ _TIFFSetupFieldInfo\n _TIFFVGetField\n _TIFFVSetField\n _YWL\n+_\\tV_log2f\n+__IN_MEMORY\n __injected_test_value\n _bakeresourcecache\n _buildcubemaps\n@@ -5511,6 +5499,7 @@ _}eOk\n `H(hqA1p\n `ITS\n `VX:H\n+`\\tV_logd\n `fPw.\\vM\n `h9T~\n `o_je\n@@ -5547,7 +5536,6 @@ aRWZ5\n aRecord\n aSRP\n aXvC\n-a\\tV_powd\n a]?xG\n aaControls\n ac-auditEntity\n@@ -5669,7 +5657,6 @@ asset_diagnostic: HandleFileChange -> UpdateRelatedFile\\n\n asset_diagnostic: HandleNewPossibleAssetFileSymbolParts \"%s\" \"%s\"\\n\n asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> AddAsset\\n\n asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreAssetDirectory\\n\n-asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreByRestrictedWrite\\n\n asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreNewPossibleAssetFile\\n\n asset_diagnostic: LoadPersistentInfo \"%s\"\\n\n asset_diagnostic: LoadPersistentInfo -> Assigning new slot (%d)\\n\n@@ -5873,6 +5860,7 @@ bie.+\n bignum out of range\n bignum routines\n bignum too long\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -7595,6 +7583,7 @@ l7@J\n lC57\n lDcW\n lM2p\n+l\\tV_powd\n language\n last octet invalid\n lastModifiedBy\n@@ -7691,9 +7680,12 @@ m_SubassetDefinitions\n m_SubassetReferences\n m_UserData\n m_WeakReferenceList\n+m_bAllowDefinitions\n+m_bAllowReferences\n m_bFileExists\n m_bIsGameFile\n m_bOptional\n+m_bWorldSpaceOrientation\n m_ePromiseState != EPromiseState::Unresolved\n m_fMoveTo\n m_nFileCRC\n@@ -8485,7 +8477,6 @@ publiccontent_\n pvk data too short\n pvk too short\n pzKD)\n-p|44\n q not prime\n q&A\\nn\n q/\\rg2\n@@ -8526,7 +8517,6 @@ rRfKR\n rX&O0\n rZ1VwGf5\n rZPM\n-r\\fp|44\n r\\vDi\n radiusScale\n radius_random\n@@ -9463,6 +9453,9 @@ too large\n too long\n too many iterations\n too many temporary variables\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n tools/assettags\n tools/images/assetbrowser/filter_tags_empty.png\n tools/images/common/document_sm.png\n@@ -9904,7 +9897,6 @@ z>Hz\n zF):O4\n zG2m8\n zRXU \n-z\\tV_sscanf_s\n zlVO\n zlib compression\n zone"
        },
        {
          "filename": "game/bin/win64/bugreporter_filequeue_strings.txt",
          "status": "modified",
          "additions": 4,
          "deletions": 5,
          "changes": 9,
          "patch": "@@ -1,15 +1,14 @@\n %s%c%04i%02i%02i-%02i%02i%02i-%s\n %s%cbug.txt\n--\\tV_fread\n .?AVCBugReporter@@\n .?AVIBugReporter@@\n-2\\vph\n+2\\vpH\n+6\\tV_fread\n <<Invalid>>\n Area\n BugReporter005\n Build\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\utils\\bugreporter_filequeue\\_vpc_bugreporter_filequeue\\default\\win64\\_msvc_\\Retail\\bugreporter_filequeue.pdb\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n Category\n DriverInfo\n Level\n@@ -18,7 +17,7 @@ Misc\n Names\n OptionsFile\n Owner\n-R\\fph\n+R\\fpH\n Savegame\n Screenshot\n Source2\n@@ -37,7 +36,7 @@ config_file\n crashdump_user_name\n json\n netmask\n-r\\vph\n+r\\vpH\n resource/bugreporter.res\n source2\n username"
        },
        {
          "filename": "game/bin/win64/cs2_build_econ_items_workshop.exe_strings.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 1,
          "changes": 6,
          "patch": "@@ -4,7 +4,8 @@\n .CRT$XCAA\n .CRT$XIAA\n .CRT$XIAC\n-2\\vpt\n+2\\vpd\n+2\\vpp\n <<ECONITEM_INSERT_COUPON_LOOTLIST>>\n <<ECONITEM_INSERT_EVERYTHING_SOURCE2_BUILD_HERE>>\n AppSystemInitFailed\\n\n@@ -40,6 +41,8 @@ Including: '%s'\\n\n Inert VModuleMetadata\n Loading: '%s'\\n\n RSDS\\r\n+R\\fpp\n+R\\vpp\n SCHEMA_\n Saved Debug KV3: %s\\n\n WARNING: \n@@ -101,6 +104,7 @@ paint_kits\n paint_kits_rarity\n pedestal_display_model\n prefabs\n+r\\vpp\n reserved_item_index\n revolving_loot_lists\n scripts/items/items_game.txt"
        },
        {
          "filename": "game/bin/win64/cs_mdl_import.exe_strings.txt",
          "status": "modified",
          "additions": 379,
          "deletions": 258,
          "changes": 637,
          "patch": "@@ -15,7 +15,7 @@\n     -weapon_anim_prefab <path> : Path to a prefab to be included. Path relative to 'output path'.\\n\n     -write_weapon_anim_prefab  : Write sequences & weighlists into a prefab. \\n\n   Bad Fax Lines: %lu\\n\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -84,7 +84,9 @@\n # of channels is zero.\\n\n #CfU7\n #This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\\n\n+#\\tV_exp2f\n $ModelPath$/transmission\n+$\\tV_expd\n $cloth%d_%s\n $cloth%d_r%dc%d\n $modelname$\n@@ -151,6 +153,7 @@ $prefix_element$\n %s on any hitboxes or physics bodies. This part won't be destructible by damage.\n %s on physics bodies (exists on hitboxes though). Destroying this part will still leave collision active.\n %s references unknown mesh: '%s'\n+%s%02d:%02d\n %s%s: FGD Parse error: %s %s\\n\n %s(%d) : %s\\n\n %s(%s) = %s\n@@ -362,7 +365,6 @@ $prefix_element$\n .?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -442,7 +444,6 @@ $prefix_element$\n .?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -665,6 +666,7 @@ $prefix_element$\n .?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -897,6 +899,7 @@ $prefix_element$\n .?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1076,6 +1079,7 @@ $prefix_element$\n .?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1162,6 +1166,7 @@ $prefix_element$\n .?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1244,6 +1249,7 @@ $prefix_element$\n .?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1619,13 +1625,17 @@ $prefix_element$\n .?AUCAttr_no_member@?L@??GetStaticAttributes@CModelDocIKChain@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCMorphSetData@@\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AUCScaleBiasFilter@CModelDocClothProxyMeshFile@@\n .?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@\n .?AV<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@\n+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@\n .?AV<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@\n .?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@\n .?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n .?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n@@ -1668,6 +1678,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@\n@@ -1790,6 +1801,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@\n@@ -1973,7 +1985,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -1985,7 +1996,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2163,6 +2173,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -2375,6 +2386,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@\n@@ -2497,6 +2509,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@\n@@ -2642,7 +2655,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -2654,7 +2666,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2832,6 +2843,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -3044,6 +3056,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@\n+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@\n@@ -3166,6 +3179,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@\n+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@\n@@ -3349,7 +3363,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@\n@@ -3361,7 +3374,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@\n@@ -3539,6 +3551,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@\n .?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@\n+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@\n@@ -3783,6 +3796,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@\n+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@\n@@ -3904,6 +3918,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@\n@@ -4045,7 +4060,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -4056,7 +4070,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -4226,6 +4239,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -4435,6 +4449,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@\n@@ -4555,6 +4570,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@\n@@ -4726,7 +4742,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@\n-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@\n@@ -4910,6 +4925,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@\n@@ -5381,6 +5397,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@\n+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@\n@@ -5502,6 +5519,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@\n@@ -5643,7 +5661,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -5654,7 +5671,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -5824,6 +5840,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -6000,7 +6017,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@\n .?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@\n-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@\n .?AV?$CTypedLogLayerSampleData@E@@\n .?AV?$CTypedLogLayerSampleData@H@@\n@@ -6193,6 +6209,7 @@ $prefix_element$\n .?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6254,6 +6271,7 @@ $prefix_element$\n .?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6300,12 +6318,17 @@ $prefix_element$\n .?AV?$IToolAttr_TypedValue@W4SpawnEntity_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttr_TypedValue@W4TransferMorphsVertexSelectionMode_t@@@@\n .?AV?$IToolAttr_TypedValue@_N@@\n+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@\n .?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n@@ -6584,7 +6607,6 @@ $prefix_element$\n .?AVCModelDocAnimatedMaterialAttributeColor@@\n .?AVCModelDocAnimatedMaterialAttributeValue@@\n .?AVCModelDocAnimationList@@\n-.?AVCModelDocAssociatedPulseGraph@@\n .?AVCModelDocAtom@@\n .?AVCModelDocAttachment@@\n .?AVCModelDocAttachmentBase@@\n@@ -7041,11 +7063,13 @@ $prefix_element$\n .CRT$XCAA\n .CRT$XIAA\n .CRT$XIAC\n+.P6AXPEBDPEAVCBufferString@@@Z\n .cloth\n .dmx\n .dx90.vtx\n .exr\n .fgd\n+.oNj\n .pfm\n .phy\n .phy file contains entries for its collisionText. Add support\\n\n@@ -7060,56 +7084,57 @@ $prefix_element$\n .vpk:\n .vvd\n .webp\n-00I@\n-05I@\n-05T@\n-06I@\n+02V@\n+04I@\n+04R@\n+06A@\n 06U@\n-076@\n-079@\n-07U@\n-07b@\n-08I@\n-0AI@\n-0AT@\n-0DI@\n-0F4@\n-0FO@\n-0FV@\n-0JI@\n-0JN@\n-0KM@\n-0MC@\n-0MI@\n-0My@\n-0NA@\n-0NS@\n-0PI@\n-0PN@\n-0Pc@\n-0R5@\n+06k@\n+0>Ym\n+0B7@\n+0Cy@\n+0D7@\n+0E9@\n+0EV@\n+0JO@\n+0JU@\n+0KQ@\n+0P7@\n+0QM@\n 0R6@\n-0T9@\n-0U3@\n-0U5@\n-0X9@\n-0YR@\n+0SU@\n+0V2@\n+0VV@\n+0WS@\n+0YB@\n+0ZC@\n+0ZI@\n 0\\r%0t\n-0\\tV_frexpf\n-0by@\n-0d6@\n-0dI@\n-0eC@\n-0f5@\n-0gI@\n-0hI@\n-0iR@\n-0oI@\n-0qL@\n-0v3@\n-0ww@\n+0aH@\n+0b3@\n+0b6@\n+0bS@\n+0cQ@\n+0cV@\n+0dT@\n+0eL@\n+0ez@\n+0f4@\n+0h9@\n+0hQ@\n+0k3@\n+0kQ@\n+0l6@\n+0l7@\n+0pK@\n+0r5@\n+0sO@\n+0sU@\n+0tz@\n+0u5@\n+0v9@\n+0vI@\n 0x%llx\n-0y3@\n 16-byte data pool\n 180_recovery\n 1D Blend Has No Referenced Animations\n@@ -7122,13 +7147,10 @@ $prefix_element$\n 2DBlend\n 2DBlendEditor\n 2DBlendFromAnimation\n-2\\vpH\n 2_BONE_IK\n 4-byte data pool\n-4PYX\n 4\\r54t\n 5;FJ$,XEK4<\n-5a\\v6;\n 5sfm_v8\n 64 283 0\n 7&F|If\n@@ -7138,6 +7160,7 @@ $prefix_element$\n 8-byte data pool\n 969p\n 9>No data\n+9\\tV_frexpf\n :: <NO TARGET BONE>\n ; tris:\n ;side\n@@ -7148,6 +7171,7 @@ $prefix_element$\n <font color=\"red\">Face is connected to itself, cannot dissolve</font>\n <font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>\n <font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.\n+<non-RTTI type>\n <none>\\n\n <p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>\n <pair_a> \n@@ -7156,7 +7180,7 @@ $prefix_element$\n =(None)\n == PulseGraphDef ==\\n\n =CAnimFoot\n->Hull\n+>PushBack\n ?CurveEditor()\n ?DmeChannelsClip\n ?catmullrom_normalize_x\n@@ -7165,11 +7189,9 @@ $prefix_element$\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n-@APhysics\n @Integer overflow in %s\n @fff>fff>fff>fff>\n @idle\n-@m_vCenter\n @unnamed_%d\n A bone named %s already exists.\n A box shape which cloth collides with.\n@@ -7376,6 +7398,7 @@ Add Bones To Render Mesh\n Add Center Vertex\n Add Curvature\n Add Extra Boundary Voxels\n+Add Flags\n Add Margin\n Add R%d <- R%d + R%d\n Add Radius\n@@ -7386,6 +7409,7 @@ Add a bone to the bindpose skeleton\n Add a hold to shorter animations in the blend to match frame counts on all blends\n Add a voronoi plane mesh primitive.\n Add box mesh primitive.\n+Add flags to the given value.\n Add noise\n Add plane mesh primitive.\n Add self amount for combined additive and alpha blended\n@@ -7408,6 +7432,7 @@ Affect Edges\n Affect Faces\n Affect Parents\n Affect Vertices\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n AggregateRenderMesh\n Aggressive\n Aim Offset\n@@ -7449,7 +7474,7 @@ Alpha blend weight for sequence 1\n Alpha decoder initialization failed.\n Also Missing Exclusive Detail Layers\n Also select faces using any of these additional materials.\n-Always\n+Am_nParticle\n Ambient Occlusion Map\n Ambient Occlusion Map Power\n Amount of accumulated force to preserve\n@@ -7626,9 +7651,10 @@ AsShotPreProfileMatrix\n AsShotWhiteXY\n Assert True\n Asserts (fails compilation) if selection criteria is not met.\n+AssetBrowse( %s )\n AssetBrowse( vnmclip )\n AssetBrowse( vnmgraph )\n-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )\n+AssetBrowse()\n Assign A Channel\n Assign B Channel\n Assign Bone Parent\n@@ -7645,10 +7671,11 @@ Assign to All Faces\n Assigns a color value to a material attribute over a frame range.\n Assigns a floating point value to a material attribute over a frame range.\n Assigns all vertex weights to the specified bone.\n-AssociatedPulseGraph\n Associates a semantic identifier with an animgraph2 used by this model.\n-Async Fire C%d:I%d\n-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n+Async Call Method (Child Cursor) C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n Attach Point\n Attach to Morphing Base Mesh\n AttachedSoundEvent\n@@ -7706,15 +7733,13 @@ BC4_UNORM\n BC5_SNORM\n BC5_TYPELESS\n BC5_UNORM\n-BPl7@\n Back-solve Joints\n Back-solve Joints Drive Meshes\n Back-solve Min Weight\n Bad bodygroup name '%s'\n Bad class description\n Bad code word\n Bad config reference '%s'\n-Bad count in ArraySetCount (%d)\n Bad input/output type '%s'\n Bad max in ArrayFirstNElements (%d)\n Bad metadata for %s\n@@ -7768,6 +7793,7 @@ BaseTextureGenerator\n BaselineExposure\n BaselineNoise\n BaselineSharpness\n+Basic string support.\n BayerGreenSplit\n BeenSimplified\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n@@ -7799,9 +7825,12 @@ Blend Weights Per Vertex\n BlendLayersUsingTimeSelection\n Blur Radius\n Bm_Plane\n+Bodies are ordered by bone depth (root bone body is first)\n+Bodies are ordered the way their shapes appear in the shape list \n Body Collection\n Body Group Choice\n Body Group Name\n+Body Order\n BodyGroupList\n Bodygroup error %s\\n\n Bone '%s' already existed in the bind pose\n@@ -7814,9 +7843,11 @@ Bone 1\n Bone 2\n Bone 3\n Bone Cull Type\n+Bone Depth\n Bone Influence Filter\n Bone Influence Filter Threshold\n Bone Input :: \n+Bone Merge (Ex)\n Bone Names\n Bone Rename failed, results in duplicate bone '%s' in this animation\n Bone Rename failed, results in duplicate bones in this animation\n@@ -7828,6 +7859,7 @@ Bone flags markup data\n Bone name\n Bone names must differ\n Bone or Attachment\n+Bone-Direct\n BoneConstraintRbf :: Cannot find input bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Cannot find output bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\\n\n@@ -7836,6 +7868,7 @@ BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\\n\n BoneMarkup\n BoneMarkupList\n BoneName\n+BoneOverlay\n BonePrefix\n BoneRelativeNode\n BoneReplacements\n@@ -7852,8 +7885,6 @@ Bounds Hull\n Bounds Maxs\n Bounds Mins\n Bounds View\n-BoundsOffset\n-BoundsScale\n Box De-Select (\n Box Dimensions\n Box Primitive\n@@ -8069,7 +8100,6 @@ CModelDocAnimatedMaterialAttribute\n CModelDocAnimatedMaterialAttributeColor\n CModelDocAnimatedMaterialAttributeValue\n CModelDocAnimationList\n-CModelDocAssociatedPulseGraph\n CModelDocAtom\n CModelDocAttachment\n CModelDocAttachmentBase\n@@ -8250,7 +8280,7 @@ CModelDocModelModifier_FoliageVertexNormals\n CModelDocModelModifier_FoliageVertexNormals: Computing...\n CModelDocModelModifier_FoliageVertexNormals: Computing...\\n\n CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\\n\n-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1147\n+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1148\n CModelDocModelModifier_GenerateDecalUVs\n CModelDocModelModifier_RenameBone\n CModelDocModelModifier_ReplaceResourceReferenceSubstring\n@@ -8326,7 +8356,6 @@ CModelDocVSNAPParticle\n CModelDocWristBone\n CModelMaterialGroupName\n CModelMesh Index Buffer\n-CModelMeshBufferData_t\n CModelMeshRenderData::BuildVertexBuffersForMaterialGroups(732): \n CModelMeshVertexBuffer\n CONTENTS_AREAPORTAL\n@@ -8382,9 +8411,9 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -8394,26 +8423,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n CPulseCell_PickBestOutflowSelector::ProcessSelector\n CPulseCell_Step_CallExternalMethod '%s'\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseMathlib::AbsFloat\n CPulseMathlib::AbsInt\n CPulseMathlib::ArcCos\n@@ -8450,6 +8481,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -8479,17 +8511,23 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseTestScriptLib::AssertTrue\n CPulseTestScriptLib::IndicateTestFailure\n CPulseTestScriptLib::IsInTestMode\n CPulseTestScriptLib::RegisterTestCheckpoint\n CPulseTestScriptLib::TestModeAssertTrue\n+CREATE_CHILD_CURSOR_OUTFLOW\n CRenderMeshSimplifyParams\n+CRenderMeshSlotType_t\n CResourceArray< ModelReference_t >\n CResourceExtReference< CWeakHandle< InfoForResourceTypeCModel > >\n CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > >\n@@ -8522,6 +8560,7 @@ CUndoDestroyElement\n CUndoManager::Redo\n CUndoManager::Undo\n CUtlBlockVector<class Vec2D<float>,int,class CMemAllocAllocator>::GrowCount\n+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct StoredTriangleVertexPositions_t,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator>::GrowCount\n@@ -8575,53 +8614,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr\n CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage\n+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n+CUtlStringToken\n CUtlStringTokenWithStorage\n CUtlVectorFixedGrowable\n CVisibilityMgr\n@@ -8658,8 +8664,6 @@ Can Player Pickup Piece\n Can not read scanlines from a tiled image\n Can't find bone named '%s'.\n Can't find this node in the list of all groom group nodes.\n-Cancel\n-Cancel observing.\n Cannot Find \"%s\" Stream On Mesh\n Cannot Find \"%s\" Vertex Map On Mesh\n Cannot Find Bone Parent Stream For Bone :: %s, Parent :: %s\n@@ -8910,7 +8914,7 @@ Combine Owner + Part Name\n Combine_Strider.mdl\n Commit Step\n CommonToolEvent_DocumentModifiedFlagChanged_t\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n Compiled GUI file\n Completed\n Complex Cloth Chain\n@@ -9080,13 +9084,14 @@ Cursors Allowed To Wait\n Curvature\n Curvature Drop Amount\n Curvature Drop Distance\n-CurveEditor\n CurveEditor( { extended=true input_name=\"Frame\" output_name=\"Value\" } ) \n Cut Max\n Cut Min\n Cycle Start Frame\n Cycle Type\n Cylinder\n+Cylinder - Centered (SLOW PERF)\n+Cylinder - Ground (SLOW PERF)\n Cylinder: %s\n D16_UNORM\n D24_UNORM_S8_UINT\n@@ -9126,6 +9131,7 @@ Default (No RGB Tint)\n Default Gravity Scale\n Default Root Bone Name\n Default offset for cp1 relative to cp0 if cp1 not set\n+Default to old body ordering for now\n Default: %s\n DefaultAnimGraph2\n DefaultCropOrigin\n@@ -9458,8 +9464,10 @@ End Frame\n End Frame Number\n End Loop\n End dot product value for fading as the particle normal becomes aligned with the view vector\n+EnsureCapacity\n Entity Class Override\n EntityName\n+Enum support.\n EnumArray\n Eq R%d <- R%d == R%d\n Equal to\n@@ -9499,6 +9507,7 @@ Euler XYZ\n Evaluate the curve at the specified input position\n Evaluate the gradient at a position between 0 and 1\n Event %u layer %i at time %i type %s\\n\n+Event Class\n Exact\n Exclude Bones With Exact Flags\n Exclude Bones With Flags\n@@ -9629,8 +9638,8 @@ Fade Out Time\n Fade Time\n Fail Outflow\n Fail on empty\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to allocate field info array\n Failed to allocate memory for %s (%ld elements of %ld bytes each)\n Failed to allocate mesh edges for mesh, maximum edge count %i has been reached.\\n\n@@ -9689,6 +9698,7 @@ Final animation consists of A, Crossfade, B\n Find String\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find and replace in resource references across the document (NOTE: Some references like materialgroups may be missed with the current implementation.)\n Find another Mesh Operation node by name in this document and run it as if it were a child of this node.\n Find first element 'a' which compare equal to 'element' and return its index.\n@@ -9734,9 +9744,9 @@ Flip Direction\n Flip Percentage\n Flip the forward (x) axis direction of bones\n Float To Game Time\n-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\\n\n-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\\n\n+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\\n\n Floating point \"Predictor\" not supported with %d data format\n Floor - round float down to nearest integer\n Floor Float\n@@ -9768,6 +9778,7 @@ Force this external piece to spawn motion-disabled regardless of the VMDL propda\n Force to apply\n ForceRealignBone\n ForceUnweightedBindposeBonePositions\n+Format Duration String From Seconds\n Format error!\n Fourth Control Point Location\n Fourth Control Point Number\n@@ -9889,7 +9900,9 @@ HalftoneHints\n Hammer temp export\n HammerEntityPicker()\n Hard Lock\n+Has All Flags\n Has Angle Constraint\n+Has Any Flags\n Has Base Spring\n Has Collision\n Has Pitch Constraint\n@@ -9906,7 +9919,7 @@ Height Target\n Height Tolerance\n Height of the primitive to project normals from.\n Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.\n-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\\n\n+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\\n\n Hidden\n Hide Materialgroup in Tools\n Hide Render Color in Tools\n@@ -9942,7 +9955,9 @@ How many iterations this solvers hould use.\n How much the joint tries to drive back to bind pose\n How much to consider facing angle in occlusion.\n How quickly the elasticity target pose changes to match the current pose\n+How should the bodies, created by these shapes, be ordered in the final model\n How the end effector should be rotated after the solve.\n+Hull\n Hull Per Element\n Hull Per Mesh\n Hull Too Complex for Runtime (%d verts, %d edges, %d faces)\n@@ -9964,7 +9979,6 @@ INVALID SUBTYPE!\n ISO JBIG\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If Lerp Type is Full Frame Range, this is the fixed scale value applied, the curve is used otherwise\n If animation has been subtracted in ModelDoc to create an additive animation to be used with AnimGraph, set this to true\n If any faces with a given material are selected, expand the selection to include ALL faces using those materials.\n@@ -10202,7 +10216,6 @@ KeychainMarkupLocator\n Keyframe animation data\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n Kochanek-Bartels\n Kochanek-Bartels Early\n Kochanek-Bartels Late\n@@ -10235,6 +10248,7 @@ Latency CP\n Latency CP field\n Layer %d:  adding key at time %d [%d -> %d], value \n Leader Bone\n+Leader Type\n Leaf Only\n Leaking %i elements\\n\n Leap to Chunk C%d\n@@ -10386,18 +10400,22 @@ MATERIAL_ATTRIBUTE:%s_%i\n MAlternateSemanticName\n MAtomicTransfersAsMap\n MAtomicTransfersAsPlainString\n+MESH_BUFFER_USAGE_VERTEX_EMISSIVE\n MEntitySubclassScopeFile\n MFgdHelper\n MHideInPolymorphicClassList\n MIsStringAndTokenType\n MKV3TransferName\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MModelGameData\n MORPH\n MPropertyArrayElementNameKey\n MPropertyAttributeEditorOverride\n MPropertyAutoExpandSelf\n MPropertyColorPlusAlpha\n MPropertyCustomEditor\n+MPropertyFGDFromAssetKeysFromOtherField\n MPropertyFlattenIncludeLabel\n MPropertyFlattenIntoParentRow\n MPropertyFlattenStretchFactor\n@@ -10415,6 +10433,7 @@ MPropertySuppressBaseClassField\n MPropertySuppressField\n MPulseExpressionAlias\n MPulseFunctionHiddenInTool\n+MPulseTypeRestriction\n MResourceTypeForInfoType\n MVDataAnonymousNode\n MVDataAssociatedFile\n@@ -10451,12 +10470,14 @@ Make Angle From Forward Vector\n Make Color\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -10547,11 +10568,11 @@ Mesh  Min/Max :: %8.4f, %8.4f R :: %8.4f %8.4f C :: %8.4f %8.4f\\n\n Mesh & Skeleton\n Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s\n Mesh Operation Stack\n-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s\n+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s\n Mesh contains %d blend weights per vertex;  truncating to %d\\n\n Mesh has %i > %i floats of attributes, unable to apply all weightings.\n Mesh node name\n-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s\n+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s\n MeshDrawOrder\n MeshFileReferenceEditor\n MeshID\n@@ -10693,6 +10714,7 @@ Must call InitModelDocLib before using the library.\n Must supply -o for output files\\n\n Mutually Exclusive Cloth Effects\n My Subclass Name\n+N@Bad count in ArraySetCount (%d)\n NO TARGET\n NOT \n NOT_ARRAY_MEMBERS\n@@ -10757,6 +10779,7 @@ No bone named %s to rename.\n No bone named :: %s in modeldoc, CSkeletonpose mismatch?\n No but transfer UVs\n No component selection made; node will have no effect.\n+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!\n No edges selected by length threshold.\n No faces selected by facing angle.\n No faces selected.\n@@ -10788,6 +10811,7 @@ No valid .phy for %s\\n\n No vertex attribute name specified\n No vertices selected by index and weight threshold.\n NoCollapse\n+NoEditor()\n Node '%s' not allowed in this document type (%s)\n Node Name\n Node cannot be added with invalid name: %s\n@@ -10824,7 +10848,6 @@ Normal Attribute Simplification Weight\n Normal Lock to Control Point\n Normal Modify Offset Random\n Normal texture scroll rate\n-NormalBias\n Normalize Output\n Normalize Vector a\n NoseV\n@@ -10887,7 +10910,6 @@ Optimize for Keychains\n Optimize for rope and cloth simulation\n Optional bone to use as the root transform.\n Optional pattern for attribute names (* for wildcards.) Note that this matches against non-display (ie. raw view) attribute names.\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Options:\\n\n Or R%d <- R%d || R%d\n@@ -10948,6 +10970,7 @@ Override Vector\n Override all mesh normals with a specific vector.\n Override bone scale information on an animation\n Override model bounds.\n+Override sound is invalid.\n Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)\n Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)\n Override the mass this embedded piece will spawn with regardless of the VMDL propdata.\n@@ -10957,52 +10980,52 @@ Overrides the target VSNAP resource (defaults to \"particles/models/%model_name%/\n Overwrite all bone data\n Overwrite existing flags only\n Overwriting existing wrinkle map data on mesh\n-P0L@\n-P0V@\n-P1Q@\n-P6I@\n-P7U@\n-P9I@\n-P9T@\n-PA1@\n+P2V@\n+P2e@\n+P3R@\n+P4V@\n+P4m}\n+P5O@\n+P5V@\n+P6f@\n PARENT\n-PB8@\n-PBI@\n-PBU@\n-PD2@\n-PDO@\n-PEA@\n-PEI@\n-PEV@\n-PF4@\n-PF9@\n-PFS@\n+PBQ@\n+PBy@\n+PD7@\n+PD8@\n+PFQ@\n PF\\n%d %d\\n-1.000000\\n\n+PF_TYPE_CONTROL_POINT_IS_SET\n PHY Import: Invalid solid index %d in keyvalues\\n\n PHY Import: Solid with index %d is defined twice!\\n\n-PKI@\n-PKN@\n+PIH@\n+PLT@\n+PLU@\n PMO@\n-PNA@\n-PNI@\n POSE_SPACE_BONE\n POSE_SPACE_MORPH\n-PSI@\n-PSc@\n-PT9@\n-PTN@\n+POU@\n+PP7@\n+PPS@\n+PQ8@\n+PSU@\n PURH\n-PUS@\n-PV5@\n-PY6@\n-PYI@\n-Pa5@\n-PaI@\n+PUT@\n+PVU@\n+PVV@\n+PVz@\n+PWI@\n+PXQ@\n+PXS@\n+PYB@\n+PYU@\n+PZy@\n+Pa6@\n+PaQ@\n PackBits\n PackBitsDecode: Not enough data for scanline %ld\n PackBitsDecode: discarding %ld bytes to avoid buffer overrun\n PackToSharedVB\n-PackedBlobNormal\n Packing Material Particle System\n Packing Material Volume scale - to have more or less contents\n PageName\n@@ -11027,6 +11050,7 @@ Parent Node\n Parent Node Name\n Parent Reaction\n Parent Rotation\n+Parent VData\n Parent bone '%s' specified by define bone could not be found.\n Parent node type is not a valid node type for this node\n Parent of Chain Requires Alignment\n@@ -11044,6 +11068,11 @@ ParticleImport\n ParticleParamID_t\n ParticlesLib\n Pass Outflow\n+Pb6@\n+Pc3@\n+PcS@\n+Pcy@\n+PdO@\n Peak Cycle\n Peak Frame\n Peak Frame Number\n@@ -11054,12 +11083,15 @@ Perforce\n Perform a set of parametric mesh modification operations.\n Persistent\n Perturb vertex positions using sine waves.\n+Pf4@\n+PfQ@\n+PfV@\n Pf\\n%d %d\\n-1.000000\\n\n-Pg8@\n Photometric tag is missing, assuming data is YCbCr\n Photometric tag value assumed incorrect, assuming data is YCbCr instead of RGB\n PhotometricInterpretation\n Photoshop\n+Physics\n Physics Joint Modification Mode\n Physics Particle\n Physics Prop\n@@ -11093,6 +11125,8 @@ PhysicsShapeHullPrimitive\n PhysicsShapeList\n PhysicsShapeReplacements\n PhysicsSurfaceProperties\n+Pi7@\n+PiU@\n Pick 3 target cloth nodes\n Pick Target Cloth Nodes:\n Pick the IK Chain to lock:\n@@ -11134,7 +11168,10 @@ Pitch Yaw Roll\n Pitch Yaw Roll Max\n PivotPaint\n PixarLog\n+PjI@\n+Pk7@\n PkI@\n+Pkz@\n PlI@\n Place On Attachment\n Place On Bone\n@@ -11151,9 +11188,9 @@ Plane Primitive\n Plastic\n Plasticity\n Play End Cap Effect\n+PmI@\n PmU@\n-PoI@\n-PoR@\n+Pn6@\n Point 0\n Point 1\n Point Bones At\n@@ -11202,8 +11239,10 @@ Positions in grid\n PosterSettings\n Posture\n Power scale for applying the supplemental ambient occlusion map.\n-Pr6@\n-PrT@\n+Pp5@\n+PpL@\n+PrI@\n+PrK@\n Pre-Age Noise\n Pre-Clear Selection\n Precision Degrees\n@@ -11217,6 +11256,7 @@ PredictorEncodeTile\n PredictorSetup\n Prefab\n Prefab [%s]\n+Prefab target file '%s' not found\n PrefabList\n Prefix element cannot contain element or element_array attributes. ('%s')\n Prefix to Match\n@@ -11248,32 +11288,34 @@ Primitive Radius\n Primitive type to project vertex normals from.\n Prismatic joint.\n Procedural\n+Proceed Immediately\n Process Selector\n Project From Primitive\n Project on Characters\n Project on Water\n Project on World\n Projected Primitive\n-Prop Group for Physics Particles\n-Prop group for spawned physics particles\n PropWorldOrigin\n Prune pieces < error threshold\n+Ps5@\n PsI@\n+PtQ@\n+Pu5@\n+PuO@\n Pull towards control point\n-Pulse Graph\n Pulse domain which enables particle content to query leaf code to introspect game state.\n+PulseDurationStringFormat_t\n Push Out\n Push mesh faces outward along their local normal. Optionally build shell geometry.\n-PushBack\n-PvU@\n-PwR@\n-PwU@\n-Px5@\n-Py6@\n+Py9@\n+PzG@\n+Pze@\n+Pzz@\n QAngle\n Quad Bend Tolerance\n Quadratic\n Quadric Error Metric\n+Quantize the transform centroid position to the given modulus.\n Quaternion\n QuaternionStorage\n Quickhull got into an impossible state and failed\n@@ -11338,6 +11380,7 @@ R8_TYPELESS\n R8_UNORM\n R9G9B9E5_SHAREDEXP\n RBF Based Anim Constraint\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RGB blend weight for sequence 0\n RGB blend weight for sequence 1\n ROTATION\n@@ -11391,7 +11434,6 @@ Redo\\n======\\n\n Reduce how bouncy the joint is\n ReductionMatrix1\n ReductionMatrix2\n-Reference to a Pulse file to be run on this model entity.\n Reference to a content file that will append its contents to a parent render mesh file node.\n Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)\n Reference to a content file that will resolve to one or more bone nodes to define a skeleton.\n@@ -11473,6 +11515,7 @@ Remap distance to line between 2 control points to scalar\n Remap distance to line between 2 control points to vector\n Remap the trace result value relative to this range.\n Remove Behind\n+Remove Flags\n Remove Front\n Remove Small Components\n Remove Tag From Cursor\n@@ -11481,6 +11524,7 @@ Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n Remove all values from the list\n Remove bones that are not present in this allow-list.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n Remove vertices behind the slice plane.\n@@ -11624,6 +11668,7 @@ SSAOBias\n SSAORadius\n SSAOStrength\n Safeguard against producing a model outside budgetary limits.\n+Same Model (In)\n Sample Count\n Sample Rays\n Sample bitmap data using input UV channel and bake it to the output face vertex data channel.\n@@ -11786,6 +11831,7 @@ Sets all elements in a vector (or float) stream to a single value\n Setting up field info failed\n Settings for the character's speeds in different situations and movement settings for the nav system and animgraph\n ShadowScale\n+Shape List\n Shapes\n Shapes controlled by this incremental control\n Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>\n@@ -11850,6 +11896,7 @@ Smooth Iterations\n Smooth Normals Across UV Seams\n Smooth Rate\n Smooth Vertex Normals\n+Snap to grid\n SnapshotVertexExtraction\n Soft Link\n Softbody\n@@ -11976,8 +12023,7 @@ Stiffness on Ragdoll\n StoNits\n Stop Effect after Duration\n Stop On Sequence Change\n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n Stores metadata for groom meshes.\n Stray Boundary Radius\n Stray Boundary Spring\n@@ -12026,6 +12072,7 @@ Swing Limit\n Swing Offset Angle\n Switch Threshold\n Symbol table:  %d entries %llu bytes\\n\n+Synchronous - Wait for this node to fully complete before proceeding.\n THEM\n TIFFAppendToStrip\n TIFFClientOpen\n@@ -12050,7 +12097,6 @@ TIFFVStripSize\n TIFFVTileSize\n TILT_TWIST\n TWIST\n-T\\tV_log2f\n Tag \n Tag %d\n Tag Cursor\n@@ -12070,6 +12116,7 @@ Target Hair Count\n Target Name\n Target Triangle Percent\n Target layer ID for rendering\n+TargetCastForModify\n TargetPrinter\n Team1\n Team2\n@@ -12172,7 +12219,10 @@ This is Work-In-Progress Content\n This is a BigTIFF file.  This format not supported\\nby this version of libtiff.\n This is an Euler Rotation in degrees in XYZ order.\n This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n This model will fail to compile outside a development environment.\n+This value is optional. Click to set.\n+This value is optional. Click to unset.\n This value is set when the morph control is created via mesh loading and not explictly created by the user\n ThreadStretch\n Threshholding\n@@ -12245,6 +12295,7 @@ Treat Warnings as Errors\n Tried to load a polymorphic pointer with no '%s' key\n Tried to rename from '%s' to '%s', but '%s' already exists\\n\n Truncated header.\n+Turn a time in seconds into a display string. NOT localized.\n Turn off animation compression for this animation.<p><span style=\"color:#aa0000\"><b>NOTE</b></span>: This significantly increases the size of the animation data.<p>Normally it should be false but if there are obvious compression artifacts, typically in tiny rotations, disabling compression may fix those.\n Twist Relax\n Two Sided\n@@ -12256,6 +12307,12 @@ UI Camera Yaw/Pitch\n UICameraRotation\n UL Offset in FLU local space\n UL control point number\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n UR Offset in FLU local space\n UR control point number\n UV Attribute Simplification Weight\n@@ -12266,7 +12323,6 @@ UV Map Planar\n UV Map Planar Custom\n UV Mapping\n U\\8h(\n-U\\tV_logd\n Un-inertial Rods\n Unable to add anim events to %s of type \"%s\". Only \"AnimFile\" nodes are valid.\\n\n Unable to add mtl %d for lod %d model has only %d mtls\n@@ -12310,6 +12366,7 @@ Unknown class '%s' specified by @exclude\n Unknown compression type.\n Unknown data format %d for LogLuv compression\n Unknown encoding %d for LogLuv compression\n+Unknown format type\n Unknown interpolation type %d\\n\n Unknown mesh '%s'\n Unknown parent bone '%s'.\n@@ -12336,6 +12393,7 @@ Unsupported mix of opaque and translucent materials in thie groom group. Render\n Up Type\n Up Vector\n UpdateLights\n+UpscalerType_t\n Usage: cs_mdl_import -o <path> [options] <filespecs...>\\n\n Use Block Solver\n Use Child Offset Attachment\n@@ -12346,6 +12404,7 @@ Use Eye Orientation\n Use Flat Color\n Use For Collision\n Use For Occlusion\n+Use High Precision Blend Weights\n Use High Precision/Expensive Texcoords\n Use Layer Sequence\n Use Local Space\n@@ -12358,6 +12417,7 @@ Use UV2 for Lightmap Charting\n Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.\n Use additive blending\n Use distance to an infinite line instead of a finite line segment\n+Use for faces\n Use max-luminance blending for sequence 0\n Use max-luminance blending for sequence 1\n Use radius for Per Particle Trace Length\n@@ -12372,6 +12432,9 @@ User-picks require a name\n User-specified color/materialgroup requires a node name\n Using 16-bit blend indices\\n\n Using deprecated 'base=prefix' syntax for adding a prefix to a base class\n+VDATA\n+VDataChoice( %s )\n+VDataChoice()\n VDataModelVersion001\n VDmElementFrameworkVersion001\n VDmSerializers001\n@@ -12474,6 +12537,7 @@ WARNING: No 'models_ModelDocGameData' FGD was specified in the 'ModelDoc' sectio\n WARNING: Unable to load the FGD file '%s'.\\n\n WDG,r3\n Wait Complete\n+Wake Cursors With Tag\n Warning! MDL %s body part %s failed CreateNode bodyPart\\n\n Warning! MDL %s mstudioikchain_t %s has %d mstudioiklink_t's expecting 3 - ignoring ik chain\\n\n Warning! MDL %s mstudioikchain_t %s has a linktype of %d expecting 0\\n\n@@ -12504,8 +12568,6 @@ What material this object is made of. Used for mass calculations, impact effects\n What to replace matches with\n What type of object this is.\n Wheel joint.\n-When False\n-When True\n When picking between random choices, determines odds this choice is picked compared to others. (eg. a weight of 2 is twice as likely to be picked as weight of 1)\n When this breakpiece breaks, should it be able to intersect with the parent that spawned it?\n When this model is loaded preserve vertex data in CPU memory.\n@@ -12514,10 +12576,15 @@ Whether the local hierarchy will use ease in/out values or just automatically ap\n Whether the to use the curve or just a set value for the entire frame range\n Whether this distance field contributes to AO.\n Whether this distance field is a collider for certain effects such as hair simulation.\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n Which solver to use for positioning the IK chain.  Required.\n+While False\n+While True\n WhiteLevel\n WhitePoint\n Width Target\n+Will use the second uv channel in the model to generate lightmap uvs.  This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.\n Wind Speed, mph\n Windage Normal\n Windage Tangent\n@@ -12591,14 +12658,15 @@ ZIPVSetField\n [choices\n [cloth] | [procedural]\n [procedural]\n-\\fPYX\n+\\f\\tV_acosd\n \\instances\\\n \\maps\\\n \\materialsrc\\\n \\ndummyfilename.tif\n \\ng default\\n\n \\prefabs\\\n \\rModelDoc\n+\\r\\nnexttoken\n \\sound\\\n \\t\"%s\" \"%f\"\\n\n \\t\"emptyanimwithnoeffect\" \"%d\"\\n\n@@ -12607,18 +12675,14 @@ ZIPVSetField\n \\t\"worldrelative\" \"%d\"\\n\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n-\\tV_acosd\n \\tV_asind\n \\tV_atan2d\n+\\tV_atand\n \\tV_cosd\n-\\tV_exp2f\n-\\tV_expd\n+\\tV_sscanf_s\n \\tV_tand\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StringAfterPrefixCaseSensitive\n-\\tg_bUpdateStringTokenDatabase\n-\\tnexttoken\n _CustomCommand\n _CustomCommand%d\n _InFrameSpine\n@@ -12630,11 +12694,11 @@ _TIFFMergeFieldInfo\n _TIFFSetupFieldInfo\n _TIFFVGetField\n _TIFFVSetField\n+_\\tV_log2f\n __CACHED_editcontext_provider_lookup\n __CursorQueue__\n __FireCursorsParent__\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n __autoskinned\n __bone_%d\n@@ -12681,9 +12745,9 @@ _temp_tangent\n _volumeatlas_\n _wjb\n _zero\n+`\\tV_logd\n a:fulltype\n a:typeparam\n-a\\tV_powd\n a_lean_override_\n a_lean_override_0\n a_lean_override_1\n@@ -12741,6 +12805,7 @@ align_to_frame_type\n align_tx\n align_ty\n align_tz\n+allflags\n allow_flex_length\n allow_none\n allow_nonmatching_bones\n@@ -12820,6 +12885,7 @@ animgraph_incompatible\n animturn\n anklebone\n antishrink\n+anyflags\n aoB>\"\n ao_map\n ao_power\n@@ -12832,14 +12898,14 @@ apply_fast_sweep\n applymodelspacetranslation\n are_effects_mutually_exclude\n assetTag\n+asset_specific_keys_source\n assign_a\n assign_b\n assign_g\n assign_r\n assign_to_all\n assign_to_all_faces\n associated_key\n-associated_vpulse\n ati_compress_wrapper.dll\n attach_material\n attach_mesh\n@@ -12921,6 +12987,7 @@ best_fit_atlas\n bezier\n bias_to_center\n biased\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -12953,6 +13020,7 @@ body_collection\n body_group_choice\n body_group_count\n body_group_name\n+body_order\n bodygroup_choice_%d\n bodygroup_name_%d\n bodygroup_preset\n@@ -12966,6 +13034,7 @@ bone_3\n bone_attrs\n bone_count\n bone_cull_type\n+bone_depth\n bone_index0\n bone_index1\n bone_index2\n@@ -13412,6 +13481,8 @@ draw_wireframe\n durationTime\n duration_info\n dynamic_attributes\n+eCenteredCylinder\n+eGroundCylinder\n ease_in_and_out\n ease_in_key\n ease_is_duration\n@@ -13530,6 +13601,7 @@ export_reference_type\n export_root\n exportsystem\n exporttags\n+expression_type\n extra_border_points\n extra_boundary_voxels\n extra_data\n@@ -13614,6 +13686,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -13710,6 +13783,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png\n game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png\n+game:tools/images/propertyeditor/eye_hidden.png\n+game:tools/images/propertyeditor/eye_visible.png\n gameSoundName\n game_data_list\n gamedata_searchable_keys\n@@ -13748,8 +13823,6 @@ goal_strength\n goal_strength_bias\n gradient\n graphCurve\n-graph_keys\n-graph_name\n gravity_grab_priority\n gravity_scale\n gravity_z\n@@ -13761,6 +13834,7 @@ gridnav\n gridspacing\n groom\n ground_friction\n+ground_offset\n groupColor\n group_id\n group_name\n@@ -13807,10 +13881,12 @@ hide_if_child_selected\n hide_materialgroup_in_tools\n hide_rendercolor_in_tools\n high_high_precision_texcoords\n+high_precision_blendweights\n high_priority\n high_quality\n hinge_axis\n hinge_vector\n+hit_group\n hitbox\n hitbox_maxs\n hitbox_mins\n@@ -13983,10 +14059,12 @@ kochanek_early\n kochanek_late\n kv3:ParticleParamID_t\n l2_regularization\n+l\\tV_powd\n ladder\n last_frame\n layers\n leader_bone\n+leader_type\n lean\n leave_body_collision_unmodified\n left\n@@ -14094,6 +14172,7 @@ lowprecisionuv1\n m_AdditionalInputDependencies\n m_AdditionalRelatedFiles\n m_ArgumentDependencies\n+m_BoneMergeLinks\n m_ChildResourceList\n m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation\n m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNamePosition\n@@ -14109,6 +14188,7 @@ m_HingeAxis\n m_InputDependencies\n m_Int\n m_IntArray\n+m_Metadata\n m_ParameterType\n m_ParentJoint\n m_PartsData\n@@ -14118,6 +14198,7 @@ m_RelativeFilename\n m_RootRelativePath\n m_SearchPath\n m_SearchableUserData\n+m_SequencePoint\n m_Special\n m_SpecialDependencies\n m_SpecialInputDependencies\n@@ -14173,7 +14254,9 @@ m_bUseNewPoleVectorForAxis\n m_bUseShadowFastPath\n m_capabilities\n m_eRbfType\n-m_externalMethodTargetGraph\n+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_fEmissiveFactor\n m_fMoveTo\n m_flAddCurvature\n m_flAddNoise\n@@ -14192,14 +14275,17 @@ m_flSlopeIncoming\n m_flSlopeOutgoing\n m_flTextureScrollRate\n m_flTextureSize\n+m_hCursorOnOtherGraph\n m_hitboxsets\n m_influenceFlags\n+m_materialGroupToken\n m_morphSet\n m_nAxis\n m_nCP1Parent\n m_nCP2Parent\n m_nCP3Parent\n m_nCP4Parent\n+m_nChildNode\n m_nControlPoint0\n m_nControlPoint00\n m_nControlPoint01\n@@ -14209,6 +14295,7 @@ m_nControlPoint5\n m_nControlPoint6\n m_nControlPoint7\n m_nCurrentWakeIndex\n+m_nCursorID\n m_nDesiredEndPoint\n m_nDesiredStartPoint\n m_nFileCRC\n@@ -14218,10 +14305,18 @@ m_nGraphID\n m_nIterations\n m_nNumCols\n m_nNumRows\n+m_nParentHash\n+m_nSrcDrawIndex\n m_nUserData\n+m_nVertexEmissiveFormat\n+m_nVertexEmissiveOffset\n+m_nVertexEmissiveStride\n+m_nVertexEmissiveVB\n+m_nYieldToken\n m_pVertexData\n m_qFixupRotation\n m_rbfParameters\n+m_rootBvhNodes\n m_vControlPoint1DefaultOffsetRelativeToControlPoint0\n m_vLocalOffset00\n m_vLocalOffset01\n@@ -14445,11 +14540,15 @@ must be either LogLUV or LogL\n mute\n n$Kx\n nDenominator\n+nFormat\n nKillPriority\n nLayoffState\n nMaxElements\n nNumerator\n+nRemainderDigits\n+nRemainderNoiseDigits\n nValue\n+nWakePriority\n name_mode\n name_prompt\n name_remap_table\n@@ -14509,7 +14608,6 @@ numsides_key\n o KPBf\n oOffset\n oY.o<\n-o\\tV_sind\n offsetTime\n offset_angles\n offset_origin\n@@ -14535,6 +14633,7 @@ operator_mode\n operators\n opqMU\n optimization_algorithm\n+optional_toggle_cmd\n optionallycompressedtangentframe\n orientation\n orientationChannel\n@@ -14546,6 +14645,7 @@ oscillate_scalar\n oscillate_vector\n out_frame\n outerconeangle\n+outliner_icon\n output is scalar of current value\n output is scalar of initial random range\n output_A\n@@ -14568,43 +14668,45 @@ override_help_id\n override_value\n override_vector\n overrideclass\n+overridesound\n overwrite_existing\n overwrite_existing_flags_only\n ownerlog\n owns_polymorphic_data\n-p0I@\n-p4V@\n+p0V@\n+p1y@\n+p2R@\n p4lib\n-p54@\n-p7I@\n-p8T@\n-p8x@\n-p96@\n-p9U@\n-pA7@\n-pB8@\n-pBU@\n-pCI@\n+p4m}\n+p5V@\n+p6e@\n+p7T@\n+p7z@\n+p9R@\n+pAB@\n pCheckpointName\n-pD8@\n+pD9@\n+pDO@\n pDescription\n-pF4@\n-pFI@\n-pFK@\n-pMN@\n-pMi@\n-pNA@\n-pOy@\n-pQ6@\n-pQI@\n-pR4@\n+pIR@\n+pKO@\n+pKV@\n+pLU@\n+pP6@\n+pP7@\n+pPQ@\n+pQU@\n+pQe@\n+pRM@\n+pTS@\n+pTU@\n pTagName\n-pVI@\n-pW9@\n-pYN@\n-pYX@\n-paI@\n-paQ@\n+pW2@\n+pWI@\n+pY9@\n+pYB@\n+pYU@\n+paV@\n panorama_image\n panorama_layout\n panorama_style\n@@ -14647,8 +14749,10 @@ pathclass\n pathnode\n pathnodeclass\n pattern\n-pe6@\n-peI@\n+pd3@\n+pdQ@\n+pdS@\n+pdz@\n peak\n peak_attr\n peak_cycle\n@@ -14657,7 +14761,10 @@ per particle\n per_material_options\n permissive\n pervertexlighting\n-ph8@\n+pez@\n+pf4@\n+pgy@\n+phO@\n phonememap\n phys\n physicsSimplificationError\n@@ -14678,6 +14785,7 @@ physicsjoint_weld\n physicsjoint_wheel\n physicspreview\n physicspreviewrendermesh\n+piQ@\n pick_type\n picks_expected\n piece\n@@ -14692,7 +14800,11 @@ pitch_friction\n pitch_stiffness\n pivotOffset\n pixelAspectRatio\n-pkR@\n+pjC@\n+pjz@\n+pl6@\n+pl7@\n+plV@\n place_on_floor\n placementOrigin\n placementattachment\n@@ -14702,9 +14814,9 @@ plane\n plastic\n plasticity\n playerclip\n-pmT@\n-pmU@\n-poU@\n+ply@\n+plz@\n+pnU@\n point\n point0_key\n point1_key\n@@ -14748,9 +14860,6 @@ postprocessing\n posture\n posture_nohands\n posxyz\n-pqA@\n-prL@\n-prP@\n preMerge face 0\n preMerge face 1\n precision_degrees\n@@ -14795,18 +14904,25 @@ propattr_force_readonly\n propattr_stretch_editor_into_label_column\n propdataname\n prune\n-prw@\n-psI@\n-psO@\n+psM@\n pseudo-\n-psw@\n+pt1@\n+pt5@\n+ptI@\n pulse_node_custom_attributes\n pulse_runtime_lib\n pushout_strength\n-pvT@\n+pvC@\n+pvI@\n pvTarget\n-pvU@\n-pvc@\n+pwN@\n+pwO@\n+pxQ@\n+pxz@\n+py6@\n+py9@\n+pz9@\n+pzN@\n qangle log\n qangle_array\n quad\n@@ -14993,7 +15109,6 @@ scriptlist\n scripts/activity_modifier_weights.txt\n scripts/collision_detail_layers.vdata\n scripts/physics_particles.vdata!%s\n-scripts/physics_particles.vdata!hlx_physics_particle_spawner\n searchable_key\n searchable_key_fields\n second sequence animation rate\n@@ -15004,6 +15119,7 @@ segments_v\n segments_x\n segments_y\n segments_z\n+select\n select_all\n select_all_children\n select_border\n@@ -15061,6 +15177,7 @@ shadow_secondary_color_night\n shadowtextureheight\n shadowtexturewidth\n shape\n+shape_list\n shapes\n shared\n sharpStartAngle\n@@ -15121,6 +15238,7 @@ smooth_normals_across_uv_seams\n smoothiterations\n smoothscale\n smoothscale_vector\n+snap_to_grid\n snappable\n snapshot\n snapshotOverride\n@@ -15223,6 +15341,7 @@ sticker_index\n sticker_markup_preview\n stiff_hinge\n stiff_hinge_angle\n+stiffen\n stiffness\n stiffness_on_ragdoll\n stop_distance_range\n@@ -15269,8 +15388,7 @@ swing_offset_angle\n switch_threshold\n syncEngineFramerate\n synched\n-t7U@\n-tBSheetSequenceIntegerId_t\n+tBRenderBufferFlags_t\n tagValue\n tag_list\n tag_list_dynamic\n@@ -15637,7 +15755,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png\n tools/images/modeldoc_editor/outliner_icon_transfermorphs.png\n-tools/images/modeldoc_editor/outliner_icon_vpulse.png\n tools/images/modeldoc_editor/outliner_icon_vsnap.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_file.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_list.png\n@@ -15689,6 +15806,7 @@ twistJoints\n twist_back_relax\n twist_relax\n two_sided\n+type_restriction_is_enum_flags\n t|AO\n ui_order\n uicamerarotation\n@@ -15744,6 +15862,7 @@ uvmapcylinder\n v %f %f %f\\n#%d ComponentIndex %d, queue %d, angle %.1f; ring:\n vForward\n vIK \\f3\n+value:fulltype\n valueDeltaRotation\n valueOrientation\n valuePivot\n@@ -15794,6 +15913,7 @@ velocity_smooth_iterations\n velocity_smooth_rate\n velocity_tolerance\n verify\n+verify_override_sound_foot_choice\n vertexFormat\n vertexPaintBlendParams\n vertexPaintTintColor\n@@ -15915,12 +16035,13 @@ yfriction\n ymax\n ymin\n zDStatic\n-z\\tV_sscanf_s\n+z\\tV_sind\n zero dir\n zero_unselected\n zfriction\n zmax\n zmin\n+{ item_factory = 'IntervalTimer' }\n { uninitialized }\n {error}\n ~CModelInstance destructor: leaking softbody because physics world disappeared\\n"
        },
        {
          "filename": "game/bin/win64/csgocfg.exe_strings.txt",
          "status": "modified",
          "additions": 23,
          "deletions": 12,
          "changes": 35,
          "patch": "@@ -152,7 +152,8 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCQLineEditWithArrowEvents@@\n .?AVCQLogDetailsDialog@@\n .?AVCQNewAddOnDialog@@\n-.?AVCQRichItemListPicker@@\n+.?AVCQRichItemListPickerDialog@@\n+.?AVCQRichItemListPickerWidget@@\n .?AVCQSelectionListItemDelegate@@\n .?AVCQSplitter@@\n .?AVCQSplitterHandle@@\n@@ -162,11 +163,11 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCToolAttrHost@@\n .?AVCToolAttrPropertyDomain@@\n .?AVCToolEditContextQuery_Base@@\n+.?AVCToolEditContextQuery_ExpressionGlobal@@\n .?AVCToolEditContextQuery_String@@\n .?AVIBaseToolAttr@@\n .?AVIKV3FGDTargetResolver@@\n .?AVIPropertyEditDomain@@\n-.?AVIToolAttrExpressionGlobals@@\n .?AVIToolAttrHost@@\n .?AVIToolAttr_Array@@\n .?AVIToolAttr_KV3@@\n@@ -220,7 +221,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .CRT$XIAC\n .fgd\n /e,/select,\"\n-15:36:35\n+14:11:36\n 1AcceptIfItemPicked()\n 1OnAccept()\n 1OnAddonDoubleClicked()\n@@ -256,8 +257,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n 2\\f?focusOutEvent@QLabel@@MEAAXPEAVQFocusEvent@@@Z\n 2\\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z\n 2\\v?event@QAction@@MEAA_NPEAVQEvent@@@Z\n-2\\vp$9\n-2\\vpDp\n+2\\vpdt\n 2accepted()\n 2clicked()\n 2customContextMenuRequested( const QPoint & )\n@@ -285,6 +285,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n <\\f?deallocate@QArrayData@@SAXPEAU1@_K1@Z\n <map_key>\n <map_value>\n+<non-RTTI type>\n <unnamed>\n ??0QAction@@QEAA@AEBVQIcon@@AEBVQString@@PEAVQObject@@@Z\n ??0QAction@@QEAA@AEBVQString@@PEAVQObject@@@Z\n@@ -948,6 +949,7 @@ A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z\n ARRAY_MEMBERS_VIA_PARENT\n ARRAY_PARENT_ONLY\n AcceptIfItemPicked\n+Accepted\n Active\n Already running on this machine. Only one instance at a time is allowed.\n AlternateBase\n@@ -959,6 +961,7 @@ Applies to array parents or non-array items (just not array members)\n AssetBrowse( %s )\n AssetBrowse( vnmclip )\n AssetBrowse( vnmgraph )\n+AssetBrowse()\n Attribute.%s.%s\n B`?translate@QPainter@@QEAAXAEBVQPointF@@@Z\n Bad class description\n@@ -1011,7 +1014,8 @@ CQEditAddonInfoDialog\n CQLineEditWithArrowEvents\n CQLogDetailsDialog\n CQNewAddOnDialog\n-CQRichItemListPicker\n+CQRichItemListPickerDialog\n+CQRichItemListPickerWidget\n CQRichItemListPicker_Choice_Internal*\n CQRichItemListPicker_Group_Internal*\n CQSmartTextEdit\n@@ -1022,13 +1026,12 @@ CQTabbedStyle\n CQTabbedStyle_ToolButton_Stealthy\n CQTabbedToolButton\n CQTreeWidgetWithArrowEvents\n+CToolAttrPropertyDomain\n CToolAttrPropertyDomain::GetVDataChoiceFriendlyNameForValue\n-CUtlRBTree<struct CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::Node_t,class CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CheckmarkPossible\n Could not load color map %s: %s\\n\n Counter-Strike 2 Workshop Submission\n Courier\n-CurveEditor\n Dark\n DarkSplitter\n DarkSplitterHandle\n@@ -1083,9 +1086,9 @@ Expecting numbers 'min_x' 'min_y' 'min_z'\n Expecting tag name\n FGD Variable %s has bad default value %d (has bits set that are not valid choices)\n F\\v?event@QGroupBox@@MEAA_NPEAVQEvent@@@Z\n-Failed to allocate an instance of a class\n+Failed to allocate an instance of a class of type '%s'\n Failed to map from %s to game-path\\n\n-Filter name/description:\n+Filter type/description:\n Flag sets do not have long names\n FlatSelection\n GetVDataChoiceFriendlyNameForValue\n@@ -1143,6 +1146,7 @@ NOT_ARRAY_MEMBERS\n N\\v?event@QMainWindow@@MEAA_NPEAVQEvent@@@Z\n New Item Type\n No %s specified. Expected '=' '[' <%s> ']'\n+NoEditor()\n NoRole\n OP?isNull@QIcon@@QEBA_NXZ\n O\\r?hitTestComplexControl@QCommonStyle@@UEBA?AW4SubControl@QStyle@@W4ComplexControl@3@PEBVQStyleOptionComplex@@AEBVQPoint@@PEBVQWidget@@@Z\n@@ -1176,7 +1180,6 @@ OnShowItemsContextMenu\n OnTextDownArrow\n OnTextUpArrow\n OnToggleOrientationAction\n-Optional properties not fully supported in property editor (text editor required)\n P?isValid@QColor@@QEBA_NXZ\n P?isValid@QTextCharFormat@@QEBA_NXZ\n P\\f?font@QTableWidgetItem@@QEBA?AVQFont@@XZ\n@@ -1200,7 +1203,7 @@ R?metaObject@QRegExpValidator@@UEBAPEBUQMetaObject@@XZ\n R?metaObject@QTextDocument@@UEBAPEBUQMetaObject@@XZ\n R\\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z\n R\\r?hitTestComplexControl@QProxyStyle@@UEBA?AW4SubControl@QStyle@@W4ComplexControl@3@PEBVQStyleOptionComplex@@AEBVQPoint@@PEBVQWidget@@@Z\n-R\\vpDp\n+R\\vpdt\n Reset to Default\n RichItemList_Accept\n RichItemList_Reject\n@@ -1218,8 +1221,11 @@ T?pos@QCursor@@SA?AVQPoint@@XZ\n TW?restoreOverrideCursor@QGuiApplication@@SAXXZ\n TabBarBackgroundNotSelected\n TabTextInactive\n+TargetCastForModify\n TestKeyForAddon\n This value is currently inherited from a base node.\n+This value is optional. Click to set.\n+This value is optional. Click to unset.\n This value is overriding a base node.\n To the left of the attribute label\n To the right of the attribute editor\n@@ -1254,6 +1260,7 @@ UpdateUIForSelectedAddon\n UpperLine\n Using deprecated 'base=prefix' syntax for adding a prefix to a base class\n VDataChoice( %s )\n+VDataChoice()\n Va?width@QPixmap@@QEBAHXZ\n Variable %s has bad default value %s (no choices with that name or value)\n ViewportBackground\n@@ -1414,6 +1421,7 @@ animgraph2_identifier\n animgraph_enum\n applicable_to\n assetTag\n+asset_specific_keys_source\n associated_key\n autoexpand_self\n autoexpand_self_class\n@@ -1473,6 +1481,8 @@ game:tools/images/propertyeditor/attr_reset.png\n game:tools/images/propertyeditor/attr_reset_hover.png\n game:tools/images/propertyeditor/extra_attr_remove.png\n game:tools/images/propertyeditor/extra_attr_remove_hover.png\n+game:tools/images/propertyeditor/eye_hidden.png\n+game:tools/images/propertyeditor/eye_visible.png\n game:tools/images/propertyeditor/overlay_inherit.png\n game:tools/images/propertyeditor/overlay_inherit_hover.png\n game:tools/images/propertyeditor/overlay_override.png\n@@ -1575,6 +1585,7 @@ npcclass\n o\\n?dragEnterEvent@QWidget@@MEAAXPEAVQDragEnterEvent@@@Z\n o\\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z\n open\n+optional_toggle_cmd\n override_attr\n override_description\n override_help_context_name"
        },
        {
          "filename": "game/bin/win64/dmxconvert.exe_strings.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 10,
          "changes": 15,
          "patch": "@@ -287,6 +287,8 @@ $prefix_element$\n .vmat\n 0x%llx\n 16-byte data pool\n+2\\vp4\n+2\\vp8\n 4-byte data pool\n 5sfm_v8\n 64 283 0\n@@ -392,13 +394,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n CVisibilityMgr\n Cannot unserialize a prefix element here (type \"$prefix_element$\")\n@@ -603,7 +598,6 @@ Operator cycle found during dependency graph traversal!\\n\n Orient Rotation to 2D Direction\n Oscillate Scalar\n Oscillate Vector\n-P2p}\\v\n Particle Configuration File\n Position Along Path Random\n Position Along Path Sequential\n@@ -656,7 +650,6 @@ Serialize: File encoding '%s' is undefined!\\n\n Serialize: Format %s expects to be written to a binary format, but the buffer is a text-format buffer\\n\n StereoFlip\n Symbol table:  %d entries %llu bytes\\n\n-T\\tV_log2f\n Texture Configuration File\n TongueCurl\n TongueD\n@@ -708,8 +701,10 @@ World Node Files\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n \\tSupported DMX file encodings:\\n\n \\tSupported DMX file formats:\\n\n+\\tV_sscanf_s\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StringAfterPrefixCaseSensitive\n+_\\tV_log2f\n _light\n _linked_type_\n _name\n@@ -754,6 +749,7 @@ baseMapToOverride\n baseName\n baseStates\n basic_movement\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -1291,4 +1287,3 @@ wrinkle\n wrinkle$0\n wrinkle$0Indices\n wrinkleIndices\n-z\\tV_sscanf_s"
        },
        {
          "filename": "game/bin/win64/engine2_strings.txt",
          "status": "modified",
          "additions": 276,
          "deletions": 315,
          "changes": 591,
          "patch": "@@ -5,6 +5,7 @@\n                   %d stashed,       +%11s bytes\\n\n             %s\\n\n            bytes class                            entind Packed\\n\n+         packet size  unpacked size\\ndelta%15s%15s\\nfull%16s%15s\\n\n         %3d %3d %3d %3d %3d %3d %3d %3d\n         %4u %4u %4u %4u %4u %4u %4u %4u\n         %s\\n\n@@ -150,14 +151,11 @@\n  %4u stashed frames = %12s bytes\n  %i refs\\n\n  (08@HPX`hpx\n- (08@HPX`jpJ\n- (08@HPXb\n- (08@HPZpJ\n- (08@HR\n- (08@JpJ\n- (0X`hpz\n+ (08@HPX`j@E\n+ (08@HPXb@\n+ (08@HPZ@E\n+ (0X`hpz@\n  (Start: \n- (Texture)\n  (default = .tga + .wav file)\\n\n  (fallback, started with \n  (from CL)\n@@ -171,6 +169,7 @@\n  -component \"%s\"\n  -noscreenshot\n  -product \"%s\"\n+ .phG\n  2r6\n  3CQ`p\n  7Me}\n@@ -286,10 +285,8 @@\n !8F[q\n !AxU\n !NPE.2\n-!\\tV_fflush\n !engine_frametime_warnings_enable\n !fE+15\n-!link\n !mA@D\n !m_bNeedsSort\n \" because it is missing required fields: \n@@ -339,7 +336,6 @@\n \"#GameUI_ServerRejectInvalidCertLen\n \"$&')*+,-.//123456779:;<=>??ABCDEFGG(\n \"$0\" does not declare $1 as an extension number.\n-\"$\\n\\fCMsgVector2D\n \"%s\" %s %s %d %d %d %d\\n\n \"%s\" %s 0 0 0 %d 0\\n\n \"%s\" +url_execute \"%%1\"\n@@ -352,13 +348,13 @@\n \") is not compatible with this reflection object (which is for type \"\n \") to start from the outermost scope.\n \").  Note that the exact same class is required; not just the same descriptor.\n+\"*\\n\\fCMsgVector2D\n \", another member of oneof \"\n \", but only \n \", field number \n \", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., \".\n \", which is not imported by \"\n \",3000<\n-\"-\\n\\nCMsgQAngle\n \".  To use it here, please add the necessary import.\n \". If this is intended, set 'option allow_alias = true;' to the enum definition.\n \". This appears to be a value from a sibling type.\n@@ -368,6 +364,7 @@\n \"0x\" must be followed by hex digits.\n \"2CScs\n \"3Hau\n+\"3\\n\\nCMsgQAngle\n \"7?NWlv\n \"<\\n CNETMsg_SpawnGroup_LoadCompleted\n \">Kav\n@@ -383,9 +380,9 @@\n \"\\nis running without a known mod!\\n\\nSet the VMOD environment variable or run with -game to set the mod name.\\n\n \"\\v\\n\\tCDemoStop\"0\\n\\fCDemoUserCmd\n \"^\\n\\fOneofOptions\n-\"c\\n\\rCMsgTransform\n \"e\" must be followed by exponent.\n \"e?<<<<<<l?\n+\"i\\n\\rCMsgTransform\n \"k\\n\"CNETMsg_SpawnGroup_SetCreationTick\n \"v\\n\\rCDemoFileInfo\n \"z\\n,CSource2Metrics_RecordPlayStats_Notification\n@@ -491,7 +488,6 @@ $Ib?s\n $\\n\\fsignon_state\n $\\n\\rresource_type\n $\\n\\vorientation\n-$\\tV_fileno\n $lZT\n $schemasystem/schema_enable_defines.h\n $tI(knN\n@@ -585,7 +581,7 @@ $tI(knN\n %>>C@;Li_=)\n %Y-%m-%d-%H_%M_%S\n %\\n!eQueryCvarValueStatus_ValueIntact\n-%\\tV_fmodd\n+%\\tV_expf\n %\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v%\\v\n %c%c%c%c%c%s\n %cIy\n@@ -611,7 +607,6 @@ $tI(knN\n %d/%d [not started]\n %d/%d: '%s' %s\n %d: rgb(%d, %d, %d) : hsv( %g, %g, %g ) : %s%s\\n\n-%f %f %f %f\n %f FRAME end %d server ticks, %d client ticks (%.2fms elapsed)\\n\n %f FRAME end %d ticks (%.2fms elapsed)\\n\n %f FRAME start %d server ticks %d client ticks\\n\n@@ -639,6 +634,7 @@ $tI(knN\n %llx,%llx,%d:\n %s % 2i : %s\\n\n %s %f %d %d\\n\n+%s %s %s %s\n %s %s the game (pause group %d)\\n\n %s %s:  adding %d:'%s' (%d total) userdata %d\\n\n %s %s:  updating %d:'%s' (%d total) userdata %d\\n\n@@ -833,7 +829,7 @@ $tI(knN\n &Sgw\n &\\n\"SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP\n &\\n\"eQueryCvarValueStatus_CvarNotFound\n-&\\tV_fmodf\n+&\\tV_fclose\n &final\n '#GameUI_Disconnect_BadSpectatorPassword\n '#GameUI_Disconnect_DifferentClassTables\n@@ -852,7 +848,7 @@ $tI(knN\n '\\n#eQueryCvarValueStatus_CvarProtected\n '\\n#k_EProtoDebugVisibility_ValveServer\n '\\n\\fworldgroupid\n-'\\tV_fopen\n+'\\tV_fdopen\n 'k|7O\n (#GameUI_Disconnect_LoopLevelLoadActivate\n (#GameUI_Disconnect_RemoteProblem_BadCert\n@@ -880,7 +876,7 @@ $tI(knN\n (\\t\"9\\n\\fCCLCMsg_Move\n (\\t\"<\\n\\fCSVCMsg_Menu\n (\\t\"\\r\\n\\vCNETMsg_NOP\"'\\n\n-(\\tV_fopenUTF8\n+(\\tV_feof\n (\\v2 .ProtoFlattenedSerializerField_t:\n (\\v2 .google.protobuf.DescriptorProto\n (\\v2!.CSVCMsg_GameSessionConfiguration\n@@ -930,7 +926,6 @@ $tI(knN\n (channel = \n (dump took %.1fms)\\n\n (end of input).\\n\\t This indicates a poorly specified lexer RULE\\n\\t or unterminated input element such as: \"STRING[\"]\\n\n-(f 0G\n (merge \n (no landmark)\n (no reason given)\n@@ -953,7 +948,6 @@ $tI(knN\n )7ESbp\n )BIV_o\n )\\n%Source2PlayStats_LowCardinalityString\n-)\\tV_fpclassifyd\n )yIx\n )yto\n *                                                  *\\n\n@@ -978,7 +972,7 @@ $tI(knN\n *\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f*\\f\n *\\n\"host_computationtime_std_deviation\n *\\n&Source2PlayStats_SteamIDTrustBucketMin\n-*\\tV_fprintf\n+*\\tV_fflush\n *h\\n\\vDIALOG_TYPE\n *zvC\n ++CBaseSpawnGroup\n@@ -992,6 +986,7 @@ $tI(knN\n +[V~jHZ\n +\\n'SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES\n +\\n\\rReservedRange\n++\\tV_fgetc\n +alt\n +bugvoice\n +ctrl\n@@ -1035,7 +1030,7 @@ $tI(knN\n --CNetworkGameClientBase\n --CNetworkGameServerBase\n --forward-all-args--\n---single-literal--\n+--old-connection-literal--\n --startmovie\n -5?KYks\n -> Reservation cookie %llx:  reason %s\\n\n@@ -1047,18 +1042,18 @@ $tI(knN\n -\\n%polymorphic_field_serializer_name_sym\n -\\n\\fplayer_index\n -\\n\\fsystem_specs\n+-\\tV_fileno\n -all\n -applaunch %d\n -auto -title \"auto_bug %04d-%02d-%02d %02d:%02d:%02d\"\n -bugvoice\n -component\n -con_logfile\n+-concommandpipe requires -insecure\n -consoleapp\n -consolelog\n -diff\n -dx11\n--dxlevel\n--dxlevel %s: %s\n -empty\n -end of input-(\n -inf\n@@ -1078,8 +1073,9 @@ $tI(knN\n ../src/shaders\n ..\\content\n .00cfg\n-.0AG\n-.0CG\n+.01G\n+.0WG\n+.0cG\n .9GXdx\n .>\\rfJBGo\n .?AU?$Container@VUnknownFieldSet@protobuf@google@@@InternalMetadata@internal@protobuf@google@@\n@@ -1120,7 +1116,11 @@ $tI(knN\n .?AV<lambda_1>@?N@??FillAttr@CSOAContainer@@QEAAXHM@Z@\n .?AV<lambda_1_>@InputAudioStreamParams_t@@\n .?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorCancelPriority_t@@@@\n+.?AV<lambda_2>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@2@@Z@\n .?AV<lambda_2>@?BD@??WriteScreenshotToFile@CScreenshotService@@AEAA_NPEBD0AEAVCUtlBuffer@@_N22@Z@\n+.?AV<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@\n+.?AV<lambda_3>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@2@@Z@\n+.?AV<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@\n .?AV<lambda_5a9ef80d79df7873994019ff15dceae5>@@\n .?AV<lambda_60c5de84e69e46aa92419d47e2f3ad51>@@\n .?AV<lambda_713ee8bbd6b08550d59c52695cab5ce3>@@\n@@ -1372,6 +1372,7 @@ $tI(knN\n .?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC6h@URGBA8888_t@@$00@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC6h@URGBA8888_t@@$00@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@\n .?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC7@UBGRA8888_t@@@ImageLoader@@YA_NPEBEPEAUBGRA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC7@UBGRA8888_t@@@ImageLoader@@YA_NPEBEPEAUBGRA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@\n .?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC7@URGBA8888_t@@@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC7@URGBA8888_t@@@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@\n+.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???R<lambda_2>@?1??WriteToBufferBC6H_ispctexcomp_highest_quality_tweaked@FloatBitMap_t@@IEBA_NPEAX_K@Z@QEBA@XZ@@@YAXHHPEBD$$QEAV1?1???R<lambda_2>@?1??WriteToBufferBC6H_ispctexcomp_highest_quality_tweaked@FloatBitMap_t@@IEBA_NPEAX_K@Z@QEBA@XZ@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@\n .?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?M@??WriteToBufferBC6H_ispctexcomp@FloatBitMap_t@@IEBA_NPEAX_KAEBUFloatBitmapEncodeSettings_t@@@Z@@@YAXHHPEBD$$QEAV1?M@??WriteToBufferBC6H_ispctexcomp@FloatBitMap_t@@IEBA_NPEAX_KAEBUFloatBitmapEncodeSettings_t@@@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@\n .?AV?$CParallelProcessorAbstract@V?$CParallelProcessor@PEAUReadPacketEntitiesWorkItem_t@@V?$CMemberFuncJobItemProcessor@PEAUReadPacketEntitiesWorkItem_t@@VCNetworkGameClient@@V2@@@$00@@@@\n .?AV?$CParallelProcessorAbstract@V?$CParallelProcessor@UCrashItem_t@@V?$CFuncJobItemProcessor@UCrashItem_t@@@@$00@@@@\n@@ -1560,6 +1561,7 @@ $tI(knN\n .?AV?$_Func_base@I$$V@std@@\n .?AV?$_Func_base@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_base@X$$V@std@@\n+.?AV?$_Func_base@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV4@@std@@\n .?AV?$_Func_base@XPEAVIAsyncReadRequest2@@W4AsyncRequestStatus_t@@@std@@\n .?AV?$_Func_base@XPEAVIAudioInputStream@@H@std@@\n .?AV?$_Func_base@XPEAVISceneView@@AEBURenderViewport_t@@PEAUHSceneViewRenderTarget__@@PEAU3@@std@@\n@@ -1592,10 +1594,15 @@ $tI(knN\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?N@??FillAttr@CSOAContainer@@QEAAXHM@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1_>@InputAudioStreamParams_t@@XPEAVIAudioInputStream@@H@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorCancelPriority_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@3@@Z@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV8@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?BD@??WriteScreenshotToFile@CScreenshotService@@AEAA_NPEBD0AEAVCUtlBuffer@@_N22@Z@XPEBX@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@3@@Z@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV8@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@I$$V@std@@\n .?AV?$_Iosb@H@std@@\n .?AV?$_Packaged_state@$$A6AIXZ@std@@\n .?AV?$_Packaged_state@$$A6AXXZ@std@@\n+.?AV?$_Ref_count_obj2@VCScreenshotServiceReadTexturePixelsCallback@@@std@@\n .?AV?$_Ref_count_obj@U?$_Task_impl@E@details@Concurrency@@@std@@\n .?AV?$_Ref_count_obj@U_ExceptionHolder@details@Concurrency@@@std@@\n .?AV?$_Task_async_state@I$00@std@@\n@@ -1652,6 +1659,7 @@ $tI(knN\n .?AVCBidirMsg_RebroadcastSource_t@@\n .?AVCBreakpadPassiveAssertionFailureListener@@\n .?AVCBroadcastPlayer@@\n+.?AVCBugBugService@@\n .?AVCBugService@@\n .?AVCCLCMsg_BaselineAck@@\n .?AVCCLCMsg_BaselineAck_t@@\n@@ -1695,7 +1703,6 @@ $tI(knN\n .?AVCCreateGameClientPrerequisite@@\n .?AVCDebugVisualizerAbsTime@@\n .?AVCDebugVisualizerMgr@@\n-.?AVCDefSaveRestoreOps@@\n .?AVCDefScriptAccessorBase@@\n .?AVCDefaultClientConfig@@\n .?AVCDefaultServerConfig@@\n@@ -1819,9 +1826,9 @@ $tI(knN\n .?AVCKV3Transfer_EmptyResourceLoadInterface@@\n .?AVCKeyValueCache@@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?BK@??ServerBeginSimulate@CNetworkGameServerBase@@UEAAXAEBUEventServerBeginSimulate_t@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?BK@??ServerBeginSimulate@CNetworkGameServerBase@@UEAAXAEBUEventServerBeginSimulate_t@@@Z@@Z@\n-.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@\n+.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??OnServerPostAdvanceTick@CNetworkServerService@@AEAAXAEBUEventServerPostAdvanceTick_t@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??OnServerPostAdvanceTick@CNetworkServerService@@AEAAXAEBUEventServerPostAdvanceTick_t@@@Z@@Z@\n-.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@\n+.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_3>@?BJ@??ProcessReadPacketEntitiesWorkItems@CNetworkGameClient@@AEAAXW4RPEStatType_t@@AEAVCEntityReadInfo@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_3>@?BJ@??ProcessReadPacketEntitiesWorkItems@CNetworkGameClient@@AEAAXW4RPEStatType_t@@AEAVCEntityReadInfo@@@Z@@Z@\n .?AVCLoadAutoCompletionFunctor@@\n .?AVCLoadSpawnGroupsPrerequisite@@\n@@ -2257,6 +2264,7 @@ $tI(knN\n .?AVIKV3TransferInterface_ResourceLoad@@\n .?AVIKV3TransferInterface_Worldspace_Load@@\n .?AVIKV3TransferInterface_Worldspace_Save@@\n+.?AVIKV3TransferSaveRestoreOps@@\n .?AVIKeyValueCache@@\n .?AVILoggingListener@@\n .?AVILoopMode@@\n@@ -2304,7 +2312,6 @@ $tI(knN\n .?AVIRenderHandler@@\n .?AVIRenderReadCallback@@\n .?AVIRenderService@@\n-.?AVISaveRestoreOps@@\n .?AVISceneViewDebugOverlaysListener@@\n .?AVIScreenshotCallback@@\n .?AVIServerConsoleRedirect@@\n@@ -2422,7 +2429,7 @@ $tI(knN\n .CGameInfo.CCSGameInfo\n .CGameInfo.CDotaGameInfo\n .CMsgIPCAddress\n-.CMsgQuaternion\"6\\n\n+.CMsgQuaternion:\n .CMsgServerNetworkStats.Player\n .CMsgServerNetworkStats.Port\n .CMsgServerPeer\"N\\n\n@@ -2467,16 +2474,20 @@ $tI(knN\n .ERQLC*\n .ESource2PlayStatsFieldType\n .ESplitScreenMessageType\n-.P4G\n .P6AXPEBD@Z\n+.PBG\n .PEAVCEntityIdentity@@\n .PLACEHOLDER_VALUE\n+.PRG\n+.PcG\n+.PeG\n .ProtoFlattenedSerializer_t\n .RequestPause_t\n .SignonState_t\n .TBMD\n .VoiceDataFormat_t:\n .\\n\\fentity_index\n+.\\tV_fmodd\n .arc\n .arj\n .bak\n@@ -2509,8 +2520,9 @@ $tI(knN\n .log\n .los\n .lzh\n-.p4G\n-.p9G\n+.p7G\n+.pVG\n+.pcG\n .pdata\n .placeholder.proto\n .rdata\n@@ -2562,6 +2574,7 @@ $tI(knN\n /R?jjU?\n /TF<)VGy#WH\n /\\n\\nfield_type\n+/\\tV_fmodf\n /content/\n /cwG\n /game/\n@@ -2582,25 +2595,23 @@ $tI(knN\n 0123456789abcdef\n 0123456789abcdefghijklmnopqrstuvwxyz\n 08@HP\n-08@HRpJ\n-08@J\n-08BpJ\n+08@HR@E\n+08@J@\n+08B@E\n 08\\fj\n-0: Force z prepass off. 1: Force on. -1: Don't force\n-0: Use normals reconstructed from depth. 1: Output correct normals in z prepass.\n 0: run all send jobs on main thread; 1: send jobs run asynchronously (except on dedicated server); 2: send jobs asynchronously; 3: send jobs run in parallel but block to not overlap the next tick; 4: main server clients' send jobs run in parallel, then HLTV server jobs; this approximately matches pre-async profile for a single HLTV server configuration\n 0:<\\n\\fdelta_ignore\n 0=Off, 1=Surface Wireframe, 2=Transparent Wireframe\n 0=Off, 1=Visualize trace from camera, 2=Visualize occlusion, 3=Visualize far field trace from camera\n+0>PUG\n 0B_u\n 0C&C\n 0E>X\n 0T.Q\n 0X8b?~\n 0\\n\\vserializers\n-0dnF\n+0\\tV_fopen\n 0iN>/\n-0lhB\n 0x%x,\n 0|t?L\n 0|t?uj\n@@ -2613,7 +2624,7 @@ $tI(knN\n 1.2.11\n 11Y@\n 127.0.0.1\n-15:39:27\n+14:11:28\n 16777215\"R\\n\\nCMsg_CVars\n 16777215B$\n 1:1: Tokens : ( T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | TOK_COLON | OPEN_BRACE | CLOSE_BRACE | OPEN_PAREN | CLOSE_PAREN | OPEN_BRACKET | CLOSE_BRACKET | SEMICOLON | OP_EQUAL | COMMA | DOUBLE_AND | NEGATIVE_TOK | DOUBLE_OR | LITERAL_TRUE | LITERAL_FALSE | POS_INTLITERAL | POS_FLOATLITERAL | SCOPE_QUALIFIER | ID | DOUBLE_QUOTED_STRING | SINGLE_QUOTED_STRING | SINGLE_LINE_COMMENT | ML_COMMENT | WS | UNRECOGNIZED );\n@@ -2629,6 +2640,7 @@ $tI(knN\n 1\\n\\fsplitplayers\n 1\\n\\fvprof_report\n 1\\r%1t\n+1\\tV_fopenUTF8\n 1h8o\n 1s3\\t\n 1sAL\"\n@@ -2653,8 +2665,8 @@ $tI(knN\n 2\\r%2t\n 2\\r.PrefetchType\"h\\n\n 2\\rU2t\n-2\\vpdnF\n-2\\vplhB\n+2\\tV_fpclassifyd\n+2\\vpL\n 2i0/\n 3$EE\\f\n 3'F^7\n@@ -2668,7 +2680,7 @@ $tI(knN\n 3C\"2\\t\n 3\\f53\n 3\\r53h\n-3dSkyboxSceneWorlds\n+3\\tV_fprintf\n 3y2\\t\n 4 uH\n 4*p0\n@@ -2682,7 +2694,6 @@ $tI(knN\n 4\\n\\fperf_samples\n 4\\r%4h\n 4\\rE4h\n-4\\tV_ftell\n 5!MwJ\n 51>W\n 52F*\n@@ -2695,18 +2706,21 @@ $tI(knN\n 5\\n\\vnested_type\n 5c;3E\n 5y?4\n-60 G\n-60)G\n+6 BG\n+605G\n 64-bit\n 6?k 6?t\n 6GQ^h~\n 6KT3c7\n 6NK>\n-6P1G\n+6V{G\n 6\\fXO>\\ntA\n 6\\n\\fmessage_type\n 6\\r56t\n-6\\tV_fwrite\n+6`7G\n+6`gG\n+6`kG\n+6p4G\n 6s?fBbEcJYG[I[NYVP\\B]@f;g<h<u4{,\n 6tmT\n 6uu?>\n@@ -2725,15 +2739,14 @@ $tI(knN\n 87g}\n 8>0RF>\n 8@HP:\n-8@JpJ\n+8@J@E\n 8A3b\n-8BpJ\n+8B@E\n 8Csinf\n 8Smt\n 8W?i\n 8\\n\\textension\n 8\\n\\vdescriptors\n-8\\npJ\n 8\\vu8t\n 8b  16-May-2010\n 8ke?;\n@@ -2799,6 +2812,7 @@ $tI(knN\n =e2m\n =imb;D\n =rF`JXKXWJYB[Cd;l2x(z%a+N2SNTQXKVJWGZI]J]Jm(r$u\"u\"\n+>0MG\n >0|t?z7\n >5dK\n >6uu\n@@ -2808,10 +2822,11 @@ $tI(knN\n >K7z6\n >O-p?A6\n >Rdx\n->\\tV_isdigit_str\n+>\\tV_ftell\n >cQ6\n >fff?fff?fff?fff?invalid_hitbox\n >jtm}S\n+>pLG\n >qxs\n >qxs?\n >qxs?z7\n@@ -2930,6 +2945,7 @@ $tI(knN\n ?Detach@CTSListBase@@QEAAPEAUTSLNodeBase_t@@XZ\n ?DevMsg@@YAXPEBDZZ\n ?Diff@CVirtualMemorySnapshot@@QEAAXPEBV1@0@Z\n+?DoExecuteInternal@CThreadedJobWithDependencies@@AEAAXXZ\n ?Dump@KeyValues@@QEAA_NPEAVIKeyValuesDumpContext@@H@Z\n ?EncounteredComplexReadLockOperation@CThreadRWLock_FastRead@@IEAA_NI_NPEBDH@Z\n ?EndProcessingCommands@CCommandBuffer@@QEAAXXZ\n@@ -2979,7 +2995,6 @@ $tI(knN\n ?GetFloat@KeyValues@@QEBAMPEBDM@Z\n ?GetForModify@CUtlString@@QEAAPEADXZ\n ?GetGameInfoBool@@YA_NPEBD_N@Z\n-?GetGameInfoPlatformSpecificBool@@YA_NPEBD_N@Z\n ?GetIPHostByteOrder@netadr_t@@QEBAIXZ\n ?GetIPNetworkByteOrder@netadr_t@@QEBAIXZ\n ?GetId@CStableSymbolTable@@QEAAHPEBDPEA_N@Z\n@@ -3155,6 +3170,7 @@ $tI(knN\n ?V_stristr_fast@@YAPEBDPEBD0@Z\n ?V_strnlen@@YAHPEBDH@Z\n ?Wait@CThreadSyncObject@@QEAA_NI@Z\n+?Wait@CThreadedJobWithDependencies@@QEAAXXZ\n ?WaitForCreateComplete@CThread@@MEAA_NPEAVCThreadEvent@@@Z\n ?WaitOrImmediatelyExecute@CThreadedJob@@QEAAXXZ\n ?Write@CCircularBuffer@@QEAAHPEBXH@Z\n@@ -3168,14 +3184,15 @@ $tI(knN\n ?ysB\n @ Current  :  %s\\n\n @08@HPX`hpx\n-@08N\n-@2pJ\n-@609G\n-@60;G\n+@08Nd\n+@6P*G\n @GetProfile_ultrafast\n @HPX\n @HPX&I\n-@HPX`hv\n+@HPX`hv@CG\n+@HV QG\n+@NPDG\n+@\\tV_fwrite\n @^8U)zj\n @i-kuX\n A command with the specified name already exists. Cannot create an alias with the same name.\\n\n@@ -3212,8 +3229,6 @@ ATI_TC_CalculateBufferSize_Wrapper\n ATI_TC_ConvertTexture_Wrapper\n A\\n!NETWORK_DISCONNECT_REJECT_NOLOBBY\n A\\n\\nannotation\n-A\\tV_isnand\n-Abort\n Accepted SourceTV relay proxy from whitelisted IP address: %s\\n\n Accepting P2PSessionRequest_t from %s\\n\n Access violation - no RTTI data!\n@@ -3234,7 +3249,6 @@ Add an IP address to the ban list.\n Add an output\n Add cluster # to visualization, (-1) to clear\n AddBool\n-AddDebugOverlayLayersFn\n AddDouble\n AddEnum\n AddFloat\n@@ -3296,6 +3310,7 @@ Amount of time the talker is silent before we infer that they are no longer talk\n Amount of time we buffer outgoing audio to detect an onset.\n Analytics\n Angle\n+Anim Sequence\n AnimGraphEditorUtils001\n AnimationSystemUtils_001\n AnimationSystem_001\n@@ -3314,15 +3329,12 @@ AppSystemDict: Attempted to add two different systems with the same interface na\n AppSystemDict: Error in Connect() of interface '%s'!\\n\n AppSystemDict: Error in Init() of interface '%s'!\\n\n AppSystemDict: Interface '%s' (tier %d) depends on interface '%s' (tier %d) but is in a lower tier!\\n\n-Apple Intel\n-Apple Intel: %s\n Application\n Application \"\n Application transferred too few scanlines\n Application transferred too many scanlines\n Application unable to load gameinfo.gi file from directory \"%s\"\\n%s\n ApplicationInfo\n-Apr 22 2026\n April\n Arabic\n AreFileApisANSI\n@@ -3369,6 +3381,7 @@ Automatically records all games as SourceTV demos.\n Av8I5\n Avestan\n A{v8\n+B0b%\n B2Bk\n B5@S\n B86!\n@@ -3411,6 +3424,11 @@ Balinese\n Bamum\n Bandwidth . . . . . . . : Total:%.1fkb\n Banning %s for rcon hacking attempts\\n\n+Base Flow  Cancel After\n+Base Flow  Cancel Elegantly\n+Base Flow  Cancel Immediately\n+Base Flow  Wake Elegantly\n+Base Flow  Wake Immediately\n Base Pulse Domain\n Base recognizer function 'alreadyParsedRule' called by unknown parser type - provide override for this function\\n\n Base recognizer function 'consumeUntil' called by unknown parser type - provide override for this function\\n\n@@ -3489,6 +3507,7 @@ Broadcast on GOTV[%d] stopped\\n\n Broadcast server debug overlays\n Broadcast server debug overlays traffic\n Broadcast stream contained unsupported democmd %d\n+BroadcastEntityVoice: Sending voice from entity: %d [ xuid %llx ]\\n\n BroadcastMessage:  Recipient Filter for message type %s (reliable: %s) with bogus client slot (%i) in list of %i clients\\n\n BroadcastMessage: Init message being created after signon buffer has been transmitted\\n\n BroadcastMessage: Init message would overflow signon buffer!\\n\n@@ -3503,6 +3522,7 @@ Broadcasting\\n\n BudgetGroup,NumSamples, ActiveAvg,ActiveP25,ActiveP50,ActiveP95,ActiveP99, AllAvg,AllP25,AllP50,AllP95,AllP99, Max\\n\n Buffer passed to JPEG library is too small\n Buffer size for writing string table baselines\n+BugBugService001\n BugReporter\n BugReporter/SuppressBugSavegames\n BugReporterTool\n@@ -3539,7 +3559,6 @@ C2S_CONNECT_Message\n C2S_CONNECT_SameProcessCheck\n C5R?\\t\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\engine2\\_vpc_engine2\\default\\win64\\_msvc_\\Retail\\engine2.pdb\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\appframework\\gameinfo.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\common\\protobuf_helpers.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\basespawngroup.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\cl_demo.cpp\n@@ -3562,28 +3581,29 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\loopmoderemoteconnect.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\looptypeclientserver.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkclientservice.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:2663\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:3647\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:2658\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:3642\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:4297\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclient.cpp:4593\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclientbase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclientbase.cpp:2804\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclientbase.cpp:4321\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameclientbase.cpp:4363\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserver.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserver.cpp:988\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserver.cpp:982\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:3028\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5675\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5741\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5832\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5838\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5698\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5764\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5853\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkgameserverbase.cpp:5859\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkp2pservice.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkserverservice.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkstringtable.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\networkstringtableitem.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\renderingworld.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\renderservice.cpp\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\screenshot_service.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\serversideclient.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\serversideclient.cpp:112\n C:\\buildworker\\csgo_rel_win64\\build\\src\\engine2\\serversideclientbase.cpp\n@@ -3601,6 +3621,7 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utllinkedlist.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlmap.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlrbtree.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlsortvector.h\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\tier0_perproject\\pipeutils.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\tier2\\fieldpathpacker.cpp\n C>YPH>z\n CAppSystemDict::Connect( %-32s ) %8.3f msec\n@@ -3620,6 +3641,7 @@ CBidirMsg_RebroadcastSource\n CBroadcastPlayer got DEM_Stop, server tick %d\\n\n CBroadcastPlayer::SetDemoBuffer - bogus demo buffer?\n CBroadcastPlayer::SkipToTick( %d, %u )\\n\n+CBugBugService\n CBugService\n CCIR601 sampling not implemented yet\n CCLCMsg_BaselineAck\n@@ -3642,6 +3664,11 @@ CChangelevelGameClientPrerequisite\n CCommand::Tokenize: Encountered command which overflows the tokenizer buffer.. Skipping!\\n\n CConnectGameClientPrerequisite\n CConnectRelayPrerequisite\n+CConsoleCommandPipes::Create::<lambda_1>::operator ()\n+CConsoleCommandPipes::Create::<lambda_2>::operator ()\n+CConsoleCommandPipes::Create::<lambda_3>::operator ()\n+CConsoleCommandPipes::Create::<lambda_4>::operator ()\n+CConsoleCommandPipes::Create::<lambda_5>::operator ()\n CCreateGameClientPrerequisite\n CDemoAnimationData\n CDemoAnimationHeader\n@@ -3877,6 +3904,7 @@ CHLTVDemoRecorder::WriteFrameImmediate: Failed to serialize CSVCMsg_PacketEntiti\n CHLTVDemoRecorder::WriteFrameImmediate: Failed to serialize CSVCMsg_VoiceData_t\\n\n CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CNETMsg_Tick_t\\n\n CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CSVCMsg_PacketEntities_t\\n\n+CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CSVCMsg_UserCommands_t\\n\n CHLTVDemoRecorder::WriteNetMessage %s with %u bytes at %i (%d)\\n\n CHLTVDemoRecorder::WriteNetMessage: Failed to serialize message\\n\n CHLTVDemoRecorder::WriteSpawnGroupUpdateMessages AddSpawnMessageToDemoSpawnGroups tick=%d (from %d) sending message %s (spawn group %s)\\n\n@@ -4127,7 +4155,6 @@ CPPTYPE_UINT64\n CPU   In    Out   Uptime  Users   FPS    Players\\n%s\\n\n CPU brand information: %s\\n\n CPU the engine is running on.\n-CPU_EMULATED\n CPUs: %s\\n\n CPanoramaEngineHandler::Init\n CPanoramaInputHandler\n@@ -4140,6 +4167,12 @@ CPulseCell_BaseLerp\n CPulseCell_BaseRequirement\n CPulseCell_BaseValue\n CPulseCell_BaseYieldingInflow\n+CPulseCell_BaseYieldingInflow::BaseFlow_CancelAfter\n+CPulseCell_BaseYieldingInflow::BaseFlow_CancelElegantly\n+CPulseCell_BaseYieldingInflow::BaseFlow_CancelImmediately\n+CPulseCell_BaseYieldingInflow::BaseFlow_WakeElegantly\n+CPulseCell_BaseYieldingInflow::BaseFlow_WakeImmediately\n+CPulseCell_FireCursors::Cancel\n CPulseCell_Inflow_BaseEntrypoint\n CPulseCell_Inflow_EntOutputHandler\n CPulseCell_Inflow_EventHandler\n@@ -4155,23 +4188,42 @@ CPulseCell_Inflow_Yield\n CPulseCell_Inflow_Yield::Abort\n CPulseCell_Inflow_Yield::Pause\n CPulseCell_Inflow_Yield::Resume\n+CPulseCell_IntervalTimer::StopTimer\n CPulseCell_Outflow_CycleOrdered\n CPulseCell_Outflow_CycleOrdered::Run\n CPulseCell_Outflow_CycleRandom\n CPulseCell_Outflow_CycleRandom::Run\n CPulseCell_Outflow_CycleShuffled\n CPulseCell_Outflow_CycleShuffled::Run\n+CPulseCell_Outflow_ListenForAnimgraphTag::Cancel\n+CPulseCell_Outflow_ListenForEntityOutput::Cancel\n+CPulseCell_Outflow_NPCAccompanyEntity::Cancel\n+CPulseCell_Outflow_NPCFollowTarget::Cancel\n+CPulseCell_Outflow_NPCLeadPlayer::Cancel\n+CPulseCell_Outflow_NPCScriptedIdle::Cancel\n+CPulseCell_Outflow_NPCScriptedIdle::CancelElegantly\n+CPulseCell_Outflow_NPCScriptedMoveTo::Cancel\n+CPulseCell_Outflow_NPCUseScriptedAbility::Cancel\n+CPulseCell_Outflow_PlaySequence::Cancel\n+CPulseCell_Outflow_PlaySequence::CancelAtInterrupt\n+CPulseCell_Outflow_PlayVCD::Cancel\n+CPulseCell_Outflow_PlayVCD::CancelAtInterrupt\n+CPulseCell_Outflow_PlayVOLine::Cancel\n+CPulseCell_Outflow_ScriptedSequence::Cancel\n+CPulseCell_PlaySequence::Cancel\n CPulseCell_Step_CallExternalMethod\n CPulseCell_Step_CallExternalMethod::Run\n CPulseCell_Step_CallExternalMethod::StopWaiting\n CPulseCell_Step_DebugLog\n CPulseCell_Step_DebugLog::Run\n CPulseCell_Step_PublicOutput\n CPulseCell_Step_PublicOutput::Run\n+CPulseCell_Timeline::Stop\n CPulseCell_Value_RandomFloat\n CPulseCell_Value_RandomFloat::Eval\n CPulseCell_Value_RandomInt\n CPulseCell_Value_RandomInt::Eval\n+CPulseCell_WaitForObservable::Cancel\n CPulseExecCursor\n CPulseRuntimeMethodArg\n CPulseValueFullType\n@@ -4230,7 +4282,8 @@ CSVCMsg_UserMessage\n CSVCMsg_VoiceData\n CSVCMsg_VoiceInit\n CScreenshotService\n-CScreenshotService::ServiceScreenshotRequests(434): \n+CScreenshotService::Con_PNG_Screenshot_f\n+CScreenshotService::ServiceScreenshotRequests(435): \n CScriptComponent\n CScriptComponent::Storage_t\n CScriptComponentReferenced\n@@ -4328,31 +4381,13 @@ CUtlMemoryBlockAllocator<char,class CMemAllocAllocator>::Alloc\n CUtlMemoryBlockAllocator<struct CFrameTimer::PerfSample_t,class CMemAllocAllocator>::AddPage\n CUtlOrderedMap\n CUtlOrderedMap<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::FindElement\n-CUtlRBTree<class CSerializerHandle_t<class CFlattenedSerializer>,class CDefLess<class CSerializerHandle_t<class CFlattenedSerializer> >,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CSerializerHandle_t<class CFlattenedSerializer>,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class ConVarRefAbstract,class CLessFunc<&bool __cdecl CVarSortFunc(class ConVarRefAbstract const &,class ConVarRefAbstract const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class ConVarRefAbstract,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class ConVarRefAbstract,class CLessFunc<&bool __cdecl CVarSortLessFunc(class ConVarRefAbstract const &,class ConVarRefAbstract const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class ConVarRefAbstract,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class google::protobuf::FileDescriptor const *,class CDefLess<class google::protobuf::FileDescriptor const *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class google::protobuf::FileDescriptor const *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CIPRateLimit::iprate_s,class CLessFunc<&private: static bool __cdecl CIPRateLimit::LessIP(struct CIPRateLimit::iprate_s const &,struct CIPRateLimit::iprate_s const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CIPRateLimit::iprate_s,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CServerSerializerMeta::Entry_t,class CLessFunc<&public: static bool __cdecl CServerSerializerMeta::Entry_t::Less(struct CServerSerializerMeta::Entry_t const &,struct CServerSerializerMeta::Entry_t const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CServerSerializerMeta::Entry_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::Node_t,class CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::Node_t,class CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::Node_t,class CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::Node_t,class CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlRBTreeBase\n CUtlSortVector<class CEntityIndex,class CVConsole2FlattenedSerializerListener::CEntityIndex_less,class CUtlVector<class CEntityIndex,int,class CUtlVectorMemory_Growable<class CEntityIndex,int,0> > >::Find\n CUtlSortVector<int,class CUtlSortVectorDefaultLess<int>,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::InsertIfNotFound\n CUtlSortVector<unsigned int,class CUtlSortVectorDefaultLess<unsigned int>,class CUtlVector<unsigned int,int,class CUtlVectorMemory_Growable<unsigned int,int,0> > >::FindAndRemove\n CUtlSortVector<unsigned int,class CUtlSortVectorDefaultLess<unsigned int>,class CUtlVector<unsigned int,int,class CUtlVectorMemory_Growable<unsigned int,int,0> > >::HasElement\n CUtlString\n-CUtlStringToken\n+CUtlStringTokenNoRegistration\n CUtlSymbolLarge\n CUtlSymbolTableLarge element limit of %u exceeded\\n\n CUtlVector\n@@ -4404,7 +4439,6 @@ Can't retry, no previous SourceTV connection\\n\n Can't split screen connect, no network channel\\n\n Can't tv_stop SourceTV relay, use disconnect or quit instead.\\n\n Canadian_Aboriginal\n-Cancel any waiting cursors.\n CancelOnSucceeded\n Cannot create http put: %s, %u bytes lost\\n\n Cannot destruct abstract class\n@@ -4510,6 +4544,8 @@ ClientCommand, 0 length string supplied.\\n\n ClientCommandTick\n ClientCommandTicks\n ClientFrameSimulate\n+ClientLocalServerAccess\n+ClientLocalServerAccess001\n ClientMoveSent\n ClientOutput\n ClientPollNetworkingFrame\n@@ -4601,6 +4637,7 @@ Container to hold outputs published by script to game\n Controls VTune's sampling.\n Convar %s is already registered but not as user info value\\n\n Convar %s is marked as cheat and cheats are off\\n\n+ConvertOSFILEHANDLEFromSourceProcess::<lambda_1>::operator ()\n Coptic\n Copy Screenshot Data To Tracy Job\n CopyEntityBaseline\n@@ -4616,6 +4653,7 @@ CopyNewEntity: invalid serializer for ent %d.\\n\n CopyNewEntity: m_nNewEntity >= MAX_NETWORKABLE_ENTITY_COUNT\n Copyright (C) 2010, Thomas G. Lane, Guido Vollbeding\n CorExitProcess\n+Correct behavior\n Corrupt JPEG data: %u extraneous bytes before marker 0x%02x\n Corrupt JPEG data: bad Huffman code\n Corrupt JPEG data: bad arithmetic code\n@@ -4664,11 +4702,11 @@ Current server access password\n Current tick is %d, but we have received a message for tick %d.  Processing all messages up to %d now.\\n\n Currently bound to '%s'\\n\n Currently storing %d client frames, %12s bytes\\n\n+Cursor[ ptr:%p | id:%d | graph:%p ]: Completed with result:%d\\n\n Cursor[ ptr:%p | id:%d | graph:%p ]: Register observer:%d\\n\n Curtime( %f )\\nRealtime( %f )\\n\n Custom user info value\n CustomGameServerAppID\n-CustomTexture0\n Cycle through specified convar values.\n Cypriot\n Cyrillic\n@@ -4703,7 +4741,6 @@ DEM_SignonPacket\n DEM_SpawnGroups\n DEM_Stop\n DEM_StringTables\n-DEV_BUILD\n DIALOG_ASKCONNECT\n DIGIT\n DO NOT PARSE: fields may be stripped and missing.\\n\n@@ -4730,6 +4767,7 @@ DebugDrawObjects\n DebugInfo\n DebugUI\n DebugVisualizerMgr\n+DebugVisualizerMgr2D\n December\n DeclareCurrentThreadIsMainThread\n DeclareCurrentThreadIsSecondaryMainThread\n@@ -4772,6 +4810,7 @@ Demo Skipping: skipping forward to demo tick %d (game tick %d) from current %d (\n Demo Skipping: skipping to demo tick %d (game tick %d) from full packet %d (%d).  Current playback is %d (%d)\\n\n Demo contents for %s:\\n\n Demo fast skipping disabled. Fullpackets_version != DEMOFILE_FULLPACKETS_VERSION. (%d != %d)\\n\n+Demo file byte sizes\\n%s\n Demo paused at engine time %g, demo tick %d\\n\n Demo playback finished ( %.1f seconds, %i render frames, %.2f fps).\\n\n Demo playback options:\\n\n@@ -4809,7 +4848,6 @@ Directory to store replays in\n Disable focus based priority boost\n Disable vprof\n Disabling user config reading/writing due to -playtest\\n\n-DisallowGameInfoConditionals\n Disallowed variable name: %s\n DiscardMouseFocusClick\n Discarding pending request '%s, %u'\\n\n@@ -4841,10 +4879,6 @@ Displays perf statistics information\n Divide by zero!\n Do not stop the current yielding node, but do not continue to the next node afterwards.\n Do we invoke PostDataUpdatePreserved callbacks for entities that had no changes but are still in the PVS?\n-DofApertureDiameter\n-DofFocusedDistance\n-DofRanges\n-DofTiltToGround\n Don't print stats when memtesting\n Don't receive chat messages from other SourceTV spectators\n Don't skip more than N messages in a row when skipping in a demo file.\n@@ -4868,9 +4902,11 @@ DumpInstanceBaselineToString\n Dumped stack stats struct \"%s\" to file \"%s\"\\n\n Duplicate engine service named \"%s\" registered!\\n\n Duplicate loop named \"%s\" registered!\\n\n+DuplicateHandle\n E&'bB\n E'ja\n E/Co\n+E1tr\n E>nEA\n EM6`\n ENABLED\n@@ -4892,8 +4928,10 @@ ERROR\n ERROR: CUtlSymbolTableLarge element limit of %u exceeded\\n\n ERROR: Detected mismatched logging state. Expected matching LoggingSystem_PushLoggingState/LoggingSystem_PopLoggingState.\\n\n ERROR: No PVS at this Camera position!\n-ERROR: Resource name \"%s\" has the incorrect extension \"%s\" for the specified resource type (expected \"%s\")!\\n\n ERROR: couldn't open.\\n\n+ERROR:NoEnum:%s:%d\n+ERROR:NoEnumerator:%s:%d\n+ERROR:NoFlags:%s:%d\n ERROR_BADREQUEST: Code error - bad request\n ERROR_FILEOPEN: File not found\n ERROR_NOMEMORY: Out of memory\n@@ -4942,7 +4980,6 @@ Enable the rendering of panorama UI\n Enable vprof\n Enable/disable clock correction on the client.\n Enable/disable rcon logging.\n-EnableCameraMotionBlurOverride\n Enables logging to file, console, and udp < on | off >.\n EncodeBC6Blocks\n EncodeBC7Blocks\n@@ -4993,7 +5030,6 @@ Engine_SystemInfo_Attention_LowDiskSpaceForSwapfile\n Engine_SystemInfo_Attention_LowDiskSpaceForSwapfile_Title\n Engine_SystemInfo_Attention_Low_System_Memory\n Engine_SystemInfo_Attention_Low_System_Memory_Title\n-EnsureCapacity\n EnsureInstanceBaseline\n EnsureInstanceBaseline: g_pFlattenedSerializers->Encode false (ent %d : %s).\\n\n EntComponentInfo_t\n@@ -5008,8 +5044,6 @@ Entity Load Unserialize\n Entity Name\n Entity System\n EntityDormancyType_t\n-EntityIOConnectionDesc_t\n-EntityIOConnection_t\n EntityIOQueuePrioritizedEvent_t\n EntityIOTargetType_t\n Entry\n@@ -5057,10 +5091,11 @@ EstimatedMaxCPUMemUsageMB\n EstimatedMinGPUMemUsageMB\n Ethiopic\n Eval\n-EvalGameInfoConditionals\n Event\n EventAdvanceTick_t\n EventAppShutdown_t\n+EventBugBugComplete_t\n+EventBugBug_t\n EventClientAdvanceNonRenderedFrame_t\n EventClientAdvanceTick_t\n EventClientFrameSimulate_t\n@@ -5147,7 +5182,6 @@ Extensions to non-lite types can only be declared in non-lite files.  Note that\n Extra arguments given after name\\n\n ExtractModuleMetadata\n Extraneous token\n-F0/G\n F>qUxv\n FAIL\n FALSE\n@@ -5161,7 +5195,6 @@ FYLh.o\n FZ?w\n F\\n%NETWORK_DISCONNECT_DISCONNECT_BY_USER\n F\\n\\foptimize_for\n-F\\npJ\n Fail to schedule the chore!\n Failed\n Failed To Load '%s'! VConsole Communication Disabled!\\n\n@@ -5292,19 +5325,19 @@ FixupResourceName: Illegal path, missing extension passed in (\"%s\")!\\n\n FlattenedSerializersVersion001\n Float\n Float( %f )\n-FloatBitMap_t::ConvertGammaToLinear(320): Conversion not supported yet!\\n\n+FloatBitMap_t::ConvertGammaToLinear(518): Conversion not supported yet!\\n\n FloatBitMap_t::InitializeDummyRow\n FloatBitMap_t::LoadFromBuffer: Received improper buffer size, skipping!\\n\n FloatBitMap_t::LoadFromBuffer: Unsupported color format, skipping!\\n\n-FloatBitMap_t::WriteToBuffer(993): Unsupported color format \"%s\", skipping!\\n\n+FloatBitMap_t::WriteToBuffer(1191): Unsupported color format \"%s\", skipping!\\n\n FloatBitMap_t::WriteToBuffer: Received improper buffer size %s (expecting %s), skipping!\\n\n-FloatBitMap_t::WriteToBufferBC7_bc7e(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:1680\n-FloatBitMap_t::WriteToBufferBC7_ispctexcomp(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:1792\n-FloatBitMap_t::WriteToBufferDXT_atitc(1051): Error! Temp texture is %d bytes when ATI's lib requires %d bytes!\\n\n-FloatBitMap_t::WriteToBufferDXT_atitc(1136): Unsupported output color format \"%s\"!\\n\n-FloatBitMap_t::WriteToBufferDXT_atitc(1145): Error! Allocated %llu bytes when ATI's lib requires %d bytes!\\n\n-FloatBitMap_t::WriteToBufferDXT_atitc(1153): Error %d returned from ATI_TC_ConvertTexture()!\\n\n-FloatBitMap_t::WriteToBufferETC(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:1916\n+FloatBitMap_t::WriteToBufferBC7_bc7e(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:2124\n+FloatBitMap_t::WriteToBufferBC7_ispctexcomp(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:2236\n+FloatBitMap_t::WriteToBufferDXT_atitc(1249): Error! Temp texture is %d bytes when ATI's lib requires %d bytes!\\n\n+FloatBitMap_t::WriteToBufferDXT_atitc(1334): Unsupported output color format \"%s\"!\\n\n+FloatBitMap_t::WriteToBufferDXT_atitc(1343): Error! Allocated %llu bytes when ATI's lib requires %d bytes!\\n\n+FloatBitMap_t::WriteToBufferDXT_atitc(1351): Error %d returned from ATI_TC_ConvertTexture()!\\n\n+FloatBitMap_t::WriteToBufferETC(), C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp:2360\n FlsAlloc\n FlsFree\n FlsGetValue\n@@ -5335,7 +5368,6 @@ Forward\n Forward command to server.\n Found %d lines of sight!\\n\n Found existing value when inserting into dict - replacing existing value with new value. If this is intended behavior, use InsertOrReplace. If leaving existing values alone is intended, use InsertIfNotFound.\n-Found existing value when inserting into tree - replacing existing value with new value. If this is intended behavior, use InsertOrReplace. If leaving existing values alone is intended, use InsertIfNotFound. If duplicate entries are intended, use InsertWithDupes.\n Found invalid proto option data for: \n Fractional sampling not implemented yet\n Frame\n@@ -5373,7 +5405,6 @@ GAME\n GAMEBIN\n GAMEROOT\n GAME_RESOURCE_MANIFEST_HANDLE_INVALID\n-GBufferNormalSpecExpTexture\n GCTL\n GDG_S\n GDI32.dll\n@@ -5417,8 +5448,6 @@ GameResourceServiceClientV001\n GameResourceServiceServerV001\n GameStartup\n GameStartup_RayTracing\n-GameStartup_SM40\n-GameStartup_SM50\n GameTick_t\n GameTime_t\n GameUI\n@@ -5614,7 +5643,6 @@ HLTV:maxplayers set to %i\\n\n HLTVServerAsync\n HLTV_CopyNewEntity: GetDynamicBaseline(%d) failed.\n HSR_GAME_REMOTE_CHANGELEVEL_RECONNECT\n-HUc_\n HammerMapLoader001\n Hangul\n Hanunoo\n@@ -5628,7 +5656,6 @@ HelpSystem_001\n Hen\\fM\n Hex and octal numbers must be integers.\n Hibernating\n-Hid_\n Hide the console.\n Hides the game UI\n Highest unlocked game chapter.\n@@ -5674,6 +5701,7 @@ IKV3TransferInterface_EHandle_Save\n IKV3TransferInterface_GameTime_Load\n IKV3TransferInterface_GameTime_Save\n IKV3TransferInterface_ResourceLoad\n+IKV3TransferInterface_UtlSymbolLarge\n IKV3TransferInterface_Worldspace_Load\n IKV3TransferInterface_Worldspace_Save\n IMAGE_FORMAT_IMC2\n@@ -5693,6 +5721,7 @@ IPulseSystem_001\n IRCU\n I\\n NETWORK_DISCONNECT_STEAM_DROPPED\n I\\n%NETWORK_DISCONNECT_REJECT_HIDDEN_GAME\n+I\\tV_isdigit_str\n IdempotencyLevel\n Idle (%s)\n IdleSleep\n@@ -5724,8 +5753,6 @@ Il?333333c?\n Illegal jstype for int64, uint64, sint64, fixed64 or sfixed64 field: \n Illegal to wait on a task in a Windows Runtime STA\n Image too wide for this implementation\n-Immediate Wake\n-Immediately reactivate any waiting cursors regardless of how long they have been waiting.\n Imperial_Aramaic\n Import \n Import \"\n@@ -5736,7 +5763,6 @@ Inactive\n IncludeScript stack overflow\\n\n Inconsistent Client Replay state: tick without replay during replay. Force Stop Replay.\\n\n Inconsistent progression sequence for component %d coefficient %d\n-Increase verbosity for entity packing\n Increment specified convar value.\n Increment the timescale by one step\n Index out-of-bounds (field is empty).\n@@ -5745,7 +5771,7 @@ Inherited\n Init\n InitOnceBeginInitialize\n InitOnceComplete\n-InitSteamLogin_Internal\n+InitSteamLogin\n InitWin32ConsoleColorContext\n Initial Window\n Initialize with number of outputs\n@@ -5808,6 +5834,7 @@ Invalid progressive parameters at scan script entry %d\n Invalid proto descriptor for file \"\n Invalid public dependency index.\n Invalid scan script at entry %d\n+Invalid screenshot path, must be under Game or Content, be under MAXPATH, and have no bad characters: %s\\n\n Invalid search path specified for '%s'. Search path '%s' does not contain '%s'\\n\n Invalid splitscreen slot %d specified for convar in '%s'.\\n\n Invalid strings::Substitute() format string: \"\n@@ -5853,10 +5880,10 @@ January\n Javanese\n JiYMm\n Joystick\n+Jul  6 2026\n July\n JumpOrLeap( C%d:I%d )\n Jumping to random tick %d (%.2f min)\\n\n-Jun  1 2026\n June\n JustInTime Resource Spawn Group\n JustInTimeManifest\n@@ -5889,12 +5916,13 @@ Kick a player by name.\n Kick a player by userid or uniqueid, with a message.\n Kick a previously connected player with the same steamID if a replacement comes along\n Kicked to free up slot\n-Kill after current node.\n-Kill elegantly.\n-Kill immediately.\n+Kill After.\n+Kill Elegantly.\n+Kill Immediately.\n Known Peer State \"%s\"\n Known by handlers: \n KuoW\n+Kx;I\n L %02i/%02i/%04i - %02i:%02i:%02i: %s\n L>ev\n L?%OX\n@@ -5925,6 +5953,7 @@ LWW>\n L\\n!NETWORK_DISCONNECT_HLTVRESTRICTED\n L\\n!NETWORK_DISCONNECT_KICKED_SUICIDE\n L\\n!NETWORK_DISCONNECT_LOOPDEACTIVATE\n+L\\tV_isnand\n Label\n Language\n Last received command number going in reverse from server!  (Out of order delivery?)  %d -> (%d+%d=%d)\n@@ -5944,7 +5973,6 @@ LegacyUserSettingsPathID\n Lepcha\n LevelLoad\n Lexer encountered %d error(s)\n-LightStyle with NULL value!\\n\n Limbu\n Limits spectators to chat only every n seconds\n Line: \n@@ -5985,6 +6013,8 @@ Local Player\n Local Slots %i, Spectators %i, Proxies %i\\n\n Local key name '%s' (can differ from the bind name%s)\\n\n LocalFree\n+LocalServerClientAccess\n+LocalServerClientAccess001\n LocaleNameToLCID\n Localize_001\n Location\n@@ -6055,6 +6085,7 @@ MGiI\n MINIDUMP_WRAP_CODE: In __except block\\n\n MIsBoxedFloatType\n MIsBoxedIntegerType\n+MKV3TransferSaveOpsForField\n MLFU\n ML_COMMENT\n MM/dd/yy\n@@ -6085,6 +6116,8 @@ MPulseCellInflow_IsDefault\n MPulseCursorTerminates\n MPulseEditorCanvasItemSpecKV3\n MPulseEditorHeaderIcon\n+MPulseFGDSkipField\n+MPulseLegacyName\n MPulsePolymorphicDependentArg\n MPulsePolymorphicDependentReturn\n MPulseRequirementCheck\n@@ -6095,7 +6128,6 @@ MQC,ARD\n MSAADefaultNonVR\n MSG_SPLITSCREEN_ADDUSER\n MSG_SPLITSCREEN_REMOVEUSER\n-MSaveOpsForField\n MVDataNodeType\n MVDataOverlayType\n M\\n\"NETWORK_DISCONNECT_SERVER_SHUTDOWN\n@@ -6107,6 +6139,7 @@ M\\n&NETWORK_DISCONNECT_STEAM_AUTHCANCELLED\n M\\n'NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER\n M\\n(NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM\n Main 3D Window\n+Main Game Server is direct demo recording %s\\n\n MainLoop\n MainLoop returning\\n\n MainMenu\n@@ -6170,7 +6203,6 @@ Max number of ticks to simulate per frame, after which simulation will start to\n Max number of times a user can fail rcon authentication before being banned\n Maximum allowable entity delta size over unreliable delivery.\n Maximum amount of minutes to save history (0 is unlimited).\n-Maximum amount of minutes to save history on low memory (32 bit) systems (0 is unlimited).\n Maximum client number on SourceTV server.\n Maximum number of ticks the clock is allowed to drift before the client snaps its clock to the server's.\n Maximum queries per second to respond to from a single IP address.\n@@ -6236,11 +6268,9 @@ Missing/invalid pause tick number.\\n\n MmB_\n MobileClientVersion\n Mod doesn't support SourceTV. No director module found.\\n\n-Mod specifies 'DisallowGameInfoConditionals' but %d conditionals were evaluated\n ModelDocUtils001\n Monday\n Mongolian\n-MotionBlurStrengthScale\n MountAddon: Failed to find ADDONS search path.\\n\n MountAddonSearchPaths: Failed to find CONTENTADDONS search path.\\n\n Mounting addon '%s'\\n\n@@ -6405,7 +6435,6 @@ Note: should use \"addip\" instead of \"banip\".\\n\n November\n Now recording to \"%s\", immediate mode, recorded length so far is %s.\\n\n Now recording to \"%s\", recorded length so far is %s.\\n\n-Num3dSkyboxSceneWorlds\n NumCols() <= V_ARRAYSIZE( s_DummyRow )\n Number of immediate Steam friends: %d (all friends %d)\\n\n Number of immediate Steam friends: unavailable\\n\n@@ -6476,6 +6505,7 @@ OnEngineLevelLoadingSession\n OnEngineLevelLoadingStarted\n OnEngineListenServerStarted\n OnEngineSplitscreenClientAdded\n+OnEventBugBug\n OnFrameBoundary\n OnHostSetTime\n OnInvalidSteamLogonErrorForClient\n@@ -6540,20 +6570,22 @@ Override Fog color: %f %f %f\\n\n Overrides the SourceTV master root address.\n Overrides the max players reported to prospective clients\n Overriding minidump handler with Engine2MinidumpFunction\\n\n-P08@J\n-P08J\n-P08N\n-P2pJ\n+P08@J@\n+P08JP\n+P08Nd\n+P2@E\n P4File\n-P6`9G\n+P6P=G\n+P6PgG\n+P6`/G\n P:S;A\n P?fff?33s?{\n P@HPX`hpx\\f\n PBDEMS2\n PCRE does not support \\L, \\l, \\N{name}, \\U, or \\u\n PHrk\n-PInstruction_t<41>::Run\n PInstruction_t<42>::Run\n+PInstruction_t<43>::Run\n PLACEHOLDER_VALUE\n PLATFORM\n PLAYBACK: At end of data\\n\n@@ -6570,6 +6602,7 @@ PREP\n PRUNE\n PS_FAILED %s in sequence for %s\\n\n PS_SATISFIED %s in sequence for %s [%.3f msec]\\n\n+PVAL_ANIM_SEQUENCE\n PVAL_ANY\n PVAL_ARRAY\n PVAL_BOOL\n@@ -6600,6 +6633,7 @@ PVAL_TYPESAFE_INT\n PVAL_TYPESAFE_INT64\n PVAL_UNKNOWN\n PVAL_VARIANT\n+PVAL_VDATA_CHOICE\n PVAL_VEC2\n PVAL_VEC3\n PVAL_VEC3_WORLDSPACE\n@@ -6671,8 +6705,7 @@ Phags_Pa\n Phoenician\n PhysicsBuilderMgr001\n Ping\n-PjpJ\n-PlQB\n+Pj@E\n Plain assert text (has prefix)\\n\n Plain general text (no prefix)\\n\n Plat_AlertUser\n@@ -6728,7 +6761,6 @@ Plat_GetNumberCpusOnline\n Plat_GetOSType\n Plat_GetPeakCommitCharge\n Plat_GetPeakRSS\n-Plat_GetSteamLoginWithAccessCode\n Plat_GetSystemLoad\n Plat_GetTime\n Plat_GetTimeString\n@@ -6741,7 +6773,6 @@ Plat_HasEnteredFatalState\n Plat_IgnoreContentAsserts\n Plat_InitializeCOM\n Plat_InstallUrlHandler\n-Plat_IsCPUEmulated\n Plat_IsDirectory\n Plat_IsInDebugSession\n Plat_IsInTestMode\n@@ -6756,11 +6787,9 @@ Plat_MSTime\n Plat_MessageBox\n Plat_MilliSecTickDiff\n Plat_MinimizeWindow\n-Plat_NeedsLowFragmentation\n Plat_NonFatalErrorFunc\n Plat_NotifyOSAppIsNotHung\n Plat_OnExecutableExitingMain\n-Plat_QueueSteamLoginWithAccessCode\n Plat_RefreshDPI\n Plat_RegisterModule\n Plat_RegistryDirectoryClose\n@@ -6812,16 +6841,14 @@ Playcast Debug String: %s\\n\n Playcast HTTP error code: %d\\n(tv_playcast_showerrors will display the following headers: %s)\\n\n Playcast Spawn Group %d load at %d\\n\n Player\n-Player %d%s\n+Player %d\n Player %s attempting reconnect, but prior connection still active\\n\n Player %s reconnecting, disconnecting prior connection\\n\n Playing '%s'\\n\n Playing Broadcast (%s)\n Playing Demo (%s)\n Playing back demo: '%s' at tick %u\\n\n-PlhB\n PmNk\n-PnP\\nG\n Pointers cannot be used as numeric values\n PollAndProcessInput\n Poor man's restart: reload the current map from disk.\n@@ -6857,7 +6884,6 @@ Print a message about problems with ticks and interpolation.  0=never, 1=warning\n Print a message if network issues cause problems with server snapshots of user commands not being available when needed, if the percentage (0...100) exceeds this value.  A value of 0 will cause the message to always print each time it is calculated\n Print a performance report from the current data in the vprof 'lite' profiler\n Print a summary report of Source2 engine networking statistics.  (Ticks, netchan messages, etc.)\n-Print callstack every time CNetworkGameServerBase::WriteEntityUpdate takes more than this amount of milliseconds\n Print connection status\n Print demo sequence list.\n Print information about currently playing demo.\n@@ -6876,6 +6902,8 @@ Prints server performance variables\n Priority boost already disabled.\\n\n Priority boost already enabled.\\n\n Private:  %s\\n\n+Proceed Elegantly.\n+Proceed Immediately.\n ProcesPacketEntitiesWorkItems_Combined\n ProcesPacketEntitiesWorkItems_Combined_Sort\n ProcesPacketEntitiesWorkItems_Decode\n@@ -6884,6 +6912,7 @@ Process priority: %s, main thread priority: %s\\n\n Process32First\n Process32Next\n Process: %s, OS: %s\\n\n+ProcessBC6HResults\n ProcessBaselineAck: invalid packed entity bit (%i)\\n\n ProcessClassInfo: can't allocate %d C_ServerClassInfos.\\n\n ProcessClassInfo: invalid class index (%d).\\n\n@@ -6915,6 +6944,7 @@ Psapi.dll\n Public :  %s\\n\n Pulse\n PulseCursorCancelPriority_t\n+PulseCursorWakePriority_t\n PulseDebugLog: Calling external method on non-existent entity or game blackboard\n PulseDebugLog: Calling external method on non-existent entity or game blackboard\\n\n PulseDocNodeID_t\n@@ -6935,7 +6965,6 @@ Q\\n&NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW\n Q\\n*NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL\n Q\\n+NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP\n Q\\n,NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED\n-Q\\tV_log10f\n Qkkbal\n Quantization table 0x%02x was not defined\n Quantizing to %d = %d*%d*%d colors\n@@ -7006,8 +7035,7 @@ RP_PAUSE\n RP_TOGGLEPAUSE\n RSDS\n RST%d\n-R\\tV_log2_uint\n-R\\vplhB\n+R\\vpL\n RaiseException\n Random Float\n Random Integer\n@@ -7058,7 +7086,7 @@ Record a path to debug vis\n Record commands typed at console into .dem files.\n Recorded %s [%d -> %d:  %d bits\\n\n Recording %s\\n\n-Recording SourceTV replay to %s...\\n\n+Recording SourceTV replay from %s:\\nplaydemo %s\\n\n Recording to %s...\\n\n RecvMargin\n Recvmargin-based usercommand pacing will not speed up or slow down command pacing by more than N% compared to realtime\n@@ -7123,7 +7151,6 @@ RenderSystemOptionFlags\n RenderSystemOptionRecommendationGen\n RenderUtils_001\n RendersampleScreenshot Job\n-Rendersystem meets min DX110 feature level (changing this does not change the shader model).\n Rendersystem option in use (changing this does not change the rendersystem).\n Rendersystem option requested (changing this does not change the rendersystem).\n Rendersystem shader model in use (changing this does not change the shader model).\n@@ -7133,6 +7160,7 @@ Replay tick %d older than the oldest HLTV Server tick %d\n Replay time in seconds before the highlighted event\n ReplayEventType_t\n Request a VProf data stream from the remote server (requires authentication)\n+Request elegant wind-down of any associated work (e.g. vcd interrupt), then proceed afterwards.\n Request elegant wind-down of any associated work (e.g. vcd interrupt).\n RequestPause_t\n Requested feature was omitted at compile time\n@@ -7175,7 +7203,6 @@ Restore previously pushed convars and config values\n RestoreWin32ConsoleColor\n Restoring Save (%s)\n Result\n-Resume\n Resumes demo playback.\n Resumes instant replay.\n Retrieve the private per-instance script-side data associated with an entity\n@@ -7200,6 +7227,7 @@ Run heap check at a specified interval\n Run heap check at end of every frame\n RunFrame\n RunPrediction\n+RunSync\n Runic\n Running SteamAPI_RunCallbacks for first time\\n\n Running [%s]\n@@ -7208,11 +7236,12 @@ S3: Client GetSteamIDForAuthSession doesn't match SteamID from auth blob\n S3: Client SteamID %s doesn't match SteamID %s from auth blob\\n\n S3: Client connected doesn't match SteamID from auth blob\n S3: Client connected with existing active steam auth request\n-S3: Client connected with existing active steam auth request: UserID: %x\\n\n+S3: Client connected with existing request: UserID: %x SteamID %s Previous Result %d [ %f seconds ago ] %x New %x\\n\n S3: Client connected with expired ticket: UserID: %x\\n\n S3: Client connected with invalid ticket ( old version ): UserID: %x\\n\n S3: Client connected with invalid ticket: UserID: %x\\n\n S3: Client connected with ticket for the wrong game: UserID: %x\\n\n+S3: Client reconnected with recent result: UserID: %x SteamID %s Previous Result %d [ %f seconds ago ] %x New %x\\n\n S3: Duplicate client connection: UserID: %x SteamID %s\\n\n S9>H\n S>$hkDh$h>[2\n@@ -7224,6 +7253,7 @@ SDL [%s]: %s\\n\n SDL_Init( 0x%X ) failed: %s\\n\n SDL_VIDEO_ALLOW_SCREENSAVER\n SDL_VIDEO_DRIVER\n+SDL_WINDOWS_DETECT_DEVICE_HOTPLUG\n SDL_WINDOWS_GAMEINPUT\n SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN\n SEMICOLON\n@@ -7277,7 +7307,6 @@ STEAMAPPS_INTERFACE_VERSION008\n STEAMAUTH: Client %s not immediately kicked because sv_steamauth_enforce=%d\\n\n STEAMAUTH: Client %s received failure code %d; ignoring because local connection\\n\n STEAMAUTH: Client %s received failure code %d\\n\n-STEAMHEADLESS_INTERFACE_VERSION001\n STEAMHTMLSURFACE_INTERFACE_VERSION_005\n STEAMHTTP_INTERFACE_VERSION003\n STEAMINVENTORY_INTERFACE_V003\n@@ -7351,12 +7380,10 @@ SV: Cheat command '%s' ignored. Set sv_cheats to 1 enable cheats.\\n\n SV: Cheat command '%s' ignored.\\n\n SV: Convar '%s' is cheat protected, change ignored.\\n\n SV: Disconnecting due to unresolved k_EAuthSessionResponseAuthTicketCanceled for %s.\\n\n+SV: NotifyClientDisconnect while deferred request exists\n+SV: NotifyClientDisconnect while deferred request for %lld exists\n SV: OnShutdownChannel called in a worker thread\\n\n SV: OnValidateAuthTicketResponse duplicate authentication\n-SV: OnValidateAuthTicketResponse no active request\n-SV: OnValidateAuthTicketResponse no active request for %lld\n-SV: OnValidateAuthTicketResponse no client found\n-SV: OnValidateAuthTicketResponse no client found for %lld\n SV: Player %s kicked for too many failed console commands.\\n\n SV: ProcessMove %s on tick %d, packet had too many Move messages (expected only 1, this is %d), disconnecting user\\n\n SV: Queuing k_EAuthSessionResponseAuthTicketCanceled for %s.\\n\n@@ -7379,6 +7406,7 @@ Saturday\n Saurashtra\n Save convars and config values\n Save the ban list to file.\n+SaveRestoreSpawnKeys\n Saved '%s' to SteamRemoteStorage, %d bytes OK\\n\n Saved user config file '%s': type %d\\n\n Saves current key bindings to disk.\n@@ -7539,7 +7567,6 @@ Set developer message level.\n Set jpeg screenshot quality. [1..100]\n Set packet filtering by IP mode\n Set pending disconnect %d:%s\\n\n-Set the debug render target to show, 0 == disable\n Set the default chat group size\n Set the pause state of the server.\n Set the screenshot auto naming prefix.\n@@ -7552,8 +7579,6 @@ Set to display headers upon error (e.g. \"CF-Ray,CF-Cache-Status,Body\" )\n Set to lock per-frame time elapse.\n Set to render debug overlays\n Set to render decals\n-Set to render sun shadow render targets\n-Set to render sun shadow split visibility debugger\n Set to use direct lighting\n Set to use indirect lighting\n Set to use screen-space ambient occlusion\n@@ -7586,6 +7611,7 @@ SetInt64\n SetIntAttr\n SetLastError\n SetMapMode\n+SetNamedPipeHandleState\n SetStdHandle\n SetStretchBltMode\n SetString\n@@ -7604,8 +7630,6 @@ Setting %s=%d\\n\n Setting cl_ticks_warning_level=0 due to %s=false\\n\n Setting main thread priority to %d\\n\n Settings\n-ShaderVar_WireframeDepthEnable\n-ShaderVar_WireframeOverrideColor\n Shavian\n Shooting\n Should not reach here.\n@@ -7664,7 +7688,6 @@ Skips to location in demo.\n Slamming client tick to server tick.  abs( server tick %d - client tick %d = %d ) > ( cl_clockdrift_max_ticks %d + sim ticks %d = %d )\\n\n Slams viewport size to a specified value.\n Sleep\n-Sleep randomly 0..net_async_job_random_sleep ms in the parallel server jobs; sleep is per job\n SleepAfterMainLoop\n SleepConditionVariableSRW\n Sleeping\n@@ -7757,6 +7780,8 @@ SourceTV: RecordPacket %i bytes at %i (%d)\\n\n SourceTVRelay\n SourceTV[%d] %s%s\\n\n SourceTV[%d] broadcast active.\\n\n+SourceTV[%d] inactive\\n\n+SourceTV[%d] is direct demo recording %s\\n\n SourceTV[%d] relay active.\\n\n SourceTV[%d] shutting down (%s) due to server disconnecting game.\\n\n Spawn\n@@ -7816,14 +7841,6 @@ Steam UGC subscriptions: %u total; %u custom games\\n\n Steam UGC subscriptions: unavailable\\n\n Steam Universe is invalid, possibly asking before Steam was successfully initialized.\\n\n Steam Universe valid after having been requested when invalid.  Universe is now %d\\n\n-Steam headless InitInstance failed, result %d\\n\n-Steam headless initialized without logon (no user name given)\\n\n-Steam headless logged in OK, initializing Steam engine interfaces\\n\n-Steam headless login call %d\\n\n-Steam headless module not loaded\\n\n-Steam headless re-logged in OK\\n\n-Steam headless reset embedded client token\\n\n-Steam headless using stored credential info\\n\n Steam init failed!  %s\\n\n Steam text filtering initialized (priority one, %s) %s\\n\n Steam text filtering initialized (priority zero, %s) %s\\n\n@@ -7873,17 +7890,15 @@ SteamNetworkingMessages002\n SteamNetworkingSockets012\n SteamNetworkingUtils004\n SteamParties002\n-SteamRun\n-SteamRun failed, error %d\\n\n SteamServersDisconnected\n SteamUser023\n SteamUtils010\n Stop\n Stop Broadcast @frag %d\\n\n-Stop Waiting\n Stop an existing remote VProf data request\n Stop looping demos (current demo will complete).\n Stop recording movie frames.\n+Stop the node action without any wind-down, then proceed afterwards.\n Stop without any wind-down.\n Stopping.\\n\n Stops SourceTV demo recording.\n@@ -8014,6 +8029,8 @@ This soundevent is called to stop the desired soundevents when the game is disco\n This value, multiplied by the tick interval, is added to cl_tickpacket_recvmargin_desired to obtain the effective desired recv margin.\n This version of Windows is not supported, please upgrade to a newer version\\n\n Thread pool option\n+ThreadCloseProcess\n+ThreadCloseProcess( hSourceProcess )\n ThreadGetCurrentProcessHandle\n ThreadGetCurrentProcessId\n ThreadGetMainThreadId\n@@ -8022,6 +8039,7 @@ ThreadGetProcessPriority\n ThreadInMainThread\n ThreadInPrimaryOrSecondaryMainThread\n ThreadNanoSleep\n+ThreadOpenProcess\n ThreadSetPerfSetAffinity\n ThreadSetPriority\n ThreadSetProcessPriority\n@@ -8071,7 +8089,6 @@ ToolsAppID\n ToolsStartup\n ToolsStartupPreGame\n ToolsStartup_RayTracing\n-ToolsStartup_SM50\n ToolsWireframe\n Top %d (of %d) classes have %s (of %s) bytes:\\n\n Top %d (of %d) entities have %s (of %s) bytes:\\n\n@@ -8107,6 +8124,7 @@ True\n TryAcquireSRWLockExclusive\n Tuesday\n Turn on demo debug spew.\n+TvDirectDemoRecorder\n Type\n Type appears to be in generated pool but wasn't \n Type is already registered: \n@@ -8190,11 +8208,9 @@ Unable to create thread %u\\n\n Unable to decode custom demo data, callback \"%s\" not found.\\n\n Unable to enumerate pagefiles to evaluate free space available.\n Unable to find a valid incremental demo filename for %s, try clearing the directory of %snnn.dem\\n\n-Unable to find headless SteamRun\\n\n Unable to find service \"%s\" which is depended on by service \"%s\"!\\n\n Unable to find service \"%s\" which must run before service \"%s\"!\\n\n Unable to load %s, error %d\\n\n-Unable to load steam headless module, error %d\\n\n Unable to open '%s' for writing.\n Unable to open logfiles at %s, logging disabled\\n\n Unable to open netconsole on port %d\\n\n@@ -8315,19 +8331,22 @@ UserDataFixedSize exceeds size %d needs room for %d bits\\n\n UserSettingsFileEx\n UserSettingsPathID\n Using AVI will bring up a dialog for choosing the codec, which may not show if you are running the engine in fullscreen mode!\\n\n+UtlRBTree_FailedInsertDuplicate\n UtlVectorMemory_Alloc\n UtlVectorMemory_CalcNewAllocationCount\n UtlVectorMemory_FailedAllocation\n U}JK\n U}g7x~\n V/?[w8rV\n+V0fG\n V<@ss\n V?wm\\v\n VApplication001\n VAsyncFileSystem2_001\n VAvi001\n VBik001\n VConComm001\n+VData Choice\n VENGINE_GAMEUIFUNCS_VERSION005\n VEngineCvar007\n VFileSystem017\n@@ -8372,7 +8391,6 @@ VWebm001\n V\\n&NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN\n V\\n&NETWORK_DISCONNECT_PURESERVER_MISMATCH\n V\\n'NETWORK_DISCONNECT_CREATE_SERVER_FAILED\n-V\\tV_logf\n V_AppearsToBeANumber\n V_AreSlashesCorrect\n V_CopyMemory3D\n@@ -8408,6 +8426,7 @@ V_StringToUint64\n V_StringToVector\n V_StringToVector2D\n V_StringToVector4D\n+V_StringToVectorWS\n V_StripExcessTrailingZeros\n V_StripLeadingWhitespace\n V_StripSurroundingQuotes\n@@ -8416,8 +8435,6 @@ V_TryAndMakeFriendlyNameFromCppName\n V_UInt32ToString_Unsafe\n V_UInt64ToString_Unsafe\n V_UnqualifiedFileName\n-V`3G\n-Validate each StateChanged against known offsets.\n Validation stalled\\n\n Value must be \"true\" or \"false\" for boolean option \"\n Value must be identifier for boolean option \"\n@@ -8442,7 +8459,6 @@ Vector vPos( %.1f, %.1f, %.1f )\\nout of bounds - LOS needs to pass through outsi\n Vector2D\n Vector4D\n VendorID\n-Verbose output for entity packing, set to the entindex of the entity you want verbose output for.\n VerifyTest( %s ) end\\n\n VerifyTest( %s ) start\\n\n VerifyTest() vanilla result = Fail\\n\n@@ -8457,6 +8473,7 @@ Visibility %s.\\n\n Voice\n VoiceDataFormat_t\n Void\n+Vp\\G\n Vrad3_001\n Vu?N\\t?8Ws?vGr?\n Vv.q\n@@ -8470,13 +8487,12 @@ WARNING: CEngineWatchdogThread is killing the process: %s\n WARNING: Failed to find startup tool '%s'\\n\n WARNING: Failed to load startup asset '%s'\\n\n WARNING: Received SpawnGroup_LoadCompleted for an unknown spawngrouphandle(%s) from client '%s'\\n\n+WARNING: Resource name \"%s\" has the incorrect extension \"%s\" for the specified resource type (expected \"%s\")!\\n\n WARNING: Trying to create a CRenderContextPtr without a valid context.\\n\n WARNING: Unable to compile regex '%s', %s\\n\n WARNING: You are trying to mount an addon (%s) in tools mode that is different from the addon tools mode was launched with (%s).\\n\n WARNING: msg overflowed for %s\\n\n WEvF\n-WIN32\n-WINDOWS\n WS2_32.dll\n WSAEACCES\n WSAEADDRINUSE\n@@ -8533,6 +8549,8 @@ Waiting For Keyframe\n Waiting For Live Resync\n Wake Resume\n WakeAllConditionVariable\n+WakeElegantly\n+WakeImmediate\n Warning - Tick mark is locked, ignoring change.\\n\n Warning parsing text-format \n Warning:  Can't add nullptr string to table %s\\n\n@@ -8549,14 +8567,12 @@ When connecting to local listen server (for example, using the 'map' command), d\n When enabled, changes in tv_enable convars cause immediate startup or shutdown of hltv server\n When enabled, game server will quit immediately via syscall instead of running host states shutdown sequence\n When enabled, open the voip audio input stream when the application launches.\n-When enabled, this allows for entity packing to use the property changes for building up the data. This is many times faster, but can be disabled for error checking.\n When enabled, this will collect all information for relay sending into a single datagram to ensure that the data stays together through a potentially large number of relays\n When enabled, this will use a uniquely generated server code to authenticate relay connections. This code is coordinated via the GC or some external means rather than by clients directly\n When enabled, this will use a uniquely generated server code to authenticate relay to relay connections. This code is coordinated via the GC or some external means rather than by clients directly\n When encoding entity deltas, append on a random number of extra bytes.  This happens after sv_dev_entitydeltapadding_min_size.\n When encoding entity deltas, if the delta size is < N bytes, then shove in N dummy bytes.  This happens before sv_dev_entitydeltapadding_extra_min/sv_dev_entitydeltapadding_extra_max\n When encoding entity deltas, instead of unreliably deducing explicit deletions, actually send list of existing but not networked entities (dont_transmit list) to each client.\n-When packing entities, check that recipient bits match for fast path packing.\n When r_low_latency is enabled, this moves the low latency sleep on tick frames to happen after client simulation.\n When receiving packets out of sequence, wait this many seconds for missing sequences to arrive\n When the client is catching up in low frame rate situations, should we run client simulate more than once a frame?\n@@ -8634,7 +8650,7 @@ X\\n'NETWORK_DISCONNECT_BADSPECTATORPASSWORD\n X\\n'NETWORK_DISCONNECT_DIFFERENTCLASSTABLES\n X\\n'NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET\n X\\n(NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR\n-X`hrpJ\n+X`hr@E\n Xn1G\n Xr?9\n XsBI\n@@ -8651,6 +8667,7 @@ You have been kicked and banned %s by the server.\\n\n Your current chat group is \"%s\"\\n\n YpU_Z\n Z-google.golang.org/protobuf/types/descriptorpb\n+Z0b%\n Z48wN39\n Z6y\\r?\n Z?SHX?\n@@ -8688,7 +8705,6 @@ Zq\",9\\fB\n [Unreliable payload]\n [Voice payload]\n [\\n+NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION\n-[\\tV_modff\n [aOni*{\n [client]\n [demoscrub]\n@@ -8726,6 +8742,7 @@ Zq\",9\\fB\n \\\\n)NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA\n \\\\n*NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE\n \\\\n.NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY\n+\\\\tV_log10f\n \\c at end of pattern\n \\c must be followed by an ASCII character\n \\cnlauncher.txt\n@@ -8736,9 +8753,8 @@ Zq\",9\\fB\n \\fV0U\n \\fV4U\n \\fX\\fm\\vH\\vH\\vm\\v\n-\\f\\tV_atofloat32\n-\\fp\\v`lhB\n-\\fplhB\n+\\f\\ng_pThreadPool\n+\\foNj\n \\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number\n \\n    Actual    : \n \\n    Field type: \n@@ -8859,6 +8875,7 @@ Zq\",9\\fB\n \\n\\nboxed_type\n \\n\\nclass_name\n \\n\\ncmd_number\n+\\n\\ndelta_data\n \\n\\ndelta_from\n \\n\\ndemo.proto\"\n \\n\\ndependency\n@@ -8872,6 +8889,7 @@ Zq\",9\\fB\n \\n\\nfakeplayer\n \\n\\nfield_name\n \\n\\nfriends_id\n+\\n\\ng_pMemAlloc\n \\n\\ngo_package\n \\n\\nhigh_value\n \\n\\ninput_type\n@@ -8940,6 +8958,7 @@ Zq\",9\\fB\n \\n\\tDEM_Error\n \\n\\tbit_count\n \\n\\tbool_vals\n+\\n\\tbugbug_no\n \\n\\tbuild_num\n \\n\\tcmdstring\n \\n\\tcpu_brand\n@@ -9045,6 +9064,7 @@ Zq\",9\\fB\n \\ndist data: dyn %ld, stat %ld\n \\ndist tree: sent %ld\n \\ndyn trees: dyn %ld, stat %ld\n+\\ng_flThreadedJobWaitTimeAccumulator\n \\ngen_codes: max_code %d \n \\nh?oT\n \\nk>oB\n@@ -9068,9 +9088,8 @@ Zq\",9\\fB\n \\r\\n\\tTYPE_ENUM\n \\r\\n\\tsvc_Print\n \\r\\r\\f\\f\\f\\f\\v\\v\\v\\n\\n\\n\\t\\t\\t\\t\\t\\t\n+\\r\\tV_acosf\n \\rmj>zjZ\n-\\rp\\f`\\v0lhB\n-\\rp\\f`\\vPlhB\n \\t The lexer was matching from line %d, offset %d, which\\n\\t \n \\t\"%s\" has %d known peers:\\n\n \\t\"%s\" has no known peers.\\n\n@@ -9082,22 +9101,23 @@ Zq\",9\\fB\n \\t?\\tZ\\tZ\\tZ\\tZ\\t?\\tg\\t\\n\\t\n \\t?\\tZ\\tt\\tt\\tt\\t\n \\tN1a\n-\\tTp8J\n-\\tV_acosf\n \\tV_asinf\n \\tV_atan2f\n+\\tV_atof\n+\\tV_atofloat32\n \\tV_atoi\n \\tV_atoi64\n \\tV_atoui64\n \\tV_cosf\n-\\tV_expf\n-\\tV_fclose\n+\\tV_sscanf\n+\\tV_stricmp_fast\n \\tV_strlower_fast\n \\tV_strtod\n \\tV_strtok\n \\tV_tanf\n \\tV_tier0_strcmp\n \\tV_vsnprintf\n+\\tWait\n \\tWarning\n \\tWorldsize_Init\n \\t[%d]Demo playback max rate capped at %f.\\n\n@@ -9127,9 +9147,6 @@ Zq\",9\\fB\n \\tg_BitBuf_BitWriteMasks\n \\tg_Mathlib_GammaToLinearByteTable\n \\tg_VProfCurrentProfile\n-\\tg_pMemAlloc\n-\\tg_pScheduledFunctions\n-\\tg_pThreadPool\n \\tkE>fvw\n \\tnTargetServerTick:%d\\n\\tm_streamStartRef.nTick:%d\\n\\tm_nStartHostTick:%d\\n\\tg_pNetworkClientService->GetTotalTicks():%d\\n\n \\u00\n@@ -9145,16 +9162,17 @@ Zq\",9\\fB\n \\vSimulationTicks\n \\vSource\n \\vVyC\n-\\v\\tV_atof\n+\\v\\ng_pScheduledFunctions\n \\vbasetypes.h\n \\vm\\vm\\vm\\vH\\vm\\vm\\v\n \\vm\\vm\\vm\\vm\\vH\\v\n \\vnJH\n-\\vplhB\n \\vxYT\n ] is an invalid data character in JavaScript compatibility mode\n ]\\n,NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION\n+]\\tV_log2_uint\n ^<V7w\n+^PUG\n ^RfN>\n ^\\n*NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT\n ^\\n*NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT\n@@ -9169,7 +9187,6 @@ _RDATA\n _Target\n _\\n,NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT\n _\\n-NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN\n-__ExternalMethodParent__\n __UNKNOWN__\n ___clientsideitemsplaceholder0___\n ___clientsideitemsplaceholder1___\n@@ -9185,6 +9202,7 @@ __int16\n __int32\n __int64\n __int8\n+__m_BaseFlow_WhileActive__\n __nofilter__\n __pascal\n __populated_from_schema_modules\n@@ -9214,18 +9232,15 @@ _root_keyname\n _spawngroup_logging/log_%s_group_%s.txt\n _temp_mapcycle.txt\n `-uRQg\n-`2pJ\n `3Q\"X\n-`6P;G\n-`6P<G\n+`6 eG\n+`60eG\n `?m'_?&~]?(\n `RTTI\n `adjustor{\n `anonymous namespace'\n-`bpJ\n `copy constructor closure'\n `default constructor closure'\n-`dpJ\n `dynamic atexit destructor for '\n `dynamic initializer for '\n `eh vector constructor iterator'\n@@ -9238,7 +9253,6 @@ _temp_mapcycle.txt\n `generic-type-\n `hp\\nU\n `hyz\n-`lhB\n `local static destructor helper'\n `local static guard'\n `local static thread guard'\n@@ -9278,6 +9292,8 @@ a numbered reference must not be zero\n a&M-=Z]<i*k)n-t&q&p&|\n a6>r\n a?wSa?\\\n+aBvd\n+a\\tV_logf\n a\\v4+Wk\n abcdefghijklmnopqrstuvwxyz\n abortflag\n@@ -9316,7 +9332,6 @@ alpha\n already connected\n alternate_baseline_t\n alternate_baselines\n-ambientColor\n amnesty\n an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)\n analogbindings\n@@ -9351,6 +9366,7 @@ auto-%04i%02i%02i-%02i%02i-%s-%s.dem\n auto_bug\n auto_bug : create non-interactive bug report.\n auto_threads\n+autoexec\n autoexec.cfg\n autosave\n autosavedangerous\n@@ -9364,7 +9380,6 @@ b#M**y`Bl+o(u,{ x$w!\n b0xNA;;|E)!\n b3>7\n b?qq\n-b\\tV_powf\n backColorBuffer\n backDepthBuffer\n backbuffer,\n@@ -9477,7 +9492,6 @@ c?FA@s}\n cB$$\"$\"\"\"\"SE$4\"tfFDD\n cM*\"K\n cNDS\n-c\\tV_qsort\n c_os\n calcdelta\n calcdelta with no changes\n@@ -9492,12 +9506,10 @@ can't playdemo '%s', disallowed\\n\n can't reach here.\n can't save, not in a listen server game!\n can't save, not in a listen server game!\\n\n-canModifyOutputs\n cc_enable_arenas\n cc_generic_services\n cdndelay\n ceil\n-centerShift\n cfg/\n cfg/%s\n cfg/%s%s\n@@ -9623,8 +9635,6 @@ clc_ServerStatus\n clc_SplitPlayerConnect\n clc_SplitPlayerDisconnect\n clear\n-clearColor\n-clearTargets\n clearall\n clearalpha\n cli::array<\n@@ -9635,6 +9645,7 @@ client orphan %s: server class associated %s\\n\n client.dll\n client_command_tick\n client_connected\n+client_deprecated\n client_disconnected\n client_frame_simulate\n client_streaming\n@@ -9654,9 +9665,9 @@ code\n code %d bits %d->%d\\n\n codec\n codegen, \n+codegen_delta_encoder\n cointerface \n color\n-colorCorrectionParams\n colors\n colorstatus\n com.google.protobufB\n@@ -9757,7 +9768,6 @@ dQy/\n dRL>\n d\\n-NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN\n d\\n-NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG\n-d\\tV_qsort_s\n data\n data error\n data_compressed\n@@ -9772,7 +9782,6 @@ decltype(auto)\n dedicated\n default\n default rate for relays\n-defaultSceneEnabled\n default_value\n delay\n delete\n@@ -9830,7 +9839,6 @@ diff_encode_field\n different names for subpatterns of the same number are not allowed\n digit\n digit expected after (?+\n-directLighting\n direct_return_value_for\n directory not empty\n disable_game_specific_ui\n@@ -9879,7 +9887,6 @@ ehandle\n empty\n empty distance tree with lengths\n enable\n-enableRadialDistortion\n enable_priority_boost\n enabled\n encoder\n@@ -9911,8 +9918,6 @@ engine_platform_name_extended\n engine_relaunch_app_before_exiting\n engine_render_only\n engine_rendersystem_init\n-engine_rendersystem_meets_min_dx_110\n-engine_rendersystem_meets_min_dx_110_simple\n engine_rendersystem_shader_model\n engine_rendersystem_used\n engine_show_frame_dispatch\n@@ -9926,6 +9931,7 @@ enginemsgs_total\n english\n entindex\n entindex %d snaps: \n+entity\n entity2\n entityIdentityNameChanged\n entity_log_load_unserialize\n@@ -9979,6 +9985,7 @@ fD>b\n fDD\"AUDT$t\n fP~V\n fWi?\n+f\\tV_modff\n fabs\n failed\n failed to get memory\n@@ -9992,8 +9999,8 @@ false:<\\n\n false:=\\n\n false:=\\n\\rvalve_map_key\n false:?\\n\n+false:A\\n\n fast path %d at %d\\n\n-fbRG\n field\n field_serializer_name_sym\n field_serializer_version\n@@ -10025,7 +10032,6 @@ float32\n float64\n floor\n fmod\n-fnRG\n fog_enable\n fog_override_color\n fog_override_enable\n@@ -10034,7 +10040,6 @@ fog_override_exponent\n fog_override_max_density\n fog_override_start\n for %.2f minutes\n-forceZPrePass\n force_assert\n force_fatal_error\n force_fatal_error used, %d args\n@@ -10047,6 +10052,8 @@ forcing new thread crash\\n\n forcing parallel process non-main thread crash\\n\n format\n found duplicate in %s\\n\n+fp(G\n+fpGG\n fps variability,\n fps,\n fps_max\n@@ -10172,7 +10179,6 @@ hJ4%\n hPU3\n hTarget\n h\\n,NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING\n-h\\tV_roundd\n has_observable_context\n has_pvs_vis_bits_deprecated\n header crc mismatch\n@@ -10224,14 +10230,14 @@ hostname\n hostname : %s\\n\n hostname_in_client_status\n hostport\n+hpz@\n hscript\n hscript_lightbinding\n http Send %.3f ms ave, %.3f ms max\\n\n http://localhost:8080\n i3V.\n i91k\n iController\n-i\\tV_roundf\n i]Wb\n idempotency_level\n identifier removed\n@@ -10255,7 +10261,6 @@ incremental\n incrementvar\n incrementvar: cvar \"%s\" not found\\n\n incrementvar: no varname specified\\n\n-indirectLighting\n infinity\n info reporting only\n info_player_start\n@@ -10281,7 +10286,6 @@ instant_replay\n instant_replay_goto_tick\n instant_replay_goto_tick_relative\n instant_replay_history_limit\n-instant_replay_history_limit_low\n instant_replay_live\n instant_replay_pause\n instant_replay_resume\n@@ -10327,7 +10331,6 @@ invalid state\n invalid stored block lengths\n invalid string position\n invalid window size\n-invalidLightMaps\n invalid_bone\n invalid_parameter\n io error\n@@ -10400,6 +10403,7 @@ k=E.x=i\n k=yI\n k?n_m?P\n kF?j\n+k\\tV_open_osfhandle\n k_EProtoDebugVisibility_Always\n k_EProtoDebugVisibility_Always:@\\n\n k_EProtoDebugVisibility_GC\n@@ -10452,15 +10456,15 @@ leave\n left4dead2\n legacy_host_loss\n legacy_is_delta\n+legacy_name_replacement\n+legacy_names\n level_load\n levelload\n levelname\n leveltransition\n lexer->mTokens(): Error: No lexer rules were added to the lexer yet!\\n\n lib:\n libopus unknown\n-lightingOnly\n-lightstyles\n line \n line\\n\n list current addon info.\n@@ -10507,9 +10511,12 @@ m?@Zl?~\\vk?k\n m?H7\n mG4>\n m\\nXo\n+m\\tV_powf\n m\\vm\\vm\\vm\\vm\\vm\\vm\\vm\\vm\\vm\\vm\\v\n m_Args\n m_Attributes\n+m_BaseFlow_OnAfterCancel\n+m_BaseFlow_WhileActive\n m_CScriptComponent\n m_Description\n m_EntryChunk\n@@ -10535,13 +10542,11 @@ m_bIsOncePerFrameAsyncWorkPhase\n m_bIsPublic\n m_bLastTick\n m_bLastTickBeforeClientUpdate\n-m_bMarkedForRemoval\n m_bRenderOnly\n m_bScheduleSendTickPacket\n m_bThreadsActive\n m_designerName\n m_fDataObjectTypes\n-m_flDelay\n m_flFireTime\n m_flFrameTime\n m_flRealTime\n@@ -10568,17 +10573,14 @@ m_nDummy0\n m_nEditorNodeID\n m_nFlags\n m_nInstruction\n-m_nOutputID\n m_nPlatWindowHeight\n m_nPlatWindowWidth\n m_nPriority\n m_nRenderHeight\n m_nRenderWidth\n m_nRuntimeIndex\n m_nSplitScreenSlot\n-m_nTargetType\n m_nTickCount\n-m_nTimesToFire\n m_nTotalTicks\n m_nTotalTicksThisFrame\n m_name\n@@ -10596,16 +10598,14 @@ m_pNetworkDataReferencedDescription\n m_pNetworkDataReferencedPtrPropDescription\n m_pNext\n m_pNextByClass\n+m_pPayload\n m_pPrev\n m_pPrevByClass\n m_pTarget\n m_pTargetInput\n m_paramMap\n m_scriptClassName\n-m_targetDesc\n-m_targetInput\n m_targetType\n-m_valueOverride\n m_variantValue\n m_worldGroupId\n machine\n@@ -10719,19 +10719,20 @@ multvar\n multvar: cvar \"%s\" not found\\n\n multvar: no varname specified!\\n\n mx=E\n-n0,G\n n03>Pu\n n>sak><\n n?A6\n n?SZn?\n+n@jG\n nBits != 32\n nGh>\n nI9>h\n nMax\n nMin\n+nReadHandle != UINT64_MAX\n nTries < 10000000\n n\\n0NETWORK_DISCONNECT_KICKED_VACNETABNORMALBEHAVIOR\n-n\\tV_sincosf\n+n\\tV_qsort\n n]?iJ\n n`xBF|7T\n name\n@@ -10755,7 +10756,6 @@ net_SplitScreenUser\n net_Tick\n net_array\n net_async_clientconnect\n-net_async_job_random_sleep\n net_stats_json\n net_table_name\n netchan timeout: %.2fs since recv\n@@ -10776,7 +10776,7 @@ network down\n network reset\n network unreachable\n network_connection.proto\n-network_connection.proto\"8\\n\\nCMsgVector\n+network_connection.proto\">\\n\\nCMsgVector\n network_connection_detail_token\n network_connection_token\n networkable\n@@ -10788,7 +10788,6 @@ next\n nextdemo\n nextloop_keyvalues\n no buffer space\n-no change\n no child process\n no data!\\n\n no error\n@@ -10835,7 +10834,6 @@ not started\n not supported\n notes\n nothing to repeat\n-np.G\n null\n nullptr\n num_bits\n@@ -10854,6 +10852,7 @@ o\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n o?GS\n oG!t\n oI>O7\n+o\\tV_qsort_s\n o\\v3b\n objc_class_prefix\n objectid\n@@ -10930,12 +10929,8 @@ outofpvs_entity_updates\n outofpvs_entity_updates_t\n output\n output buffer too small for in-memory compression\n-outputColor\n-outputDepth\n output_color_back_buffer\n-output_color_texture\n output_depth_back_buffer\n-output_depth_texture\n overflow\n overlay\n override_operator_name\n@@ -10946,27 +10941,29 @@ overwatch\n owM&\n owner dead\n oz>!km>\n-p08@H^\n+p08@H^d\n p0p@\n-p2pJ\n+p2@E\n p2p_listpeers\n p2p_ping \"%s\"\n p4edit\n-p6@&G\n-p>7RG\n+p6@0G\n p?ff\n p@HPX`h\\f\n pClass\n pClass->m_ClassID(%i) >= %i\\n\n pClient\n pCm)\n+pF ]G\n pH\\fy\n pMessage\n+pNewSet->m_readPipe.OpenPipe_Named( false, szReadPipeParam, true )\n+pNewSet->m_readPipe.OpenPipe_OSFILEHANDLE( false, (OSFILEHANDLE)nReadHandle, nPipeSourcePID )\n+pNewSet->m_writePipe.OpenPipe_Named( true, szWritePipeParam, true )\n+pNewSet->m_writePipe.OpenPipe_OSFILEHANDLE( true, (OSFILEHANDLE)nWriteHandle, nPipeSourcePID )\n pServerClass\n pYa(bu\n p\\r0\\fP\n-p\\r`\\fPlhB\n-p\\tV_sinf\n package\n packed\n packet\n@@ -10991,7 +10988,7 @@ password\n path\n pause\n paused\n-pbpJ\n+pb@E\n pc64\n peer\n pending\n@@ -11010,7 +11007,6 @@ phys_highlight_expensive_objects\n phys_highlight_expensive_objects_strength\n ping\n pitch\n-plQB\n playback_frames\n playback_ticks\n playcast\n@@ -11020,7 +11016,6 @@ playdemo %s\\n\n playdemo <demoname> [\\n\n player\n player0_using_joystick\n-playerIndex\n player_network_lag_avg\n player_network_lag_max\n player_network_loss_avg\n@@ -11035,7 +11030,6 @@ playing %s from '%s'\\n\n playsound\n playsound \n playsound <soundname>\n-plhB\n png \n png_screenshot\n pointer, \n@@ -11049,13 +11043,10 @@ pos [player %d]: %.3f,%.3f,%.3f\\n\n position\n positive_int_value\n postnetupdate\n-preDistortionRenderSizeFactor\n predicted_by_player_slot\n prediction_sync\n prerequisite\n-preserveColorBuffers\n prev\n-previewLightMaps\n previouslevel\n primary_target\n print\n@@ -11066,7 +11057,6 @@ process_uptime\n profile\n progress\n progress_enable\n-projectionArea\n promise already satisfied\n props\n protected command line arguments (stripped from above):\\n\n@@ -11097,7 +11087,6 @@ pulse_system.dll\n punct\n purecall\n push_var_values\n-pvConditionalsEvaluated\n py_generic_services\n qIU<\n qM1H\n@@ -11119,7 +11108,6 @@ rA?7\n rEy5\n rFg7\n r\\tVr.>T\n-r_add_views_in_pre_output\n r_always_render_all_windows\n r_aspectratio\n r_camerapos\n@@ -11141,27 +11129,22 @@ r_experimental_lag_limiter\n r_extra_render_frames\n r_force_engine_render_frame\n r_force_render_frame_count\n-r_force_zprepass\n r_indirectlighting\n r_render_coordination_state\n r_rendersun\n r_setpos\n r_showdebugoverlays\n-r_showdebugrendertarget\n r_showsceneobjectbounds\n-r_showsunshadowdebugrendertargets\n-r_showsunshadowdebugsplitvis\n r_size_cull_threshold\n r_size_cull_threshold_fade\n r_size_cull_threshold_shadow\n r_skip_precache_validation_check\n r_ssao\n r_toggleviewportsize\n r_translucent\n+r_ui_update_parallel_with_server\n r_vconsole_foregroundforcerender\n r_viewport\n-r_zprepass_normals\n-radialDistortionCoefficient\n radiant_team_id\n radiant_team_tag\n ram_physical_total_mb\n@@ -11227,13 +11210,6 @@ removeip:  filter removed for %s, IP %s\\n\n removeip:  filter removed for %s\\n\n removeip:  invalid slot %i\\n\n removeip: \"<><><>\" was unbanned by \"%s\" (IP \"%s\")\\n\n-render3DSkybox\n-renderReflectiveObjects\n-renderSky\n-renderSun\n-renderTime\n-renderToTexture\n-renderTranslucent\n rendersystemdll,\n rendersystemdx11.dll\n rendersystemempty.dll\n@@ -11304,7 +11280,7 @@ s5J5J5J5J5J5J5J5J5J5J5J5J5J5J5J5Jx\n sAmTb\n sHF'\n sUIL\\s\n-s\\tV_snprintf\n+s\\tV_roundd\n satisfied\n save\n save LowBattery_AutoSave\\n\n@@ -11408,12 +11384,6 @@ shot\n shot_\n show frame dispatch names.\n show usercmd payload sizing info for packets with more than this many usercmds\n-showDebugRenderTarget\n-showLPVVoxels\n-showLightmapTexels\n-showQuadOverdraw\n-showShadingComplexity\n-showShadowmapTexels\n showconsole\n signed \n signon\n@@ -11520,7 +11490,6 @@ steam_appid.txt\n steam_id\n steam_loggedon\n steamaudio\n-steamhdl\n steamid\n steamid  : %s (%llu)\\n\n steamid64\n@@ -11572,10 +11541,8 @@ sv_dev_entitydeltapadding_extra_min\n sv_dev_entitydeltapadding_min_size\n sv_disable_reliable_delta_retransmit\n sv_enable_alternate_baselines\n-sv_enable_delta_packing\n sv_enable_donttransmit\n sv_enable_removearrayelementsoutsidemetadatabounds\n-sv_ents_write_alarm\n sv_extra_client_connect_time\n sv_filterban\n sv_fps_max\n@@ -11610,10 +11577,7 @@ sv_mmqueue_reservation\n sv_mmqueue_reservation_extended_timeout\n sv_mmqueue_reservation_timeout\n sv_networkvar_perfieldtracking\n-sv_networkvar_validate\n sv_outofpvsentityupdates\n-sv_pack_entities_really_verbose\n-sv_pack_entities_verbose_entidx\n sv_packstats\n sv_parallel_packentities\n sv_parallel_prepare_client_updates\n@@ -11629,7 +11593,6 @@ sv_rcon_log\n sv_rcon_maxfailures\n sv_rcon_minfailures\n sv_rcon_minfailuretime\n-sv_recipients_check\n sv_recvbuf_messages\n sv_region\n sv_replay_group_id\n@@ -11647,6 +11610,7 @@ sv_snapshot_unlimited\n sv_spewmeta\n sv_spewworldgroups\n sv_stats\n+sv_steamauth_correct\n sv_steamauth_enforce\n sv_steamauth_ignore_localhost\n sv_steamgroup\n@@ -11700,6 +11664,7 @@ tCR;\\HdY\\\n tL75}\n tM_y\n tTOw}\n+t\\tV_roundf\n table\n table %32.32s  %5i\\n\n table_id\n@@ -11783,8 +11748,6 @@ toolframework2\n tools\n tools/images/pulse_editor/exit_cycle_random.png\n tools/images/pulse_editor/inflow_wait.png\n-toolsVisMaxLightingComplexity\n-toolsVisMode\n total\n total sec,\n total ticks, network client service: %d, broadcast player: %d\\n\n@@ -11943,6 +11906,7 @@ unrecognized character follows \\\n unreserved\n unsigned\n unsigned \n+untrusted_delta_max\n unverified_lazy\n update_baseline\n updated\n@@ -11987,7 +11951,6 @@ utcdatetime_vals\n utl_vector, \n utlstringtoken\n uzKs@>\n-v0@G\n v2!L.2\n vE-2\n vQO+t\n@@ -12032,7 +11995,6 @@ version\n version  : %s/%d %d %s %s%s\\n\n vidmem total: %0.3fMB\\n\n vidmemstats.txt\n-viewModelFov\n viewport\n violence_ablood\n violence_agibs\n@@ -12077,7 +12039,6 @@ void\n volatile\n volatile \n volume\n-volumeFogRenderer0\n vpcf\n vphysics2\n vpks\n@@ -12112,6 +12073,7 @@ wPj}\n wU9%\n wXR\\r\n w\\fg3\n+w\\tV_setvbuf\n waC+\n wait_time\n waiting\n@@ -12131,8 +12093,6 @@ when non-empty allows for easy vconsole connection to the dedicated server.\n width\n width,\n wild scan\n-windController\n-wireframeColor\n with error\n wm\\v?1\n wn>Jj\n@@ -12167,21 +12127,22 @@ y22]\n y9*O\n y?Zzy?\n yM+7\n-y\\tV_sscanf\n+y\\tV_sincosf\n yields\n yiq-\n yslf`ZTMGA;5.\n+z0b%\n z?Mbz?H5z?\n-zFarCull\n-zPrePassNormals\n z\\n8NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY\n z\\nB\\fz\n z_AMC\\v\n zero\n zx?L\n { className = 'IsWaitNode IsControlFlowNode' item_factory = 'InflowWait' }\n+{ standard_yielding_flow = true }\n {%%%d.%ds} %%%d.%ds: %%-%d.%ds %%-%d.%ds: %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds [%%-%d.%ds bits]\\n\n {A7Dd\n+{\\tV_sinf\n {flat}\n {for \n {kHw\n@@ -12206,7 +12167,7 @@ zx?L\n ~CServerChangelevelState with non empty m_Clients, failed change level to %s!!!\\n\n ~CSteam3ServerS1 is active at destruction - must be shut down properly in the main server shutdown sequence\\n\n ~\\naS0\n-~\\tV_stricmp_fast\n+~\\tV_snprintf\n ~ltvO\n ~szn\n ~wph_YSNHB<6/' "
        },
        {
          "filename": "game/bin/win64/exportsystem_strings.txt",
          "status": "modified",
          "additions": 17,
          "deletions": 57,
          "changes": 74,
          "patch": "@@ -82,7 +82,6 @@ $prefix_element$\n '?SetCount@FbxLayerElementArray@fbxsdk@@QEAA_NHW4EFbxMemoryClearMode@2@@Z\n '?SetCurrentAnimationStack@FbxScene@fbxsdk@@QEAAXPEAVFbxAnimStack@2@@Z\n '?SetFileName@FbxFileTexture@fbxsdk@@QEAA_NPEBD@Z\n-(9T2\n (?SetLegacyStyle@FbxShape@fbxsdk@@QEAAX_N@Z\n (?SetLink@FbxCluster@fbxsdk@@QEAAXPEBVFbxNode@2@@Z\n (?SetLinkMode@FbxCluster@fbxsdk@@QEAAXW4ELinkMode@12@@Z\n@@ -801,11 +800,12 @@ $prefix_element$\n .png\n .tga\n .vmat\n+0lj'\n 0x%llx\n 16-byte data pool\n 2(?SetFrame@FbxTime@fbxsdk@@QEAAX_JW4EMode@12@@Z\n 2\\nP!E\n-2\\vpt\n+2\\vplj'\n 4-byte data pool\n 5sfm_v8\n 64 283 0\n@@ -817,7 +817,7 @@ $prefix_element$\n <UNKNOWN_EXPORT_TYPE>\n <\\v??BFbxString@fbxsdk@@QEBAPEBDXZ\n ='?SetAxisSystem@FbxGlobalSettings@fbxsdk@@QEAAXAEBVFbxAxisSystem@2@@Z\n-=m_bUseShadowFastPath\n+=8l3\n >\"?IsValid@FbxProperty@fbxsdk@@QEBA_NXZ\n ??0FbxAMatrix@fbxsdk@@QEAA@AEBV01@@Z\n ??0FbxAMatrix@fbxsdk@@QEAA@XZ\n@@ -964,6 +964,7 @@ $prefix_element$\n ?GetTextureCount@FbxScene@fbxsdk@@QEBAHXZ\n ?alpha\n ?expf\n+?model_default_preview_sequence_name\n ?vtex\n AddNewLayer\n AddUndoElement '%s'\\n\n@@ -1151,41 +1152,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n CVisibilityMgr\n CWeakHandle\n@@ -1201,6 +1167,7 @@ Cleanup\n ClipBoard\n CloseLid\n CmdLine\n+Cmdl\n Color Fade\n Color Light From Control Point\n Color Random\n@@ -1411,6 +1378,7 @@ DmeXSIMakefile\n DmxSemanticName\n DmxSourceFile\n DmxSourceFileRelative\n+DualHull\n ERROR: Specified full path %s does not lie under the mod search path!)\\n\n ERROR: Specified path %s could not be made content-relative\\n\n ERROR: Unable to create an attribute handle! Save, quit, restart and clean up your file to have fewer elements!\\n\n@@ -1472,7 +1440,6 @@ FloatBitMap_t::WriteInMemoryEXRFast(), C:\\buildworker\\csgo_rel_win64\\build\\src\\b\n FoldLipLo\n FoldLipUp\n FoliageAnimation\n-G\\f%G47\n GenerateResourceNameFromFileName: Invalid extension specified in file name \"%s\"!\\n\n Generic DMX\n Generic MovieObjects\n@@ -1481,10 +1448,7 @@ GenericType\n GetClipboardData\n GetProfile_ultrafast\n GlobalSize\n-H=Q2\n-H=S2\n Hammer temp export\n-HeP2\n HemiOctAnisoRoughness_RG_BA\n HemiOctIsoRoughness_RG_B\n HemiOctNormal\n@@ -1493,6 +1457,7 @@ I(?SetGlobalTimeMode@FbxTime@fbxsdk@@SAXW4EMode@12@N@Z\n IExportSystem\n IKV3TransferInterface_ResourceSave\n IOSRoot\n+If enabled, the up direction will be evaluated in world space, such that the object orientation does not affect the surface slope filtering. Additionally if Orient To Surface is 0, then and world space up is enabled, then the object orientation will not affect the rotation of detail model.\n Inherit Velocity\n Initial Repulsion Velocity\n Initial Scalar Noise\n@@ -1604,8 +1569,8 @@ Oscillate Vector\n Output memory size is zero\n OverlayProjectionDirection\n P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z\n+PDW'\n PF\\n%d %d\\n-1.000000\\n\n-PackedBlobNormal\n Particle Configuration File\n PerVertexLighting\n Pf\\n%d %d\\n-1.000000\\n\n@@ -1683,7 +1648,6 @@ Solved Knee\n Solved Thigh\n StereoFlip\n Symbol table:  %d entries %llu bytes\\n\n-T\\tV_log2f\n Take 001\n TanFrameQuat\n Texture  :: %s\\n\n@@ -1722,6 +1686,7 @@ Unserialize: Unexpected encoding name '%s' reading file '%s' - expected encoding\n Unserialize: Unexpected format '%s' reading file '%s' - expected format '%s'\\n\n Unsupported export type :: %s\n Unsupported input file type: %s\n+Use World Space Up\n User Data Element\n VDataModelVersion001\n VDmElementFrameworkVersion001\n@@ -1745,7 +1710,6 @@ WipeUndo '%s'\\n\n World Files\n World Node Files\n X)?SetRotationActive@FbxNode@fbxsdk@@QEAAX_N@Z\n-X5R2\n Z%?RemoveElementUV@FbxGeometryBase@fbxsdk@@QEAA_NPEAVFbxLayerElementUV@2@@Z\n ZFP compression is not supported in this build\n [%d] Aborting undo '%s'\\n\n@@ -1769,12 +1733,15 @@ ZFP compression is not supported in this build\n \\t??8FbxVector4@fbxsdk@@QEBA_NAEBV01@@Z\n \\tError\\n\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n+\\tV_ZSTD_decompress\n+\\tV_sscanf_s\n \\tV_strnchr\n \\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StringAfterPrefixCaseSensitive\n \\t_V_StripLastDir\n \\v??_7FbxAnimCurveFilter@fbxsdk@@6B@\n+_\\tV_log2f\n _basetintmask_\n _colorSetNames\n _detailmask_\n@@ -1792,7 +1759,6 @@ _selfillummask_\n _specexp_\n _specmask_\n _texcoordNames\n-`yT2\n activeBookmarkSet\n adding layer %d to stack\\n\n addlayer: log %p lc[%d], layer %p\n@@ -1849,6 +1815,7 @@ baseStates\n basic_movement\n bentnormal\n bezier\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -2214,18 +2181,12 @@ m_SubassetDefinitions\n m_SubassetReferences\n m_UserData\n m_WeakReferenceList\n-m_bBakedTwoSided\n-m_bCanBatchWithDynamicShaderConstants\n-m_bDrawLast\n+m_bAllowDefinitions\n+m_bAllowReferences\n m_bFileExists\n-m_bHasBakedLightingFromLightMap\n-m_bHasBakedLightingFromVertexStream\n m_bIsGameFile\n-m_bIsNotMatchedToMaterial\n-m_bNoShadow\n-m_bOnlyShadow\n m_bOptional\n-m_bUseCompressedNormalTangent\n+m_bWorldSpaceOrientation\n m_fMoveTo\n m_nFileCRC\n m_nFingerprint\n@@ -2333,7 +2294,6 @@ overrideParent\n overridePos\n overrideRot\n ownerlog\n-p>t9)\n parentBindRotation\n parentConstraint\n pathNodeName\n@@ -2352,6 +2312,7 @@ pinEnabled\n pin_enabled\n pivotOffset\n pixelAspectRatio\n+plj'\n pointentityclass\n poleVector\n posTolerance\n@@ -2676,7 +2637,6 @@ wrinkle$0Indices\n wrinkleIndices\n wrinkleScales\n z)?SetScale@FbxTexture@fbxsdk@@QEAAXNN@Z\n-z\\tV_sscanf_s\n {+?currentDateTimeGMT@FbxDateTime@fbxsdk@@SA?AV12@XZ\n |BBoneSetup\n ~CGenericFilter"
        },
        {
          "filename": "game/bin/win64/filesystem_stdio_strings.txt",
          "status": "modified",
          "additions": 13,
          "deletions": 39,
          "changes": 52,
          "patch": "@@ -28,7 +28,6 @@\n  T;6P/Arc\n  Version %s %d Embedded Chunk %d : %d Hashes %d Chunks %d \\n\n  Xia\n- \\tV_ferror\n  ^LXjt\n  _GDK\\tZ\n  characters\n@@ -56,10 +55,13 @@\n !9iV\n !AECO\n !HRN\n+!IsText()\n !expected_len || s->s3->previous_client_finished_len\n !expected_len || s->s3->previous_server_finished_len\n !fUY\\n\n !hcK+dbF&\n+!m_Byteswap.IsSwappingBytes()\n+!m_Swap.IsSwappingBytes()\n !m_nPackFileNumber\n !s8p\n \"!\"%\"+\"1\"9\"K\"O\"c\"g\"s\"u\"\n@@ -223,6 +225,7 @@ $hRh\n )J9o\n )TpH\n )Urz\n+)\\tV_ferror\n )fuG\n )haI\n *%*/*O*U*_*e*k*m*s*\n@@ -280,7 +283,6 @@ $hRh\n -DBF\n -U`5K\n -\\6G5\n--\\tV_fread\n -l34\n -mB:t\n -~T\\viMOb\n@@ -666,7 +668,6 @@ $hRh\n 2Zq)\n 2\\fWQx\n 2\\rlhp\n-2\\tV_fseek\n 2^pV\n 2a\"l\n 2bT~\n@@ -685,7 +686,6 @@ $hRh\n 3Ej%Tb\n 3M5cWAK\n 3Wk1^\n-3\\tV_fseeki64\n 3\\v;8BJ\\nH\n 3icq\n 3ja~\n@@ -715,7 +715,6 @@ $hRh\n 5A10K\n 5EwO\n 5N{j\n-5\\tV_ftelli64\n 5\\vFuo\n 5b!g\n 5dO7\n@@ -737,6 +736,7 @@ $hRh\n 6H,N\n 6O|T%\n 6Qd=\n+6\\tV_fread\n 6_wEX\n 6afD\n 6bX+\n@@ -833,6 +833,7 @@ $hRh\n ;83\\v\\nHBJ7\n ;LGEW\n ;Qo0\n+;\\tV_fseek\n ;`Fzc\n ;bwP*\n ;xsK\n@@ -857,6 +858,7 @@ $hRh\n <SVX\n <YGr+\n <YVtV&\n+<\\tV_fseeki64\n <unsupported>\n =!=-=3=7=?=C=o=s=u=y={=\n =&sf9\n@@ -878,6 +880,7 @@ $hRh\n ?HAI\\t81\\t9dcG'\n ?HP4\n ?VBH;\n+?\\tV_ftelli64\n ?d86L\n ?dt]X\n ?gwL\n@@ -1098,7 +1101,6 @@ Adding VPK file: %s\\n\n Addreffing existing VPK file: %s\\n\n Affiliation Changed\n Ag*g*\n-Alignment\n Any Extended Key Usage\n Any Purpose\n Any language\n@@ -1280,7 +1282,9 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\filesystem\\basefilesystem.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\filesystem\\filesystem_stdio.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\check_cast.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlblockvector.h\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlbuffer.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\vpklib\\packedstore.h\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\zip\\zip_utils.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\vpklib\\packedstore.cpp\n CA Compromise\n CA Issuers\n@@ -1512,13 +1516,14 @@ CT Precertificate Poison\n CT Precertificate SCTs\n CT Precertificate Signer\n CUtlBlockVector<struct FileHandleTracker_t,int,class CMemAllocAllocator>::GrowCount\n+CUtlBuffer::BGetObjectRaw\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CZip *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CZipFile::CZipEntry,class CZipFile::CZipEntryLessFunc,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CZipFile::CZipEntry,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t,class CDefLess<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlSortVector<struct ChunkHashFraction_t,class CUtlSortVectorDefaultLess<struct ChunkHashFraction_t::SortKey_t>,class CUtlVector<struct ChunkHashFraction_t,int,class CUtlVectorMemory_Growable<struct ChunkHashFraction_t,int,0> > >::Find\n CVcn\n+CZipFile::ParseFromDisk\n+CZipFile::SaveDirectory\n C[L6\n C\\lVQ\n C\\tD\\vD\n@@ -1801,7 +1806,6 @@ DYNAMIC_GET_DATA_CTX\n DYNAMIC_LOAD\n DYNAMIC_SET_DATA_CTX\n Data Encipherment\n-DataOffset\n DcO/lcK+hSK\n Dd g4X3\n Decipher Only\n@@ -1817,7 +1821,6 @@ DirName\n DirName: \n Directory\n Directory not empty\n-DirectoryEntries\n DnRv\n Domain\n Domain error\n@@ -2932,7 +2935,6 @@ Policy Qualifier CPS\n Policy Qualifier User Notice\n Polynomial:\n Pr\"V\n-PreloadDirectoryEntries\n Prime:\n Private Key\n Private-Key\n@@ -3507,7 +3509,6 @@ Vemn\\t\n Verify error:\n Verify failure\\n\n Verifying - %s\n-Version\n Vg3LE\n VggjeK uO5n\n Visual C++ CRT: Not enough memory to complete call to strerror.\n@@ -3747,11 +3748,6 @@ Z0zd\n Z7\"c\n Z72\\v\n ZH^r\n-ZIP_EndOfCentralDirRecord\n-ZIP_FileHeader\n-ZIP_LocalFileHeader\n-ZIP_PreloadDirectoryEntry\n-ZIP_PreloadHeader\n ZL9L\n ZLIB\n ZLONG\n@@ -4246,7 +4242,6 @@ cast5-ecb\n cast5-ofb\n ccs received early\n cdP%\n-centralDirectorySize\n cert\n cert already in hash table\n cert cb error\n@@ -4330,21 +4325,18 @@ cofactor\n command not supported\n command takes input\n command takes no input\n-commentLength\n common libcrypto routines\n common ok and cancel characters\n commonName\n comp\n compatible\n compressed length too long\n compressed-data\n-compressedSize\n compression disabled\n compression failure\n compression id not within private range\n compression library error\n compressionAlgorithm\n-compressionMethod\n configuration file routines\n conflicting engine id\n connect error\n@@ -4383,7 +4375,6 @@ countersignature\n countryName\n cpLm\n cq#p\n-crc32\n critical\n critical,\n crl already delta\n@@ -4598,7 +4589,6 @@ directory services - algorithms\n dirname error\n disabled for fips\n discriminant is zero\n-diskNumberStart\n distinguishedName\n distpoint\n distpoint already set\n@@ -4848,9 +4838,7 @@ extension not found\n extension setting not supported\n extension value error\n extensions\n-externalFileAttribs\n extra data in message\n-extraFieldLength\n eyBH_\n eyj5yR\n f#9i\\n\n@@ -4876,8 +4864,6 @@ field too large\n fieldID\n fieldType\n file:\n-fileCommentLength\n-fileNameLength\n filename too big\n filesystem_stdio.dll\n filetime\n@@ -5328,7 +5314,6 @@ int_thread_get (err.c)\n integer not ascii format\n integer too large for long\n internal list error\n-internalFileAttribs\n international-organizations\n internationaliSDNNumber\n invalid CA certificate\n@@ -5571,11 +5556,9 @@ l7@J\n lC57\n lDcW\n lM2p\n-l\\tV_setvbuf\n language\n last octet invalid\n lastModifiedBy\n-lastModifiedDate\n lastModifiedTime\n lastUpdate\n lcO/<1\\r=,!\\r-@@@\n@@ -5729,8 +5712,6 @@ n6j/\n n:2C[\n n@PK\n nCRD\n-nCentralDirectoryEntries_ThisDisk\n-nCentralDirectoryEntries_Total\n nSRecord\n nStf,a\n nSw}Z\\tu\n@@ -5911,8 +5892,6 @@ null parameter\n null ssl ctx\n null ssl method passed\n number=%d, address=%08lX\\n\n-numberOfTheDiskWithStartOfCentralDirectory\n-numberOfThisDisk\n nyYn\n o$g31\\f\n o&1m&\n@@ -6275,7 +6254,6 @@ record too large\n record too small\n registeredAddress\n reject\n-relativeOffsetOfLocalHeader\n relativename\n removeFromCRL\n renegotiate ext too long\n@@ -6780,7 +6758,6 @@ sslv3 alert unexpected message\n sslv3 alert unsupported certificate\n sslv3 rollback attack\n stLDp\n-startOfCentralDirOffset\n stat\n stateOrProvinceName\n status expired\n@@ -6969,7 +6946,6 @@ unable to verify the first certificate\n unacceptable policy\n unauthAttrs\n unauth_attr\n-uncompressedSize\n undefined\n undefined generator\n undefined order\n@@ -7129,8 +7105,6 @@ value=\n variable has no value\n verification failure\n version incompatibility\n-versionMadeBy\n-versionNeededToExtract\n vm:u\n vparams\n vpk.signatures"
        },
        {
          "filename": "game/bin/win64/gfsdk_aftermath_lib.x64_strings.txt",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": "@@ -1088,6 +1088,7 @@ $@(2.(0f6(:b@\n =5au\n >global\n @08B\n+@08N\n @20z\\n\n @HJP~\n @HPV\n@@ -5478,6 +5479,7 @@ bdver3\n bdver4\n beginc\n bg.declare\n+binary\n bitcast\n bitselect\n bitwidth for integer type out of range!"
        },
        {
          "filename": "game/bin/win64/helpsystem_strings.txt",
          "status": "modified",
          "additions": 12,
          "deletions": 6,
          "changes": 18,
          "patch": "@@ -370,8 +370,8 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n 2\\n?doItemsLayout@QListView@@UEAAXXZ\n 2\\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z\n 2\\v?event@QAction@@MEAA_NPEAVQEvent@@@Z\n-2\\vp0\n-2\\vp4\n+2\\vp E\n+2\\vp(C\n 2aboutToShow()\n 2anchorClicked(QUrl)\n 2changed()\n@@ -1504,6 +1504,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n ?userType@QVariant@@QEBAHXZ\n ?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z\n @#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z\n+@InputBindSystem\n @\\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z\n A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z\n A\\n?document@QTextEdit@@QEBAPEAVQTextDocument@@XZ\n@@ -1530,6 +1531,7 @@ COMMAND_TEXT_MODE_BUTTON\n COMMAND_TEXT_MODE_ICON\n COMMAND_TEXT_MODE_MENU\n COMMAND_TEXT_MODE_NONE\n+CPLATFORM\n CQBindNameFilterWidget\n CQBindableCommandAction\n CQBindableCommandPushButton\n@@ -1635,6 +1637,7 @@ Failed to load '%s': %s\n Failed to load bindings (%s)\\n\n Failed to load help file '%s'.\\n\n Filter:\n+FilterApplied\n Find:\n Fixed\n Foc:N \n@@ -1680,7 +1683,6 @@ Include Inactive\n Input Binding Error\n Input Debugger [%1]\n Input Sequence\n-InputBindSystem\n InsertAssetLink\n InsertBold\n InsertImage\n@@ -1839,10 +1841,10 @@ R?modifiers@QKeyEvent@@QEBA?AV?$QFlags@W4KeyboardModifier@Qt@@@@XZ\n RMouse\n RMouseDoubleClick\n R\\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z\n-R\\fp0\n+R\\fp E\n R\\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z\n R\\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z\n-R\\vp4\n+R\\vp(C\n R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ\n Really delete this widget?<br><br>***THIS MAY CRASH THE PROGRAM***<br>\n Reloading...\n@@ -2097,6 +2099,7 @@ asset\n asset:dev/helper/testgrid.vmat\n b\\v?event@QSplitter@@MEAA_NPEAVQEvent@@@Z\n background\n+binary\n bold\n bold text\n bottom\n@@ -2221,7 +2224,7 @@ p`?type@QStandardItem@@UEBAHXZ\n q\\n?dragLeaveEvent@QAbstractScrollArea@@MEAAXPEAVQDragLeaveEvent@@@Z\n q\\v?event@QWidgetAction@@MEAA_NPEAVQEvent@@@Z\n quiet\n-r\\vp0\n+r\\vp E\n resource/toolhelp_%s_%s.txt\n right\n rowspan\n@@ -2248,6 +2251,9 @@ tabs\n testgrid.vmat\n toggleViewAction\n tokens\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n toolbarArea\n tools/keybindings/global_key_bindings.txt\n tools/keybindings/helpsystem_key_bindings.txt"
        },
        {
          "filename": "game/bin/win64/imemanager_strings.txt",
          "status": "modified",
          "additions": 3,
          "deletions": 1,
          "changes": 4,
          "patch": "@@ -44,6 +44,7 @@\n .?AVIIMEManager@@\n .?AVIMEManagerBase@@\n 0x%4.4x \n+2\\vp`Z\n A previous call to CoInitializeEx specified the concurrency model for this thread as multithread apartment (MTA).\\n\n ABC IME\n ALPHANUMERIC_FULL\n@@ -232,6 +233,7 @@ QQPinyin\n Quan Pin\n Quan Pin 6.0\n Quick\n+R\\fp`Z\n RegEnumKeyExA\n RegOpenKeyExW\n RegQueryInfoKeyW\n@@ -301,7 +303,6 @@ Wubi98\n Zheng Ma\n Zheng Ma 6.0\n ZhengMa\n-\\nP4f\n \\tV_wcsicmp\n `5Sf\n c\\t4\n@@ -328,6 +329,7 @@ itABC IME v5.30\n phon.ime\n pintlgnt.ime\n quick.ime\n+r\\vp`Z\n sogoupy.ime\n winabc.ime\n winabcx.ime"
        },
        {
          "filename": "game/bin/win64/inputsystem_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": "@@ -19,7 +19,6 @@\n .bmp\n /cursor.res\n 00000409\n-2\\vp0\n ACUTE_ACCENT\n AC_BACK\n AC_BOOKMARKS\n@@ -87,7 +86,6 @@ CTRL\n CURRENCYSUBUNIT\n CURRENCYUNIT\n CURRENCY_SIGN\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n C_WITH_CEDILLA\n CallWindowProcA\n Couldn't initialize joysticks: %s\\n\n@@ -380,7 +378,6 @@ RIGHT_CURLY_BRACKET\n RIGHT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK\n RSHIFT\n RWIN\n-R\\fp0\n R_AXIS\n R_AXIS_NEG\n R_AXIS_POS\n@@ -462,7 +459,6 @@ SDL_EVENT_JOYSTICK_REMOVED\n SDL_EVENT_KEYMAP_CHANGED\n SDL_EVENT_KEY_DOWN\n SDL_EVENT_KEY_UP\n-SDL_EVENT_LAST\n SDL_EVENT_LOCALE_CHANGED\n SDL_EVENT_LOW_MEMORY\n SDL_EVENT_MOUSE_BUTTON_DOWN\n@@ -591,7 +587,6 @@ keyc\n mouse %d %s (%d) at %g %g on window %d\\n\n mouse motion %g %g at %g %g with buttons \"%s\" on window %d\\n\n out of focus\n-r\\vp0\n s(KeEU\n scan\n shown"
        },
        {
          "filename": "game/bin/win64/libavformat-58_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -2248,6 +2248,7 @@ bN9UQW9w>`96*i9\n background\n bandwidth\n bandwidth of this stream to be specified in the DASH manifest.\n+binary\n bit rate\n bitDepthChromaMinus8:                %hhu\\n\n bitDepthLumaMinus8:                  %hhu\\n"
        },
        {
          "filename": "game/bin/win64/libfbxsdk_2020_3_1_strings.txt",
          "status": "modified",
          "additions": 3,
          "deletions": 1,
          "changes": 4,
          "patch": "@@ -12974,6 +12974,7 @@ $\\t$\\n$\\v$\\f$\\r$\n ?valueAs@FbxDistance@fbxsdk@@QEBAMAEBVFbxSystemUnit@2@@Z\n @&DlF4D>H4D>J4D\n @08B \n+@08N\n @2p9'\n @6 Zj\n @60/k\n@@ -16581,6 +16582,7 @@ Overscan Fit\n P$RfP\n P%luY%luM%luDT%luH%luM%.14gS\n P(Pe{\n+P08N\n P08~\n P0F&RPTZX\n P2 p\n@@ -18438,7 +18440,6 @@ Zrotation\n \\nP6J\n \\nPjA\n \\nSUUU\n-\\n\\t\\n\\n\\n\\v\\n\\f\\n\\r\\n\n \\npJA\n \\nppD\n \\r \\r!\\r\"\\r#\\r$\\r%\\r&\\r'\\r(\\r)\\r*\\r+\\r,\\r-\\r.\\r/\\r0\\r1\\r2\\r3\\r4\\r5\\r6\\r7\\r8\\r9\\r:\\r;\\r<\\r=\\r>\\r?\\r@\\rA\\rB\\rC\\rD\\rE\\rF\\rG\\rH\\rI\\rJ\\rK\\rL\\rM\\rN\\rO\\rP\\rQ\\rR\\rS\\rT\\rU\\rV\\rW\\rX\\rY\\rZ\\r[\\r\\\\r]\\r^\\r_\\r`\\ra\\rb\\rc\\rd\\re\\rf\\rg\\rh\\ri\\rj\\rk\\rl\\rm\\rn\\ro\\rp\\rq\\rr\\rs\\rt\\ru\\rv\\rw\\rx\\ry\\rz\\r{\\r|\\r}\\r~\\r\n@@ -18641,6 +18642,7 @@ allocating wildcard component\n alpha channel tint\n already in use\n ambient\n+ambientColor\n an error occurred\n ancestor\n ancestor-or-self"
        },
        {
          "filename": "game/bin/win64/libglib-2.0-0_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": "@@ -1131,6 +1131,7 @@ bad options\n be@latin\n begin != NULL\n big5\n+binary\n block_source\n bookmark\n bookmark != NULL"
        },
        {
          "filename": "game/bin/win64/localize_strings.txt",
          "status": "modified",
          "additions": 11,
          "deletions": 174,
          "changes": 185,
          "patch": "@@ -3,14 +3,13 @@\n   %s tokens; %s instances \n   from file '%s'\\n\n   has gender\\n\n+  has plural quantity\\n\n   in hash as '%s'\\n\n   language '%s'\\n\n   no language associated\\n\n   not from a file\\n\n   string data: %s bytes in %s blocks\\n\n   total memory allocated: %s bytes\\n\n-  valid for gender lookup\\n\n-  valid for plural lookup\\n\n   value '%s'\\n\n !plural: handler %s for %s does not have quantity handling\n !plural: loc token %s does not have a plural quantity\n@@ -108,8 +107,6 @@\n #LOC_Duration_m_s\n #LOC_Duration_mmss\n #LOC_Duration_s\n-#NotFound:p\n-#Valve_Close\n #Valve_SelectLanguage_Brazilian\n #Valve_SelectLanguage_Bulgarian\n #Valve_SelectLanguage_Czech\n@@ -139,16 +136,6 @@\n #Valve_SelectLanguage_Turkish\n #Valve_SelectLanguage_Ukrainian\n #Valve_SelectLanguage_Vietnamese\n-#Valve_TestDecimalPlurals:p\n-#Valve_TestExplicitPlurals_Noun0\n-#Valve_TestExplicitPlurals_Noun1\n-#Valve_TestExplicitPlurals_Noun321\n-#Valve_TestGenders_Adjective1:g\n-#Valve_TestGenders_Noun1\n-#Valve_TestGenders_Noun2\n-#Valve_TestPluralGenders_Noun1:p\n-#Valve_TestPlurals:p\n-#Valve_TestPluralsEnglishOnly:p\n $1.23\n %04d\n %language%\n@@ -159,7 +146,8 @@ $1.23\n %s(%u): Localization key '%s' is too long. Truncating.\\n\n %s: :g loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\\n\n %s: :p loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\\n\n-%s: unexpected language '%s'\\n\n+%s: contexts on loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\\n\n+%s: invalid usage char in '%s'\\n\n %s_pw\n (%s from %u files; %s not file-based)\\n\n *.txt\n@@ -210,7 +198,6 @@ $1.23\n <invalid duration format %d>\n <invalid floating-point number format %d>\n <invalid integral number format %d>\n-<invalid ordinal format %d>\n <invalid precision %d>\n <localization entry added>\n <space>\n@@ -225,7 +212,6 @@ Bulgarian\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\localize\\_vpc_localize\\default\\win64\\_msvc_\\Retail\\localize.pdb\n C:\\buildworker\\csgo_rel_win64\\build\\src\\localize\\loc_add.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\localize\\loc_variables.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\localize\\loc_variants.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\localize\\localize_imp.cpp\n CLP$\n CLocalize::AddFileImpl\n@@ -236,13 +222,6 @@ CLocalize::ConstructString\n CLocalize::FindSafe\n CLocalize::InstallChangeCallback: Attempted to add the same callback twice!\\n\n CLocalize::RunInternalTest_LocVariableResolve\n-CLocalize::RunInternalTest_PluralGender\n-CLocalize::RunInternalTest_PluralGender_Dutch\n-CLocalize::RunInternalTest_PluralGender_English\n-CLocalize::RunInternalTest_PluralGender_French\n-CLocalize::RunInternalTest_PluralGender_Japanese\n-CLocalize::RunInternalTest_PluralGender_Russian\n-CLocalize::Test_FindPluralSafeImpl\n COL$\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<char const *,class LocalizeStringID_t,struct StringEqualFunctor,struct StringHashFunctor,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<char const *,class LocalizeStringID_t,struct StringEqualFunctor,struct StringHashFunctor,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<char const *,struct CLocalize::LocTokenInfo_t,struct FastCaselessStringEqualFunctor,struct FastCaselessStringHashFunctor,class LocalizeStringIndex_t>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<char const *,struct CLocalize::LocTokenInfo_t,struct FastCaselessStringEqualFunctor,struct FastCaselessStringHashFunctor,class LocalizeStringIndex_t>::HashBucket_t,int>::AddMultipleToTail\n@@ -256,14 +235,10 @@ CheckLocVarConstruct\n CheckLocVarResolve\n CheckParseLocVars\n CheckValidParseLocVar\n-Close\n-Compatibility context: %s\\n\n CompileAndConstructMFString\n CompiledMFString\n Czech\n Danish\n-DisallowPgTokens\n-DisallowTokenContexts\n Duplicate load of loc file '%s'\\n\n DuplicateFileLoadFail\n DuplicateTokensAssert\n@@ -283,46 +258,31 @@ Failed to read localization file %s\\n\n Finnish\n French\n Full paths not allowed in localization file specification '%s'\\n\n-Gemme\n Generic loc var missing a type in '%.*s'\\n\n Generic loc var reference missing a name in '%.*s'\\n\n Generic loc var reference modifiers '%s' ignored\\n\n-Genuine\n German\n Hungarian\n ILocalize::AddFile() failed to load file \"%s\".\\n\n Improper termination of loc variable reference\\n\n Indonesian\n Invalid loc variable reference pointer\\n\n Invalid loc variable type for '%.*s' (%c)\n-Invalid usage char in '%s'\\n\n Italian\n Japanese\n Korean\n LOCFAIL %s: '%s' combines :f with other flags\\n\n-LOCFAIL %s: '%s' gives multiple variants for :l\\n\n-LOCFAIL %s: '%s' gives multiple variants for :n\\n\n+LOCFAIL %s: '%s' has multiple parts\\n\n LOCFAIL %s: '%s' has variants but does not have any token name variant flags (:g, :n, :p, etc.)\\n\n-LOCFAIL %s: '%s' indicates %u %s but needs %u valid %s\\n\n-LOCFAIL %s: '%s' indicates 1 plural but needs %u valid plural variants\\n\n LOCFAIL %s: '%s' indicates a gender specifier but doesn't provide one\\n\n-LOCFAIL %s: '%s' indicates a plural specifier but doesn't provide one\\n\n-LOCFAIL %s: '%s' indicates gender but doesn't have valid gender flags\\n\n-LOCFAIL %s: '%s' indicates genders but doesn't have valid gender variants\\n\n-LOCFAIL %s: Too many variant values for '%s'\\n\n LOCFAIL %s: Value for '%s' does not have required gender\\n\n-LOCFAIL %s: Value for '%s' does not have required plural form\\n\n-LOCFAIL %s: Value for '%s' has a plural form but the token doesn't have :l\\n\n+LOCFAIL %s: Value for '%s' has a plural quantity but the token doesn't have :l\\n\n LOCFAIL %s: Value for '%s' has gendered variants but the token doesn't have :g or :n\\n\n-LOCFAIL %s: Value for '%s' has multiple variants with the same gender\\n\n-LOCFAIL %s: Value for '%s' must have all language-defined gender variants\\n\n LOCFAIL %s: Value for '%s' must have the same gender for each variant\\n\n LOCFAIL %s: Value for '%s' uses a gender not valid for the value language\\n\n-LOCFAIL %s: Value for '%s' uses a plural form not valid for the value language\\n\n LOCFAIL: Ignoring unsupported encoding in localization file '%s'\\n\n LOCFAIL: Tried to add a loc token with '#' starting the token name ('%s')\\n\n LOCFAIL: Tried to add empty loc token\\n\n-LOCFAIL: the explicit plural flag 'l' can't be specified with the plural set flag 'p' (token %s in file %s)\\n\n LOCFAIL: the explicit plural flag 'l' can't be specified without the gender flag 'n' (token %s in file %s)\\n\n LOCWARN %s: value of '%s' matches English, possible unlocalized token\\n\n LOC_Date_Today\n@@ -352,6 +312,7 @@ Loc variable reference doesn't start with a brace\\n\n Loc variable reference incomplete\\n\n Loc variable reference missing ':' after type\\n\n Loc variable reference too large (%u chars)\\n\n+LocTest_\n Localization System\n Localization stats for %s data:\\n\n Localization watching these dirs for changes:\\n\n@@ -364,10 +325,7 @@ Mex$\n Norwegian\n Not expecting to find a loc variable reference in '%s'\\n\n Not expecting to find any loc var refs in '%s'\\n\n-Original\n-Originale\n PERF WARNING: '%s' is in UTF-16 format, converting to UTF-8 will allow faster loading of it\\n\n-Plural context: %s\\n\n Polish\n Portuguese\n Romanian\n@@ -377,8 +335,6 @@ Spanish\n Swedish\n Tokens\n Traditional_Chinese\n-Treasure\n-Treasures\n Turkish\n Ukrainian\n Unable to find localization token '%s'\\n\n@@ -389,69 +345,15 @@ Unknown loc variable time modifier '%c'\\n\n Unlocalized token '%s'\\n\n Usage: %s <token>\\n\n V_strStartsWith( pFound, pExpected )\n-V_strcmp( pLocalize->FindLongestInstance( \"#Valve_TestPlurals:p\", nullptr ), \"singular\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestExplicitPlurals_Noun0\" ), \"none\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestExplicitPlurals_Noun1\" ), \"one\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestExplicitPlurals_Noun321\" ), \"many\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestGenders_Adjective1:g\" ), \"Genuine\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestGenders_Noun1\" ), \"Treasure\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestGenders_Noun2\" ), \"Gemme\" ) == 0\n-V_strcmp( pLocalize->FindSafe( \"#Valve_TestPlurals:p\" ), \"singular\" ) == 0\n-V_strcmp( pLocalize->FindUnsafe( \"#Valve_Close\" ), \"Close\" ) == 0\n-V_strcmp( pLocalize->FindUnsafe( \"#Valve_Close\" ), \"\\xD0\\x97\\xD0\\xB0\\xD0\\xBA\\xD1\\x80\\xD1\\x8B\\xD1\\x82\\xD1\\x8C\" ) == 0\n-V_strcmp( pLocalize->FindUnsafe( \"#Valve_Close\" ), \"\\xE9\\x96\\x89\\xE3\\x81\\x98\\xE3\\x82\\x8B\" ) == 0\n-V_strcmp( pLocalize->GetValueByInstanceIndex( nInstance ), \"Original\" ) == 0\n-V_strcmp( pLocalize->GetValueByInstanceIndex( nInstance ), \"Originale\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), \"JP0\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), \"RU0\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), \"singular\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ), \"RU1\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ), \"plural\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 2, LOC_GET_VARIANT_FOR_PLURAL ), \"RU2\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 3, LOC_GET_VARIANT_FOR_PLURAL ), \"RU3\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 4, LOC_GET_VARIANT_FOR_PLURAL ), \"RU4\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_FEMININE, LOC_GET_VARIANT_FOR_GENDER ), \"Originale\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE, LOC_GET_VARIANT_FOR_GENDER ), \"Original\" ) == 0\n-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_NONE, LOC_GET_VARIANT_FOR_GENDER ), \"Genuine\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#NotFound:p\", 1 ), \"#NotFound:p\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 0.1, 1 ), \"seconde\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 1.0, 1 ), \"seconden\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 1.0, 1 ), \"seconds\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 1.001, 3 ), \"seconde\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 1.0011, 4 ), \"seconden\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 1.5, 1 ), \"seconds\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 2.0, 1 ), \"seconds\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestDecimalPlurals:p\", 2.01, 2 ), \"seconden\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPluralGenders_Noun1:p\", 1 ), \"Tr\\xc3\\xa9sor\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPluralGenders_Noun1:p\", 1 ), \"Treasure\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPluralGenders_Noun1:p\", 2 ), \"Tr\\xc3\\xa9sors\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPluralGenders_Noun1:p\", 2 ), \"Treasures\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", -2 ), \"plural\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 1 ), \"JP0\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 1 ), \"RU0\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 1 ), \"singular\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 1.0, 0 ), \"RU0\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 1.0, 1 ), \"RU4\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 11 ), \"RU2\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 11000 ), \"RU3\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 2 ), \"plural\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPlurals:p\", 22 ), \"RU1\" ) == 0\n-V_strcmp( pLocalize->Test_FindPluralSafe( \"#Valve_TestPluralsEnglishOnly:p\", 11 ), \"localize\" ) == 0\n-Valve_Test\n-Valve_TestGendersEnglishOnly_A:g\n-Valve_TestGendersEnglishOnly_N:n\n-Valve_TestPluralsEnglishOnly:p\n Vietnamese\n WARNING: Duplicate string token '%s' found in %s (original in %s) - new value '%s', original value '%s'\\n\n-Z\\tV_modfd\n [!s:notavar]\n [!s:notpresent]\n [END]\n \\resource\\valve_\n \\t_V_StringAfterPrefixCaseSensitive\n \\{s:foo} {s:bar}\n \\{s:foo} {} {,:} {s:} {s:bar} extra\n-a\\tV_powd\n bg_BG\n brazilian\n bulgarian\n@@ -466,6 +368,7 @@ duplicate selector case\n dutch\n el_GR\n en_US\n+ends_with_000\n english]\n es-419\n es_419\n@@ -490,13 +393,15 @@ hungarian\n id_ID\n indonesian\n instance %d:\\n\n+invalid plural predicate after '='\n it_IT\n italian\n ja_JP\n japanese\n ko_KR\n korean\n koreana\n+l\\tV_powd\n latam\n localize.dll\n many\n@@ -511,13 +416,10 @@ missing required '}' for plural match\n missing required '}' for select\n missing required comparison value for select\n missing required gender category\n-missing required integer after '='\n+missing required integer or predicate after '='\n missing required selection type (ie., 'plural') after comma\n missing required substitution variable name\n money\n-nInstance != LOCALIZE_INVALID_INSTANCE_INDEX\n-nInstance == LOCALIZE_INVALID_INSTANCE_INDEX\n-nString != LOCALIZE_INVALID_STRING_INDEX\n nl_NL\n no vars\n no vars at all\n@@ -529,70 +431,9 @@ pAfter != nullptr && pAfter > pFound && pAfter[-1] == '}'\n pCompiled->IsValid()\n pExpected == nullptr\n pLocalize->FindLocVariableReferenceText( pString ) == pFound\n-pLocalize->FindUnsafe( \"#Valve_Close\" ) != nullptr\n-pLocalize->GetCurrentELanguage() == k_Lang_Dutch\n-pLocalize->GetCurrentELanguage() == k_Lang_English\n-pLocalize->GetCurrentELanguage() == k_Lang_French\n-pLocalize->GetCurrentELanguage() == k_Lang_Japanese\n-pLocalize->GetCurrentELanguage() == k_Lang_Russian\n-pLocalize->GetNumGenderVariants() == 0\n-pLocalize->GetNumGenderVariants() == 2\n-pLocalize->GetNumPluralGenderVariants() == 0\n-pLocalize->GetNumPluralGenderVariants() == 4\n-pLocalize->GetNumPluralVariants() == 1\n-pLocalize->GetNumPluralVariants() == 2\n-pLocalize->GetNumPluralVariants() == 5\n-pLocalize->GetPluralVariant( 0 ) == 0\n-pLocalize->GetPluralVariant( 0 ) == 1\n-pLocalize->GetPluralVariant( 0 ) == 3\n-pLocalize->GetPluralVariant( 0.0, 1 ) == 0\n-pLocalize->GetPluralVariant( 0.1, 1 ) == 0\n-pLocalize->GetPluralVariant( 0.11, 2 ) == 1\n-pLocalize->GetPluralVariant( 0.5, 1 ) == 0\n-pLocalize->GetPluralVariant( 0.5, 1 ) == 1\n-pLocalize->GetPluralVariant( 1.0, 1 ) == 0\n-pLocalize->GetPluralVariant( 1.0, 1 ) == 1\n-pLocalize->GetPluralVariant( 1.0, 1 ) == 4\n-pLocalize->GetPluralVariant( 1.001, 3 ) == 0\n-pLocalize->GetPluralVariant( 1.0011, 4 ) == 1\n-pLocalize->GetPluralVariant( 1.5, 1 ) == 0\n-pLocalize->GetPluralVariant( 1.5, 1 ) == 1\n-pLocalize->GetPluralVariant( 10 ) == 2\n-pLocalize->GetPluralVariant( 100 ) == 2\n-pLocalize->GetPluralVariant( 1000 ) == 3\n-pLocalize->GetPluralVariant( 10000 ) == 3\n-pLocalize->GetPluralVariant( 101 ) == 0\n-pLocalize->GetPluralVariant( 11 ) == 2\n-pLocalize->GetPluralVariant( 12 ) == 2\n-pLocalize->GetPluralVariant( 13 ) == 2\n-pLocalize->GetPluralVariant( 14 ) == 2\n-pLocalize->GetPluralVariant( 2 ) == 0\n-pLocalize->GetPluralVariant( 2 ) == 1\n-pLocalize->GetPluralVariant( 2.0, 1 ) == 1\n-pLocalize->GetPluralVariant( 2.01, 2 ) == 1\n-pLocalize->GetPluralVariant( 2.5, 1 ) == 1\n-pLocalize->GetPluralVariant( 21 ) == 0\n-pLocalize->GetPluralVariant( 22 ) == 0\n-pLocalize->GetPluralVariant( 22 ) == 1\n-pLocalize->GetPluralVariant( 23 ) == 1\n-pLocalize->GetPluralVariant( 24 ) == 1\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 0\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 1\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 2\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 3\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 4\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == LOC_VALUE_ALL_VARIANTS\n-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == LOC_VALUE_NO_VARIANTS\n-pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr\n-pLocalize->GetVariantValueByIndex( nString, 2, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr\n-pLocalize->GetVariantValueByIndex( nString, 5, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr\n-pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE, LOC_GET_VARIANT_FOR_GENDER ) == nullptr\n-pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE_INANIMATE, LOC_GET_VARIANT_FOR_GENDER ) == nullptr\n parse error: %s at position %lld (context: \"%s>>>%s<<<%s\")\n pl_PL\n plural\n-plurals\n-plurals*genders\n polish\n portuguese\n pt_BR\n@@ -605,12 +446,8 @@ ro_RO\n romanian\n ru_RU\n russian\n-seconde\n-seconden\n-seconds\n select\n-singular\n-sors\n+selectordinal\n spanish\n string val\n sv_SE"
        },
        {
          "filename": "game/bin/win64/materialsystem2_strings.txt",
          "status": "modified",
          "additions": 104,
          "deletions": 145,
          "changes": 249,
          "patch": "@@ -33,6 +33,7 @@\n  mat_print_material_info <mod\\path\\file.vmat>\\n\n  mat_print_shader_info <file.vfx> [options]\\n\n  using substring \"%s\"\n+#\\tV_exp2f\n #line\n %10s\n %15.15s \n@@ -55,7 +56,7 @@\n %s_intermediate_%d.vtex\n %vsB,\n (On the line reading %s):\\n\n-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n *** Error adding variable to array!\\n\n *** Error masking unused parts! Equal sign not found after token \"%s\"! (line %d)\\n\n *** Error! Multiple dynamic combos are putting the same constant (%s) in different descriptor sets. This won't work correctly.\\n\n@@ -64,12 +65,12 @@\n *** Error! Multiple dynamic combos are putting the same texure (%s) in different descriptor set slots. This won't work correctly.\\n\n *** Problem remapping texture reference!\\n\n *** UNKNOWN ***\n-*** VfxInit(223): Don't call VfxInit() more than once!\n-*** VfxInit(231): g_pFullFileSystem must be set up before calling VfxInit!\\n\n-*** VfxPopulateSourceCache(1137): Error opening file \"%s\"!\\n\\n\n-*** VfxPopulateSourceCache(1145): Error opening file \"%s\"!\\n\\n\n-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file \"%s\" missing!\\n\\n\n-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for \"%s\"!\\n\\n\n+*** VfxInit(183): Don't call VfxInit() more than once!\n+*** VfxInit(191): g_pFullFileSystem must be set up before calling VfxInit!\\n\n+*** VfxPopulateSourceCache(1097): Error opening file \"%s\"!\\n\\n\n+*** VfxPopulateSourceCache(1105): Error opening file \"%s\"!\\n\\n\n+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file \"%s\" missing!\\n\\n\n+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for \"%s\"!\\n\\n\n , GetFont used\n , LoadFont used\n --------------------------------------------------\n@@ -79,10 +80,10 @@\n -show_used_combos\n .?AUAsyncProcessResult@CBaseIntrospectedToKV3TypeManager@@\n .?AUAsyncStaticComboResult_t@CMaterial2@@\n-.?AV<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@\n+.?AV<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@\n .?AV<lambda_1>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@\n .?AV<lambda_2>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@\n-.?AV<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@\n+.?AV<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@\n .?AV?$CBaseAppSystem@VIFontManager@@@@\n .?AV?$CBaseAppSystem@VIMaterialSystem2@@@@\n .?AV?$CBaseAppSystem@VIMaterialSystem2Utils@@@@\n@@ -109,14 +110,13 @@\n .?AV?$CTypesafeIntrospectedToKV3TypeManager@$0HEHDGPHAHG@UPostProcessingResource_t@@@@\n .?AV?$IOpCodeHandler@H@@\n .?AV?$IOpEvaluator@H@@\n-.?AV?$ITSHashConstructor@PEAVCVfx@@@@\n .?AV?$_Func_base@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n .?AV?$_Func_base@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@PEAVIAsyncResourceDataRequest@@@std@@\n .?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@PEAVIAsyncResourceDataRequest@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n .?AV?$_Ref_count_obj2@UDecompressedComboData_t@CVfxStaticComboData@@@std@@\n .?AVCAllocatorUtils@?1??AllocateAndLoad@?$CTypesafeIntrospectedToKV3TypeManager@$0HEGBGNHG@UMaterialResourceData_t@@@@UEAAPEAXAEAVCKV3TransferLoadContext@@PEBUResourceBindingBase_t@@PEAVIRD_RegisterResourceDataUtils@@@Z@\n .?AVCAllocatorUtils@?1??AllocateAndLoad@?$CTypesafeIntrospectedToKV3TypeManager@$0HEHDGPHAHG@UPostProcessingResource_t@@@@UEAAPEAXAEAVCKV3TransferLoadContext@@PEBUResourceBindingBase_t@@PEAVIRD_RegisterResourceDataUtils@@@Z@\n@@ -154,7 +154,6 @@\n .?AVCTextLayout@@\n .?AVCTextureDictionary@@\n .?AVCUtlStackMachineBuilder@@\n-.?AVCVfxConstructor@@\n .?AVCVfxShaderBuffer@@\n .?AVIAsyncProcessedDataResult@@\n .?AVIFontManager@@\n@@ -174,7 +173,7 @@\n .?AVIRuntimeShaderCreateCallbacks@@\n .?AVITextLayout@@\n .?AVITextureDictionary@@\n-.eB0;\n+.eBVfx\n .ini\n .vcs\n .vfont\n@@ -187,33 +186,26 @@\n //---------------------------------------------------------------------------//\\n\n //-----------------------------------\\n\n 0123456789)\"\n-2\\rE2t\n-2\\vpD\n-2\\vptt\\r\n 333?+\n 33s?+\n-5\\fu54l\n 7\\rE7h\n <<unknown_mod>>\\\n <Unknown font>\n <anon>/\n <anon>:\n+<non-RTTI type>\n =\\t ();,\\n\\r<>\n A%mB,\n-ANDROID_VULKAN\n-ANDROID_VULKAN_4_0\n-ANDROID_VULKAN_4_1\n-ANDROID_VULKAN_5_0\n A\\fEA4\n AddFontMemResourceEx\n-AddRenderStateValueLoadToCommandBuffer(1761): Invalid data type for render state variable %s in material \"%s\"!\\n\n-AddRenderStateValueLoadToCommandBuffer(1802): Invalid data type for render state variable %s in material \"%s\"!\\n\n-AddRenderStateValueLoadToCommandBuffer(1888): Invalid data type for render state variable %s in material \"%s\"!\\n\n-AddRenderStateValueLoadToCommandBuffer(1896): Invalid variable source type for render state variable %s in material \"%s\"!\\n\n-AddRenderStateVariableToCommandBuffer(1961): Unsupported render state type in material \"%s\"!\\n\n-AddRenderStateVariableToCommandBuffer(2109): Unsupported render state in material \"%s\"!\\n\n+AddRenderStateValueLoadToCommandBuffer(1739): Invalid data type for render state variable %s in material \"%s\"!\\n\n+AddRenderStateValueLoadToCommandBuffer(1780): Invalid data type for render state variable %s in material \"%s\"!\\n\n+AddRenderStateValueLoadToCommandBuffer(1866): Invalid data type for render state variable %s in material \"%s\"!\\n\n+AddRenderStateValueLoadToCommandBuffer(1874): Invalid variable source type for render state variable %s in material \"%s\"!\\n\n+AddRenderStateVariableToCommandBuffer(1939): Unsupported render state type in material \"%s\"!\\n\n+AddRenderStateVariableToCommandBuffer(2087): Unsupported render state in material \"%s\"!\\n\n+AddSamplerStateVariableToCommandBuffer(2160): Unsupported sampler state type for \"%s\" in material \"%s\"!\\n\n AddSamplerStateVariableToCommandBuffer(2182): Unsupported sampler state type for \"%s\" in material \"%s\"!\\n\n-AddSamplerStateVariableToCommandBuffer(2204): Unsupported sampler state type for \"%s\" in material \"%s\"!\\n\n All Bad! Talk to Brian and Alex. g_pRenderHardwareConfig is NULL which means we won't load this material correctly: %s\\n\n All static combo permutations currently loaded:\\n\n All static combos set to zero\n@@ -222,9 +214,6 @@ AllocateAndLoad failed for '%s'\\n\n Allow\n Allow%d\n Allow%d( \n-Android SM 4.0 (VULKAN)\n-Android SM 4.1 (VULKAN)\n-Android SM 5.0 (VULKAN)\n Arial\n Attribute-based texture %s not bound for material \"%s\"! Missing render attribute \"%s\".  Context %s\\n\n Attribute-based texture %s not bound for material \"%s\"! Missing render attribute \"%s\"\\n\n@@ -252,22 +241,22 @@ CFontTextureCache::IsCharCached\n CMatSystemTexture::SetMaterial\n CMatSystemTexture::SetSubTextureRGBA(256): \n CMaterial2::ComputeMaterialBatchableFlags\n-CMaterial2::GetMode(644): Material \"%s\" is requesting a bad mode \"%s\"!\\n\n+CMaterial2::GetMode(643): Material \"%s\" is requesting a bad mode \"%s\"!\\n\n CMaterial2::GetVertexShaderInputSignature(767): Error! Material \"%s\" doesn't have any valid layers to get the CVsInputSignatureVector from!\\n\n CMaterial2::GetVertexShaderInputSignature(799): Error! Material \"%s\" doesn't have a CVsInputSignatureVector!\\n\n CMaterial2::GetVertexShaderInputSignature(817): Error! Material \"%s\" has invalid signature index %d!\\n\n-CMaterial2::LoadShadersAndSetupModes(1616): Error creating shader %s for material %s!\\n\n-CMaterialLayer::ComputeWorkItemsToSetupStaticCombosForMode(3154): Failed call to FindOrLoadStaticComboData()!\\n\n-CMaterialSystem2::DynamicShaderCompile_UnloadAllMaterials(1084): ERROR!!! Shaders not freed before shader reload! (See spew above)\\n\\n\n+CMaterial2::LoadShadersAndSetupModes(1598): Error creating shader %s for material %s!\\n\n+CMaterialMode::ComputeWorkItemsToSetupStaticCombosForMode(3037): Failed call to FindOrLoadStaticComboData()!\\n\n+CMaterialMode::FindOrLoadVfx(2410): DxSupportLevel %d not supported!\\n\n+CMaterialSystem2::DynamicShaderCompile_UnloadAllMaterials(1067): ERROR!!! Shaders not freed before shader reload! (See spew above)\\n\\n\n CMaterialSystem2::FrameUpdate\n-CMaterialSystem2::GetErrorMaterial(529): GetErrorMaterial() called when m_pMaterialTypeManager == NULL!\\n\n-CMaterialSystem2::Init(156): ERROR! Empty shader mode string found! Use \"Default\" instead!\\n\n-CMaterialSystem2::Init(172): ERROR! Shader mode \"%s\" has unsupported type \"%s\" specified gameinfo.gi!\\n\n-CMaterialSystem2::Shutdown(510): ERROR!!! Materials not released by other systems on shutdown! (See spew above)\\n\n-CMaterialSystem2::Shutdown(515): ERROR!!! Shaders not freed on shutdown, likely due to unreleased materials! (See spew above)\\n\n+CMaterialSystem2::GetErrorMaterial(505): GetErrorMaterial() called when m_pMaterialTypeManager == NULL!\\n\n+CMaterialSystem2::Init(153): ERROR! Empty shader mode string found! Use \"Default\" instead!\\n\n+CMaterialSystem2::Init(169): ERROR! Shader mode \"%s\" has unsupported type \"%s\" specified gameinfo.gi!\\n\n+CMaterialSystem2::SetRenderStateForMode\n+CMaterialSystem2::Shutdown(486): ERROR!!! Materials not released by other systems on shutdown! (See spew above)\\n\n+CMaterialSystem2::Shutdown(491): ERROR!!! Shaders not freed on shutdown, likely due to unreleased materials! (See spew above)\\n\n CMaterialSystem2Utils\n-CMaterialSystem2Utils::AllocateGPUCompressionTextures() - not supported by render device, fallback to CPU compression.\\n\n-CMaterialSystem2Utils::CompressTextureGPU() - not supported by render device, fallback to CPU compression.\\n\n CMaterialSystem2Utils::GenerateMipMaps: Can't get resources for compute shader, falling back to normal mipgen.\\n\n CMaterialSystem2Utils::RenderConvexGeometry\n CMaterialSystem2Utils::RenderQuads\n@@ -305,22 +294,14 @@ CUtlMemoryBlockAllocator<class CVfxStaticComboData,class CMemAllocAllocator>::Ad\n CUtlMemoryBlockAllocator<struct CFontTextureCache::Page_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CFontTextureCache::CacheEntry_t,unsigned short>,class CMemAllocAllocator>::AddPage\n CUtlNTree overflow!\\n\n-CUtlRBTree<struct CFontTextureCache::CacheEntry_t,class CLessFunc<&private: static bool __cdecl CFontTextureCache::CacheEntryLessFunc(struct CFontTextureCache::CacheEntry_t const &,struct CFontTextureCache::CacheEntry_t const &)>,unsigned short,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CFontTextureCache::CacheEntry_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CPlatformFont::abc_cache_t,class CLessFunc<&private: static bool __cdecl CPlatformFont::ExtendedABCWidthsCacheLessFunc(struct CPlatformFont::abc_cache_t const &,struct CPlatformFont::abc_cache_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CPlatformFont::abc_cache_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::Node_t,class CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::Node_t,class CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n-CVfx::CreateFromVcs(7834): Error opening file %s\\n\n-CVfx::CreateFromVcs(7867): VCS3 %s Load Failure: %s\\n\n-CVfx::CreateFromVcs(7880): VCS3 %s Load Failure: %s\\n\n-CVfx::CreateFromVcs(7909): VCS %s Unserialize hit EOF\\n\n+CVfx::CreateFromVcs(7750): Error opening file %s\\n\n+CVfx::CreateFromVcs(7783): VCS3 %s Load Failure: %s\\n\n+CVfx::CreateFromVcs(7796): VCS3 %s Load Failure: %s\\n\n+CVfx::CreateFromVcs(7825): VCS %s Unserialize hit EOF\\n\n CVfx::ParseResourceFileHeader\n-CVfxConstructor::Construct(2435): DxSupportLevel %d not supported!\\n\n CVfxProgramData::CalcStaticComboIdFromValues\n-CVfxProgramData::FindOrCreateStaticComboDataInCache(4448): Error! Ref count !=0 for static combo data cache entry!\\n\n+CVfxProgramData::FindOrCreateStaticComboDataInCache(4364): Error! Ref count !=0 for static combo data cache entry!\\n\n CVfxStaticComboData::Decompress\n Cannot allocate abstract class\n ChildOf\n@@ -331,7 +312,7 @@ Combo\n Command Format: mat_set_shader_quality <value> (valid values are 0 or 1)\\n\n Compile Target Expression\n Compile Targets\n-CompileComboAndGetVariables_DynamicShaderCompile(), C:\\buildworker\\csgo_rel_win64\\build\\src\\materialsystem2\\material2.cpp:2786\n+CompileComboAndGetVariables_DynamicShaderCompile(), C:\\buildworker\\csgo_rel_win64\\build\\src\\materialsystem2\\material2.cpp:2662\n CompileShadersForFeatureCombo\n CompileTargets\n Compiled \n@@ -346,7 +327,6 @@ Courier New\n Custom font '%s' is already registered, ignoring new registration '%s' range %d - %d\\n\n Custom font file '%s' should be assocated with a font name, will be ignored on Linux and Mac\\n\n DXBC\n-D_DISPATCH_MODE\n D_FADE_COLOR\n DefaultFontAliasGroup\n DefaultTextureBuffer\n@@ -383,7 +363,7 @@ FEATURES\n FIXME!\n Failed to Allocate a Dynamic Index Buffer of size %u\\n\n Failed to Allocate a Dynamic Vertex Buffer of size %u\\n\n-Failed to allocate an instance of a class\n+Failed to allocate an instance of a class of type '%s'\n Failed to call CBaseIntrospectedToKV3TypeManager::Init\n Failed to load debug font %s\n Failed to load font file '%s'\\n\n@@ -397,39 +377,32 @@ Features\n FrameUpdate\n G(knN\n GLSL.std.450\n-G\\tV_iswcntrl\n Ga=UU\n Geometry Shader\n GetCharABCWidthsW\n-GetDefaultValueFromVariableDescription(410): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n-GetDefaultValueFromVariableDescription(415): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n+GetDefaultValueFromVariableDescription(388): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n+GetDefaultValueFromVariableDescription(393): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n GetGlyphOutlineA\n-GetRenderStateValue(1047): Invalid data type for render state variable %s in material \"%s\"!\\n\n-GetRenderStateValue(1100): Invalid data type for render state variable %s in material \"%s\"!\\n\n-GetRenderStateValue(1107): Error evaluating expression for render state variable %s in material \"%s\"!\\n\n-GetRenderStateValue(1113): Invalid variable source type for render state variable %s in material \"%s\"!\\n\n-GetValueFromDynamicMaterialParam(552): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n-GetValueFromDynamicMaterialParam(557): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n-GetValueFromMaterialParam(470): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n-GetValueFromMaterialParam(475): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n-GetValueFromMaterialParamAsVector4D(1461): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n-GetValueFromMaterialParamAsVector4D(1466): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n+GetRenderStateValue(1025): Invalid data type for render state variable %s in material \"%s\"!\\n\n+GetRenderStateValue(1078): Invalid data type for render state variable %s in material \"%s\"!\\n\n+GetRenderStateValue(1085): Error evaluating expression for render state variable %s in material \"%s\"!\\n\n+GetRenderStateValue(1091): Invalid variable source type for render state variable %s in material \"%s\"!\\n\n+GetValueFromDynamicMaterialParam(530): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n+GetValueFromDynamicMaterialParam(535): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n+GetValueFromMaterialParam(448): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n+GetValueFromMaterialParam(453): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n+GetValueFromMaterialParamAsVector4D(1439): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material \"%s\"\\n\n+GetValueFromMaterialParamAsVector4D(1444): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material \"%s\"!\\n\n Glyph Miss: FontHandle_t:0x%8.8llx (%s), %s\\n\n GraphicsMisc\n HEADER\n HEX_DIGIT\n IKV3TransferInterface_ResourceSave\n-IOS_VULKAN\n-IOS_VULKAN_4_0\n-IOS_VULKAN_4_1\n-IOS_VULKAN_5_0\n ISGN\n IS_DIRECTX\n-IS_MOBILE\n IS_PC\n IS_SM_\n IS_VULKAN\n-ImageSize\n Incorrect vpk path delimiter for shader %s\\n\n InvTextureDim\n InvViewportSize\n@@ -443,14 +416,15 @@ MainPs\n MainVs\n Malgun Gothic\n Marlett\n-MatPrintShaderInfo(3533): Error reading index!\\n\n-MatPrintShaders(3249): pVfx == NULL!\\n\n-MatPrintShaders(3298): pVfx == NULL!\\n\n+MatPrintShaderInfo(3504): Error reading index!\\n\n+MatPrintShaders(3221): pVfx == NULL!\\n\n+MatPrintShaders(3270): pVfx == NULL!\\n\n MatUtilsRenderMesh\n MatUtilsRenderOutlinedRect\n MatUtilsRenderPrimitives\n Material %s (shader %s) nonbatchable in mode \"%s\" because of dynamic CB for %s. These constants are responsible:\\n\n Material %s is required to be batchable in mode \"%s\". See -batcherrors file.\\n\n+Material (%s) using shader(%s) is requesting a mesh shader but does not have one!\n Material CPU memory: %.2f KB\\n\n Material Creation\n Material Shader Setup\n@@ -489,24 +463,9 @@ NoZPrepass\n Not safe to 'new' this class due to alignment requirements\n OCTAL_ESC\n OSGN\n-OutputBC7Texture\n-OutputBC7Texture_1x1\n-OutputBC7Texture_2x2\n-OutputDXT5Texture\n-OutputDXT5Texture_1x1\n-OutputDXT5Texture_2x2\n-OutputDXT5Texture_4x4\n-PC SM 4.0 (D3D10)\n-PC SM 4.0 (VULKAN)\n-PC SM 4.1 (D3D10.1)\n-PC SM 4.1 (VULKAN)\n PC SM 5.0 (D3D11)\n PC SM 5.0 (VULKAN)\n PC SM 6.0 (VULKAN)\n-PC_SM_4_0\n-PC_SM_4_0_VULKAN\n-PC_SM_4_1\n-PC_SM_4_1_VULKAN\n PC_SM_5_0\n PC_SM_5_0_VULKAN\n PC_SM_6_0_VULKAN\n@@ -523,12 +482,14 @@ Pixel Shader\n Pixel Shader Render State\n Polygon too large (%d points / max %d, %d indices / max %d), ignoring\n PostProcessing\n+PostProcessingLocalExposureParameters_t\n PostProcessingSystemManifest\n Program MD5 is out of date with features! %s\\n\n Programmer Error! Static combo not loaded!\\n\n RD11<\n RDEFH\n RESOURCE_TYPE_MATERIAL\n+R\\tV_iswcntrl\n RayTrace\n Raytracing Shader\n Remap01ScaleOffset\n@@ -550,9 +511,7 @@ SUPPORTS_GS\n SV_ClipDistance\n SV_Position\n SV_Target\n-S_BINDLESS_RUNTIME\n S_EXECUTION_REORDERING\n-S_MOBILE\n S_MOLTEN_VK\n S_REVERSE_DEPTH_BUFFER\n S_SHADER_QUALITY\n@@ -561,15 +520,15 @@ S_SUPPORTS_CLIP_DISTANCE\n S_SUPPORTS_DX_11_1\n S_TOOLS_ENABLED\n S_VR\n-SetRenderStateValueFromVariable(1172): Unsupported render state type in material \"%s\"!\\n\n-SetSamplerStateValueFromVariable(1190): Sampler index %d out of bounds for \"%s\" in material \"%s\"!\\n\n-SetSamplerStateValueFromVariable(1263): Unsupported sampler state type for \"%s\" in material \"%s\"!\\n\n+SetRenderStateValueFromVariable(1150): Unsupported render state type in material \"%s\"!\\n\n+SetSamplerStateValueFromVariable(1168): Sampler index %d out of bounds for \"%s\" in material \"%s\"!\\n\n+SetSamplerStateValueFromVariable(1241): Unsupported sampler state type for \"%s\" in material \"%s\"!\\n\n SetSubTextureRGBA: Invalid texture id %i\\n\n SetTextAlign\n SetTextureRGBA: Invalid texture id %i\\n\n-SetVariable(1346): Could not bind constant buffer \"%s\" because the constant buffer handle was invalid in material \"%s\"!\\n\n-SetVariable(1363): Error setting constant for REGISTER_FLOAT4 for \"%s\" in material \"%s\"! Talk to a programmer!\\n\n-SetVariableValue(1002): Unknown variable type for %s in material \"%s\"!\\n\n+SetVariable(1324): Could not bind constant buffer \"%s\" because the constant buffer handle was invalid in material \"%s\"!\\n\n+SetVariable(1341): Error setting constant for REGISTER_FLOAT4 for \"%s\" in material \"%s\"! Talk to a programmer!\\n\n+SetVariableValue(980): Unknown variable type for %s in material \"%s\"!\\n\n Shader %s attribute \"%s\" has inconsistent value or type across multiple shaders of a feature combo! [\n Shader %s doesn't support compile target %s\\n\n Shader Quality set to %d\\n\n@@ -581,18 +540,14 @@ ShaderIDColor\n ShaderIDColors\n ShadingComplexity\n Spawning %d compile jobs\\n\n-SrcTex_1x1\n-SrcTex_2x2\n SrgbGammaToLinear\n SrgbLinearToGamma\n-Static combo loading spun for %.5fms\\n\n Static combos:\\n\n StaticCombo\n StaticComboRule\n SupportsMappingDimensions\n TANGENT\n TEXCOORD\n-T\\tV_log2f\n Texture %s doesn't exist in %s!\\n\n Texture dictionary loading texture \"%s\" directly\\n\n TextureAverageColor\n@@ -676,14 +631,14 @@ WARNING: Invalid resource version (%d): %s\\n\n \\n*** A feature alias in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A feature in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A static combo in %s doesn't start with \"S_\"! Aborting shader compile!\\n\\n\n-\\n*** CMaterial2::LoadShadersAndSetupModes(1548): Error! Trying to load material \"%s\" without any params!\\n\n-\\n*** CVfx::ParseBoolFromFile(6414): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list\"%s\"!\\n\\n\n-\\n*** CVfx::ParseModesFromFile(5909): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseVersionFromFile(6460): Error opening file \"%s\"!\\n\\n\n+\\n*** CMaterial2::LoadShadersAndSetupModes(1536): Error! Trying to load material \"%s\" without any params!\\n\n+\\n*** CVfx::ParseBoolFromFile(6330): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list\"%s\"!\\n\\n\n+\\n*** CVfx::ParseModesFromFile(5825): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseVersionFromFile(6376): Error opening file \"%s\"!\\n\\n\n \\n*** Combo \"%s\" in %s doesn't match a known combo source!\\n\\n\n \\n*** Combo \"%s\" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\\n\\n\n \\n*** Combo \"%s\" in %s has arg %s that doesn't match an existing feature!\\n\\n\n@@ -735,21 +690,21 @@ WARNING: Invalid resource version (%d): %s\\n\n \\n*** Unable to parse Version in HEADER section of %s!\\n\\n\n \\n*** Unknown rule \"%s\" in %s!\\n\\n\n \\n*** Unknown text found in FEATURES section in %s: \"%s\"\\n\\n\n-\\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file \"%s\"!\\n\\n\n-\\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file \"%s\"!\\n\\n\n \\n//-----------------------------------\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1543): Error! Material \"%s\" is already loaded!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1577): Cannot find shader entry in material \"%s\"! Using error.vfx!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1620): Error creating shader %s and cannot load error.vfx instead!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1659): Error creating fallback shader %s for %s for material %s! A fallback shader cannot fallback to a different shader!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1671): Error creating fallback shader %s for %s for material %s!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1675): Error creating fallback shader %s for %s and cannot load error.vfx instead!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1702): Error creating shader %s for material %s!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1707): Error creating shader %s and cannot load error.vfx instead!\\n\n-\\nCMaterial2::LoadShadersAndSetupModes(1717): Error creating static combos for shader %s and error.vfx instead!\\n\n-\\nCMaterialLayer::CreateCommandBuffer(4446): Find a graphics programmer! Trying to bind a \"%s\" shader that doesn't exist! for %s\\n\n-\\nCMaterialMode::ComputeRenderablePassesForContextInternal(3569): All bad! The error material failed in dynamic shader compile!\\n\n-\\nCompileComboAndGetVariables_DynamicShaderCompile(2847): Dynamic shader compile failed for %s in material \"%s\"!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1531): Error! Material \"%s\" is already loaded!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1562): Cannot find shader entry in material \"%s\"! Using error.vfx!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1602): Error creating shader %s and cannot load error.vfx instead!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1641): Error creating fallback shader %s for %s for material %s! A fallback shader cannot fallback to a different shader!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1653): Error creating fallback shader %s for %s for material %s!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1657): Error creating fallback shader %s for %s and cannot load error.vfx instead!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1684): Error creating shader %s for material %s!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1689): Error creating shader %s and cannot load error.vfx instead!\\n\n+\\nCMaterial2::LoadShadersAndSetupModes(1699): Error creating static combos for shader %s and error.vfx instead!\\n\n+\\nCMaterialMode::ComputeRenderablePassesForContextInternal(3452): All bad! The error material failed in dynamic shader compile!\\n\n+\\nCMaterialMode::CreateCommandBuffer(4331): Find a graphics programmer! Trying to bind a \"%s\" shader that doesn't exist! for %s\\n\n+\\nCompileComboAndGetVariables_DynamicShaderCompile(2723): Dynamic shader compile failed for %s in material \"%s\"!\\n\n \\nInitDynamicShaderCompileDLL(119): ERROR! Can't load vfx_dx dll, dynamic shader compile unavailable!\\n\n \\nMS,\\nVS_MS_RTX\n \\nPS_RENDER_STATE\n@@ -761,16 +716,23 @@ WARNING: Invalid resource version (%d): %s\\n\n \\n\\t%02i%% (%i/%i)\n \\n\\t\\tDynamic:\n \\src\\shaders\\\n-\\tV_ZSTD_getFrameContentSize\n-\\tV_exp2f\n+\\tV_ZSTD_createDCtx\n+\\tV_ZSTD_createDDict_byReference\n+\\tV_ZSTD_decompress\n+\\tV_ZSTD_decompress_usingDDict\n+\\tV_ZSTD_freeDCtx\n+\\tV_ZSTD_getDictID_fromDDict\n+\\tV_ZSTD_getDictID_fromFrame\n \\tV_strspn\n \\tV_strtoui64\n \\tV_towupper32\n \\t\\tStatic:\n+\\t\\tV_ZSTD_getFrameContentSize\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_strcspn\n ^^^ Attribute-based texture warning is now disabled after outputting 50 warnings.\\n\n ^^^ Constant buffer warning is now disabled after outputting 50 warnings.\\n\n+_\\tV_log2f\n __Attribute__\n __Expression__\n __FROM_ATTRIBUTE_OR_FEATURE__\n@@ -789,7 +751,6 @@ _copy%u\n _feature\n _psrs\n _rtx\n-a\\tV_powd\n appendstructuredbuffer\n blendStateDesc\n bool2\n@@ -939,17 +900,13 @@ g_vWrinkleScaleOffset\n g_vXenAnimation\n game_controls\n gamelayer\n-gs_4_0\n-gs_4_1\n gs_5_0\n gs_6_0\n iEJA+\n-iOS SM 4.0 (VULKAN)\n-iOS SM 4.1 (VULKAN)\n-iOS SM 5.0 (VULKAN)\n int2\n int3\n int4\n+l\\tV_powd\n lerp\n lib_6_4\n log2\n@@ -962,6 +919,7 @@ m_attributes\n m_bAllowLayerOverride\n m_bDevShader\n m_bGlobalsBDA\n+m_bHasLocalExposureParams\n m_bHasShaderProgram\n m_bIsLayerConstant\n m_bStaticCB\n@@ -977,6 +935,13 @@ m_dynamicComboRuleArray\n m_dynamicComboVars\n m_dynamicComboVarsRef\n m_expr\n+m_fBoostLocalContrast\n+m_fHighlightOffsetEV\n+m_fShadowOffsetEV\n+m_fSigma\n+m_fWaterDensity\n+m_fWaterDepthBlurRadius\n+m_fWaterScale\n m_flDefault\n m_flUiStep\n m_hash\n@@ -989,6 +954,7 @@ m_inputProcessingCommand\n m_intDefault\n m_intMax\n m_intMin\n+m_localExposureParams\n m_mipProcessingCommand\n m_modeArray\n m_nByteCodeDataIdx\n@@ -1081,8 +1047,6 @@ nBatchIndices <= 16384\n nBatchIndices <= nMaxIndexCountPerPass\n normalize_safe\n procedural\n-ps_4_0\n-ps_4_1\n ps_5_0\n ps_6_0\n psrs\n@@ -1116,8 +1080,6 @@ schemasystem\n setting.shaderquality\n shader\n shaders\\vfx\n-shaders_android_vulkan.vpk\n-shaders_ios_vulkan.vpk\n shaders_pc.vpk\n shaders_vulkan.vpk\n sign\n@@ -1139,9 +1101,6 @@ v$G2\n vfx_dx11\n vfx_vulkan\n vfxc\n-view.bIsToolView\n-vs_4_0\n-vs_4_1\n vs_5_0\n vs_6_0\n win98japanese"
        },
        {
          "filename": "game/bin/win64/meshsystem_strings.txt",
          "status": "modified",
          "additions": 46,
          "deletions": 12,
          "changes": 58,
          "patch": "@@ -106,17 +106,20 @@\n .?AVIMeshSystem@@\n .?AVIMeshUtils@@\n .?AVIPoseAccessor@@\n+.?AVIRD_AsyncProcessDataUtils@@\n .?AVIRD_RegisterResourceDataUtils@@\n+.?AVIRD_ResourceExtrefUtils@@\n .?AVIResourceTypeManager@@\n .?AVISceneObjectDesc@@\n .?AVISequence@@\n .?AVIShaderReloadListener@@\n .?AVIVPhysicsLegacyKeyHandler@@\n .vmdl\n-2\\vpd\n-2\\vpde\n+2\\vpT\n 2_BONE_IK\n 8a\\v6;\n+;1#INF\n+<non-RTTI type>\n <pair_a> \n <pair_b> \n =3vmdlkeys4\n@@ -196,11 +199,12 @@ CModelAttachmentName\n CModelBodyGroupName\n CModelBoneName\n CModelMaterialGroupName\n-CModelMeshBufferData_t\n CModelTypeManager::FinalizeResource\n-CModelTypeManager::GetErrorResource(117): GetErrorModel() called before error model exists!\\n\n+CModelTypeManager::GetErrorResource(118): GetErrorModel() called before error model exists!\\n\n CParentAttachmentName\n-CRenderMesh::CreateBufferResources(1023): \n+CRenderMesh::CreateBufferResources(1199): \n+CRenderMeshSlotType_t\n+CSceneObjectData::CreateMeshletResources(985): \n CStrongHandle\n CStrongHandleCopyable\n CTransform\n@@ -225,18 +229,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CRenderBufferBinding,2,int,class CMemAllocAllocator>,struct CRenderBufferBinding,int>::AddMultipleToTail\n CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<struct CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n Cables\n Cannot allocate abstract class\n Cannot deallocate abstract class\n Class does not allow allocation from its schema binding\n Class does not allow deallocation from its schema binding\n Control block error for '%s'\\n\n+Cylinder - Centered (SLOW PERF)\n+Cylinder - Ground (SLOW PERF)\n D16_UNORM\n D24_UNORM_S8_UINT\n D32_FLOAT\n@@ -248,10 +254,12 @@ Data_Branch2yz\n DisableLODBlending\n DistanceFieldList_t\n DrawIndexedTriangles(145): \n+DualHull\n+EnsureCapacity\n Expected an array with two elements when loading a std::pair.\n FORCE_UINT\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to call CBaseIntrospectedToKV3TypeManager::Init\n Failed to load distance field KV3 data.\\n\n FoliageAnimation\n@@ -275,6 +283,7 @@ LoadModelSyncNoExtrefs - Model is incompatible version\\n\n MATERIAL_ATTRIBUTE:\n MAlternateSemanticName\n MAtomicTransfersAsPlainString\n+MESH_BUFFER_USAGE_VERTEX_EMISSIVE\n MFgdHelper\n MIsStringAndTokenType\n MKV3TransferName\n@@ -285,6 +294,7 @@ MPropertySuppressField\n Mesh needs recompiling: '%s' (invalid version: %d)\\nBrowse to the corresponding model in asset browser, right click and select Full Recompile.\n MeshSystem\n MeshSystem/UseIndexBufferPool\n+MeshSystem/UseVertexBufferPool\n Missing buffers for mesh (%s: %d)\\n\n Missing data block for mesh (%s: %d)\\n\n Missing vbib block for mesh (%s: %d)\\n\n@@ -311,7 +321,6 @@ OverlayProjectionDirection\n PARENT\n POSE_SPACE_BONE\n POSE_SPACE_MORPH\n-PackedBlobNormal\n ParentAttachmentName()\n Particles\n PerVertexLighting\n@@ -378,10 +387,12 @@ R8_SNORM\n R8_TYPELESS\n R8_UNORM\n R9G9B9E5_SHAREDEXP\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RESOURCE_TYPE_MODEL\n RESOURCE_TYPE_MORPHSET_INTERNAL\n RESOURCE_TYPE_RENDERMESH_INTERNAL\n ROTATION\n+R\\fpL\n RayTracingEnvironment::RefineNode\n RayTracingEnvironment::RefineNodeJob\n Rejecting load for legacy model: '%s'\\n\n@@ -397,10 +408,17 @@ Tried to load resource reference '%s' from a value without a resource reference\n Trying to override a material with an invalid draw call index\\n\n Trying to override the same draw call with two different materials!\\nOnly the last override will be set!\\n\n TypeManager\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n USAGE: print_model_bind_pose <vmdl_name> [bone_name]\\n\n Unable to load tools vb block (%s: %d)\\n\n Unable to read resource file %s!\\n\n Untested code path - Morph layers without morphset/flex rules. Will try to map model flex controllers directly to cloth morph layers\n+UpscalerType_t\n VModelError\n VectorAligned\n VertexElementAnnotation\n@@ -414,6 +432,7 @@ Whether to support legacy (pre-modeldoc) models\n X24_TYPELESS_G8_UINT\n X32_TYPELESS_G8X24_UINT\n [idx=%d] \"%s\"\n+\\tV_ZSTD_decompress\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n _VertexGenericIntegerData\n acosf\n@@ -422,7 +441,6 @@ anim_data_block\n anim_graph_resource\n bOwnVBAndIB == m_bOwnVBAndIB && m_pFixedMeshDataOverride\n bShaderBlended\n-b\\vP\\n0\n bentnormal\n blendindices\n blendweight\n@@ -439,6 +457,8 @@ compressedtangentframe\n curvature\n data_block\n distancefield_data_block\n+eCenteredCylinder\n+eGroundCylinder\n embedded_animation\n embedded_distancefield\n embedded_meshes\n@@ -458,6 +478,7 @@ interactive\n legacy_models_supported\n lowprecisionuv\n lowprecisionuv1\n+m_BoneMergeLinks\n m_Format\n m_Stops\n m_attachments\n@@ -478,20 +499,32 @@ m_bUseShadowFastPath\n m_bounds\n m_distanceFields\n m_eRbfType\n+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_fEmissiveFactor\n m_flGridCellSize\n m_flMaxQuantizedDistance\n m_flSurfaceBias\n m_hitboxsets\n m_influenceFlags\n+m_materialGroupToken\n m_morphSet\n m_nBodyGroupChoice\n m_nBodyGroupIndex\n+m_nChildNode\n m_nParentBoneNameHash\n+m_nParentHash\n m_nResX\n m_nResY\n m_nResZ\n+m_nSrcDrawIndex\n+m_nVertexEmissiveFormat\n+m_nVertexEmissiveOffset\n+m_nVertexEmissiveStride\n+m_nVertexEmissiveVB\n m_quantizedData\n m_rbfParameters\n+m_rootBvhNodes\n materialgroup_driven_morph_list\n materialgroup_name\n materials/tools/show_skeleton.vmat\n@@ -517,18 +550,19 @@ placementbone\n posxyz\n print_model_bind_pose\n projectedDecal\n+r\\vpL\n reload_model\n resourcesystem\n root\n seqgroup_data_block\n slow\n std::pair\n-tBSheetSequenceIntegerId_t\n+tBRenderBufferFlags_t\n tangent\n tangentu_signv\n texcoord\n-tools.light_volume_boundary\n tools.reference_notrace\n+tools.toolsmaterial\n tools_vb_block\n vbib_block\n very_fast"
        },
        {
          "filename": "game/bin/win64/modeldoc_utils_strings.txt",
          "status": "modified",
          "additions": 229,
          "deletions": 133,
          "changes": 362,
          "patch": "@@ -18,7 +18,7 @@\n    + Shape %3d Deltas: %5d - %s\\n\n    - Searched %s\n   Bad Fax Lines: %lu\\n\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -112,10 +112,12 @@\n #?ObjectType@FbxCriteria@fbxsdk@@SA?AV12@AEBVFbxClassId@2@@Z\n #CfU7\n #This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\\n\n+#\\tV_exp2f\n $@RGBA8888\n $DiffuseColor\n $ModelPath$/transmission\n $TransparentColor\n+$\\tV_expd\n $modelname$\n $modelname$_cavity\n $modelname$_masks\n@@ -162,6 +164,7 @@ $prefix_element$\n %llx\n %lu: Row out of range, max %lu\n %lu: Sample out of range, max %lu\n+%oNj\n %s %s -> %s\n %s %s decoding is not implemented\n %s %s encoding is not implemented\n@@ -190,6 +193,7 @@ $prefix_element$\n %s on any hitboxes or physics bodies. This part won't be destructible by damage.\n %s on physics bodies (exists on hitboxes though). Destroying this part will still leave collision active.\n %s references unknown mesh: '%s'\n+%s%02d:%02d\n %s%s: FGD Parse error: %s %s\\n\n %s(%d) : %s\\n\n %s(%d): error: %s\n@@ -452,7 +456,6 @@ $prefix_element$\n .?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -532,7 +535,6 @@ $prefix_element$\n .?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -755,6 +757,7 @@ $prefix_element$\n .?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -987,6 +990,7 @@ $prefix_element$\n .?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1166,6 +1170,7 @@ $prefix_element$\n .?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1252,6 +1257,7 @@ $prefix_element$\n .?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1334,6 +1340,7 @@ $prefix_element$\n .?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1709,15 +1716,19 @@ $prefix_element$\n .?AUCAttr_no_member@?L@??GetStaticAttributes@CModelDocIKChain@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCMorphSetData@@\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AUCScaleBiasFilter@CModelDocClothProxyMeshFile@@\n .?AUNodeResolveInfo_t@@\n .?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@\n-.?AV<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NPEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@\n+.?AV<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NW4LoaderDataType_t@@PEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@\n .?AV<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@\n+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@\n .?AV<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@\n .?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@\n .?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n .?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n@@ -1762,6 +1773,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@\n@@ -1884,6 +1896,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@\n@@ -2067,7 +2080,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -2079,7 +2091,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2257,6 +2268,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -2469,6 +2481,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@\n@@ -2591,6 +2604,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@\n@@ -2736,7 +2750,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -2748,7 +2761,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2926,6 +2938,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -3138,6 +3151,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@\n+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@\n@@ -3260,6 +3274,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@\n+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@\n@@ -3443,7 +3458,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@\n@@ -3455,7 +3469,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@\n@@ -3633,6 +3646,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@\n .?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@\n+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@\n@@ -3877,6 +3891,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@\n+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@\n@@ -3998,6 +4013,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@\n@@ -4139,7 +4155,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -4150,7 +4165,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -4320,6 +4334,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -4529,6 +4544,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@\n@@ -4649,6 +4665,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@\n@@ -4820,7 +4837,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@\n-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@\n@@ -5004,6 +5020,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@\n@@ -5480,6 +5497,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@\n+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@\n@@ -5601,6 +5619,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@\n@@ -5742,7 +5761,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -5753,7 +5771,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -5923,6 +5940,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -6099,7 +6117,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@\n .?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@\n-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@\n .?AV?$CTypedLogLayerSampleData@E@@\n .?AV?$CTypedLogLayerSampleData@H@@\n@@ -6304,6 +6321,7 @@ $prefix_element$\n .?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6365,6 +6383,7 @@ $prefix_element$\n .?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6419,13 +6438,18 @@ $prefix_element$\n .?AV?$RemapIndexFunctor@$0A@$0A@VFbxLayerElementUserData@fbxsdk@@@@\n .?AV?$_Func_base@HPEBVFbxLayerElementUserData@fbxsdk@@HH@std@@\n .?AV?$_Func_base@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@\n+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@\n .?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NPEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NW4LoaderDataType_t@@PEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n@@ -6772,7 +6796,6 @@ $prefix_element$\n .?AVCModelDocAnimatedMaterialAttributeColor@@\n .?AVCModelDocAnimatedMaterialAttributeValue@@\n .?AVCModelDocAnimationList@@\n-.?AVCModelDocAssociatedPulseGraph@@\n .?AVCModelDocAtom@@\n .?AVCModelDocAttachment@@\n .?AVCModelDocAttachmentBase@@\n@@ -7272,6 +7295,7 @@ $prefix_element$\n .?AVcodecvt_base@std@@\n .?AVnoncopyable@v11@Util@Alembic@@\n .?AVregex_error@std@@\n+.P6AXPEBDPEAVCBufferString@@@Z\n .ani\n .animChans\n .arbGeomParams\n@@ -7312,11 +7336,9 @@ $prefix_element$\n .webp\n .xform\n // FRAMERATE=%f\n-0$xn\n-0X`n\n+0\\fan\n 0\\r%0t\n-0\\tV_frexpf\n-0`Li\n+0tzn\n 0x%llx\n 16-byte data pool\n 180_recovery\n@@ -7332,8 +7354,7 @@ $prefix_element$\n 2DBlendEditor\n 2DBlendFromAnimation\n 2\\n??9FbxDataType@fbxsdk@@QEBA_NAEBV01@@Z\n-2\\vp$xn\n-2\\vpt\n+2\\vptzn\n 2_BONE_IK\n 4-byte data pool\n 4\\r54t\n@@ -7349,6 +7370,7 @@ $prefix_element$\n 8-byte data pool\n 969p\n 9>powf\n+9\\tV_frexpf\n :: <NO TARGET BONE>\n :\\n??9FbxProperty@fbxsdk@@QEBA_NAEBV01@@Z\n ; FBX %d.%d.%d\n@@ -7363,6 +7385,7 @@ $prefix_element$\n <font color=\"red\">Face is connected to itself, cannot dissolve</font>\n <font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>\n <font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.\n+<non-RTTI type>\n <none>\\n\n <p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>\n <pair_a> \n@@ -7374,7 +7397,7 @@ $prefix_element$\n =CAnimFoot\n =fff?\n >\"?IsValid@FbxProperty@fbxsdk@@QEBA_NXZ\n->Hull\n+>PushBack\n ??$EvaluateValue@M@FbxProperty@fbxsdk@@QEAAMAEBVFbxTime@1@_N@Z\n ??0FbxAMatrix@fbxsdk@@QEAA@AEBV01@@Z\n ??0FbxAxisSystem@fbxsdk@@QEAA@W4EUpVector@01@W4EFrontVector@01@W4ECoordSystem@01@@Z\n@@ -7476,6 +7499,8 @@ $prefix_element$\n ?GetControlPointIndicesCount@FbxCluster@fbxsdk@@QEBAHXZ\n ?GetControlPointWeights@FbxCluster@fbxsdk@@QEBAPEANXZ\n ?GetCount@FbxLayerElementArray@fbxsdk@@QEBAHXZ\n+?GetCurrentAnimationStack@FbxScene@fbxsdk@@QEAAPEAVFbxAnimStack@2@XZ\n+?GetCurve@FbxProperty@fbxsdk@@QEAAPEAVFbxAnimCurve@2@PEAVFbxAnimLayer@2@PEBD_N@Z\n ?GetDataName@FbxLayerElementUserData@fbxsdk@@QEBAPEBDH@Z\n ?GetDataType@FbxLayerElementUserData@fbxsdk@@QEBA?AVFbxDataType@2@H@Z\n ?GetDeformer@FbxGeometry@fbxsdk@@QEBAPEAVFbxDeformer@2@HW4EDeformerType@32@PEAVFbxStatus@2@@Z\n@@ -7562,9 +7587,9 @@ $prefix_element$\n ?GetTargetShapeFullWeights@FbxBlendShapeChannel@fbxsdk@@QEAAPEANXZ\n ?GetType@FbxDataType@fbxsdk@@QEBA?AW4EFbxType@2@XZ\n ?Should we try to straighten two faces connected to this edge? (tangent)\n-?\\tV_isfinited\n ?catmullrom_normalize_x\n ?expf\n+?mesh_calculate_curvature_smooth_pass_count\n ?sqrt\n ?vtex\n @%s_lookFrame_0\n@@ -7699,6 +7724,7 @@ Add Bones To Render Mesh\n Add Center Vertex\n Add Curvature\n Add Extra Boundary Voxels\n+Add Flags\n Add Margin\n Add R%d <- R%d + R%d\n Add Radius\n@@ -7709,6 +7735,7 @@ Add a bone to the bindpose skeleton\n Add a hold to shorter animations in the blend to match frame counts on all blends\n Add a voronoi plane mesh primitive.\n Add box mesh primitive.\n+Add flags to the given value.\n Add noise\n Add plane mesh primitive.\n Add self amount for combined additive and alpha blended\n@@ -7732,6 +7759,7 @@ Affect Edges\n Affect Faces\n Affect Parents\n Affect Vertices\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n AggregateRenderMesh\n Aggressive\n Aim Offset\n@@ -7783,7 +7811,6 @@ Alpha decoder initialization failed.\n Already have three vertices defined for this triangle\\n\n Also Missing Exclusive Detail Layers\n Also select faces using any of these additional materials.\n-Always\n Ambient Occlusion Map\n Ambient Occlusion Map Power\n Amount of accumulated force to preserve\n@@ -7965,9 +7992,10 @@ AsShotPreProfileMatrix\n AsShotWhiteXY\n Assert True\n Asserts (fails compilation) if selection criteria is not met.\n+AssetBrowse( %s )\n AssetBrowse( vnmclip )\n AssetBrowse( vnmgraph )\n-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )\n+AssetBrowse()\n Assign A Channel\n Assign B Channel\n Assign Bone Parent\n@@ -7984,10 +8012,11 @@ Assign to All Faces\n Assigns a color value to a material attribute over a frame range.\n Assigns a floating point value to a material attribute over a frame range.\n Assigns all vertex weights to the specified bone.\n-AssociatedPulseGraph\n Associates a semantic identifier with an animgraph2 used by this model.\n-Async Fire C%d:I%d\n-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n+Async Call Method (Child Cursor) C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n Attach Point\n Attach to Morphing Base Mesh\n AttachedSoundEvent\n@@ -8058,7 +8087,6 @@ Bad class description\n Bad code word\n Bad config reference '%s'\n Bad content path: %s\n-Bad count in ArraySetCount (%d)\n Bad input/output type '%s'\n Bad max in ArrayFirstNElements (%d)\n Bad metadata for %s\n@@ -8114,6 +8142,7 @@ BaseTextureGenerator\n BaselineExposure\n BaselineNoise\n BaselineSharpness\n+Basic string support.\n BayerGreenSplit\n BeenSimplified\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n@@ -8144,9 +8173,12 @@ Blend Weights Per Vertex\n BlendLayersUsingTimeSelection\n Blur Radius\n Bm_Plane\n+Bodies are ordered by bone depth (root bone body is first)\n+Bodies are ordered the way their shapes appear in the shape list \n Body Collection\n Body Group Choice\n Body Group Name\n+Body Order\n BodyGroupList\n Bone \"%s\" parent bone %d doesn't exist.  Only %d bones currently defined.\\n\n Bone \"%s\" specified as bone %d but should be bone %d\\n\n@@ -8160,9 +8192,11 @@ Bone 1\n Bone 2\n Bone 3\n Bone Cull Type\n+Bone Depth\n Bone Influence Filter\n Bone Influence Filter Threshold\n Bone Input :: \n+Bone Merge (Ex)\n Bone Names\n Bone Rename failed, results in duplicate bone '%s' in this animation\n Bone Rename failed, results in duplicate bones in this animation\n@@ -8174,6 +8208,7 @@ Bone flags markup data\n Bone name\n Bone names must differ\n Bone or Attachment\n+Bone-Direct\n BoneConstraintRbf :: Cannot find input bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Cannot find output bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\\n\n@@ -8185,6 +8220,7 @@ BoneFlags data present but skipped. (If there are serious problems, experiment w\n BoneMarkup\n BoneMarkupList\n BoneName\n+BoneOverlay\n BoneRelativeNode\n BoneReplacements\n Bonemerged\n@@ -8200,8 +8236,6 @@ Bounds Hull\n Bounds Maxs\n Bounds Mins\n Bounds View\n-BoundsOffset\n-BoundsScale\n Box De-Select (\n Box Dimensions\n Box Primitive\n@@ -8231,7 +8265,6 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_texture_generator.\n C:\\buildworker\\csgo_rel_win64\\build\\src\\movieobjects\\dmelog.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\movieobjects\\dmerigconstraintoperators.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\fbxsystem\\fbxsystem.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\keyvalues3.inl\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlblockvector.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\toolrenderutils\\toolmatsysutils.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\toolrenderutils\\toolstandardmodels.cpp\n@@ -8400,7 +8433,6 @@ CModelDocAnimatedMaterialAttribute\n CModelDocAnimatedMaterialAttributeColor\n CModelDocAnimatedMaterialAttributeValue\n CModelDocAnimationList\n-CModelDocAssociatedPulseGraph\n CModelDocAtom\n CModelDocAttachment\n CModelDocAttachmentBase\n@@ -8581,7 +8613,7 @@ CModelDocModelModifier_FoliageVertexNormals\n CModelDocModelModifier_FoliageVertexNormals: Computing...\n CModelDocModelModifier_FoliageVertexNormals: Computing...\\n\n CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\\n\n-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1147\n+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1148\n CModelDocModelModifier_GenerateDecalUVs\n CModelDocModelModifier_RenameBone\n CModelDocModelModifier_ReplaceResourceReferenceSubstring\n@@ -8690,9 +8722,9 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -8702,26 +8734,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n CPulseCell_PickBestOutflowSelector::ProcessSelector\n CPulseCell_Step_CallExternalMethod '%s'\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseMathlib::AbsFloat\n CPulseMathlib::AbsInt\n CPulseMathlib::ArcCos\n@@ -8758,6 +8792,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -8787,16 +8822,21 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseTestScriptLib::AssertTrue\n CPulseTestScriptLib::IndicateTestFailure\n CPulseTestScriptLib::IsInTestMode\n CPulseTestScriptLib::RegisterTestCheckpoint\n CPulseTestScriptLib::TestModeAssertTrue\n+CREATE_CHILD_CURSOR_OUTFLOW\n CRenderMeshSimplifyParams\n CResourceArray< ModelReference_t >\n CResourceExtReference< CWeakHandle< InfoForResourceTypeCModel > >\n@@ -8847,6 +8887,7 @@ CStrongHandle\n CStrongHandle< InfoForResourceTypeIMaterial2 >\n CStrongHandleCopyable\n CSubclassName\n+CTRL_\n CTerrainSelection\n CTrajectoryPath\n CTrajectoryPathNode\n@@ -8869,6 +8910,7 @@ CUndoDestroyElement\n CUndoManager::Redo\n CUndoManager::Undo\n CUtlBlockVector<class Vec2D<float>,int,class CMemAllocAllocator>::GrowCount\n+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct StoredTriangleVertexPositions_t,int,class CMemAllocAllocator>::GrowCount\n CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator>::GrowCount\n@@ -8925,54 +8967,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr\n CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage\n+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n+CUtlStringToken\n CUtlStringTokenWithStorage\n CUtlVectorFixedGrowable\n CVAimConstraint\n@@ -9011,8 +9019,6 @@ Can Player Pickup Piece\n Can not read scanlines from a tiled image\n Can't find bone named '%s'.\n Can't find this node in the list of all groom group nodes.\n-Cancel\n-Cancel observing.\n Cannot Find \"%s\" Stream On Mesh\n Cannot Find \"%s\" Vertex Map On Mesh\n Cannot Find Bone Parent Stream For Bone :: %s, Parent :: %s\n@@ -9278,7 +9284,7 @@ Colormap\n Combine Owner + Part Name\n Commit Step\n CommonToolEvent_DocumentModifiedFlagChanged_t\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n CompileScript failed: Cannot compute full path to vscript \"%s\" in \"CONTENT\"\n CompileScript failed: Cannot compute full path to vscript \"%s\" in \"GAME\"\n CompileScript failed: Cannot read vscript \"%s\" from \"CONTENT\"\n@@ -9498,14 +9504,15 @@ Cursors Allowed To Wait\n Curvature\n Curvature Drop Amount\n Curvature Drop Distance\n-CurveEditor\n CurveEditor( { extended=true input_name=\"Frame\" output_name=\"Value\" } ) \n Cut Max\n Cut Min\n Cycle Start Frame\n Cycle Type\n Cyclic samples provided are greater than the time per cycle. Expected: \n Cylinder\n+Cylinder - Centered (SLOW PERF)\n+Cylinder - Ground (SLOW PERF)\n Cylinder: %s\n D16_UNORM\n D24_UNORM_S8_UINT\n@@ -9545,6 +9552,7 @@ Default (No RGB Tint)\n Default Gravity Scale\n Default Root Bone Name\n Default offset for cp1 relative to cp0 if cp1 not set\n+Default to old body ordering for now\n Default: %s\n DefaultAnimGraph2\n DefaultCropOrigin\n@@ -9893,8 +9901,10 @@ End Frame Number\n End Loop\n End dot product value for fading as the particle normal becomes aligned with the view vector\n EndAttachment\n+EnsureCapacity\n Entity Class Override\n EntityName\n+Enum support.\n EnumArray\n Eq R%d <- R%d == R%d\n Equal to\n@@ -9930,6 +9940,7 @@ Euler XYZ\n Evaluate the curve at the specified input position\n Evaluate the gradient at a position between 0 and 1\n Event %u layer %i at time %i type %s\\n\n+Event Class\n Exact\n Exclude Bones With Exact Flags\n Exclude Bones With Flags\n@@ -10071,8 +10082,8 @@ Fade Out Time\n Fade Time\n Fail Outflow\n Fail on empty\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to allocate animation stream for channel label \"%s\"\n Failed to allocate animation stream for channel label \"%s\" :: %s \n Failed to allocate field info array\n@@ -10168,6 +10179,7 @@ Final animation consists of A, Crossfade, B\n Find String\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find and replace in resource references across the document (NOTE: Some references like materialgroups may be missed with the current implementation.)\n Find another Mesh Operation node by name in this document and run it as if it were a child of this node.\n Find first element 'a' which compare equal to 'element' and return its index.\n@@ -10212,9 +10224,9 @@ Flip Direction\n Flip Percentage\n Flip the forward (x) axis direction of bones\n Float To Game Time\n-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\\n\n-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\\n\n+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\\n\n Floating point \"Predictor\" not supported with %d data format\n Floor - round float down to nearest integer\n Floor Float\n@@ -10246,6 +10258,7 @@ Force this external piece to spawn motion-disabled regardless of the VMDL propda\n Force to apply\n ForceRealignBone\n ForceUnweightedBindposeBonePositions\n+Format Duration String From Seconds\n Format error!\n Fourth Control Point Location\n Fourth Control Point Number\n@@ -10374,7 +10387,9 @@ HalftoneHints\n Hammer temp export\n HammerEntityPicker()\n Hard Lock\n+Has All Flags\n Has Angle Constraint\n+Has Any Flags\n Has Base Spring\n Has Collision\n Has Pitch Constraint\n@@ -10391,7 +10406,7 @@ Height Target\n Height Tolerance\n Height of the primitive to project normals from.\n Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.\n-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\\n\n+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\\n\n Hidden\n Hide Materialgroup in Tools\n Hide Render Color in Tools\n@@ -10431,7 +10446,9 @@ How many iterations this solvers hould use.\n How much the joint tries to drive back to bind pose\n How much to consider facing angle in occlusion.\n How quickly the elasticity target pose changes to match the current pose\n+How should the bodies, created by these shapes, be ordered in the final model\n How the end effector should be rotated after the solve.\n+Hull\n Hull Per Element\n Hull Per Mesh\n Hull Too Complex for Runtime (%d verts, %d edges, %d faces)\n@@ -10510,7 +10527,6 @@ IXformSchema::getTimeSampling()\n IXformSchema::init()\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If Lerp Type is Full Frame Range, this is the fixed scale value applied, the curve is used otherwise\n If animation has been subtracted in ModelDoc to create an additive animation to be used with AnimGraph, set this to true\n If any faces with a given material are selected, expand the selection to include ALL faces using those materials.\n@@ -10815,7 +10831,6 @@ Jump to Instr I%d\n KV3 syntax error: %s\n KV3 syntax error: %s while parsing @entitygroup %s\n KV3DefaultTestFnName\n-KV3Helper_CheckValueNumericCast\n Kaydara FBX Binary  \n Keep Colliders\n Keep Vertices In Memory\n@@ -10839,7 +10854,6 @@ KeychainMarkupLocator\n Keyframe animation data\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n Kochanek-Bartels\n Kochanek-Bartels Early\n Kochanek-Bartels Late\n@@ -10872,6 +10886,7 @@ Latency CP field\n Layer %d:  adding key at time %d [%d -> %d], value \n LayerSequenceOverSequence() helper not supported\n Leader Bone\n+Leader Type\n Leaf Only\n Leaking %i elements\\n\n Leap to Chunk C%d\n@@ -11045,18 +11060,22 @@ MATERIAL_ATTRIBUTE:%s_%i\n MAlternateSemanticName\n MAtomicTransfersAsMap\n MAtomicTransfersAsPlainString\n+MESH_BUFFER_USAGE_VERTEX_EMISSIVE\n MEntitySubclassScopeFile\n MFgdHelper\n MHideInPolymorphicClassList\n MIsStringAndTokenType\n MKV3TransferName\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MModelGameData\n MORPH\n MPropertyArrayElementNameKey\n MPropertyAttributeEditorOverride\n MPropertyAutoExpandSelf\n MPropertyColorPlusAlpha\n MPropertyCustomEditor\n+MPropertyFGDFromAssetKeysFromOtherField\n MPropertyFlattenIncludeLabel\n MPropertyFlattenIntoParentRow\n MPropertyFlattenStretchFactor\n@@ -11074,6 +11093,7 @@ MPropertySuppressBaseClassField\n MPropertySuppressField\n MPulseExpressionAlias\n MPulseFunctionHiddenInTool\n+MPulseTypeRestriction\n MResourceTypeForInfoType\n MVDataAnonymousNode\n MVDataAssociatedFile\n@@ -11110,12 +11130,14 @@ Make Angle From Forward Vector\n Make Color\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -11214,11 +11236,11 @@ Mesh '%s'.field[%d] '%s' has a malformed name, nothing after semantic index sepa\n Mesh '%s'.field[%d] '%s' has same resolved name as .field[%d]\n Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s\n Mesh Operation Stack\n-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s\n+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s\n Mesh contains %d blend weights per vertex;  truncating to %d\\n\n Mesh has %i > %i floats of attributes, unable to apply all weightings.\n Mesh node name\n-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s\n+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s\n MeshDrawOrder\n MeshFileReferenceEditor\n MeshID\n@@ -11365,6 +11387,7 @@ Multi-take source animations not supported\n Must call InitModelDocLib before using the library.\n Mutually Exclusive Cloth Effects\n My Subclass Name\n+N@Bad count in ArraySetCount (%d)\n NO TARGET\n NOT \n NOT_ARRAY_MEMBERS\n@@ -11442,6 +11465,7 @@ No bone named %s to rename.\n No bone named :: %s in modeldoc, CSkeletonpose mismatch?\n No but transfer UVs\n No component selection made; node will have no effect.\n+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!\n No edges selected by length threshold.\n No faces selected by facing angle.\n No faces selected.\n@@ -11479,6 +11503,7 @@ No triangles defined\\n\n No vertex attribute name specified\n No vertices selected by index and weight threshold.\n NoCollapse\n+NoEditor()\n Node '%s' not allowed in this document type (%s)\n Node '%s' resolve failure\n Node '%s' resolved into a null node.\n@@ -11524,7 +11549,6 @@ Normal Attribute Simplification Weight\n Normal Lock to Control Point\n Normal Modify Offset Random\n Normal texture scroll rate\n-NormalBias\n Normalize\n Normalize Output\n Normalize Vector a\n@@ -11596,7 +11620,6 @@ Optimize for Keychains\n Optimize for rope and cloth simulation\n Optional bone to use as the root transform.\n Optional pattern for attribute names (* for wildcards.) Note that this matches against non-display (ie. raw view) attribute names.\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Or R%d <- R%d || R%d\n Order of animation sequences in compiled model.  Specified entries will be ordered first, unspecified entries will be added after ordered entries in an unspecified order.\n@@ -11662,6 +11685,7 @@ Override Vector\n Override all mesh normals with a specific vector.\n Override bone scale information on an animation\n Override model bounds.\n+Override sound is invalid.\n Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)\n Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)\n Override the mass this embedded piece will spawn with regardless of the VMDL propdata.\n@@ -11672,21 +11696,20 @@ Overwrite all bone data\n Overwrite existing flags only\n Overwriting existing wrinkle map data on mesh\n P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z\n-P(cn\n PARENT\n PF\\n%d %d\\n-1.000000\\n\n+PF_TYPE_CONTROL_POINT_IS_SET\n PHY Import: Invalid solid index %d in keyvalues\\n\n PHY Import: Solid with index %d is defined twice!\\n\n PHY file empty, zero hulls found: %s.\n POSE_SPACE_BONE\n POSE_SPACE_MORPH\n PURH\n-PX`n\n+P\\fan\n PackBits\n PackBitsDecode: Not enough data for scanline %ld\n PackBitsDecode: discarding %ld bytes to avoid buffer overrun\n PackToSharedVB\n-PackedBlobNormal\n Packing Material Particle System\n Packing Material Volume scale - to have more or less contents\n PageName\n@@ -11711,6 +11734,7 @@ Parent Node\n Parent Node Name\n Parent Reaction\n Parent Rotation\n+Parent VData\n Parent bone '%s' specified by define bone could not be found.\n Parent node type is not a valid node type for this node\n Parent of Chain Requires Alignment\n@@ -11899,6 +11923,7 @@ PredictorEncodeTile\n PredictorSetup\n Prefab\n Prefab [%s]\n+Prefab target file '%s' not found\n PrefabList\n Prefix element cannot contain element or element_array attributes. ('%s')\n Prefix to Match\n@@ -11929,27 +11954,28 @@ Primitive Radius\n Primitive type to project vertex normals from.\n Prismatic joint.\n Procedural\n+Proceed Immediately\n Process Selector\n Project From Primitive\n Project on Characters\n Project on Water\n Project on World\n Projected Primitive\n-Prop Group for Physics Particles\n-Prop group for spawned physics particles\n PropWorldOrigin\n Prune pieces < error threshold\n+Ptdn\n+Ptzn\n Pull towards control point\n-Pulse Graph\n Pulse domain which enables particle content to query leaf code to introspect game state.\n+PulseDurationStringFormat_t\n Push Out\n Push mesh faces outward along their local normal. Optionally build shell geometry.\n-PushBack\n QAngle\n Q\\v??DFbxVector4@fbxsdk@@QEBA?AV01@N@Z\n Quad Bend Tolerance\n Quadratic\n Quadric Error Metric\n+Quantize the transform centroid position to the given modulus.\n Quaternion\n QuaternionStorage\n Quickhull got into an impossible state and failed\n@@ -12015,10 +12041,10 @@ R8_TYPELESS\n R8_UNORM\n R9G9B9E5_SHAREDEXP\n RBF Based Anim Constraint\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RGB blend weight for sequence 0\n RGB blend weight for sequence 1\n ROTATION\n-R\\fpt\n R_T5Y\n Rad2 Deg\n Radial Basis Function Type\n@@ -12072,7 +12098,6 @@ Reduce how bouncy the joint is\n ReductionMatrix1\n ReductionMatrix2\n Reentrant initialization of CModelDocVMDLImportScript\n-Reference to a Pulse file to be run on this model entity.\n Reference to a content file that will append its contents to a parent render mesh file node.\n Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)\n Reference to a content file that will resolve to one or more bone nodes to define a skeleton.\n@@ -12154,6 +12179,7 @@ Remap distance to line between 2 control points to scalar\n Remap distance to line between 2 control points to vector\n Remap the trace result value relative to this range.\n Remove Behind\n+Remove Flags\n Remove Front\n Remove Small Components\n Remove Tag From Cursor\n@@ -12162,6 +12188,7 @@ Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n Remove all values from the list\n Remove bones that are not present in this allow-list.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n Remove vertices behind the slice plane.\n@@ -12313,6 +12340,7 @@ SSAOBias\n SSAORadius\n SSAOStrength\n Safeguard against producing a model outside budgetary limits.\n+Same Model (In)\n Sample \n Sample Count\n Sample Rays\n@@ -12486,6 +12514,7 @@ Setting %s::%s = '%s'\\n\n Setting up field info failed\n Settings for the character's speeds in different situations and movement settings for the nav system and animgraph\n ShadowScale\n+Shape List\n Shapes\n Shapes controlled by this incremental control\n Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>\n@@ -12558,6 +12587,7 @@ Smooth Iterations\n Smooth Normals Across UV Seams\n Smooth Rate\n Smooth Vertex Normals\n+Snap to grid\n SnapshotVertexExtraction\n Soft Link\n Softbody\n@@ -12684,8 +12714,7 @@ Stiffness on Ragdoll\n StoNits\n Stop Effect after Duration\n Stop On Sequence Change\n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n Stores metadata for groom meshes.\n Stray Boundary Radius\n Stray Boundary Spring\n@@ -12730,6 +12759,7 @@ Swing Limit\n Swing Offset Angle\n Switch Threshold\n Symbol table:  %d entries %llu bytes\\n\n+Synchronous - Wait for this node to fully complete before proceeding.\n T\"?IsZero@FbxVector4@fbxsdk@@QEBA_NH@Z\n THEM\n TIFFAppendToStrip\n@@ -12777,7 +12807,6 @@ TODO: WeightList User support missing.\n TODO: cmd sequence implement CMDS! : %s\n TWIST\n TYPE\n-T\\tV_log2f\n Tag \n Tag %d\n Tag Cursor\n@@ -12797,6 +12826,7 @@ Target Hair Count\n Target Name\n Target Triangle Percent\n Target layer ID for rendering\n+TargetCastForModify\n TargetPrinter\n Team1\n Team2\n@@ -12903,7 +12933,10 @@ This is Work-In-Progress Content\n This is a BigTIFF file.  This format not supported\\nby this version of libtiff.\n This is an Euler Rotation in degrees in XYZ order.\n This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n This model will fail to compile outside a development environment.\n+This value is optional. Click to set.\n+This value is optional. Click to unset.\n This value is set when the morph control is created via mesh loading and not explictly created by the user\n Threshholding\n Threshold value to use when detecting if translation tracks are constant or default. In game units, i.e. inches\n@@ -12981,6 +13014,7 @@ Tried to read a scalar property from a non-scalar:\n Tried to read an array property from a non-array: \n Tried to rename from '%s' to '%s', but '%s' already exists\\n\n Truncated header.\n+Turn a time in seconds into a display string. NOT localized.\n Turn off animation compression for this animation.<p><span style=\"color:#aa0000\"><b>NOTE</b></span>: This significantly increases the size of the animation data.<p>Normally it should be false but if there are obvious compression artifacts, typically in tiny rotations, disabling compression may fix those.\n Twist Relax\n Two Sided\n@@ -12993,6 +13027,12 @@ UICameraRotation\n UL Offset in FLU local space\n UL control point number\n UPAXIS\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n UR Offset in FLU local space\n UR control point number\n UV Attribute Simplification Weight\n@@ -13003,7 +13043,6 @@ UV Map Planar\n UV Map Planar Custom\n UV Mapping\n U\\8h(\n-U\\tV_logd\n Un-inertial Rods\n Unable to access skeleton from compiled src resource data\n Unable to create AnimOrder in dst ModelDoc\n@@ -13034,6 +13073,7 @@ Unexpected Index Adding \"%s\", Expected %d, Got %d\n Unexpected end of input\n Unexpected key name \"%s\"\\n\n Unexpected map type %d of %s. Please rebuild.\n+Unexpected morph animation stream name :: \"%s\", expected \"%s\"\n Unexpected skinning defined on mesh %s\n Uniform\n Uniform Scale\n@@ -13051,6 +13091,7 @@ Unknown class '%s' specified by @exclude\n Unknown compression type.\n Unknown data format %d for LogLuv compression\n Unknown encoding %d for LogLuv compression\n+Unknown format type\n Unknown interpolation type %d\\n\n Unknown mesh '%s'\n Unknown parent bone '%s'.\n@@ -13085,6 +13126,7 @@ Unsupported mix of opaque and translucent materials in thie groom group. Render\n Up Type\n Up Vector\n UpdateLights\n+UpscalerType_t\n Use Block Solver\n Use Child Offset Attachment\n Use Continuous Emission\n@@ -13094,6 +13136,7 @@ Use Eye Orientation\n Use Flat Color\n Use For Collision\n Use For Occlusion\n+Use High Precision Blend Weights\n Use High Precision/Expensive Texcoords\n Use Layer Sequence\n Use Local Space\n@@ -13106,6 +13149,7 @@ Use UV2 for Lightmap Charting\n Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.\n Use additive blending\n Use distance to an infinite line instead of a finite line segment\n+Use for faces\n Use max-luminance blending for sequence 0\n Use max-luminance blending for sequence 1\n Use radius for Per Particle Trace Length\n@@ -13123,6 +13167,9 @@ Using compiled model parent '%s' for bone '%s'\n Using compiled skeleton for for bone '%s'\n Using compiled skeleton for parent '%s' for bone '%s'\n Using deprecated 'base=prefix' syntax for adding a prefix to a base class\n+VDATA\n+VDataChoice( %s )\n+VDataChoice()\n VDataModelVersion001\n VDmElementFrameworkVersion001\n VDmSerializers001\n@@ -13228,6 +13275,7 @@ WARNING: No 'models_ModelDocGameData' FGD was specified in the 'ModelDoc' sectio\n WARNING: Unable to load the FGD file '%s'.\\n\n WDG,r3\n Wait Complete\n+Wake Cursors With Tag\n Warning! Couldn't convert FbxMesh \"%s\"\\n\n Warning! Couldn't create DmFileId_t for \"%s\"\\n\n Warning! Couldn't create DmeMesh for FbxMesh \"%s\"\\n\n@@ -13277,8 +13325,6 @@ What material this object is made of. Used for mass calculations, impact effects\n What to replace matches with\n What type of object this is.\n Wheel joint.\n-When False\n-When True\n When picking between random choices, determines odds this choice is picked compared to others. (eg. a weight of 2 is twice as likely to be picked as weight of 1)\n When this breakpiece breaks, should it be able to intersect with the parent that spawned it?\n When this model is loaded preserve vertex data in CPU memory.\n@@ -13288,10 +13334,15 @@ Whether the script is running as part of an import process. (Returns true.)\n Whether the to use the curve or just a set value for the entire frame range\n Whether this distance field contributes to AO.\n Whether this distance field is a collider for certain effects such as hair simulation.\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n Which solver to use for positioning the IK chain.  Required.\n+While False\n+While True\n WhiteLevel\n WhitePoint\n Width Target\n+Will use the second uv channel in the model to generate lightmap uvs.  This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.\n Wind Speed, mph\n Windage Normal\n Windage Tangent\n@@ -13367,6 +13418,8 @@ Zero skin weights on one or more vertices\n [cloth] | [procedural]\n [procedural]\n \\f$?ParseForGlobalSettings@FbxImporter@fbxsdk@@QEAAX_N@Z\n+\\f\\tV_acosd\n+\\fp\\v`tzn\n \\instances\\\n \\maps\\\n \\materialsrc\\\n@@ -13380,27 +13433,25 @@ Zero skin weights on one or more vertices\n \\ng default\\n\n \\prefabs\\\n \\rModelDoc\n+\\r\\nnexttoken\n \\sound\\\n \\t??8FbxDataType@fbxsdk@@QEBA_NAEBV01@@Z\n \\t??8FbxMatrix@fbxsdk@@QEBA_NAEBV01@@Z\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n-\\tV_acosd\n \\tV_asind\n \\tV_atan2d\n+\\tV_atand\n \\tV_cosd\n-\\tV_exp2f\n-\\tV_expd\n+\\tV_sscanf_s\n \\tV_strnchr\n \\tV_tand\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_FixupPathName\n \\t_V_StringAfterPrefixCaseSensitive\n \\t_V_StripLastDir\n-\\tg_bUpdateStringTokenDatabase\n-\\tnexttoken\n \\v??YFbxString@fbxsdk@@QEAAAEBV01@PEBD@Z\n+\\vP\\fan\n ^(.+)_[0-9A-Fa-f]{8}$\n _CustomCommand\n _CustomCommand%d\n@@ -13413,13 +13464,13 @@ _TIFFMergeFieldInfo\n _TIFFSetupFieldInfo\n _TIFFVGetField\n _TIFFVSetField\n+_\\tV_log2f\n _\\v??GFbxVector4@fbxsdk@@QEBA?AV01@AEBV01@@Z\n __CACHED_editcontext_provider_lookup\n __CursorQueue__\n __FireCursorsParent__\n __FlexController__\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n __autoskinned\n __bone_%d\n@@ -13480,9 +13531,10 @@ _temp_tangent\n _volumeatlas_\n _wjb\n _zero\n+`\\tV_logd\n+`tzn\n a:fulltype\n a:typeparam\n-a\\tV_powd\n absolute\n absorigin\n absorigin_follow\n@@ -13537,6 +13589,7 @@ align_to_frame_type\n align_tx\n align_ty\n align_tz\n+allflags\n allow_flex_length\n allow_none\n allow_nonmatching_bones\n@@ -13618,6 +13671,7 @@ animgraph_incompatible\n animturn\n anklebone\n antishrink\n+anyflags\n aoB>\"\n ao_map\n ao_power\n@@ -13631,14 +13685,14 @@ applymodelspacetranslation\n archetype_list\n are_effects_mutually_exclude\n assetTag\n+asset_specific_keys_source\n assign_a\n assign_b\n assign_g\n assign_r\n assign_to_all\n assign_to_all_faces\n associated_key\n-associated_vpulse\n ati_compress_wrapper.dll\n attach_material\n attach_mesh\n@@ -13724,6 +13778,7 @@ best_fit_atlas\n bezier\n bias_to_center\n biased\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -13758,6 +13813,7 @@ body_collection\n body_group_choice\n body_group_count\n body_group_name\n+body_order\n bodygroupchoices\n boneIndicesAndWeights\n boneIndicesAndWeights$0\n@@ -13768,6 +13824,7 @@ bone_3\n bone_attrs\n bone_count\n bone_cull_type\n+bone_depth\n bone_index0\n bone_index1\n bone_index2\n@@ -14101,7 +14158,7 @@ cycle_type\n cyclepose without cycle pose parameter on cmd sequence: %s\\n\n cyclestart\n cylinder\n-d(0P\n+d(00\n damage_direction_cp\n damage_position_cp\n damage_table\n@@ -14225,6 +14282,8 @@ draw_wireframe\n durationTime\n duration_info\n dynamic_attributes\n+eCenteredCylinder\n+eGroundCylinder\n early exit while reading obj file containing embedded null\\n\n ease_in_and_out\n ease_in_key\n@@ -14351,6 +14410,7 @@ export_reference_type\n export_root\n exported_animation\n exporttags\n+expression_type\n extra_border_points\n extra_boundary_voxels\n extra_data\n@@ -14441,6 +14501,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -14549,6 +14610,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png\n game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png\n+game:tools/images/propertyeditor/eye_hidden.png\n+game:tools/images/propertyeditor/eye_visible.png\n gameSoundName\n game_data_list\n gamedata_searchable_keys\n@@ -14586,8 +14649,6 @@ goal_strength\n goal_strength_bias\n gradient\n graphCurve\n-graph_keys\n-graph_name\n gravity_grab_priority\n gravity_z\n gravitygrabignoremassandsize\n@@ -14599,13 +14660,14 @@ gridnav\n gridspacing\n groom\n ground_friction\n+ground_offset\n groupColor\n group_id\n group_name\n grow_or_shrink\n growth time\n guide_hair_count\n-h+\\npZi\n+h+\\n0Hi\n hair_count\n halfEdges %d,%d faces %d,%d angle %.1f deg.\n halfgridsnap\n@@ -14647,10 +14709,12 @@ hide_if_child_selected\n hide_materialgroup_in_tools\n hide_rendercolor_in_tools\n high_high_precision_texcoords\n+high_precision_blendweights\n high_priority\n high_quality\n hinge_axis\n hinge_vector\n+hit_group\n hitbox\n hitbox parent bone\n hitbox_maxs\n@@ -14840,10 +14904,12 @@ kochanek_early\n kochanek_late\n kv3:ParticleParamID_t\n l2_regularization\n+l\\tV_powd\n lastFrame\n last_frame\n layers\n leader_bone\n+leader_type\n leave_body_collision_unmodified\n left\n leftEdgeActive\n@@ -14961,6 +15027,7 @@ m_Animationname\n m_ArgumentDependencies\n m_AutoCreateSetName\n m_Bodies\n+m_BoneMergeLinks\n m_ChildResourceList\n m_CollisionAttributes\n m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation\n@@ -14986,6 +15053,7 @@ m_KeyValue\n m_Keywords\n m_LocalBindPose\n m_Loop\n+m_Metadata\n m_MotionFrames\n m_MotionFramesRootBone\n m_ParameterType\n@@ -14998,6 +15066,7 @@ m_RelativeFilename\n m_RootRelativePath\n m_SearchPath\n m_SearchableUserData\n+m_SequencePoint\n m_Shapes\n m_Special\n m_SpecialDependencies\n@@ -15084,6 +15153,7 @@ m_bForceWorldCollisionOnAllNodes\n m_bGetSkinningFromLod0\n m_bHasBakedLightingFromLightMap\n m_bHasBakedLightingFromVertexStream\n+m_bHighPrecisionBlendWeights\n m_bHighPrecisionTexCoords\n m_bHorizontalInterleaved\n m_bIgniteHalfHealth\n@@ -15171,7 +15241,9 @@ m_eOffset\n m_eParentBindRotation\n m_eRbfType\n m_eSlaveChannel\n-m_externalMethodTargetGraph\n+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_fEmissiveFactor\n m_fMoveTo\n m_fireInteractions\n m_flAddCurvature\n@@ -15217,12 +15289,14 @@ m_flVolumetricSolveAmount\n m_folderName\n m_folderNames\n m_groupsize\n+m_hCursorOnOtherGraph\n m_hitboxsets\n m_iklock\n m_influenceFlags\n m_influenceName\n m_influences\n m_lodGroups\n+m_materialGroupToken\n m_materialList\n m_materialSearchPath\n m_meshFile\n@@ -15236,6 +15310,7 @@ m_nCP1Parent\n m_nCP2Parent\n m_nCP3Parent\n m_nCP4Parent\n+m_nChildNode\n m_nControlPoint0\n m_nControlPoint00\n m_nControlPoint01\n@@ -15245,6 +15320,7 @@ m_nControlPoint5\n m_nControlPoint6\n m_nControlPoint7\n m_nCurrentWakeIndex\n+m_nCursorID\n m_nCutMax\n m_nCutMin\n m_nDesiredEndPoint\n@@ -15263,13 +15339,20 @@ m_nIterations\n m_nLoopRestart\n m_nNumCols\n m_nNumRows\n+m_nParentHash\n m_nSerial\n m_nSmoothLoopEnd\n m_nSmoothLoopStart\n+m_nSrcDrawIndex\n m_nSrcFrame\n m_nStartframe\n m_nUserData\n+m_nVertexEmissiveFormat\n+m_nVertexEmissiveOffset\n+m_nVertexEmissiveStride\n+m_nVertexEmissiveVB\n m_nWidthTarget\n+m_nYieldToken\n m_pAlignAnimation\n m_pAnimGroup\n m_pAnimGroups\n@@ -15302,6 +15385,7 @@ m_poseParameterArray\n m_qFixupRotation\n m_rbfParameters\n m_reference\n+m_rootBvhNodes\n m_sBindPoseReference\n m_sBoneMask\n m_sBonename\n@@ -15563,12 +15647,16 @@ must be either LogLUV or LogL\n mute\n n$Kx\n nDenominator\n+nFormat\n nKillPriority\n nLayoffState\n nMaxElements\n nNumerator\n+nRemainderDigits\n+nRemainderNoiseDigits\n nValue\n nVertices\n+nWakePriority\n name_mode\n name_prompt\n navlink\n@@ -15631,7 +15719,6 @@ numsides_key\n o KPBf\n oOffset\n oY.o<\n-o\\tV_sind\n obj2dmx\n offsetTime\n offset_angles\n@@ -15661,6 +15748,7 @@ operators\n opqMU\n optimization_algorithm\n option\n+optional_toggle_cmd\n optionallycompressedtangentframe\n orientation\n orientationChannel\n@@ -15673,6 +15761,7 @@ oscillate_vector\n outFrame\n out_frame\n outerconeangle\n+outliner_icon\n output is scalar of current value\n output is scalar of initial random range\n output_A\n@@ -15695,15 +15784,15 @@ override_help_id\n override_value\n override_vector\n overrideclass\n+overridesound\n overwrite_existing\n overwrite_existing_flags_only\n ownerlog\n owns_polymorphic_data\n-p$xn\n pCheckpointName\n pDescription\n pTagName\n-pX`n\n+p\\fan\n p\\rP\\f0\n paintsplat\n panorama_image\n@@ -15894,6 +15983,7 @@ propattr_stretch_editor_into_label_column\n propdataname\n prune\n pseudo-\n+ptzn\n pulse_node_custom_attributes\n pulse_runtime_lib\n pushout_strength\n@@ -16099,7 +16189,6 @@ scriptlist\n scripts/activity_modifier_weights.txt\n scripts/collision_detail_layers.vdata\n scripts/physics_particles.vdata!%s\n-scripts/physics_particles.vdata!hlx_physics_particle_spawner\n searchable_key\n searchable_key_fields\n second sequence animation rate\n@@ -16111,6 +16200,7 @@ segments_v\n segments_x\n segments_y\n segments_z\n+select\n select_all\n select_all_children\n select_border\n@@ -16169,6 +16259,7 @@ shadow_secondary_color_night\n shadowtextureheight\n shadowtexturewidth\n shape\n+shape_list\n shapes\n shared\n sharpStartAngle\n@@ -16231,6 +16322,7 @@ smoothiterations\n smoothscale\n smoothscale_vector\n snap\n+snap_to_grid\n snappable\n snapshot\n snapshotOverride\n@@ -16337,6 +16429,7 @@ sticker_index\n sticker_markup_preview\n stiff_hinge\n stiff_hinge_angle\n+stiffen\n stiffness\n stiffness_on_ragdoll\n stop_distance_range\n@@ -16387,7 +16480,7 @@ swing_offset_angle\n switch_threshold\n syncEngineFramerate\n synched\n-tBSheetSequenceIntegerId_t\n+tBRenderBufferFlags_t\n tagValue\n tag_list\n tag_list_dynamic\n@@ -16758,7 +16851,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png\n tools/images/modeldoc_editor/outliner_icon_transfermorphs.png\n-tools/images/modeldoc_editor/outliner_icon_vpulse.png\n tools/images/modeldoc_editor/outliner_icon_vsnap.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_file.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_list.png\n@@ -16812,6 +16904,7 @@ twistJoints\n twist_back_relax\n twist_relax\n two_sided\n+type_restriction_is_enum_flags\n t|AO\n ui_order\n uicamerarotation\n@@ -16875,6 +16968,7 @@ uvmapcylinder\n v %f %f %f\\n#%d ComponentIndex %d, queue %d, angle %.1f; ring:\n vForward\n vIK \\f3\n+value:fulltype\n valueDeltaRotation\n valueOrientation\n valuePivot\n@@ -16925,6 +17019,7 @@ velocity_smooth_iterations\n velocity_smooth_rate\n velocity_tolerance\n verify\n+verify_override_sound_foot_choice\n vertex mistmatch %d vs %d :: sample time :: %8.4f s :: %s\n vertexFormat\n vertexPaintBlendParams\n@@ -17052,12 +17147,13 @@ yfriction\n ymax\n ymin\n z>%.04f\n-z\\tV_sscanf_s\n+z\\tV_sind\n zero dir\n zero_unselected\n zfriction\n zmax\n zmin\n+{ item_factory = 'IntervalTimer' }\n { uninitialized }\n {error}\n ~CModelInstance destructor: leaking softbody because physics world disappeared\\n"
        },
        {
          "filename": "game/bin/win64/navsystem_strings.txt",
          "status": "modified",
          "additions": 42,
          "deletions": 34,
          "changes": 76,
          "patch": "@@ -2,14 +2,15 @@\n  took %0.3f sec, produced %d polys\\n\n %0.2f\n (Output drawable)\n+***** TOO MANY NODES ADDED. SKIPPING. *****\n -> Success (%d attempts)\\n\n ... and no start position\n .?AU?$default_delete@VCNavGenPolyProcessorStageBase@@@std@@\n .?AUVDataInitInfo_t@@\n .?AV<lambda_1>@?1???1CNavSpace@@UEAA@XZ@\n .?AV<lambda_1>@?1??CalcClusters_Prepare@CNavTree@@QEAAXXZ@\n .?AV<lambda_1>@?1??ForEachBlock@CNavSpace@@QEAAXAEAV?$function@$$A6A?AW4NavSearchResult_t@@AEAVCNavBlock@@@Z@std@@@Z@\n-.?AV<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n+.?AV<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?1??IsAgentAbleToStandOnVoxelFace@CNavOrientedMesh@@AEAA_NAEBUVoxelData_t@CVoxelData@2@EMAEA_N@Z@\n .?AV<lambda_1>@?1??IslandRemoval@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0_NAEBVCNavGenParams@@@Z@\n@@ -25,16 +26,16 @@\n .?AV<lambda_1>@?7??FilterUnwalkableVoxelsByAgentClimb@CNavOrientedMesh@@QEAAXXZ@\n .?AV<lambda_1>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@\n .?AV<lambda_1>@?BE@??SplitPolysByMarkup@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN@Z@\n-.?AV<lambda_1>@?BI@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@\n-.?AV<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n+.?AV<lambda_1>@?BI@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@\n+.?AV<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n .?AV<lambda_2>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n .?AV<lambda_2>@?1??RunBuildTree@@YAXAEAVCNavTree@@HAEBUAABB_t@@AEBVIVPhysics2World@@PEAV?$CUtlHashtable@PEBVIPhysicsBody@@Uempty_t@@U?$DefaultHashFunctor@PEBVIPhysicsBody@@@@U?$DefaultEqualFunctor@PEBVIPhysicsBody@@@@V?$CUtlLeanVector@V?$CUtlHashtableEntry@PEBVIPhysicsBody@@Uempty_t@@@@HVCMemAllocAllocator@@@@$00@@@Z@\n .?AV<lambda_2>@?1??RunBuildTree@CNavSpaceBuildTreeJob@@AEAAXXZ@\n .?AV<lambda_2>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@\n-.?AV<lambda_2>@?BM@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@\n-.?AV<lambda_2>@?N@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@\n+.?AV<lambda_2>@?BB@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@\n+.?AV<lambda_2>@?BM@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@\n .?AV<lambda_3>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n-.?AV<lambda_3>@?EF@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@\n+.?AV<lambda_3>@?DP@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@\n .?AV<lambda_3>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@\n .?AV<lambda_4>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@\n .?AV<lambda_4>@?M@??RemovePolysMarkedNoNav@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN_N@Z@\n@@ -51,7 +52,7 @@\n .?AV?$CTier3AppSystem@VINavSystem@@$0A@@@\n .?AV?$CVDataFileManager@VCNavHullPresetVData@@@@\n .?AV?$CVDataFileManager@VCNavHullVData@@@@\n-.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBV4@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@\n+.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBVVectorWS@@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@@std@@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@M@std@@\n@@ -71,13 +72,13 @@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@N@ZPEAV3@AEBU?$_Ph@$00@2@M@std@@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EBAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV4@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@M@std@@\n .?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EBA_NAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@@ZPEAV3@AEBU?$_Ph@$00@2@@std@@\n-.?AV?$_Func_base@V?$Vec3D@M@@AEBV1@PEBV1@@std@@\n+.?AV?$_Func_base@V?$Vec3D@M@@AEBVVectorWS@@PEBV1@@std@@\n .?AV?$_Func_base@VVecDouble3@@AEBV1@@std@@\n .?AV?$_Func_base@W4NavSearchResult_t@@AEAVCNavBlock@@@std@@\n .?AV?$_Func_base@W4NavSearchResult_t@@AEBUSpaceCell_t@CNavSpace@@H@std@@\n .?AV?$_Func_base@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@@std@@\n .?AV?$_Func_base@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV1@@std@@\n-.?AV?$_Func_base@XAEBU?$NavIndirectDst_t@VCNavArea@@V1@@@@std@@\n+.?AV?$_Func_base@XAEBUNavIndirectDst_t@@@std@@\n .?AV?$_Func_base@XAEBUTreeIter_t@CNavTree@@@std@@\n .?AV?$_Func_base@XH@std@@\n .?AV?$_Func_base@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@AEBW4OrientedMeshSparseVoxelState_t@@@std@@\n@@ -95,7 +96,7 @@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???1CNavSpace@@UEAA@XZ@W4NavSearchResult_t@@AEAVCNavBlock@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CalcClusters_Prepare@CNavTree@@QEAAXXZ@XAEBUTreeIter_t@3@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??ForEachBlock@CNavSpace@@QEAAXAEAV?$function@$$A6A?AW4NavSearchResult_t@@AEAVCNavBlock@@@Z@std@@@Z@W4NavSearchResult_t@@AEBUSpaceCell_t@3@H@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@X$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EE_N@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IsAgentAbleToStandOnVoxelFace@CNavOrientedMesh@@AEAA_NAEBUVoxelData_t@CVoxelData@3@EMAEA_N@Z@_NAEBV?$Vec3D@H@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IslandRemoval@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0_NAEBVCNavGenParams@@@Z@XH@std@@\n@@ -111,22 +112,22 @@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?7??FilterUnwalkableVoxelsByAgentClimb@CNavOrientedMesh@@QEAAXXZ@_NAEBV?$Vec3D@H@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?BE@??SplitPolysByMarkup@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN@Z@_NAEBVCNavGenPoly@@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BI@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XPEAV4@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XH@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BI@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XPEAV4@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XH@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@AEBW4OrientedMeshSparseVoxelState_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??RunBuildTree@@YAXAEAVCNavTree@@HAEBUAABB_t@@AEBVIVPhysics2World@@PEAV?$CUtlHashtable@PEBVIPhysicsBody@@Uempty_t@@U?$DefaultHashFunctor@PEBVIPhysicsBody@@@@U?$DefaultEqualFunctor@PEBVIPhysicsBody@@@@V?$CUtlLeanVector@V?$CUtlHashtableEntry@PEBVIPhysicsBody@@Uempty_t@@@@HVCMemAllocAllocator@@@@$00@@@Z@_NAEBU4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??RunBuildTree@CNavSpaceBuildTreeJob@@AEAAXXZ@_NAEBUAABB_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BM@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XPEAV4@@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?N@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@X$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BB@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@X$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BM@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EE_N@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_3>@?EF@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XAEBU?$NavIndirectDst_t@VCNavArea@@V1@@@@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?DP@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XAEBUNavIndirectDst_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EG@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?M@??RemovePolysMarkedNoNav@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN_N@Z@_NAEBVCNavGenPoly@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_5>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHHEI@std@@\n-.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBV4@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@V?$Vec3D@M@@AEBV3@PEBV3@@std@@\n+.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBVVectorWS@@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@V?$Vec3D@M@@AEBVVectorWS@@PEBV3@@std@@\n .?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@\n .?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@\n .?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@M@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@\n@@ -181,6 +182,7 @@\n .?AVrcContext@@\n 1\\r51h\n ;1#INF\n+<non-RTTI type>\n =slow\n >0 = watershed, 1 = monotone, 2 = layers\n >>FLOWMAP: %d super nodes (%.0f%%)\\n\n@@ -204,9 +206,10 @@\n >>NAVGEN: pass %d/%d: orig tris %d\\n\n >>NAVGEN: stage %02d / %02d: \n >>NAVGEN: stage %02d / %02d: %s, disabled\\n\n->nav_pathfind_multithread\n+>m_nHullIdx\n ?expf\n ?ffffff\n+AVOID\n AddJumps\n Already in the goal area\n Area too far\n@@ -215,14 +218,12 @@ C:\\buildworker\\csgo_rel_win64\\build\\_build_\\navsystem\\_vpc_navsystem\\default\\win\n C:\\buildworker\\csgo_rel_win64\\build\\src\\navlib\\nav_mesh.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\navlib\\nav_pathfind.cpp\n CNavMesh::GetGroundHeight\n+CNavPathCost\n CNavSpaceBuilder\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct FlowMapNode_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct FlowMapNode_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct empty_t,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct empty_t,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,struct FlowMapNode_t *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,struct FlowMapNode_t *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,struct empty_t,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,struct empty_t,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail\n-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t,class CDefLess<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t,int>,int,class CMemAllocAllocator> >::Insert\n CalcBlocks_IntercellConnections %d/%d\\n\n CalcBlocks_IntracellConnections v0 %d/%d\\n\n CalcBlocks_IntracellConnections v1 %d/%d\\n\n@@ -247,7 +248,7 @@ ERROR: Unconnected ladder bottom at ( %g, %g, %g )\\n\n ERROR: Unconnected ladder top at ( %g, %g, %g )\\n\n Error (problem that prevents task success)\n FLOWMAP path find ALLPATHS duration: %llums\\n\n-Failed to allocate an instance of a class\n+Failed to allocate an instance of a class of type '%s'\n Failed with no pGoalArea and no pGoalPos\n Failed with no pStartArea\n FindOverlaps\n@@ -285,9 +286,9 @@ GetNearestNav: Success! Returning area [%d]\n GetNearestNav: [%d] Areas that failed poly test\n HeQyA\n Hide unless error/warning occurs\n+INavPathCost\n IslandRemoval\n IslandRemoval - unable to find a poly near navlink location %g %g %g\\n\n-L=AVOID\n LadderConnect\n Level of validation for nav system.  Higher will be slower.\n LightmapUV\n@@ -334,7 +335,6 @@ OpenMutexA\n Oriented Mesh: %d / %d\\n\n Oriented Mesh: YieldWait returned false. Falling back to waiting for the next job in the sequence.\\n\n OverlayProjectionDirection\n-PackedBlobNormal\n PathFind_NavAreaBuildPath\n PerVertexLighting\n Physics\n@@ -400,11 +400,12 @@ Warning (problem that doesn't prevent forward progress)\n WeldVertices\n [Default] Determine a lifespan based on the warning/error state of the group\n [Default] General information\n+\\ng_flConfigMaxCoord\n \\tV_cosd\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n-\\tg_flConfigMaxCoord\n addEdge: Too many edges (%d/%d).\n bentnormal\n+binary\n blendindices\n blendweight\n blendweights\n@@ -449,16 +450,19 @@ lifespan\n loud\n lowprecisionuv\n lowprecisionuv1\n-m_bBakedTwoSided\n-m_bCanBatchWithDynamicShaderConstants\n-m_bDrawLast\n-m_bHasBakedLightingFromLightMap\n-m_bHasBakedLightingFromVertexStream\n-m_bIsNotMatchedToMaterial\n-m_bNoShadow\n-m_bOnlyShadow\n-m_bUseCompressedNormalTangent\n-m_bUseShadowFastPath\n+m_bAllowLadders\n+m_bCanFly\n+m_bCanSwim\n+m_bOptimizeFlySpacePathfinds\n+m_bStringPullFlySpacePathfinds\n+m_bSupportsTransitions\n+m_flFlyingTransitionTolerance\n+m_flGroundToWaterMaxHeight\n+m_flGroundToWaterTransitionDistance\n+m_flTransitionPenalty\n+m_flWaterToGroundMaxHeight\n+m_flWaterToGroundTransitionDistance\n+m_navHull\n medianFilterWalkableArea: Out of memory 'areas' (%d).\n medium\n mergeAndFilterLayerRegions: Out of memory 'regions' (%d).\n@@ -478,6 +482,7 @@ navsystem.dll\n node_index\n nodes\n optionallycompressedtangentframe\n+p\\r0\\fP!E\n posxyz\n quiet\n radius used to raise/lower corners in nearby areas when raising/lowering corners.\n@@ -551,6 +556,9 @@ source_file_searchpath\n tangent\n tangentu_signv\n texcoord\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n very_fast\n vnotify_ui\n waiting_group"
        },
        {
          "filename": "game/bin/win64/networksystem_strings.txt",
          "status": "modified",
          "additions": 28,
          "deletions": 32,
          "changes": 60,
          "patch": "@@ -16,10 +16,14 @@\n   system status: %s\\n\n   version max  : %u.%u\\n\n   version used : %u.%u\\n\n- !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$0\n+ !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n  %dms faster than direct ping of %dms\n  (08@HPX`j\n+ (08@HPXbpq\n  (08@HPZ\n+ (08@HRpq\n+ (08@Jpq\n+ (0X`hpzpq\n  - keeping around as cacheable shared connection\n  [+add recip %d]\n  [COMPLEX]\n@@ -154,6 +158,7 @@\n (NULL)\n (This list may include POPs without any gameservers)\\n\n (compressed)\n+(fpy\n (stream: %s%s local: %s%s)\n *pEnd > *pStart\n + include\n@@ -256,17 +261,14 @@\n 0 bit issue, spot 3\n 0 bit issue, spot 4\n 08@HR\n-0v8X\n-2\\vp$E\n+08@Jpq\n+0>PQ\n+8Fpu\n ::Storage_t\n <classname> <fieldname>:  spew why field was excluded from networking for classname.\n-@08N8X\n-@HPX`hv@r\n-@HVP\n-@Nps\n-@f8X\n-@n8X\n-AA:P\n+@08N\n+@6po\n+@HPX`hv\n Accepting Steam Net connection %s\\n\n AckSeqNum\n Activates/deactivates net message validation\n@@ -431,15 +433,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CSerializer\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,int,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,int,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CFieldPath::Path_t,6,int,class CMemAllocAllocator>,struct CFieldPath::Path_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned int,3,int,class CMemAllocAllocator>,unsigned int,int>::AddMultipleToTail\n-CUtlRBTree<int,class CDefLess<int>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<int,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CNetChan::SplitPlayer_t,class CLessFunc<&public: static bool __cdecl CNetChan::SplitPlayer_t::Less(struct CNetChan::SplitPlayer_t const &,struct CNetChan::SplitPlayer_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CNetChan::SplitPlayer_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::Node_t,class CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct OverrideWork_t,class CLessFunc<&public: static bool __cdecl OverrideWork_t::Less(struct OverrideWork_t const &,struct OverrideWork_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct OverrideWork_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlSortVector<int,class CNetworkMessages::CPriorityLess,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::Find\n CUtlSortVector<int,class CNetworkMessages::CPriorityLess,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::InsertIfNotFound\n CacheableConnectionExpired\n@@ -507,7 +500,6 @@ Error installing message handlers into a net channel: missing handlers in channe\n Error parsing message type %d (%s)\n Error processing network message %s! Channel is closing!\\n\n Error! Failed to WSAStartup! err = %d.\\n\n-Error:  SkipPropData_ with invalid GetFieldAndBaseDepthByPath result (result.m_pField == nullptr), %s unable to find field for path '%s', reading field %d starting at bit %d!\n Error: Components count + networkable data type must be the same for all instances of network field serializer (%s)!\\n\n Error: Duplicate network array field serializer registered (%s)!\\n\n Error: Duplicate network field change callback registered (%s)!\\n\n@@ -677,9 +669,12 @@ Opened Steam Net Connection on socket '%s' to %s, connection %s\\n\n Order,'From','To',Bits\\n\n OutSeqNumAck\n Overrides IP for multihomed hosts\n-P08N8X\n-P6Pl\n-P6p`\n+P08@Jpq\n+P08J\n+P08N\n+P2pq\n+P6 R\n+P:pq\n PACKET_STATUS_DROPPED\n PACKET_STATUS_INVALID\n PACKET_STATUS_NORMAL\n@@ -868,6 +863,7 @@ WriteFields\n WriteToBuffer Message %s is not initialized! Probably missing required fields!\\n\n Writing %d bits for path %s of serializer %s entity %d, this will fail to parse\\n\n X`hr\n+Xf0v\n [ Net Message Info: %s ]\\n\n [%s] Queued message count %d exceeds limit of %s=%d.  Allowing due to engine_frametime_warnings_enable=false\\n\n [%s] high frame misdelivery %.1f%%, %d/%d of %d frames dropped/reordered, %.0fms ping, %.0fms peak jitter\\n\n@@ -879,6 +875,7 @@ X`hr\n [context entity 0x%p]\n [opaque]\n \\nNon-networkables\\n\\n\n+\\nPDG\n \\rBytes\n \\tCannotBeNetworked        = %s\\n\n \\tCategory Mask            = %08X\\n\n@@ -891,9 +888,9 @@ X`hr\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\n \\vInSeqNum\n \\vMsgTick\n-`f8X\n-`n8X\n-aBv8X\n+`2pq\n+`60O\n+`6PU\n activated\n added\n aggegated\n@@ -912,6 +909,7 @@ avg_packet_in\n avg_packet_loss\n avg_packet_out\n backing paths\n+binary\n bit %d - %d (%d bits/%d bytes):\\n\n both states\n building fake field for %s %s\\n\n@@ -970,9 +968,9 @@ g_pSteamNetworkingSockets\n g_pSteamNetworkingUtils\n groupindex\n groupnames\n-hAX%\n has_network_encoding_data\n hostip\n+hpzpq\n huge\n identified %d entity related c++ field shadowing issues:\\n\n include\n@@ -1055,7 +1053,6 @@ net_skip_redundant_change_callbacks\n net_spewcounts\n net_spewserializer\n net_status\n-net_use_delta_property_fastpath\n net_use_packet_compression\n net_validatemessages\n net_validatemessages = %d\\n\n@@ -1078,9 +1075,9 @@ out-of-order\n outgoing_data_bytespersecond\n outgoing_sequence\n outgoing_sequence_start\n-p08@H^8X\n-p0jP\n-p>8X\n+p08@H^\n+p0j@\n+p2pq\n p\\rP\\f0!h\n packet_status\n parallel\n@@ -1089,7 +1086,6 @@ pending data\n pmInfoDest.m_pFlattenedSerializer\n pmInfoDest.m_unPolymorphicTypeId == pmInfoSource.m_unPolymorphicTypeId\n pmInfoSource.m_pFlattenedSerializer\n-pn8X\n pointer field\n polymorphic\n polymorphic [forced]"
        },
        {
          "filename": "game/bin/win64/panorama_strings.txt",
          "status": "modified",
          "additions": 81,
          "deletions": 93,
          "changes": 174,
          "patch": "@@ -10,14 +10,17 @@\n     Signature Algorithm: \n    %60s: %6d (pending %6d)\\n\n   ##%%&&))**,,//1122447788;;==>>@@CCEEFFIIJJLLOOQQRRTTWWXX[[]]^^aabbddgghhkkmmnnppssuuvvyyzz||\n- !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$8\n+ !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n  !\"#$%%&'()*+,-../0123456789:;<=>?@ABCDEFGHIJKLLMNOPQRSTUVWXY[]_`bdefhjlnprtvz|~\n  %4hf\n  %s%lu (%s0x%lx)\\n\n  ' ) - 3 G M Q _ c e i w } \n  (%ld unused bits)\\n\n  (08@HPX`j\n+ (08@HPXb\n  (08@HPZ\n+ (08@HR\n+ (0X`hpz\n  (INVALID PSS PARAMETERS)\\n\n  (Negative)\n  (derived from %s)\n@@ -262,53 +265,54 @@ $hRh\n (!(1(=(?(I(Q([(](a(g(u(\n ((long)msg_hdr->msg_len) > 0\n (0'yX\n-(1QI\n+(1oJ\n (4?NewFromUnsigned@Integer@v8@@SA?AV?$Local@VInteger@v8@@@2@PEAVIsolate@2@I@Z\n+(5BJ\n+(5EJ\n+(5JJ\n (5Me\n-(5NI\n+(5OJ\n (5jP\n-(9jI\n-(AvI\n+(A9J\n (BZq\n (D4D\n-(EKI\n-(EUI\n+(ENJ\n+(EaJ\n+(EjJ\n (I?Value@External@v8@@QEBAPEAXXZ\n-(IHI\n-(IOI\n-(InI\n-(MAI\n-(MLI\n (NONE)\n-(QEI\n+(QkJ\n (U1h\n-(UgI\n+(U2J\n+(U5J\n+(U7J\n+(Y0J\n+(YyJ\n (ZdOt\\n&\n (_Assert)\n-(aVI\n-(ajI\n+(acJ\n (anonymous)\n-(aqI\n (d4t8\n (down)\n-(eQI\n (fS{ggRcjh\n (h`H1pqA\n (i/Al\n-(iWI\n+(i8J\n+(iHJ\n+(iMJ\n+(iQJ\n (jvg;\n (memory)\n-(uUI\n+(qGJ\n (undefined)\n (unset)\n (unset) w/parent: %s\n (vQF\n (wMww\n-(yGI\n-(yaI\n-(yiI\n-(ynI\n-(ypI\n+(yCJ\n+(yRJ\n+(yeJ\n+(ylJ\n )!)#)?)G)])e)i)o)u)\n )4?NewFromUtf8@String@v8@@SA?AV?$MaybeLocal@VString@v8@@@2@PEAVIsolate@2@PEBDW4NewStringType@2@H@Z\n )Ck?B\n@@ -583,13 +587,13 @@ $hRh\n .?AVCStylePropertyOpacityMask@panorama@@\n .?AVCStylePropertyOverflow@panorama@@\n .?AVCStylePropertyPadding@panorama@@\n+.?AVCStylePropertyParagraphSpacing@panorama@@\n .?AVCStylePropertyPerspective@panorama@@\n .?AVCStylePropertyPerspectiveOrigin@panorama@@\n .?AVCStylePropertyPosition@panorama@@\n .?AVCStylePropertyRotate2DCentered@panorama@@\n .?AVCStylePropertySaturation@panorama@@\n .?AVCStylePropertyScale2DCentered@panorama@@\n-.?AVCStylePropertySearch@panorama@@\n .?AVCStylePropertySound@panorama@@\n .?AVCStylePropertyTextAlign@panorama@@\n .?AVCStylePropertyTextDecoration@panorama@@\n@@ -621,14 +625,12 @@ $hRh\n .?AVCTransformScale3D@panorama@@\n .?AVCTransformSkew3D@panorama@@\n .?AVCTransformTranslate3D@panorama@@\n-.?AVCUIAnimationThread@CUIRenderEngine@panorama@@\n .?AVCUIEngine@panorama@@\n .?AVCUIEngineSource2@panorama@@\n .?AVCUIInputEngine@panorama@@\n .?AVCUIPanel@panorama@@\n .?AVCUIRenderDeviceSource2@panorama@@\n .?AVCUIRenderEngine@panorama@@\n-.?AVCUIRenderThread@CUIRenderEngine@panorama@@\n .?AVCUISoundSystem@panorama@@\n .?AVCUIWindowInput@panorama@@\n .?AVCVectorGraphic@@\n@@ -650,8 +652,8 @@ $hRh\n .?AVIPanoramaUIEngine@@\n .?AVIResourceTypeManager@@\n .?AVIShaderReloadListener@@\n+.?AVISource2Surface@panorama@@\n .?AVITextureResidencyListener@@\n-.?AVIUI3DSurface@panorama@@\n .?AVIUIDoubleBufferedTexture@panorama@@\n .?AVIUIEngine@panorama@@\n .?AVIUIEvent@panorama@@\n@@ -987,10 +989,12 @@ $hRh\n 02V8[\n 05=k\n 08@HR\n+08@J\n 08bX\n 09,h\n 0;Q5[\n 0<cz\n+0>pc=\n 0M2~@p\n 0W/5\n 0Z@q\n@@ -1012,6 +1016,7 @@ $hRh\n 1GNK\n 1H@H\n 1L$1\n+1\\v%14\n 1\\v5#d\n 1b4Ef\n 1f\\t3Qg^y\n@@ -1046,6 +1051,7 @@ $hRh\n 2f)l=\n 2nIg\n 2p\"6\n+2pO$\n 2prB\n 3%3+3/353A3G3[3_3g3k3s3y3\n 31tPR\n@@ -1110,7 +1116,6 @@ $hRh\n 6?NumberValue@Value@v8@@QEBA?AV?$Maybe@N@2@V?$Local@VContext@v8@@@2@@Z\n 6H,N\n 6O|T%\n-6Pp<\n 6Qd=\n 6_wEX\n 6afD\n@@ -1120,6 +1125,7 @@ $hRh\n 6l13\n 6lkc\n 6myY;\n+6px=\n 6qo~\n 6r-m_v\n 6r1ij\n@@ -1151,6 +1157,7 @@ $hRh\n 7wKR\n 7zRQ\n 8\"3hrf\n+8)KJ\n 8+Qw\n 80F2<\n 82\\n:XPH\n@@ -1159,6 +1166,7 @@ $hRh\n 8= zp\n 8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z\n 8A6j\n+8BP!\\n\n 8GZS\n 8SIffK5W\n 8TZvrv<\n@@ -1182,6 +1190,7 @@ $hRh\n 9J9;6\n 9N1=@\n 9QTA\n+9R}J\n 9Y@nJM\n 9Zr4\n 9\\not\n@@ -1333,13 +1342,15 @@ $hRh\n ?uWS\n ?x29\n @!@%@+@1@?@C@E@]@a@g@m@\n+@08N\n @0pp\n-@6Pt<\n-@6Pv<\n+@60d=\n+@60f=\n @?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z\n @BH]f\n-@HPX`hv@\n+@HPX`hv y=\n @MfKZ\n+@NPz=\n @Pgl\n @Pu\\rm\n @WE]X\n@@ -1736,7 +1747,6 @@ BUF_strndup\n BY_FILE_CTRL\n BY_Lq)\n BZZn\\rN]#8f'\n-B\\tV_isstrlower_fast\n B\\vP\\n0\n B`4I\n Bad boolean\\n\n@@ -2091,11 +2101,15 @@ CUIWindowInput::ProcessMouseTrackingResults - Recalculate handles\n CUIWindowInput::SetInputFocus\n CUtlDict<class CLocVariableValue const *,class CDefFastCaselessStringLess>::Insert\n CUtlDict<class CUtlString,class CDefFastCaselessStringLess>::Insert\n+CUtlDict<class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess>::Insert\n+CUtlDict<class v8::Global<class v8::String> *,class CDefStringLess>::Insert\n+CUtlDict<class v8::Global<class v8::Value> *,class CDefStringLess>::Insert\n+CUtlDict<short,class CDefFastCaselessStringLess>::Insert\n CUtlDict<struct ImageInfo_t,class CDefFastCaselessStringLess>::Insert\n+CUtlDict<struct panorama::PanelDescription_t *,class CDefStringLess>::Insert\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CUtlString,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<class panorama::CUIPanel *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct panorama::CUIWindowInput::TopMostFocus_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n-CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct panorama::PropertyInTransition_t *,unsigned char>,unsigned char,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlStringToken,class CUtlVector<class panorama::CPanelPtr<class panorama::IUIPanel>,int,class CUtlVectorMemory_Growable<class panorama::CPanelPtr<class panorama::IUIPanel>,int,0> >,class CDefEquals<class CUtlStringToken>,struct DefaultHashFunctor<class CUtlStringToken>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlStringToken,class CUtlVector<class panorama::CPanelPtr<class panorama::IUIPanel>,int,class CUtlVectorMemory_Growable<class panorama::CPanelPtr<class panorama::IUIPanel>,int,0> >,class CDefEquals<class CUtlStringToken>,struct DefaultHashFunctor<class CUtlStringToken>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int> *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int> *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlVector<class panorama::IInputCapture *,int,class CUtlVectorMemory_Growable<class panorama::IInputCapture *,int,0> > *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlVector<class panorama::IInputCapture *,int,class CUtlVectorMemory_Growable<class panorama::IInputCapture *,int,0> > *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int>::AddMultipleToTail\n@@ -2109,48 +2123,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::C\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,class CUtlVector<class panorama::CPanoramaSymbol,int,class CUtlVectorMemory_Growable<class panorama::CPanoramaSymbol,int,0> > *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,class CUtlVector<class panorama::CPanoramaSymbol,int,class CUtlVectorMemory_Growable<class panorama::CPanoramaSymbol,int,0> > *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail\n-CUtlRBTree<class panorama::CImageLoaderTask *,class CDefLess<class panorama::CImageLoaderTask *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class panorama::CImageLoaderTask *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::Node_t,class CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::Node_t,class CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::Node_t,class CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::Node_t,class CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::Node_t,class CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct panorama::PropertyInTransition_t *,class panorama::CStylePropertyInTransitionLess,unsigned char,class CUtlLeanVector<struct UtlRBTreeNode_t<struct panorama::PropertyInTransition_t *,unsigned char>,unsigned char,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<unsigned __int64,class CDefLess<unsigned __int64>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<unsigned __int64,int>,int,class CMemAllocAllocator> >::Insert\n CUtlSortVector<class CUtlString,class panorama::FontNameListSort_t,class CUtlVector<class CUtlString,int,class CUtlVectorMemory_Growable<class CUtlString,int,0> > >::FindLessOrEqual\n CUtlSortVector<class panorama::CStyleKeyFrame *,class panorama::CUtlSortVectorCStyleKeyFramePtrLess,class CUtlVector<class panorama::CStyleKeyFrame *,int,class CUtlVectorMemory_Growable<class panorama::CStyleKeyFrame *,int,0> > >::Find\n CUtlSortVector<class panorama::CStyleKeyFrame *,class panorama::CUtlSortVectorCStyleKeyFramePtrLess,class CUtlVector<class panorama::CStyleKeyFrame *,int,class CUtlVectorMemory_Growable<class panorama::CStyleKeyFrame *,int,0> > >::Insert\n@@ -2166,6 +2138,9 @@ Cam\\v;\n Camellia(128)\n Camellia(256)\n Can't call GetSourceCRC32 for resource layout content.\n+CanLocalize\n+CanLocalize() requires a string as its first argument\n+CanLocalize() requires one argument\n CancelScheduled\n CancelScheduled() must be called with 1 argument\n Cancelled\n@@ -2178,6 +2153,7 @@ Cessation Of Operation\n ChGg\n ChangeHoverState\n Char=\n+Check whether the given localization token is known to the localization system.\n CheckChildrenScrolledIntoView\n ClQ(|\n ClearPanelEvent\n@@ -2208,7 +2184,7 @@ Content-Type: application/ocsp-request\\r\\nContent-Length: %d\\r\\n\\r\\n\n Content-Type: multipart/signed;\n Content-Type: text/plain\\r\\n\\r\\n\n ContextMenu\n-Controls blending mode for the panel.  See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\\n-s2-mix-blend-mode: multiply;\\n-s2-mix-blend-mode: screen;\\n-s2-mix-blend-mode: additive\\n;-s2-mix-blend-mode: opaque;</pre>\n+Controls blending mode for the panel.  See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\\n-s2-mix-blend-mode: multiply;\\n-s2-mix-blend-mode: screen;\\n-s2-mix-blend-mode: additive\\n;-s2-mix-blend-mode: opaque;-s2-mix-blend-mode: overlay\\n;-s2-mix-blend-mode: hardlight\\n;-s2-mix-blend-mode: linearburn\\n;-s2-mix-blend-mode: darken\\n;-s2-mix-blend-mode: lighten\\n;-s2-mix-blend-mode: colordodge\\n;-s2-mix-blend-mode: colorburn\\n;-s2-mix-blend-mode: hue\\n;</pre>\n Controls if the background should be repeated in the horizontal and vertical directions.<br><br>Possible values per direction:<br>\"repeat\" - (default) Repeated in the specified direction until it fills the panel<br>\"space\" - Repeated as many times as required to fill the panel w/o being clipped. Space is added between images to to align first and last image with panel edges.<br>\"round\" - Repeated as many times as required to fill the panel w/o being clipped. The image is resized to align first and last image with panel edges.<br>\"no-repeat\" - Not repeated<br><br>Possible single values:<br>\"repeat-x\" - equals \"repeat no-repeat\"<br>\"repeat-y\" - equals \"no-repeat repeat\"<br><br><b>Examples:</b><pre>background-repeat: repeat; // equals \"repeat repeat\" (default)\\nbackground-repeat: repeat space; // repeats horizontally, spaces vertically \\nbackground-repeat: no-repeat round; // 1 column of images, scaled to fit evenly</pre>\n Controls if the panel is visible and is included in panel layout. Possible values:<br>\"visible\" - panel is visible and included in layout (default)<br>\"collapse\" - panel is invisible and not included in layout\n Controls texture sampling mode for the panel. Set to alpha-only to use the textures alpha data across all 3 color channels, or point for point sampling.<br><br><b>Examples:</b><pre>texture-sampling: normal;\\ntexture-sampling: alpha-only;\\ntexture-sampling: point;</pre>\n@@ -2479,11 +2455,6 @@ DYNAMIC_CTRL\n DYNAMIC_GET_DATA_CTX\n DYNAMIC_LOAD\n DYNAMIC_SET_DATA_CTX\n-D\\tV_isvalidhex\n-D_BORDER_DASH\n-D_TEXTURETYPE\n-D_USEBORDERCLIP\n-D_USERADIALCLIP\n Data Encipherment\n DbgIsReloadingScript\n DcO/lcK+hSK\n@@ -2914,7 +2885,7 @@ FV|FgUV\n F\\rH'4\n Failed to KV3 transfer block: %d\\n\n Failed to add include for file: %s\n-Failed to allocate an instance of a class\n+Failed to allocate an instance of a class of type '%s'\n Failed to load a layout that is required.\n Failed to load image data from %s\\n\n Failed to normalize @import url '%s'\n@@ -3353,6 +3324,7 @@ MODULE_RUN\n MS[;6\n MZL}\n M\\rLAI)haL<|p\\t\\t\n+M\\tV_isstrlower_fast\n M\\vOj\n Mail\n Make a web request (disabled)\n@@ -3570,6 +3542,7 @@ OPENSSL_init\n OPENSSL_malloc Error\n OTHERNAME\n O\\r5x\n+O\\tV_isvalidhex\n O_yG|\n Oakley-EC2N-3\n Oakley-EC2N-4\n@@ -3606,8 +3579,12 @@ P-224\n P-256\n P-384\n P-521\n+P08@J\n+P08J\n+P08N\n P1\\t98\"\n P5[1\n+P6`d=\n PAGN_4\n PARAMETERS\n PARSE_BAG\n@@ -3844,9 +3821,6 @@ PanoramaMovie.Default\n PanoramaScript\n PanoramaUI\n PanoramaVideoPlayer\n-Panorama_OutputColor\n-Panorama_OutputDepth\n-Panorama_OutputIntermediate\n Parameters\n Peer haven't sent GOST certificate, required for selected ciphersuite\n PerformLayout\n@@ -4129,7 +4103,6 @@ SDL_OpenJoystick\n SDL_RemoveEventWatch\n SDL_RumbleGamepad\n SDL_ShowSimpleMessageBox\n-SEARCH!!!!\n SECG curve over a 112 bit prime field\n SECG curve over a 113 bit binary field\n SECG curve over a 128 bit prime field\n@@ -4363,6 +4336,7 @@ Sets 2 dimensional rotation degrees that apply to the quad for this panel prior\n Sets an opacity brush to apply to the panel and all it's children during composition.<br><br><b>Example:</b><pre>opacity-brush: gradient( linear, 0% 0%, 0% 100%, from( #ffffffff ), to( #ffffff00 ) );</pre>\n Sets how the panel is positioned relative to its parent. \"static\" means position in the default way. \"fixed\" means position in the default way, but ignoring the parent's scroll offset.<br><br><b>Example:</b><pre>layout-position: fixed;</pre>\n Sets letter-spacing for text in a string. Possible values:<br>normal - no manual spacing<br>&lt;pixels&gt; - Any fixed pixel value (ex: \"1px\")\n+Sets paragraph-spacing for text in a string. Only affects multiple line breaks in a row (\\n\\n, <p>, etc.).Possible values:<br>normal - no manual spacing, defauls to line height<br>&lt;pixels&gt; - Any fixed pixel value (ex: \"1px\")\n Sets the Opacity of background-image<br><br><b>Examples:</b><pre>background-img-opacity: 0.5;</pre>\n Sets the amount of blur to apply to the contents behind this panel during composition.  Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes.  Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf.  As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>background-blur: gaussian( 2.5 );\\nbackground-blur: gaussian( 6, 6, 1 );</pre>\n Sets the amount of blur to apply to the panel and all it's children during composition.  Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes.  Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf.  As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>blur: gaussian( 2.5 );\\nblur: gaussian( 6, 6, 1 );\\n\n@@ -4672,6 +4646,7 @@ Ut]<E\n Uv1t\n Uz_G3=\n V07;m\n+V0b=\n V2I_ASIDENTIFIERS\n V2I_AUTHORITY_INFO_ACCESS\n V2I_AUTHORITY_KEYID\n@@ -4715,7 +4690,6 @@ VNotify Abandoned (Not enabled)\\n\n VNotify Sent\\n\n VNotify StartProcess failed!\\n\n VNotify: %s\\n\n-VPr<\n VY5[;o\n VZ#-DLU[3=h\n V\\rKk\n@@ -5050,6 +5024,7 @@ Z~wl\n \\n5a=Z\n \\n:82H\n \\nJS(%s:%d:%d)\\n%s\\n%s\\n\n+\\nWKJ\n \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\n \\n\\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n \\n\\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\\n\\tNot suitable for ECDSA.\\n\\tQuestionable extension field!\n@@ -5128,6 +5103,7 @@ _}eOk\n `28)fk\n `3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z\n `:zQF\n+`AMJ\n `D$daM-l\n `DZG\n `F?ToLocalEmpty@api_internal@v8@@YAXXZ\n@@ -5170,7 +5146,6 @@ aRWZ5\n aRecord\n aSRP\n aXvC\n-a\\tV_powd\n a]?xG\n aaControls\n ac-auditEntity\n@@ -5422,6 +5397,7 @@ bie.+\n bignum out of range\n bignum routines\n bignum too long\n+binary\n bio not set\n bio write failure\n biometricInfo\n@@ -6012,6 +5988,8 @@ col-resize\n collapse\n color-stop\n color-stop( %s, \n+colorburn\n+colordodge\n command not supported\n command takes input\n command takes no input\n@@ -6199,6 +6177,7 @@ d[kHy\n d_r_0\n darkblue\n darkcyan\n+darken\n darkgoldenrod\n darkgray\n darkgreen\n@@ -6635,6 +6614,7 @@ file://{resources}/default_keybinds.cfg\n file://{resources}/keybinds.cfg\n file://{resources}/window_keybinds.cfg\n filename too big\n+fill\n fill \n fill-opacity\n fill-parent-flow\n@@ -6761,13 +6741,13 @@ hF\\rDz\n hFcg\n hJxRX@_\n hN2D\n-hQ\\I\n hRB.\n hW*m\n hW1M\n hW_z\n hX@e\n h`Zr\n+hardlight\n hash\n hashAlgorithm\n hashFunc\n@@ -7566,6 +7546,7 @@ l7@J\n lC57\n lDcW\n lM2p\n+l\\tV_powd\n language\n last octet invalid\n last-child\n@@ -7601,6 +7582,7 @@ light\n lightblue\n lightcoral\n lightcyan\n+lighten\n lightgoldenrodyellow\n lightgray\n lightgreen\n@@ -7619,6 +7601,7 @@ line\n line-height\n line-through\n linearGradient\n+linearburn\n linen\n list cannot be null\n list error\n@@ -8148,6 +8131,8 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n+p08@H^\n+p2P!\\n\n p2{l\n p4Z3\n p5Z3\n@@ -8167,7 +8152,6 @@ pSourceFunc\n pSpecified\n pTexture\n pU>\\AL\n-p\\rP\\f0\n p^i9\n packet length too long\n pad_a\n@@ -8229,7 +8213,7 @@ panorama::CSource2Surface::DrawBasicQuads\n panorama::CSource2Surface::DrawFancyQuad\n panorama::CStyleSymbol::CStyleSymbol\n panorama::CUIEngine::PanelDestroyed\n-panorama::CUIEngine::UpdateVideoTextures(7522): \n+panorama::CUIEngine::UpdateVideoTextures(7514): \n panorama::CUIPanel::AttachChild\n panorama::CUIPanel::DetachChild\n panorama::CUIPanel::~CUIPanel\n@@ -8252,6 +8236,7 @@ panorama_video_tex_%s_%d_%d.vtex\n panoramasymbol\n panorma_vertex_texturedlayout\n papayawhip\n+paragraph-spacing\n parameter\n parameter encoding error\n parameters\n@@ -9250,6 +9235,9 @@ too large\n too long\n too many iterations\n too many temporary variables\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n tooltip-arrow-position\n tooltip-body-position\n tooltip-position"
        },
        {
          "filename": "game/bin/win64/panorama_text_pango_strings.txt",
          "status": "modified",
          "additions": 27,
          "deletions": 15,
          "changes": 42,
          "patch": "@@ -13,8 +13,11 @@\n  %s%lu (%s0x%lx)\\n\n  ' ) - 3 G M Q _ c e i w } \n  (%ld unused bits)\\n\n- (08@HPX`j`\n- (08@HPZ`\n+ (08@HPX`j\n+ (08@HPXb`k\n+ (08@HPZ\n+ (08@HR`k\n+ (0X`hpz`k\n  (INVALID PSS PARAMETERS)\\n\n  (Negative)\n  8f\\ff\n@@ -257,7 +260,6 @@ $hRh\n (\\v2,.CUIFontFilePackagePB.CUIEncryptedFontFilePB\n (d4t8\n (fS{ggRcjh\n-(fp5\n (h`H1pqA\n (i/Al\n (jvg;\n@@ -628,8 +630,8 @@ $hRh\n 0123456789\n 02V8[\n 05=k\n-08@HR`\n-08B`\n+08@HR\n+08@J`k\n 08bX\n 09,h\n 0;Q5[\n@@ -680,7 +682,7 @@ $hRh\n 2Zq)\n 2\\fWQx\n 2\\rlhp\n-2\\vp8\n+2\\vp8\\r\n 2^pV\n 2a\"l\n 2bT~\n@@ -786,21 +788,19 @@ $hRh\n 7zRQ\n 8+Qw\n 80F2<\n+81U%\n 82\\n:XPH\n 851Pe\n 8<pl\n 8= zp\n 8A6j\n-8Fp1\n 8GZS\n 8SIffK5W\n 8TZvrv<\n 8\\v8!83858A8G8K8S8W8_8e8o8q8}8\n 8]Vc2\n 8ca1\n 8dS2\n-8e0%\n-8ia%\n 8pe7?\n 8q-S*]X\n 8sOy\n@@ -901,8 +901,10 @@ $hRh\n ?uWS\n ?x29\n @!@%@+@1@?@C@E@]@a@g@m@\n+@08NX\n @0pp\n @BH]f\n+@HPX`hv\n @MfKZ\n @Pgl\n @Pu\\rm\n@@ -923,7 +925,6 @@ A9ur\n A<fP\n A>x8\n AA Compromise\n-AA:P\n AACompromise\n AC2,h\n ACCESS_DESCRIPTION\n@@ -1478,10 +1479,10 @@ CUITextLayoutPango::DrawRun\n CUITextLayoutPango::DrawRun - Glyph render\n CUITextLayoutPango::GetCharacterCoordinates\n CUITextLayoutPango::GetCharacterRangeCoordinates\n+CUITextLayoutPango::GetLineRangeCoordinates\n CUITextLayoutPango::HitTestPoint\n CUITextLayoutPango::Initialize\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct panorama::CUIFontLoaderLinux::FontMemory_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct panorama::CUIFontLoaderLinux::FontMemory_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail\n-CUtlRBTree<struct CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::Node_t,class CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CVcn\n C[L6\n C\\lVQ\n@@ -2181,6 +2182,7 @@ GetCharacterCoordinates\n GetCharacterRangeCoordinates\n GetConsoleCP\n GetCursorInfo\n+GetLineRangeCoordinates\n GetQueueStatus\n GetSystemTime\n Gew}\n@@ -2622,7 +2624,11 @@ P-224\n P-256\n P-384\n P-521\n+P08@J`k\n+P08J\n+P08NX\n P1\\t98\"\n+P2`k\n P5[1\n PAGN_4\n PANGO_LIBDIR\n@@ -2827,8 +2833,10 @@ Parameters\n Peer haven't sent GOST certificate, required for selected ciphersuite\n Permanent Identifier\n Permitted\n+Pfp>\n Pm8A?\n PmR\"H?\n+Pn0@\n Policy Qualifier CPS\n Policy Qualifier User Notice\n Polish\n@@ -2992,8 +3000,8 @@ RSA_verify\n RSA_verify_ASN1_OCTET_STRING\n RSA_verify_PKCS1_PSS\n RSA_verify_PKCS1_PSS_mgf1\n-R\\fp8\n R\\r1>Vp\n+R\\vp8\\r\n R]Di\n Rbg.E\n ReadConsoleInputW\n@@ -3582,9 +3590,8 @@ XRJ2\n XWY]\n XYD%\n X\\tQo\n-X`hr`\n+X`hr\n Xd3h\n-Xf02\n XfJ7\n XjfR\n XqgA+\n@@ -3762,6 +3769,7 @@ a5<p\n a;Tg\n a@XZ\n aA0k\n+aBvX\n aD/x\n aDSS\n aECDH\n@@ -4831,6 +4839,7 @@ g|MT\n h&eC\n h*Ax\n h0XB\n+h1P%\n h2Wl\n h2n_\\\n h5N.\n@@ -4877,6 +4886,7 @@ holdInstructionReject\n homePostalAddress\n homeTelephoneNumber\n houseIdentifier\n+hpz`k\n hr_H\n http request\n https proxy request\n@@ -5894,6 +5904,8 @@ p.other\n p.ppBasis\n p.prime\n p.tpBasis\n+p08@H^X\n+p2`k\n p2{l\n p4Z3\n p5Z3\n@@ -5927,6 +5939,7 @@ pango_attr_list_new\n pango_attr_list_unref\n pango_attr_shape_new\n pango_attr_size_new\n+pango_attr_size_new_absolute\n pango_attr_stretch_new\n pango_attr_strikethrough_new\n pango_attr_style_new\n@@ -6224,7 +6237,6 @@ rX&O0\n rZ1VwGf5\n rZPM\n r\\vDi\n-r\\vp8\n rand\n rand2\n random number generation failed"
        },
        {
          "filename": "game/bin/win64/panoramauiclient_strings.txt",
          "status": "modified",
          "additions": 45,
          "deletions": 37,
          "changes": 82,
          "patch": "@@ -1,6 +1,9 @@\n- !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$h\n+ !\"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n  (08@HPX`j\n+ (08@HPXb\n  (08@HPZ\n+ (08@HR\n+ (0X`hpz\n  <b>@import</b> \n  cubic-bezier( %1.3f, %1.3f, %1.3f, %1.3f ) \n  ellipsis\n@@ -351,6 +354,7 @@\n .?AVCStylePropertyOpacityMask@panorama@@\n .?AVCStylePropertyOverflow@panorama@@\n .?AVCStylePropertyPadding@panorama@@\n+.?AVCStylePropertyParagraphSpacing@panorama@@\n .?AVCStylePropertyPerspective@panorama@@\n .?AVCStylePropertyPerspectiveOrigin@panorama@@\n .?AVCStylePropertyPosition@panorama@@\n@@ -439,15 +443,17 @@\n .PEA_N\n .PEBVILocalizationString@panorama@@\n 08@HR\n-0:Ph\n-0vDA\n+08@J\n+0:Pj\n+0vt8\n 0x%4.4x \n+2\\vp$E\n 3?New@Number@v8@@SA?AV?$Local@VNumber@v8@@@2@PEAVIsolate@2@N@Z\n 3?New@Object@v8@@SA?AV?$Local@VObject@v8@@@2@PEAVIsolate@2@@Z\n 5butt\n 6?NumberValue@Value@v8@@QEBA?AV?$Maybe@N@2@V?$Local@VContext@v8@@@2@@Z\n-8B y\n 8C:\\buildworker\\csgo_rel_win64\\build\\src\\panorama\\layout\\stylepropertyfactory.cpp\n+8Qa'\n :context->%p->%s:\\n\n :context->null->UIEngine Global:\\n\n << LIST TRUNCATED >>\n@@ -462,7 +468,7 @@\n <span class=\"%s\">%p</span>\n <span class=\"%s\">%s</span>\n <span class=\"%s\">0x%x</span>\n-=\\tV_isbreakablewspace32\n+>paneleventsource\n ??0HandleScope@v8@@QEAA@PEAVIsolate@1@@Z\n ??0TryCatch@v8@@QEAA@PEAVIsolate@1@@Z\n ??0Utf8Value@String@v8@@QEAA@PEAVIsolate@2@V?$Local@VValue@v8@@@2@@Z\n@@ -477,20 +483,20 @@\n ?Enter@Isolate@v8@@QEAAXXZ\n ?Exit@Context@v8@@QEAAXXZ\n ?Exit@Isolate@v8@@QEAAXXZ\n-?FileOpenDialogDoubleClickFile\n ?For@Symbol@v8@@SA?AV?$Local@VSymbol@v8@@@2@PEAVIsolate@2@V?$Local@VString@v8@@@2@@Z\n ?FromJustIsNothing@api_internal@v8@@YAXXZ\n ?Get@Object@v8@@QEAA?AV?$MaybeLocal@VValue@v8@@@2@V?$Local@VContext@v8@@@2@I@Z\n ?GetCurrentContext@Isolate@v8@@QEAA?AV?$Local@VContext@v8@@@2@XZ\n ?GetName@Function@v8@@QEBA?AV?$Local@VValue@v8@@@2@XZ\n ?GlobalizeReference@api_internal@v8@@YAPEA_KPEAVIsolate@internal@2@_K@Z\n ?HasCaught@TryCatch@v8@@QEBA_NXZ\n-@08NDA\n+@08Nt8\n @?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z\n-@HPX`hvP\n+@DebugIndividualStyle\n+@HPX`hv\n @keyframes \n @keyframes '%s'\\r\\n{\\r\\n\n-@nDA\n+@nt8\n @panorama_streaming_load_local_images\n ABXY\n APIN_txt\n@@ -626,14 +632,10 @@ CPanel2DFactory:  Factory for '%s' already exists!!!!\\n\n CPanoramaVideoPlayer - Call video64.dll CVideoPlayer::Stop\n CStylePropertyFactory:  Factory for '%s' already exists!!!!\\n\n CStyleSymbol must become larger, cannot fit all style properties in uint8 anymore\n+CUtlDict<short,class CDefFastCaselessStringLess>::Insert\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::CPanel2D>,struct panorama::CDebugLayout::PanelDebugInfo_t,class CDefEquals<class panorama::CPanelPtr<class panorama::CPanel2D> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::CPanel2D> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::CPanel2D>,struct panorama::CDebugLayout::PanelDebugInfo_t,class CDefEquals<class panorama::CPanelPtr<class panorama::CPanel2D> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::CPanel2D> >,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,unsigned char,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,unsigned char,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlSortVector<class CUtlString,class panorama::FontNameListSort_t,class CUtlVector<class CUtlString,int,class CUtlVectorMemory_Growable<class CUtlString,int,0> > >::FindLessOrEqual\n Can't call Panorama Symbol constructor outside panorama.dll until UIEngine is initialized! Symbol: %s\n CanScrollHorizontal\n@@ -692,7 +694,7 @@ ContextMenuEvent\n ContextMenuEventDirect\n ContextMenuFadoutTime\n ControlBarRow\n-Controls blending mode for the panel.  See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\\n-s2-mix-blend-mode: multiply;\\n-s2-mix-blend-mode: screen;\\n-s2-mix-blend-mode: additive\\n;-s2-mix-blend-mode: opaque;</pre>\n+Controls blending mode for the panel.  See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\\n-s2-mix-blend-mode: multiply;\\n-s2-mix-blend-mode: screen;\\n-s2-mix-blend-mode: additive\\n;-s2-mix-blend-mode: opaque;-s2-mix-blend-mode: overlay\\n;-s2-mix-blend-mode: hardlight\\n;-s2-mix-blend-mode: linearburn\\n;-s2-mix-blend-mode: darken\\n;-s2-mix-blend-mode: lighten\\n;-s2-mix-blend-mode: colordodge\\n;-s2-mix-blend-mode: colorburn\\n;-s2-mix-blend-mode: hue\\n;</pre>\n Controls if the background should be repeated in the horizontal and vertical directions.<br><br>Possible values per direction:<br>\"repeat\" - (default) Repeated in the specified direction until it fills the panel<br>\"space\" - Repeated as many times as required to fill the panel w/o being clipped. Space is added between images to to align first and last image with panel edges.<br>\"round\" - Repeated as many times as required to fill the panel w/o being clipped. The image is resized to align first and last image with panel edges.<br>\"no-repeat\" - Not repeated<br><br>Possible single values:<br>\"repeat-x\" - equals \"repeat no-repeat\"<br>\"repeat-y\" - equals \"no-repeat repeat\"<br><br><b>Examples:</b><pre>background-repeat: repeat; // equals \"repeat repeat\" (default)\\nbackground-repeat: repeat space; // repeats horizontally, spaces vertically \\nbackground-repeat: no-repeat round; // 1 column of images, scaled to fit evenly</pre>\n Controls if the panel is visible and is included in panel layout. Possible values:<br>\"visible\" - panel is visible and included in layout (default)<br>\"collapse\" - panel is invisible and not included in layout\n Controls texture sampling mode for the panel. Set to alpha-only to use the textures alpha data across all 3 color channels, or point for point sampling.<br><br><b>Examples:</b><pre>texture-sampling: normal;\\ntexture-sampling: alpha-only;\\ntexture-sampling: point;</pre>\n@@ -711,7 +713,6 @@ CreatePanelWithCurrentContext\n CreateVideoPlayer\n CuesContainer\n CycleButton\n-D\\tV_isvalidhex\n DaisyInputTypeABXY\n DaisyInputTypePIN\n DaisyInputTypeRS\n@@ -726,7 +727,6 @@ DebugComputedRow\n DebugComputedValue\n DebugFrameLeftMargin\n DebugFrameRow\n-DebugIndividualStyle\n DebugInheritedStylesHeader\n DebugInspectOpacitySlider\n DebugLabelToggle\n@@ -851,6 +851,7 @@ FileNameTextEntry\n FileOpenDialog\n FileOpenDialogCancel\n FileOpenDialogClose\n+FileOpenDialogDoubleClickFile\n FileOpenDialogEntry\n FileOpenDialogFilesSelected\n FileOpenDialogFilterChanged\n@@ -888,7 +889,6 @@ FrameSection\n FrameStyleBlock\n Fullscreen\n GB=\\nHB\n-G\\tV_iswcntrl\n Ga=UU\n GamepadInput\n GenericTextInputHandlerID\n@@ -949,7 +949,7 @@ HTMLTitle\n HTMLURLChanged\n HTMLUpdatePageSize\n HTMLVerticalScrollBar\n-H\\tV_iswdigit\n+H\\tV_isbreakablewspace32\n Has Cached Command List\n HasCachedCommandList\n HasCaptions\n@@ -1024,7 +1024,6 @@ Just ignore the calculations, you can zoom to this amount (will validate that th\n KEY_BACKSPACE: Accepted.\\n\n KEY_BACKSPACE: Clearing state due to %d\\n\n KEY_BACKSPACE: Rejected.\\n\n-K\\tV_iswspace\n L?fff?\n LT_txt\n LabelHREF\n@@ -1104,6 +1103,7 @@ NumberEntry\n NumberEntryChanged\n NumberEntryDecrementValue\n NumberEntryIncrementValue\n+O\\tV_isvalidhex\n Offscreen\n OnMouseMove\n OnPanelStyleChanged\n@@ -1113,9 +1113,9 @@ OpenStyleFileForEditAtByteIndex\n OpenText\n Option_%d\n OverMaxPips\n+P08@J\n P08J0\n-P08NDA\n-P60. \n+P08Nt8\n PageDown\n PageLeft\n PagePanelDown\n@@ -1153,7 +1153,6 @@ PanoramaUIEngine interface not set up\\n\n PanoramaUIEngine setup failed\\n\n PanoramaVideoPlayer\n ParentWithProperties\n-Pf0/ \n Picked\n PlaceholderText\n Play\n@@ -1189,6 +1188,8 @@ PropertySection\n PropertyTransitionEnd\n RBLegend\n RT_txt\n+R\\tV_iswcntrl\n+R\\vp$E\n RadioBox\n RadioButton\n RadioSelected\n@@ -1228,6 +1229,7 @@ RightArrowVisible\n RightLegend\n RightMouseScrollRegion\n RightOfFocus%d\n+S\\tV_iswdigit\n Saved log to '%s'\\n\n Scale for the pinch zoom gesture.\n Scroll the panel down by one line.\n@@ -1302,6 +1304,7 @@ SetDragPosition\n SetDraggable\n SetFocus\n SetHasClass\n+SetHeightInPixels\n SetIgnoreCursor\n SetImage\n SetImageFromFile\n@@ -1333,11 +1336,13 @@ SetTitle\n SetTopOfInputContext\n SetURL\n SetValueNoEvents\n+SetWidthInPixels\n Sets 2 dimensional X/Y scale factors that apply to the quad for this panel prior to 3 dimensional transforms. This scaling applies without perspective and leaves the panel centered at the same spot as it started. Default of 1.0 means no scaling, 0.5 would be half size.<br><br><b>Examples:</b><pre>pre-transform-scale2d: 0.8\\npre-transform-scale2d: 0.4, 0.6</pre>\n Sets 2 dimensional rotation degrees that apply to the quad for this panel prior to 3 dimensional transforms. This rotation applies without perspective and leaves the panel centered at the same spot as it started.<br><br><b>Example:</b><pre>pre-transform-rotate2d: 45deg;</pre>\n Sets an opacity brush to apply to the panel and all it's children during composition.<br><br><b>Example:</b><pre>opacity-brush: gradient( linear, 0% 0%, 0% 100%, from( #ffffffff ), to( #ffffff00 ) );</pre>\n Sets how the panel is positioned relative to its parent. \"static\" means position in the default way. \"fixed\" means position in the default way, but ignoring the parent's scroll offset.<br><br><b>Example:</b><pre>layout-position: fixed;</pre>\n Sets letter-spacing for text in a string. Possible values:<br>normal - no manual spacing<br>&lt;pixels&gt; - Any fixed pixel value (ex: \"1px\")\n+Sets paragraph-spacing for text in a string. Only affects multiple line breaks in a row (\\n\\n, <p>, etc.).Possible values:<br>normal - no manual spacing, defauls to line height<br>&lt;pixels&gt; - Any fixed pixel value (ex: \"1px\")\n Sets the Opacity of background-image<br><br><b>Examples:</b><pre>background-img-opacity: 0.5;</pre>\n Sets the amount of blur to apply to the contents behind this panel during composition.  Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes.  Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf.  As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>background-blur: gaussian( 2.5 );\\nbackground-blur: gaussian( 6, 6, 1 );</pre>\n Sets the amount of blur to apply to the panel and all it's children during composition.  Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes.  Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf.  As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>blur: gaussian( 2.5 );\\nblur: gaussian( 6, 6, 1 );\\n\n@@ -1572,6 +1577,7 @@ V8ParamToPanoramaType expected array type to convert, but got something else\n V8ParamToPanoramaType expected bool type to convert, but got something else (%s)\n V8ParamToPanoramaType expected object type to convert, but got something else\n V8ParamToPanoramaType expected object type to convert, but got something else (%s)\n+V\\tV_iswspace\n Value set w/o name\n Vertical\n VerticalScrollBar\n@@ -1593,7 +1599,6 @@ Visible\n VolumeControl\n VolumeSliderPopup\n VolumeSliderValueChanged\n-Vp6 \n WebBrowser\n WebVTT Parse Error %d: %s:%u:%u - %s.\\n\n WindowGotFocus\n@@ -1608,18 +1613,17 @@ XInputPad\n X`hr\n Y_txt\n [object@%p]\n-\\nPlM\n-\\n\\tV_atanf\n+\\tV_atanf\n \\tV_strupper_fast\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_AppendSlash\n \\t_V_strcspn\n-\\vPT5\n `3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z\n `F?ToLocalEmpty@api_internal@v8@@YAXXZ\n-`fDA\n-`nDA\n-aBvDA\n+`ft8\n+`nt8\n+a3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@PEAV?$Local@VValue@v8@@@2@_K@Z\n+aBvt8\n about:blank\n activation\n activation_change_fail\n@@ -1633,7 +1637,6 @@ actualyoffset\n aliceblue\n align\n all-scroll\n-allow-focus-changes-on-scroll\n allowtextselection\n alpha-only\n alternate\n@@ -1739,6 +1742,8 @@ col-resize\n collapse\n color-stop\n color-stop( %s, \n+colorburn\n+colordodge\n complete\n condensed\n consoleDefaultHeight\n@@ -1775,6 +1780,7 @@ cycle_classes\n daisywheel\n darkblue\n darkcyan\n+darken\n darkgoldenrod\n darkgray\n darkgreen\n@@ -1912,6 +1918,7 @@ gray\n green\n greenyellow\n grey\n+hardlight\n has-tooltip-target-position\n hasNotches\n hasnotches\n@@ -1985,6 +1992,7 @@ light\n lightblue\n lightcoral\n lightcyan\n+lighten\n lightgoldenrodyellow\n lightgray\n lightgreen\n@@ -2002,6 +2010,7 @@ limegreen\n line\n line-height\n line-through\n+linearburn\n linen\n loadbehavior\n loading-text\n@@ -2061,7 +2070,6 @@ multiply\n multitouchzoomscale\n muted\n n-resize\n-n09 \n navajowhite\n navy\n ne-resize\n@@ -2120,10 +2128,10 @@ orange\n orangered\n orchid\n otherPanelID, eventToFire\n-p08@H^DA\n-p2 y\n+p08@H^t8\n p>?Set@Template@v8@@QEAAXV?$Local@VName@v8@@@2@V?$Local@VData@v8@@@2@W4PropertyAttribute@2@@Z\n-p>DA\n+p>t8\n+pFP' \n padding\n padding-bottom\n padding-left\n@@ -2137,7 +2145,6 @@ palevioletred\n panel\n panel-background://\n panel://\n-paneleventsource\n panels-visible\n paneltype\n panorama/browser/webkit.css\n@@ -2180,6 +2187,7 @@ panorama::panel_fatal_cast\n panoramasymbol\n panoramauiclient.dll\n papayawhip\n+paragraph-spacing\n parent-relative\n parentdisabled\n pass-through\n@@ -2194,7 +2202,7 @@ placeholder\n playback_speed\n playback_volume\n plum\n-pnDA\n+pnt8\n point\n popuplinks\n portuguese"
        },
        {
          "filename": "game/bin/win64/particles_strings.txt",
          "status": "modified",
          "additions": 191,
          "deletions": 103,
          "changes": 294,
          "patch": "@@ -1,4 +1,5 @@\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+                                           \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -24,13 +25,14 @@\n  randseed[\n  rot[\n  yaw[\n+!is_gpu_particle_system\n \"Limit Count: \" + m_nLimitCount\n \"Position within sphere random\" no longer supports the \"randomly distribute to highest supplied Control Point\" feature\\n\\t\"Emit continuously\" and \"Emit noise\" no longer support \"scale emission to used control points\".\\n\\t\"Position from control points\" had a max control point added to it.\n \"Remap control point orientation to rotation\" does something approaching sanity for the cases I looked at.  If we have cases where this isn't appropriate, we can split out the behavior.\\n\n \"Remap control point orientation to rotation\" rewritten to make more sense.\\n\n \"Set control point rotation\" pre-emission operator now correctly produces right-handed matrices [previously it would produce left-handed ones].\n \"Twist around axis\" force now rotates around the specified control point instead of control point 0.\\n\n-$DETAIL2BLENDMODE\n+#\\tV_exp2f\n $SFXDetailBlendMode\n %02x \n %40s: Age: %6.2f, asleep: %s next sleep %6.2f NumActive: %3d, flags %d, Bounds Center: (%.2f,%.2f,%.2f) (0x%p)\\n\n@@ -49,27 +51,34 @@ $SFXDetailBlendMode\n %s Be Batch Rendered\n %s is trying to get CP object %d but the function read limit is %d\\n\n %s is trying to get CP renderable %d but the function read limit is %d\\n\n+%s%02d:%02d\n %s:( ActiveParticleCount()=%d, m_bounds=%? simtime=%g )\n %s::%s (%u)\n %s::%s (Entity Output Handler)\n+%t<\\t%d;\\t%4:\\t%\n (builtin)\n (min=%g max=%g)\n *** Test failure: \"%s\"\n ,m_nStride=%d m_pData=%p )\n -1 for all asleep, 1 for all awake\n -BfF\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VIReadBufferCallback@@@@YA?AV?$shared_ptr@VIReadBufferCallback@@@std@@PEAVIReadBufferCallback@@@Z@\n .?AV<lambda_1>@?1???$ScaleMatrix@$00VCVariableMatrix@@@MatrixMath@@YAXAEAVCVariableMatrix@@M@Z@\n .?AV<lambda_1>@?1??DrawBlobulatorImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?1??DrawSoftObjectImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?1??DrawSoftObjectImplicitsWithRadii@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?1??OnCreate@C_OP_ClientPhysics@@UEBAXPEAVCParticleCollection@@PEAX@Z@\n+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@\n .?AV<lambda_1>@?3??RenderBatchedCollections@CParticleCollection@@SAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@\n-.?AV<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@W4GPUSimulationStage@@@Z@\n-.?AV<lambda_1>@?CE@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@\n+.?AV<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@AEAVIBarrierHelper@@W4GPUSimulationStage@@AEAVCRenderAttributes@@@Z@\n+.?AV<lambda_1>@?CH@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@I@Z@\n .?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n .?AV<lambda_2>@?7??Operate@C_OP_VelocityMatchingForce@@UEBAXPEAVCParticleCollection@@MPEAX@Z@\n .?AV<lambda_2>@?8??AddForces@C_OP_IntraParticleForce@@UEBAXPEAVFourVectors@@PEAVCParticleCollection@@AEBV?$CUtlLocalStackArray@T__m128@@$00@@HMPEAX@Z@\n .?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@\n@@ -167,6 +176,7 @@ $SFXDetailBlendMode\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetHitboxToModel@@@@\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetRigidAttachment@@@@\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetVectorAttributeToVectorExpression@@@@\n+.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SkyVisCull@@@@\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_StatusEffect@@@@\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_StatusEffectCitadel@@@@\n .?AV?$CParticleFunctionDefinitionTyped@VC_INIT_VelocityFromCP@@@@\n@@ -461,21 +471,25 @@ $SFXDetailBlendMode\n .?AV?$_Func_base@XPEAVIParticleCollection@@PEAX@std@@\n .?AV?$_Func_base@XPEBUObjectPairCollisionList_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$ScaleMatrix@$00VCVariableMatrix@@@MatrixMath@@YAXAEAVCVariableMatrix@@M@Z@XHH@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawBlobulatorImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawSoftObjectImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawSoftObjectImplicitsWithRadii@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??OnCreate@C_OP_ClientPhysics@@UEBAXPEAVCParticleCollection@@PEAX@Z@XPEAVIParticleCollection@@PEAX@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??RenderBatchedCollections@CParticleCollection@@SAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@W4GPUSimulationStage@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?CE@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@AEAVIBarrierHelper@@W4GPUSimulationStage@@AEAVCRenderAttributes@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?CH@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@I@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?7??Operate@C_OP_VelocityMatchingForce@@UEBAXPEAVCParticleCollection@@MPEAX@Z@XPEBUObjectPairCollisionList_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_2>@?8??AddForces@C_OP_IntraParticleForce@@UEBAXPEAVFourVectors@@PEAVCParticleCollection@@AEBV?$CUtlLocalStackArray@T__m128@@$00@@HMPEAX@Z@XPEBUObjectPairCollisionList_t@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_3>@?BA@???$VisitAllOverlappingPairs@$0A@@?$CObjectTree@HUParticleObjectTreeOptions_t@CParticleCollection@@@ObjectTree@@QEBAXAEBV?$function@$$A6AXPEBUObjectPairCollisionList_t@@@Z@std@@@Z@XHH@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@\n .?AV?$_Ref_count_obj2@VCPulseStructLayout@@@std@@\n+.?AV?$_Ref_count_resource@PEAVIReadBufferCallback@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VIReadBufferCallback@@@@YA?AV?$shared_ptr@VIReadBufferCallback@@@std@@PEAV1@@Z@@std@@\n .?AVCBaseRendererSource2@@\n .?AVCBaseTrailRenderer@@\n .?AVCChildFunctionDefinition@@\n@@ -655,6 +669,7 @@ $SFXDetailBlendMode\n .?AVC_INIT_SetHitboxToModel@@\n .?AVC_INIT_SetRigidAttachment@@\n .?AVC_INIT_SetVectorAttributeToVectorExpression@@\n+.?AVC_INIT_SkyVisCull@@\n .?AVC_INIT_StatusEffect@@\n .?AVC_INIT_StatusEffectCitadel@@\n .?AVC_INIT_VelocityFromCP@@\n@@ -962,20 +977,21 @@ $SFXDetailBlendMode\n .?AVISceneObjectListener@@\n .?AVISequence@@\n 0=don't clear particle attrs at init 1=clear to zero 2=clear to 0xdb -1=clear to zero at first sim\n-33S@ff\n 3E\"F\n 3E\"W\n 3E\"g\n 3L?Zb%\n 4?Ku\n 7?sk3mx>>*vn[9d\n 8f?D\n-:???;???;???3776>????/?/????7'7&>?????????\n+8oNj\n+9>-memory-\n ;1#INF\n <DEBUG-Only>\n <elt type not set>\n <nL4=\n <nL4=nL4=nL4=nL4=\n+<non-RTTI type>\n <none>\\n\n <unimplemented>\n =2qg\n@@ -990,8 +1006,6 @@ $SFXDetailBlendMode\n >pwn?\n >sh1?\n >uYL>\n-?/?????/?.>??????????????>>??;?/?+???;?/?**?/?;???+?/?;??>>??????????????>.?/?????/?\n-?????????>&7'7????/?/????>6773???;???;???:\n ?Bxt>\n ?CURVE_TANGENT_LINEAR\n ?JA7=\n@@ -1010,9 +1024,12 @@ Abs Int\n Absolute value (float)\n Absolute value (int)\n Activity %s has %d sequences with a total weight of %d!\\n\n+Add Flags\n Add R%d <- R%d + R%d\n+Add flags to the given value.\n Add the array 'b' to the end of 'a'.\n Address of m_Children.m_pHead: [%p]\\n\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n All Particle Systems:\\n\n Allocated Particles\n Alpha Alternate\n@@ -1022,7 +1039,6 @@ Alpha fade in random\n Alpha fade in simple\n Alpha fade out random\n Alpha fade out simple\n-Always\n Amount of simulation time that can elapse before new systems start falling back to cheaper versions\n And R%d <- R%d && R%d\n Any Other Cursors Have Tag\n@@ -1048,7 +1064,9 @@ Array Remove Invalid Elements\n Array Set Count\n Array Shuffle\n Assert True\n-Async Fire C%d:I%d\n+Async Call Method (Child Cursor) C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n Attempt to read and write stencil at the same time on a particle system. Ignoring write state\\n\n Attempted a typeid of nullptr pointer!\n Attempted to create particle system from RESOURCE_HANDLE_INVALID\\n\n@@ -1068,7 +1086,6 @@ BOX_MINS\n Bad KV3 data (%s)\n Bad KV3 data for resource '%s': %s\\n\n Bad compression\n-Bad count in ArraySetCount (%d)\n Bad max in ArrayFirstNElements (%d)\n Bad read pointer - no RTTI data!\n Bad reinterpret on ArrayAppend\n@@ -1078,18 +1095,18 @@ Bad sequence in GetSequenceActivityName() for model '%s'!\\n\n Base for falling back to cheaper effects under load.\n Base-10 logarithm\n Base-2 logarithm\n-BaseTexture\n+Basic string support.\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n Begin testing a condition composed of Observable variable references. Continues checking until true.\n BindlessParticleShader\n-Blobulator\n Bone Indices\n Box Angles\n Box Flags\n Box Maxs\n Box Mins\n+Branch Recursion Distance Scale Factor\n+Branch Recursion Offset/Twist Scale Factor\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\particles\\_vpc_particles\\default\\win64\\_msvc_\\Retail\\particles.pdb\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\blobulator\\implicit\\sweeprenderer.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\particles\\gpu_implicit_renderer.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\particles\\particle_initialization.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\particles\\particle_sceneobject.cpp\n@@ -1107,7 +1124,8 @@ CKV3MemberNameSet\n CKV3MemberNameWithStorage\n CONTENT ERROR: Unable to find %s '%s' in model '%s' referenced in particle system '%s'\\n\n CP %d\n-CParticleCollection::EvaluatePerFrameGPUSimulationState(3850): \n+CParticleCollection::AllocateSharedGPUBufferSlots Slot %d BDAOffset %d: %s\\n\n+CParticleCollection::EvaluatePerFrameGPUSimulationState(3994): \n CParticleCollection::GenerateSortedIndexList\n CParticleCollection::InitializeNewParticles\n CParticleCollection::SetControlPointOrientationFLU\n@@ -1117,7 +1135,7 @@ CParticleCollectionBindingInstance::HACK_UnusedBinding\n CParticleFloatInput::MEmitKV3TransferPreLoadFn failed\\n\n CParticleNamedValueRef\n CParticleObjectDesc\n-CParticleObjectDesc::OnPreRender(283): \n+CParticleObjectDesc::OnPreRender(311): \n CParticleSnapshot::%s - Invalid attribute mapping specified (must be one-to-one)!\\n\n CParticleSystemMgr::CreateParticleCollection( Name String )\n CParticleSystemMgr::FindParticleSystem\n@@ -1137,9 +1155,9 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -1149,26 +1167,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n CPulseCell_PickBestOutflowSelector::ProcessSelector\n CPulseCell_Step_CallExternalMethod '%s'\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseMathlib::AbsFloat\n CPulseMathlib::AbsInt\n CPulseMathlib::ArcCos\n@@ -1205,6 +1225,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -1234,34 +1255,42 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseTestScriptLib::AssertTrue\n CPulseTestScriptLib::IndicateTestFailure\n CPulseTestScriptLib::IsInTestMode\n CPulseTestScriptLib::RegisterTestCheckpoint\n CPulseTestScriptLib::TestModeAssertTrue\n+CREATE_CHILD_CURSOR_OUTFLOW\n CREATION_TIME\n CStrongHandle\n CURVE_TANGENT_FREE\n CURVE_TANGENT_MIRROR\n CURVE_TANGENT_SINE\n CURVE_TANGENT_SPLINE\n+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CInstancedMeshSceneObject *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n-CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct RenderReadbackHandle_t__ *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n+CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct CParticleSystemMgr::ParticleMgrReadbackRequest_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPAssignment_t,int,class CMemAllocAllocator>,struct CPAssignment_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_InstructionDebug,int,class CMemAllocAllocator>,struct CPulse_InstructionDebug,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class CMemAllocAllocator>,struct CPulse_RegisterInfo,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CKV3MemberName,class std::unique_ptr<class CModelHitBoxesInfo,struct std::default_delete<class CModelHitBoxesInfo> >,class CDefEquals<class CKV3MemberName>,struct DefaultHashFunctor<class CKV3MemberName>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CKV3MemberName,class std::unique_ptr<class CModelHitBoxesInfo,struct std::default_delete<class CModelHitBoxesInfo> >,class CDefEquals<class CKV3MemberName>,struct DefaultHashFunctor<class CKV3MemberName>,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CDefEquals<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,struct DefaultHashFunctor<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CDefEquals<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,struct DefaultHashFunctor<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::HashBucket_t,int>::AddMultipleToTail\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<int,int,class CDefEquals<int>,struct DefaultHashFunctor<int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<int,int,class CDefEquals<int>,struct DefaultHashFunctor<int>,int>::HashBucket_t,int>::AddMultipleToTail\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct FloatInputMaterialVariable_t,int,class CMemAllocAllocator>,struct FloatInputMaterialVariable_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct TextureGroup_t,int,class CMemAllocAllocator>,struct TextureGroup_t,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct VecInputMaterialVariable_t,int,class CMemAllocAllocator>,struct VecInputMaterialVariable_t,int>::InsertBeforeGetPtr\n+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage\n CUtlVectorFixedGrowable\n C_INIT_InitFromCPSnapshot: CP %d - No snapshot specified for %s!\\n\n C_INIT_InitFromCPSnapshot: CP: %d - \"%s\" snapshot for %s has no data!\\n\n@@ -1270,13 +1299,12 @@ C_INIT_InitFromCPSnapshot: Unsupported attribute data type! (%d)\\n\n C_INIT_InitFromCPSnapshot: cannot initialize PREV_XYZ - XYZ cannot be read!\\n\n C_INIT_InitFromCPSnapshot: framerate unknown initializing PREV_XYZ! Defaulting to 30fps, but particle velocity may look wrong...\\n\n C_INIT_InitFromParentKilled: Unsupported attribute data type! (%d)\\n\n+C_INIT_SkyVisCull\n C_OP_SetFromCPSnapshot: cannot initialize PREV_XYZ - XYZ cannot be read!\\n\n C_OP_SetFromCPSnapshot: framerate unknown initializing PREV_XYZ! Defaulting to 30fps, but particle velocity may look wrong...\\n\n Calculate vector attribute\n Call C%d:I%d (%s)\n Can NOT\n-Cancel\n-Cancel observing.\n Cannot allocate abstract class\n Causes all single-fire particle assertions to trigger once more.\n Ceiling - round float up to nearest integer)\n@@ -1303,10 +1331,11 @@ Color light from control point\n Color lit per particle\n Color random\n Commit Step\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n Completed\n Computes 2 ( 2.71...) raised to a power\n Computes e ( 2.71...) raised to a power\n+Cone Angle Offset\n Constrain distance to control point\n Constrain distance to path between two control points\n Constrain distance to user specified path\n@@ -1338,36 +1367,28 @@ Cull random\n Cull relative to model\n Cull relative to plane\n Cull relative to ray trace environment\n+Cull relative to sky visibility\n Cull relative to sphere\n Cull when crossing plane\n Cull when crossing sphere\n Cursor Has Tag\n Cursors Allowed To Run Parallel\n Cursors Allowed To Wait\n Cycle Scalar\n-D_COMPRESSED_NORMALS_AND_TANGENTS\n-D_DEBUG_STATS\n-D_DEPTH_FEATHERING\n-D_EXPLICIT_FETCH\n-D_FORCE_LEGACY_SHADER_MODEL\n-D_INITIALIZE_SYSTEM\n-D_PANORAMA_PARTICLE\n-D_PARTICLE_LDS_CACHE\n-D_PER_PARTICLE_RADIUS\n-D_SUPPORTS_RAYTRACING\n-D_VISUALIZE_ROUNDNESS\n Dampen Movement Relative to Plane\n Dampen Movement relative to model\n Data_Branch1xy\n Data_Branch1zBranch2x\n Data_Branch2yz\n+Decay From Wake\n Deg2 Rad\n Density-based force\n Depth\n-DepthMap\n Desired Kill Priority\n Detach R%d\n Diffuse particle attributes\n+Disable Non-Static Collision\n+Disable Non-Static Collision Duration\n Disable to get a better look at what's happening offscreen\n DisableSorting\n Div R%d <- R%d / R%d\n@@ -1376,7 +1397,7 @@ Dot Product Vector\n Dot Product of Vector a \n Draw particle children with parents (-1=use gameinfo, 0=no, 1=yes)\n Drive CP from global sound float\n-ERROR: SweepRenderer::render_slices got into an infinite loop!\\n\n+DualHull\n Elapsed time = %f\\n\n Element Access R%d <- R%d[R%d]\n Emit continuously\n@@ -1389,10 +1410,10 @@ EnableParticleShaderFeatureBranching\n Enables/Disables Particle Simulation\n Endcap timed system freeze\n EntityName\n+Enum support.\n Eq R%d <- R%d == R%d\n Error in child list of particle system %s [%p], parent: %p\\n\n Error initializing particle system %s\\n\n-Error: Sort failed\\n\n Evaluate the curve at the specified input position\n Evaluate the gradient at a position between 0 and 1\n Exp2\n@@ -1439,18 +1460,19 @@ F_SPHERICAL_HARMONIC_LIGHTING\n F_TEXTURE_LAYERS\n F_TINT_BY_FOW\n Fail Outflow\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to init snapshot data for resource '%s'\\n\n-FilterTaps_t\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find first element 'a' which compare equal to 'element' and return its index.\n FindParticleSystem\n Fixed \"Animation Type\" in Sprite Renderer not working for non-particle normal alignment types.\\n\n Fixed \"Inherit Attribute from Parent Particles\" not keeping parent particles in sync with children.\\n\n Fixed Float Evaluator \"Particle Count Percent of Total Count\" being off-by-one at the end. Double-check remapping of any Particle Count Normalized float evaluators.\\n\n Fixed bugs in \"Position along path sequential\" where it could incorrectly create too many particles at the last control point. Also fixed issues with control points specified in backward order in that operator as well as \"Movement lock to saved position along path\".\\n\n+Flashlight\n Float To Game Time\n Float16HDRBackBuffer\n Floor - round float down to nearest integer\n@@ -1461,9 +1483,9 @@ Force Control Point In Pet\n Force Scale\n Force based on distance from plane\n ForceMaterialOverride\n+Format Duration String From Seconds\n Frac\n Fractional component (ie. returns 0.34 for 12.34)\n-FrameBufferCopyTexture\n Frames Measured: %d\\n\n Free\n Function \"%s\" not found while loading particle system\\n\n@@ -1473,8 +1495,10 @@ GPU Particle Simulate\n GPU Particles InitialValues %s\n GPU Particles0 %s\n GPU Particles1 %s\n+GPUParticleRemapTexture %s\n GPUParticleRequiredResources\n-GPUSimulateSupportsRaytracing\n+GPUParticle_perframes\n+GPUParticle_readbacks\n Game Blackboards: \n Game Time To Float\n GameSupportsLegacyShaders\n@@ -1497,18 +1521,16 @@ HAT\\tKAT\\tKAT\\tKAT\\tK\n HITBOX_INDEX\n HITBOX_RELATIVE_XYZ\n HSV Shift to control point\n+Has All Flags\n+Has Any Flags\n Hit maximum implicit index buffer size of %u, desired %u\\n\n Hit maximum implicit vertex buffer size of %u, desired %u\\n\n Hitbox Index\n Hitbox Offset Position\n How aggressive the switch to fallbacks will be depending on how far over the cl_particle_sim_fallback_threshold_ms the sim time is.  Higher numbers are more aggressive.\n IKV3TransferInterface_ResourceSave\n-IKV3TransferInterface_UtlSymbolLarge\n-IS_EFFECTS_LAYER\n-IS_PARTICLE_MIXED_RESOLUTION_LAYER\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If specified, each wait interval will vary randomly between WaitInterval this value\n If this cursor spawns other work via Fire And Forget, should this Tag be inherited?\n IgnoreMaterialOverride\n@@ -1519,14 +1541,10 @@ Implicit: max verts %uk, max indices %uk\\n\n Implicit: pruned particles %u, columns culled %u (%u particles)\\n\n Implicit: verts per cell\n ImplicitVertex_t\n-IndexBuffer\n-IndexBufferSize\n-IndexTriVertexBufferLayout\n Indicate Test Failure\n Indicate that a checkpoint has been reached.\n Indicates a test failure if Value is false.\n Indicates a test failure if value is false; only tested when running unit tests\n-IndirectDrawArgs\n Inherit attribute from parent particle\n Inherit initial value from parent particle\n Init Collection [%p]: %s\\n\n@@ -1556,12 +1574,11 @@ Invoke Lib %s\n Is In Test Mode\n Is Valid Vector\n Is Valid World Vector\n-IsoSurface\n Jump to Instr I%d\n KeyValues3\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n+Killed on Cull\n LIFE_DURATION\n LONG PARTICLE RENDER: \"%s\" took %fms to submit to render.\\n\n Lazily Cull on Float Comparison\n@@ -1607,6 +1624,8 @@ Ls?q\n MANUAL_ANIMATION_FRAME\n MAtomicTransfersAsPlainString\n MGPUParticleFunction\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MODEL_RENDER_HELPER_PTR\n MODEL_RENDER_HELPER_PTR_2\n MODEL_RENDER_HELPER_PTR_3\n@@ -1628,6 +1647,7 @@ MPropertyStartGroup\n MPropertySuppressField\n MPulseExpressionAlias\n MPulseFunctionHiddenInTool\n+MPulseTypeRestriction\n MVectorIsCoordinate\n MVectorIsSometimesCoordinate\n Made disabling operators + children actually fully work.\\n\n@@ -1636,12 +1656,14 @@ Make Angle From Forward Vector\n Make Color\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -1672,7 +1694,7 @@ Model Helper Pointer 2\n Model Helper Pointer 3\n Model Helper Pointer 4\n Model Surface UV Snapshot Generator\n-MotionVectorsTexture\n+Motion Disabled\n Move particles between 2 control points\n Movement Lerp to Initial Position relative to CP\n Movement Lerp to skinned position from CP snapshot\n@@ -1698,6 +1720,7 @@ Movement skin to bones rigid\n Mul R%d <- R%d * R%d\n Multi-Segment Display Snapshot Generator\n Multiplier for falling back to cheaper effects under load.\n+N@Bad count in ArraySetCount (%d)\n NI>R\n NONE/Disabled\n NULL CELL \n@@ -1718,19 +1741,18 @@ Normal Scaling Force\n Normal align to CP\n Normal lock to control point\n Normal modify offset random\n-NormalTexture\n Normalize Vector a\n Normalize vector\n Not R%d <- !R%d\n Not safe to 'new' this class due to alignment requirements\n+Number Of Lights To Create\n O@33S@\n Offset of m_Children.m_pHead: [%i]\\n\n On Interval\n On True\n OnInterval\n Only wrote %d (of %d) values when saving map!\n Operator Name\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Or R%d <- R%d || R%d\n Oscillate scalar\n@@ -1742,16 +1764,24 @@ OverlayProjectionDirection\n P8?2\n PARENT_PARTICLE_ID\n PARENT_PARTICLE_INDEX\n+PARTICLE_ATTR_BOX_FLAGS_DISABLE_NONSTATIC_COLLISION\n+PARTICLE_ATTR_BOX_FLAGS_MOTION_DISABLED\n+PARTICLE_ATTR_BOX_FLAGS_WAKE_DECAY\n+PARTICLE_ATTR_BOX_FLAGS_ZERO_GRAVITY\n+PARTICLE_EVENT_TYPE_MASK_KILLED_ON_CULL\n+PARTICLE_FLASHLIGHT\n PARTICLE_ID\n+PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE\n PET_SupportFadingOpaqueModels\n+PF_TYPE_CONTROL_POINT_IS_SET\n PITCH\n PRECIPITATION\n PREV_XYZ\n-PackedBlobNormal\n PanelID\n Parent Map: %s\\n\n Parent Particle ID\n Parent Particle Index\n+Parent VData\n Particle Binding\n Particle Binding (Real)\n Particle Error before emit: Effect %s, Function %s (%d, %d)\\n\n@@ -1779,8 +1809,10 @@ Particles/Budget_RenderUS\n Particles/Budget_SimulationUS\n Particles/GPUParticles\n Particles/MixedResoluion/Slices\n+Particles/ParticlePixelCBSlot\n Particles/ParticleTextureBaseSlot\n Particles/ParticleTraceOffsetOnlyHit\n+Particles/ParticleVertexCBSlot\n ParticlesFoggedByDefault\n ParticlesLib\n Pass Outflow\n@@ -1792,6 +1824,7 @@ Pin Particle to control point\n Pin Rope Segment Particle to Parent Particle\n PivotPaint\n Play EndCap when Finished\n+Point at Previous instead of next\n Point vector at next particle position\n Position On Grid\n Position Previous\n@@ -1823,6 +1856,7 @@ Prevent passing through static part of world\n Print debug message every time a particle collection is created\n Print out information on existing particle systems\n Problem loading error.vpcf, please validate your game install\\n\n+Proceed Immediately\n Process Selector\n Profile Point 1\n Profile Point 2\n@@ -1834,6 +1868,7 @@ Profile particle spike\n PropWorldOrigin\n Pull towards control point\n Pulse domain which enables particle content to query leaf code to introspect game state.\n+PulseDurationStringFormat_t\n Q#B7\n Q#Bg\n QAngle\n@@ -1851,6 +1886,7 @@ ROPE_SEGMENT_ID\n ROTATION\n ROTATION_SPEED\n Rad2 Deg\n+Radially splashed points require exposure to sky\n Radius from CP object\n Radius scale\n Ramp control point linear random\n@@ -1862,6 +1898,7 @@ Random World Position\n Random force\n Randomizes the order of items in the array (Knuth/Fisher-Yates Shuffle)\n Reciprocoal square root (1/sqrt)\n+Recursion Branch Split Scale\n Ref Counted Pointer\n Register Test Checkpoint\n Reinitialize on endcap scalar random\n@@ -1936,9 +1973,11 @@ Remap speed to scalar\n Remap touching water to scalar\n Remap vector to CP\n Remap velocity to vector\n+Remove Flags\n Remove Tag From Cursor\n Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n Render Cables\n@@ -1976,7 +2015,7 @@ Render sprite trail\n Render sprites\n Render standard light\n Render volumetric smoke\n-RenderOps_Init(15138): \n+RenderOps_Init(15110): \n RenderSimpleModelCollection is missing a model to render\n Repeatedly Trigger Child Group\n Restart effect after duration\n@@ -2021,11 +2060,12 @@ SHADER_EXTRA_DATA2\n Saturate\n Saturate (clamps float between 0 and 1)\n Save a named value of any type on the cursor.\n+Scale Branch Distance From Recursion Depth\n+Scale Branch Offset/Twist From Recursion Depth\n Scale INV R%d <- R%d / R%d\n Scale R%d <- R%d * R%d\n ScaleMatrix\n Scene Object Pointer\n-SceneDepth\n SceneSystem/DrawParticleChildrenSeparateFromParents\n SceneSystem/Particles/Debug Visualizer\n SceneSystem/Particles/Draw Particles\n@@ -2039,6 +2079,7 @@ Scratch float 3\n Screen Space Distance To Edge\n Screen Space Position of Target\n Screen Space Rotate Toward Target\n+Scroll Offset\n Second Sequence Number / Alpha Window Threshold\n Selectively Enable Children\n Sequence Number\n@@ -2100,6 +2141,7 @@ Show all used controlpoints\n Show rope segments when debugging particle systems - specify a number to isolate to that segment id\n Show specific attribute when debugging particle systems\n Show the sorting position when debugging particle systems\n+ShqN\n Sign Float\n Sign Int\n Signature hook to fill out arguments for OnInterval\n@@ -2108,7 +2150,6 @@ Sim Time Max: %.2fms\\n\n Sim Time Min: %.2fms\\n\n Sine of angle. Input in radians, output in radians\n Snapshot load error for resource '%s': %s\\n\n-SphericalHarmonicsTextureA\n SphericalHarmonicsTextureB\n SphericalHarmonicsTextureC\n Spline\n@@ -2127,31 +2168,26 @@ Split a Vector2D into component parts.\n Split a World Vector into component parts.\n Split an Angle into component parts.\n Spring to Vector constraint\n-SpritecardRendererControls_t\n Sqr Float\n Sqr Int\n Sqrt\n Square root\n Start a timer with the specified duration, fire the OnInterval output \n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n Stop effect after duration\n Stops all particle systems currently playing\n Stops all particle systems that don't match specified name\n Stops all particle systems that match specified name\n String Length\n Strings Are Equal Case Sensitive\n Sub R%d <- R%d - R%d\n+Synchronous - Wait for this node to fully complete before proceeding.\n System Name\n-SystemParticlesIn\n-SystemParticlesOut\n-SystemStepSize\n Systems Measured: %d\\n\n T>gaW?:]f?AHV>'\n TINT_RGB\n TRAIL_LENGTH\n T\\sgPmx\n-T\\tV_log2f\n Tag Cursor\n Tag Self When Complete\n TanFrameQuat\n@@ -2165,24 +2201,27 @@ TextureLayer3\n TextureLayer4\n The maximum detail level of particle to create\n The maximum distance that particles will render\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n Threshold to warn about when rendering particles.\n Time since the start of the timer\n Time varying force\n-TintColor\n Took %g uS per iteration to create+destroy %s, %gUs for create+sim\n Total Frames\n Total Render (us)\n Total Sim (us)\n Total particles created : %u\n+Trace\n Trace cache efficiency = %.2f%% (%d traces for %d tests)\\n\n Trail Length\n Tried to load a polymorphic pointer with no '%s' key\n Tried to load resource reference '%s' from a value without a resource reference specific type.\n Turbulent force\n+Turn a time in seconds into a display string. NOT localized.\n Twist around axis\n UNUSED\n USER_EVENT_STATES\n Unable to find a valid model handle for m_bModelFromRenderer in '%s'\\n\n+Unknown format type\n Update lights\n Usage: particle_profile <'systems'|'operators'> <num_frames>\\n\n Usage: particle_profile_spike <'systems'|'operators'> <spike_threshold_ms>\\n\n@@ -2191,6 +2230,8 @@ Use fixed seeds for easier debugging\n Use random seeds in debug\n Used to flag a test as having failed.\n User Event States\n+VDATA\n+VDataChoice( scripts/light_styles.vdata )\n Value 0-1 how far along duration (always 0 if duration is -1)\n Variable '%s' is referenced but not declared in this system (%s). Adding a fallback now.\\n\n Vector To World Vector\n@@ -2205,8 +2246,6 @@ Velocity random\n Velocity repulse from world\n Velocity set from control point\n Version circa 7/31/2018.\n-VertexBuffer\n-VertexBufferSize\n VertexColorUVPos_t\n VertexElementAnnotation\n VertexGenericIntegerData\n@@ -2219,17 +2258,22 @@ WARNING: Particle system '%s' was not precached correctly. Performing blocking l\n WARNING: Particle system '%s' with missing path was not found in existing particle system list.\\n\n WARNING: Removing circular reference to particle child '%s'.\\n\n Wait Complete\n+Wake Cursors With Tag\n Warning: Missing fallback for particle system \"%s\"!\\n\n-When False\n When Steady State in %f Seconds\n-When True\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n+While False\n+While True\n World Vector To Vector\n X to the Y power\n Y>UU\n Y?Mi\n Yield, Resume=%s\n Yz'x\n Z>wg}?0\n+Zero Gravity\n+Zero Gravity Duration\n [ Chunk%d ]\n [ written at chunk start last-read I%d ]\n [ written by I%d last-read I%d ]\n@@ -2241,30 +2285,31 @@ Z>wg}?0\n [RETURN R%d]\n [RETURN]\n \\fT>M-+?#gy?\n+\\f\\tV_acosd\n \\n\\n----------------------------\\nInstance Count:\\n\n+\\ng_flConfigMaxCoord\n \\t%4d -  %s\\n\n-\\tV_acosd\n \\tV_asind\n+\\tV_atand\n \\tV_cosd\n-\\tV_exp2f\n \\tV_tand\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n-\\tg_flConfigMaxCoord\n+_\\tV_log2f\n __CursorQueue__\n __FireCursorsParent__\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n __procedural_colorgradient.vtex\n _procedural_particle_snapshot.vsnap\n _w|9^yq=v0\n a:fulltype\n a:typeparam\n+allflags\n alloc_particles\n allowed_api_features\n allowed_requirements\n alpha2\n+anyflags\n attr_factory\n attributes\n avg_num_tests\n@@ -2280,16 +2325,12 @@ bE\"W\n bE\"g\n bInherit\n bValue\n-beginFrame\n-beginTile\n bentnormal\n blendindices\n blendweight\n blendweights\n blob indirect draw\n-blobulator\n body part\n-bouncescale\n box_angles\n box_maxs\n box_mins\n@@ -2309,24 +2350,25 @@ clamp\n compressedtangentframe\n con_command\n creation_time\n+cull on sky\n curvature\n data_offset\n data_size\n+debug orientation\n def min cpu=%d system cpu=%d def gpu=%d system gpu=%d\\n\n default_sort\n deg2rad\n densityVolume.InterpolatedVoxel( 0, Vector( 0.f, 0.f, 0.f ) )=%?\n+direction input\n domain_scope\n dumpparticlelist\n-dynamicbounce\n element\n-endFrame\n-endTile\n error.vpcf\n+event horizon threshold distance for max force\n expected %s, got %s\n+expression_type\n f>KZ}\n f?yu\n-f\\tV_remainderf\n fast\n features\n field_name\n@@ -2347,6 +2389,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -2355,17 +2398,20 @@ flValueB\n flWaitInterval\n flWaitIntervalHigh\n flYaw\n+flashlight radius CP\n+flashlight radius control point component\n float3\n force_scale\n frac\n g?Q1\n glow_alpha\n glow_rgb\n+gpuparticlemgr\n gpuparticles\n gpuparticles_definition\n gpuparticles_evaluators\n+gpuparticles_eventindices\n gpuparticles_functions\n-gpuparticles_perframe\n gpuparticles_snapshot\n gpuparticles_uniqueindices\n h>4hp?\n@@ -2382,44 +2428,74 @@ implicit vertices\n inherit attribute from peer particle systems\n internal error in particle system MapParticleOrientationIndexToShaderCombo()\n invalid_hitbox\n+is_gpu_particle_system\n+is_gpu_particle_system || m_nTraceSet == PARTICLE_TRACE_SET_STATIC\n is_selector\n itemgroups\n k>Mg\n k?C9\n+kill density scale\n kv3:ParticleParamID_t\n length2d\n length3d\n lerp\n lifespan\n light has _fifty_percent_distance of %f but no zero_percent_distance\\n\n+light style\n+light style time\n lj?HP\n log2\n lookup tables\n lowprecisionuv\n lowprecisionuv1\n lwK?\n m_Children.m_pHead: [%p]\\n\n+m_Metadata\n+m_SequencePoint\n m_Stops\n m_TagValue\n-m_bBakedTwoSided\n-m_bCanBatchWithDynamicShaderConstants\n+m_bCheckExposedToSky\n m_bConditionValue\n-m_bDrawLast\n+m_bCullOnSky\n+m_bDebugOrientation\n m_bFirstEvaluate\n-m_bHasBakedLightingFromLightMap\n-m_bHasBakedLightingFromVertexStream\n-m_bIsNotMatchedToMaterial\n-m_bNoShadow\n-m_bOnlyShadow\n-m_bUseCompressedNormalTangent\n-m_bUseShadowFastPath\n+m_bPrevious\n+m_bScaleBranchDistance\n+m_bScaleBranchDistance == false\n+m_bScaleBranchOffset\n+m_bScaleBranchOffset == false\n m_buffer=\n-m_externalMethodTargetGraph\n+m_fMinimumDistance\n+m_flBranchDistanceScale\n+m_flBranchOffsetScale\n+m_flKillDensityScale\n+m_flLightStyleTime\n+m_flNumberOfLightsToCreate\n+m_flRecursionSplitScale\n+m_flScollOffset\n m_flSlopeIncoming\n m_flSlopeOutgoing\n+m_flSubPixelAAScale\n+m_hCursorOnOtherGraph\n m_nCurrentWakeIndex\n+m_nCursorID\n+m_nForcedStatusEffects == 0\n m_nGraphID\n+m_nNoCollisionAttribute\n+m_nPosition != PARTICLE_FLASHLIGHT\n+m_nRadiusCP\n+m_nRadiusCPField\n+m_nType != PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE\n+m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_EMISSION || m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE\n+m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE\n+m_nYieldToken\n+m_nZeroGravityAttribute\n+m_strLightStyle\n+m_strLightStyle == ''\n m_szEffect\n+m_vPrevPosition\n+m_vecConeRotationOffset\n+m_vecPreviewWind\n manual_animation_frame\n materials/dev/gpu_particles_initialize.vmat\n materials/dev/gpu_particles_simulate.vmat\n@@ -2434,19 +2510,23 @@ max_render\n max_sim\n medium\n mesh group\n+mod != csgo && mod != hlx\n n?9a\n nDenominator\n nFirstParticle=%?\n+nFormat\n nKillPriority\n nMaxElements\n nNumerator\n+nRemainderDigits\n+nRemainderNoiseDigits\n nValue\n+nWakePriority\n no_gpu_blobs\n non_homogenous_forward_layer_only\n not obeying particle system stencil of failure to parse stencil comparison string %s\\n\n not rendering particle system because of failure ot parse stencil write string %s\\n\n num_particles\n-o\\tV_sind\n o\\t\\raHC\n opacity\n operators\n@@ -2490,17 +2570,20 @@ point_4\n polymorphic_arg\n pos[\n posxyz\n+prev position\n procedural_spritecard.vmat\n propattr_flatten_into_parent_row\n pulse_node_custom_attributes\n pulse_runtime_lib\n pvec_color_black\n pvec_color_white\n+q\\tV_remainderf\n quX?\n r_draw_particle_children_with_parents\n r_drawparticles\n r_particle_allowprerender\n r_particle_batch_collections\n+r_particle_batch_in_fullsort\n r_particle_cables_cast_shadows\n r_particle_cables_culling\n r_particle_cables_culling_bounds_scale\n@@ -2536,6 +2619,7 @@ r_particle_model_per_thread_count\n r_particle_multiplier\n r_particle_newinput\n r_particle_render_refreshes_sleep_timer\n+r_particle_render_sprites_issue_vizquery\n r_particle_render_test\n r_particle_skip_postsim\n r_particle_testbuffers\n@@ -2584,6 +2668,7 @@ spritecardparticlestrailwithnormal\n spritecardtessvb\n strValue\n string_list\n+sub-pixel AA scale\n systems\n t>vTU>\n tagValue\n@@ -2602,8 +2687,10 @@ total_sim\n trail_length\n translucent\n turn on optimized particle init\n+type_restriction_is_enum_flags\n vForward\n vMins=%?\n+value:fulltype\n vecValue\n vecValueA\n vecValueB\n@@ -2612,5 +2699,6 @@ vn[90\n wH>r\n xn>8\n y?U0\n-z>RegisterConCommand: Unknown error registering con command \"%s\"!\\n\n zW>w\n+z\\tV_sind\n+{ item_factory = 'IntervalTimer' }"
        },
        {
          "filename": "game/bin/win64/phonon_strings.txt",
          "status": "modified",
          "additions": 1687,
          "deletions": 94,
          "changes": 1781,
          "patch": null
        },
        {
          "filename": "game/bin/win64/physicsbuilder_strings.txt",
          "status": "modified",
          "additions": 127,
          "deletions": 95,
          "changes": 222,
          "patch": "@@ -50,6 +50,7 @@\n #CfU7\n #This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\\n\n $ModelPath$/transmission\n+$\\tV_expd\n $keyValueChildren\n $modelname$\n $modelname$_cavity\n@@ -283,7 +284,6 @@ $prefix_element$\n .?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -363,7 +363,6 @@ $prefix_element$\n .?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -586,6 +585,7 @@ $prefix_element$\n .?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -818,6 +818,7 @@ $prefix_element$\n .?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -997,6 +998,7 @@ $prefix_element$\n .?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1083,6 +1085,7 @@ $prefix_element$\n .?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1165,6 +1168,7 @@ $prefix_element$\n .?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n .?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@\n@@ -1584,6 +1588,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@\n@@ -1706,6 +1711,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@\n@@ -1889,7 +1895,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -1901,7 +1906,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2079,6 +2083,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -2291,6 +2296,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@\n+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@\n@@ -2413,6 +2419,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@\n@@ -2558,7 +2565,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@\n@@ -2570,7 +2576,6 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -2748,6 +2753,7 @@ $prefix_element$\n .?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -2960,6 +2966,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@\n+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@\n .?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@\n@@ -3082,6 +3089,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@\n+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@\n .?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@\n@@ -3265,7 +3273,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@\n@@ -3277,7 +3284,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@\n-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@\n .?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@\n@@ -3455,6 +3461,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@\n .?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@\n+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@\n .?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@\n@@ -3699,6 +3706,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@\n+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@\n .?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@\n@@ -3820,6 +3828,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@\n@@ -3961,7 +3970,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -3972,7 +3980,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -4142,6 +4149,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -4351,6 +4359,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@\n@@ -4471,6 +4480,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@\n@@ -4642,7 +4652,6 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@\n-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@\n@@ -4826,6 +4835,7 @@ $prefix_element$\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@\n+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@\n .?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@\n@@ -5286,6 +5296,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@\n+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@\n .?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@\n@@ -5407,6 +5418,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@\n+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@\n .?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@\n@@ -5548,7 +5560,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@\n@@ -5559,7 +5570,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@\n-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@\n .?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@\n@@ -5729,6 +5739,7 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@\n .?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@\n+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@\n .?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@\n@@ -5905,7 +5916,6 @@ $prefix_element$\n .?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@\n .?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@\n-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@\n .?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@\n .?AV?$CTypedLogLayerSampleData@E@@\n .?AV?$CTypedLogLayerSampleData@H@@\n@@ -6098,6 +6108,7 @@ $prefix_element$\n .?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6159,6 +6170,7 @@ $prefix_element$\n .?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@\n .?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@\n .?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@\n+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@\n .?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@\n .?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@\n@@ -6205,7 +6217,9 @@ $prefix_element$\n .?AV?$IToolAttr_TypedValue@W4SpawnEntity_t@CModelDocBaseBreakPiece@@@@\n .?AV?$IToolAttr_TypedValue@W4TransferMorphsVertexSelectionMode_t@@@@\n .?AV?$IToolAttr_TypedValue@_N@@\n+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@\n .?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@\n@@ -6470,7 +6484,6 @@ $prefix_element$\n .?AVCModelDocAnimatedMaterialAttributeColor@@\n .?AVCModelDocAnimatedMaterialAttributeValue@@\n .?AVCModelDocAnimationList@@\n-.?AVCModelDocAssociatedPulseGraph@@\n .?AVCModelDocAtom@@\n .?AVCModelDocAttachment@@\n .?AVCModelDocAttachmentBase@@\n@@ -6884,6 +6897,7 @@ $prefix_element$\n .?AVIUndoElement@@\n .?AVIUndoListener@@\n .?AVIUndoable@@\n+.P6AXPEBDPEAVCBufferString@@@Z\n .exr\n .fgd\n .pfm\n@@ -6893,9 +6907,7 @@ $prefix_element$\n .tif\n .vmat\n .webp\n-04>c\n 0\\r%0t\n-0\\tV_frexpf\n 0x%llx\n 16-byte data pool\n 1D Blend Has No Referenced Animations\n@@ -6908,7 +6920,6 @@ $prefix_element$\n 2DBlend\n 2DBlendEditor\n 2DBlendFromAnimation\n-2\\vpLpu\n 2_BONE_IK\n 4-byte data pool\n 4\\r54t\n@@ -6922,6 +6933,7 @@ $prefix_element$\n 8-byte data pool\n 8DmeElement\n 969p\n+9\\tV_frexpf\n :: <NO TARGET BONE>\n ; tris:\n ;acosf\n@@ -6932,6 +6944,7 @@ $prefix_element$\n <font color=\"red\">Face is connected to itself, cannot dissolve</font>\n <font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>\n <font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.\n+<non-RTTI type>\n <p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>\n <pair_a> \n <pair_b> \n@@ -6948,14 +6961,15 @@ $prefix_element$\n ?catmullrom_normalize_x\n ?expf\n ?flags\n-?material_blend_sampler_%i_%i\n+?material_blend_sampler_color_%i_%i\n ?vtex\n @%s_lookFrame_0\n @%s_lookFrame_1\n @%s_lookFrame_2\n+@APhysics\n @Integer overflow in %s\n @ToolsStartup\n-@m_vCenter\n+@m_nParticle\n @unnamed_%d\n A bone named %s already exists.\n A box shape which cloth collides with.\n@@ -7225,9 +7239,10 @@ AsShotNeutral\n AsShotPreProfileMatrix\n AsShotWhiteXY\n Asserts (fails compilation) if selection criteria is not met.\n+AssetBrowse( %s )\n AssetBrowse( vnmclip )\n AssetBrowse( vnmgraph )\n-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )\n+AssetBrowse()\n Assign A Channel\n Assign B Channel\n Assign Bone Parent\n@@ -7244,9 +7259,8 @@ Assign to All Faces\n Assigns a color value to a material attribute over a frame range.\n Assigns a floating point value to a material attribute over a frame range.\n Assigns all vertex weights to the specified bone.\n-AssociatedPulseGraph\n Associates a semantic identifier with an animgraph2 used by this model.\n-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\\n\n Attach Point\n Attach to Morphing Base Mesh\n AttachedSoundEvent\n@@ -7386,9 +7400,12 @@ Blend Weights Per Vertex\n BlendLayersUsingTimeSelection\n Blur Radius\n Bm_Plane\n+Bodies are ordered by bone depth (root bone body is first)\n+Bodies are ordered the way their shapes appear in the shape list \n Body Collection\n Body Group Choice\n Body Group Name\n+Body Order\n BodyGroupList\n Bone '%s' already existed in the bind pose\n Bone '%s' already existed in the mesh\n@@ -7400,9 +7417,11 @@ Bone 1\n Bone 2\n Bone 3\n Bone Cull Type\n+Bone Depth\n Bone Influence Filter\n Bone Influence Filter Threshold\n Bone Input :: \n+Bone Merge (Ex)\n Bone Names\n Bone Rename failed, results in duplicate bone '%s' in this animation\n Bone Rename failed, results in duplicate bones in this animation\n@@ -7414,6 +7433,7 @@ Bone flags markup data\n Bone name\n Bone names must differ\n Bone or Attachment\n+Bone-Direct\n BoneConstraintRbf :: Cannot find input bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Cannot find output bone \"%s\" :: %s\\n\n BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\\n\n@@ -7422,6 +7442,7 @@ BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\\n\n BoneMarkup\n BoneMarkupList\n BoneName\n+BoneOverlay\n BoneRelativeNode\n BoneReplacements\n Bonemerged\n@@ -7437,8 +7458,6 @@ Bounds Hull\n Bounds Maxs\n Bounds Mins\n Bounds View\n-BoundsOffset\n-BoundsScale\n Box De-Select (\n Box Dimensions\n Box Primitive\n@@ -7554,8 +7573,8 @@ CMapTileMesh\n CMapTileProxy\n CMapVariableSet\n CMapWorld\n-CMaterialSampler::AllocateVertexBuffers(169): \n-CMaterialSampler::DrawMaterialSamplePoints(310): \n+CMaterialSampler::AllocateVertexBuffers(176): \n+CMaterialSampler::DrawMaterialSamplePoints(317): \n CMesh Cannot create packed input layout, because the bone indices are out of range (0x%X)\\n\n CMesh Cannot create packed input layout, too many blend weights per vertex %d, max %d\\n\n CModelAnimGraph2Identifier\n@@ -7624,7 +7643,6 @@ CModelDocAnimatedMaterialAttribute\n CModelDocAnimatedMaterialAttributeColor\n CModelDocAnimatedMaterialAttributeValue\n CModelDocAnimationList\n-CModelDocAssociatedPulseGraph\n CModelDocAtom\n CModelDocAttachment\n CModelDocAttachmentBase\n@@ -7805,7 +7823,7 @@ CModelDocModelModifier_FoliageVertexNormals\n CModelDocModelModifier_FoliageVertexNormals: Computing...\n CModelDocModelModifier_FoliageVertexNormals: Computing...\\n\n CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\\n\n-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1147\n+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\\buildworker\\csgo_rel_win64\\build\\src\\modeldoc_lib\\modeldoc_modelmodifier.cpp:1148\n CModelDocModelModifier_GenerateDecalUVs\n CModelDocModelModifier_RenameBone\n CModelDocModelModifier_ReplaceResourceReferenceSubstring\n@@ -7965,49 +7983,14 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<clas\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity\n+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr\n CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage\n CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage\n-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n+CUtlStringToken\n CUtlStringTokenWithStorage\n CVisibilityMgr\n CW Limit\n@@ -8346,13 +8329,14 @@ CurrentPreProfileMatrix\n Curvature\n Curvature Drop Amount\n Curvature Drop Distance\n-CurveEditor\n CurveEditor( { extended=true input_name=\"Frame\" output_name=\"Value\" } ) \n Cut Max\n Cut Min\n Cycle Start Frame\n Cycle Type\n Cylinder\n+Cylinder - Centered (SLOW PERF)\n+Cylinder - Ground (SLOW PERF)\n Cylinder: %s\n D(None)\n D16_UNORM\n@@ -8391,6 +8375,7 @@ Default (No Name)\n Default (No RGB Tint)\n Default Gravity Scale\n Default Root Bone Name\n+Default to old body ordering for now\n Default: %s\n DefaultAnimGraph2\n DefaultCropOrigin\n@@ -8683,6 +8668,7 @@ End Effector Rotation Fix Behaviour\n End Frame\n End Frame Number\n End Loop\n+EnsureCapacity\n Entity Class Override\n EnumArray\n Equal to\n@@ -8713,6 +8699,7 @@ EstimateStripByteCounts\n Euler Offset XYZ\n Euler XYZ\n Event %u layer %i at time %i type %s\\n\n+Event Class\n Exact\n Exclude Bones With Exact Flags\n Exclude Bones With Flags\n@@ -8835,8 +8822,8 @@ Fade Min Dist\n Fade Out Time\n Fade Time\n Fail on empty\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to allocate field info array\n Failed to allocate memory for %s (%ld elements of %ld bytes each)\n Failed to allocate mesh edges for mesh, maximum edge count %i has been reached.\\n\n@@ -8926,9 +8913,9 @@ Flexible\n Flip Bone Forward\n Flip Direction\n Flip the forward (x) axis direction of bones\n-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\\n\n FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\\n\n-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\\n\n+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\\n\n Floating point \"Predictor\" not supported with %d data format\n FoldLipLo\n FoldLipUp\n@@ -9021,6 +9008,7 @@ Goal Damping\n Goal Strength\n Goal Strength Bias\n Goal Strength Scale\n+Gradient()\n Gravity Multiplier\n GrayResponseCurve\n GrayResponseUnit\n@@ -9066,7 +9054,7 @@ Height Target\n Height Tolerance\n Height of the primitive to project normals from.\n Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.\n-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\\n\n+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\\n\n Hidden\n Hide Materialgroup in Tools\n Hide Render Color in Tools\n@@ -9102,6 +9090,7 @@ How many iterations this solvers hould use.\n How much the joint tries to drive back to bind pose\n How much to consider facing angle in occlusion.\n How quickly the elasticity target pose changes to match the current pose\n+How should the bodies, created by these shapes, be ordered in the final model\n How the end effector should be rotated after the solve.\n Hull Per Element\n Hull Per Mesh\n@@ -9324,7 +9313,6 @@ KeychainMarkup\n KeychainMarkup [%s]\n KeychainMarkupLocator\n Keyframe animation data\n-Km_Name\n Kochanek-Bartels\n Kochanek-Bartels Early\n Kochanek-Bartels Late\n@@ -9350,6 +9338,7 @@ LZWSetupEncode\n Last two rows as percentage of total size %f %%:\\n\n Layer %d:  adding key at time %d [%d -> %d], value \n Leader Bone\n+Leader Type\n Leaf Only\n Leaking %i elements\\n\n Leave Body Collision Unmodified\n@@ -9438,6 +9427,7 @@ MATERIAL_ATTRIBUTE:%s_%i\n MAlternateSemanticName\n MAtomicTransfersAsMap\n MAtomicTransfersAsPlainString\n+MESH_BUFFER_USAGE_VERTEX_EMISSIVE\n MEntitySubclassScopeFile\n MFgdHelper\n MHideInPolymorphicClassList\n@@ -9450,6 +9440,7 @@ MPropertyAttributeEditorOverride\n MPropertyAutoExpandSelf\n MPropertyColorPlusAlpha\n MPropertyCustomEditor\n+MPropertyFGDFromAssetKeysFromOtherField\n MPropertyFlattenIncludeLabel\n MPropertyFlattenIntoParentRow\n MPropertyFlattenStretchFactor\n@@ -9578,11 +9569,11 @@ Mesh %s has poylgonal faces defined which have bad vertex counts, these will be\n Mesh & Skeleton\n Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s\n Mesh Operation Stack\n-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s\n+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s\n Mesh contains %d blend weights per vertex;  truncating to %d\\n\n Mesh has %i > %i floats of attributes, unable to apply all weightings.\n Mesh node name\n-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s\n+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s\n MeshDrawOrder\n MeshFileReferenceEditor\n MeshID\n@@ -9751,6 +9742,7 @@ No bone named %s to rename.\n No bone named :: %s in modeldoc, CSkeletonpose mismatch?\n No but transfer UVs\n No component selection made; node will have no effect.\n+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!\n No edges selected by length threshold.\n No faces selected by facing angle.\n No faces selected.\n@@ -9781,6 +9773,7 @@ No support for converting user data format to LogLuv\n No vertex attribute name specified\n No vertices selected by index and weight threshold.\n NoCollapse\n+NoEditor()\n Node '%s' not allowed in this document type (%s)\n Node Name\n Node cannot be added with invalid name: %s\n@@ -9803,7 +9796,6 @@ Non-unique animation %s stream name :: %s\n Nonstandard tile length %d, convert file\n Nonstandard tile width %d, convert file\n Normal Attribute Simplification Weight\n-NormalBias\n NoseV\n NostrilFlare\n Not a TIFF file, bad magic number %d (0x%x)\n@@ -9890,6 +9882,7 @@ Override Vector\n Override all mesh normals with a specific vector.\n Override bone scale information on an animation\n Override model bounds.\n+Override sound is invalid.\n Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)\n Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)\n Override the mass this embedded piece will spawn with regardless of the VMDL propdata.\n@@ -9899,7 +9892,6 @@ Overrides the target VSNAP resource (defaults to \"particles/models/%model_name%/\n Overwrite all bone data\n Overwrite existing flags only\n Overwriting existing wrinkle map data on mesh\n-P4>c\n PARENT\n PF\\n%d %d\\n-1.000000\\n\n POSE_SPACE_BONE\n@@ -9909,7 +9901,6 @@ PackBits\n PackBitsDecode: Not enough data for scanline %ld\n PackBitsDecode: discarding %ld bytes to avoid buffer overrun\n PackToSharedVB\n-PackedBlobNormal\n Packing Material Particle System\n Packing Material Volume scale - to have more or less contents\n PageName\n@@ -9953,7 +9944,6 @@ Photometric tag is missing, assuming data is YCbCr\n Photometric tag value assumed incorrect, assuming data is YCbCr instead of RGB\n PhotometricInterpretation\n Photoshop\n-Physics\n Physics Joint Modification Mode\n Physics Particle\n Physics Prop\n@@ -10084,6 +10074,7 @@ PredictorEncodeTile\n PredictorSetup\n Prefab\n Prefab [%s]\n+Prefab target file '%s' not found\n PrefabList\n Prefix element cannot contain element or element_array attributes. ('%s')\n Prefix to Match\n@@ -10113,18 +10104,16 @@ Prismatic joint.\n Procedural\n Project From Primitive\n Projected Primitive\n-Prop Group for Physics Particles\n-Prop group for spawned physics particles\n PropWorldOrigin\n Prune pieces < error threshold\n-Pulse Graph\n Push Out\n Push mesh faces outward along their local normal. Optionally build shell geometry.\n PushBack\n QAngle\n Quad Bend Tolerance\n Quadratic\n Quadric Error Metric\n+Quantize the transform centroid position to the given modulus.\n Quaternion\n QuaternionStorage\n Quickhull got into an impossible state and failed\n@@ -10188,6 +10177,7 @@ R8_TYPELESS\n R8_UNORM\n R9G9B9E5_SHAREDEXP\n RBF Based Anim Constraint\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n ROTATION\n R_T5Y\n Radial Basis Function Type\n@@ -10221,7 +10211,6 @@ Redo\\n======\\n\n Reduce how bouncy the joint is\n ReductionMatrix1\n ReductionMatrix2\n-Reference to a Pulse file to be run on this model entity.\n Reference to a content file that will append its contents to a parent render mesh file node.\n Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)\n Reference to a content file that will resolve to one or more bone nodes to define a skeleton.\n@@ -10366,6 +10355,7 @@ SSAOBias\n SSAORadius\n SSAOStrength\n Safeguard against producing a model outside budgetary limits.\n+Same Model (In)\n Sample Count\n Sample Rays\n Sample bitmap data using input UV channel and bake it to the output face vertex data channel.\n@@ -10475,6 +10465,7 @@ Sets all elements in a vector (or float) stream to a single value\n Setting up field info failed\n Settings for the character's speeds in different situations and movement settings for the nav system and animgraph\n ShadowScale\n+Shape List\n Shapes\n Shapes controlled by this incremental control\n Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>\n@@ -10535,6 +10526,7 @@ Smooth Iterations\n Smooth Normals Across UV Seams\n Smooth Rate\n Smooth Vertex Normals\n+Snap to grid\n SnapshotVertexExtraction\n Soft Link\n Softbody\n@@ -10688,7 +10680,6 @@ TIFFVStripSize\n TIFFVTileSize\n TILT_TWIST\n TWIST\n-T\\tV_log2f\n Tag \n Tag %d\n Tag Value\n@@ -10705,6 +10696,7 @@ Target Guide Hair Count\n Target Hair Count\n Target Name\n Target Triangle Percent\n+TargetCastForModify\n TargetPrinter\n Team1\n Team2\n@@ -10802,6 +10794,8 @@ This is a BigTIFF file.  This format not supported\\nby this version of libtiff.\n This is an Euler Rotation in degrees in XYZ order.\n This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node\n This model will fail to compile outside a development environment.\n+This value is optional. Click to set.\n+This value is optional. Click to unset.\n This value is set when the morph control is created via mesh loading and not explictly created by the user\n Threshholding\n Threshold value to use when detecting if translation tracks are constant or default. In game units, i.e. inches\n@@ -10876,6 +10870,12 @@ Type of data to export.  Note that skeleton can only be filtered if type is skel\n Type of faceposer keys, Gesture or Posture\n UI Camera Yaw/Pitch\n UICameraRotation\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n UV Attribute Simplification Weight\n UV Map Box\n UV Map Cylinder\n@@ -10884,7 +10884,6 @@ UV Map Planar\n UV Map Planar Custom\n UV Mapping\n U\\8h(\n-U\\tV_logd\n Un-inertial Rods\n Unable to create unknown element %s!\\n\n Unable to find fgd file %s!\\n\n@@ -10944,13 +10943,15 @@ Unsupported mesh type for '%s': %s\n Unsupported mix of opaque and translucent materials in thie groom group. Render materials in child groom meshfile nodes must either be all opaque or all translucent.\n Up Type\n Up Vector\n+UpscalerType_t\n Use Block Solver\n Use Child Offset Attachment\n Use Curvature Drop\n Use Expensive Tangents\n Use Flat Color\n Use For Collision\n Use For Occlusion\n+Use High Precision Blend Weights\n Use High Precision/Expensive Texcoords\n Use Layer Sequence\n Use Mask\n@@ -10959,6 +10960,7 @@ Use Pole Vector for Axis\n Use RenderMesh List\n Use UV2 for Lightmap Charting\n Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.\n+Use for faces\n UseBaseVertex\n UseTintColor\n User  Neg/Pos :: %8.4f, %8.4f\\n\n@@ -10968,6 +10970,8 @@ User-picks require a name\n User-specified color/materialgroup requires a node name\n Using 16-bit blend indices\\n\n Using deprecated 'base=prefix' syntax for adding a prefix to a base class\n+VDataChoice( %s )\n+VDataChoice()\n VDataModelVersion001\n VDmElementFrameworkVersion001\n VDmSerializers001\n@@ -11080,6 +11084,7 @@ Which solver to use for positioning the IK chain.  Required.\n WhiteLevel\n WhitePoint\n Width Target\n+Will use the second uv channel in the model to generate lightmap uvs.  This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.\n Wind Speed, mph\n Windage Normal\n Windage Tangent\n@@ -11142,7 +11147,7 @@ ZIPVSetField\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n \\tNAN encountered in element '%s' guid %s attribute '%s'!\\n\n \\tV_atan2d\n-\\tV_expd\n+\\tV_sscanf_s\n \\tV_strnchr\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StringAfterPrefixCaseSensitive\n@@ -11159,6 +11164,7 @@ _TIFFMergeFieldInfo\n _TIFFSetupFieldInfo\n _TIFFVGetField\n _TIFFVSetField\n+_\\tV_log2f\n __CACHED_editcontext_provider_lookup\n __autoskinned\n __bone_%d\n@@ -11202,7 +11208,7 @@ _volumeatlas_\n _wjb\n _zero\n `=IhC?zm6>\n-a\\tV_powd\n+`\\tV_logd\n absolute\n acceleration\n accent\n@@ -11333,14 +11339,14 @@ apply_fast_sweep\n applymodelspacetranslation\n are_effects_mutually_exclude\n assetTag\n+asset_specific_keys_source\n assign_a\n assign_b\n assign_g\n assign_r\n assign_to_all\n assign_to_all_faces\n associated_key\n-associated_vpulse\n ati_compress_wrapper.dll\n attach_material\n attach_mesh\n@@ -11415,6 +11421,7 @@ best_fit_atlas\n bezier\n bias_to_center\n biased\n+binary\n binary_array\n binary_seqids\n binary_v\n@@ -11447,6 +11454,7 @@ body_collection\n body_group_choice\n body_group_count\n body_group_name\n+body_order\n bodygroupchoices\n boneIndicesAndWeights\n boneIndicesAndWeights$0\n@@ -11457,6 +11465,7 @@ bone_3\n bone_attrs\n bone_count\n bone_cull_type\n+bone_depth\n bone_index0\n bone_index1\n bone_index2\n@@ -11841,6 +11850,8 @@ durationTime\n duration_info\n dynamic_attributes\n eCONTENTROOT\n+eCenteredCylinder\n+eGroundCylinder\n ease_in_key\n ease_is_duration\n ease_out_key\n@@ -12063,6 +12074,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png\n game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png\n game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png\n+game:tools/images/propertyeditor/eye_hidden.png\n+game:tools/images/propertyeditor/eye_visible.png\n gameSoundName\n game_data_list\n gamedata_searchable_keys\n@@ -12100,8 +12113,6 @@ goal_strength\n goal_strength_bias\n gradient\n graphCurve\n-graph_keys\n-graph_name\n gravity_grab_priority\n gravity_z\n gravitygrabignoremassandsize\n@@ -12156,10 +12167,12 @@ hide_if_child_selected\n hide_materialgroup_in_tools\n hide_rendercolor_in_tools\n high_high_precision_texcoords\n+high_precision_blendweights\n high_priority\n high_quality\n hinge_axis\n hinge_vector\n+hit_group\n hitbox\n hitbox_maxs\n hitbox_mins\n@@ -12324,10 +12337,12 @@ kochanek\n kochanek_early\n kochanek_late\n l2_regularization\n+l\\tV_powd\n ladder\n last_frame\n layers\n leader_bone\n+leader_type\n leave_body_collision_unmodified\n left\n leftEdgeActive\n@@ -12423,6 +12438,7 @@ lowprecisionuv1\n m_AdditionalInputDependencies\n m_AdditionalRelatedFiles\n m_ArgumentDependencies\n+m_BoneMergeLinks\n m_ChildResourceList\n m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation\n m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNamePosition\n@@ -12475,21 +12491,33 @@ m_bUseCompressedNormalTangent\n m_bUseNewPoleVectorForAxis\n m_capabilities\n m_eRbfType\n+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder\n+m_fEmissiveFactor\n m_fMoveTo\n m_flMaxRadians\n m_flMinRadians\n m_flSlopeIncoming\n m_flSlopeOutgoing\n m_hitboxsets\n m_influenceFlags\n+m_materialGroupToken\n m_morphSet\n+m_nChildNode\n m_nFileCRC\n m_nFingerprint\n m_nFingerprintDefault\n+m_nParentHash\n+m_nSrcDrawIndex\n m_nUserData\n+m_nVertexEmissiveFormat\n+m_nVertexEmissiveOffset\n+m_nVertexEmissiveStride\n+m_nVertexEmissiveVB\n m_pVertexData\n m_qFixupRotation\n m_rbfParameters\n+m_rootBvhNodes\n maintain position along path\n make_two_sided\n makefile\n@@ -12521,6 +12549,8 @@ mass_center_override\n mass_override\n massoverride\n material_attribute_name\n+material_blend_sampler_alpha_%i_%i\n+material_blend_sampler_emissive_%i_%i\n material_filter\n material_group\n material_group_count\n@@ -12765,6 +12795,7 @@ operator_mode\n operators\n opqMU\n optimization_algorithm\n+optional_toggle_cmd\n optionallycompressedtangentframe\n orientation\n orientationChannel\n@@ -12776,6 +12807,7 @@ oscillate_scalar\n oscillate_vector\n out_frame\n outerconeangle\n+outliner_icon\n output_A\n output_B\n output_G\n@@ -12795,11 +12827,11 @@ override_help_id\n override_value\n override_vector\n overrideclass\n+overridesound\n overwrite_existing\n overwrite_existing_flags_only\n ownerlog\n owns_polymorphic_data\n-p4>c\n p=f3G=\n panorama_image\n panorama_layout\n@@ -13108,7 +13140,6 @@ scripts/activity_modifier_weights.txt\n scripts/collision_detail_layers.vdata\n scripts/collision_properties.txt\n scripts/physics_particles.vdata!%s\n-scripts/physics_particles.vdata!hlx_physics_particle_spawner\n searchable_key\n searchable_key_fields\n second_sequence_random\n@@ -13171,6 +13202,7 @@ shadow_secondary_color_night\n shadowtextureheight\n shadowtexturewidth\n shape\n+shape_list\n shapes\n shared\n sharpStartAngle\n@@ -13228,6 +13260,7 @@ smooth_normals_across_uv_seams\n smoothiterations\n smoothscale\n smoothscale_vector\n+snap_to_grid\n snappable\n snapshot\n snapshotOverride\n@@ -13347,7 +13380,7 @@ swing_offset_angle\n switch_threshold\n syncEngineFramerate\n synched\n-tBSheetSequenceIntegerId_t\n+tBRenderBufferFlags_t\n tag_list\n tag_list_dynamic\n tail_attr\n@@ -13710,7 +13743,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator.png\n tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png\n tools/images/modeldoc_editor/outliner_icon_transfermorphs.png\n-tools/images/modeldoc_editor/outliner_icon_vpulse.png\n tools/images/modeldoc_editor/outliner_icon_vsnap.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_file.png\n tools/images/modeldoc_editor/outliner_icon_vsnap_list.png\n@@ -13851,6 +13883,7 @@ velocity_smooth_iterations\n velocity_smooth_rate\n velocity_tolerance\n verify\n+verify_override_sound_foot_choice\n vertexFormat\n vertexPaintBlendParams\n vertexPaintTintColor\n@@ -13957,7 +13990,6 @@ yaw_friction\n yaw_stiffness\n z>AlignedByteArray not properly aligned\\n\n zDStatic\n-z\\tV_sscanf_s\n zero dir\n zero_unselected\n { uninitialized }"
        },
        {
          "filename": "game/bin/win64/propertyeditor_strings.txt",
          "status": "modified",
          "additions": 52,
          "deletions": 13,
          "changes": 65,
          "patch": "@@ -78,6 +78,7 @@\n #\\f?focusNextPrevChild@QTextEdit@@MEAA_N_N@Z\n #\\n?columnCount@QSortFilterProxyModel@@UEBAHAEBVQModelIndex@@@Z\n #\\r?hide@QWidget@@QEAAXXZ\n+#rowlist{ border: 0px }\n $#?windowIcon@QWidget@@QEBA?AVQIcon@@XZ\n $[?setRange@QDoubleValidator@@UEAAXNNH@Z\n $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n@@ -222,11 +223,13 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_ColorAlpha@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_ComboBox@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_CommandButton@@@@\n+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithButton@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithFloatSlider@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithIntSlider@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Editbox@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxOctaveBand@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxQAngle@@@@\n+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxTransform@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector12@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector2@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector3@@@@\n@@ -235,17 +238,22 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector8@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Flags@@@@\n .?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_NoEditor@@@@\n+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Radio@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_CurveEditor@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Gradient@@@@\n+.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_GradientWithAlpha@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_ImageAbsPathBrowse@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Radio@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Range@@@@\n+.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_ReadOnlyLabel@@@@\n .?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_TextBlock@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_CurveEditor@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Gradient@@@@\n+.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_GradientWithAlpha@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_ImageAbsPathBrowse@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Radio@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Range@@@@\n+.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_ReadOnlyLabel@@@@\n .?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_TextBlock@@@@\n .?AV?$CTier0AppSystem@VIPropertyEditorSystem@@$0A@@@\n .?AV?$CTier1AppSystem@VIPropertyEditorSystem@@$0A@@@\n@@ -310,6 +318,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AV?$_Func_impl_no_alloc@V<lambda_8>@?9???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_9>@?L@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@\n .?AVCBaseDynamicWidgetFactory@@\n+.?AVCBaseInternalPropertyAttributeEditorFactory@@\n .?AVCBasePropItem@@\n .?AVCBindTargetDescriptorBase@@\n .?AVCBindableCommand@@\n@@ -332,11 +341,13 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCQAttributeEditor_DomainAgnostic@@\n .?AVCQAttributeEditor_DomainAgnosticKV3@@\n .?AVCQAttributeEditor_DomainAgnosticPlural@@\n+.?AVCQAttributeEditor_EditWithButton@@\n .?AVCQAttributeEditor_EditWithFloatSlider@@\n .?AVCQAttributeEditor_EditWithIntSlider@@\n .?AVCQAttributeEditor_Editbox@@\n .?AVCQAttributeEditor_EditboxOctaveBand@@\n .?AVCQAttributeEditor_EditboxQAngle@@\n+.?AVCQAttributeEditor_EditboxTransform@@\n .?AVCQAttributeEditor_EditboxVector12@@\n .?AVCQAttributeEditor_EditboxVector2@@\n .?AVCQAttributeEditor_EditboxVector3@@\n@@ -346,10 +357,12 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCQAttributeEditor_EditboxVectorBase@@\n .?AVCQAttributeEditor_Flags@@\n .?AVCQAttributeEditor_Gradient@@\n+.?AVCQAttributeEditor_GradientWithAlpha@@\n .?AVCQAttributeEditor_ImageAbsPathBrowse@@\n .?AVCQAttributeEditor_NoEditor@@\n .?AVCQAttributeEditor_Radio@@\n .?AVCQAttributeEditor_Range@@\n+.?AVCQAttributeEditor_ReadOnlyLabel@@\n .?AVCQAttributeEditor_TextBlock@@\n .?AVCQBindNameFilterWidget@@\n .?AVCQBindableCommandAction@@\n@@ -397,7 +410,8 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCQPropertyEditor@@\n .?AVCQPropertyEditorToolbar@@\n .?AVCQPropertyOverlayWidget@@\n-.?AVCQRichItemListPicker@@\n+.?AVCQRichItemListPickerDialog@@\n+.?AVCQRichItemListPickerWidget@@\n .?AVCQScreenCaptureOverlay@@\n .?AVCQScrollableWidgetList@@\n .?AVCQSelectionListItemDelegate@@\n@@ -419,6 +433,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVCSpecificTargetBindableCommand@?$CBindTargetDescriptor@VCGlobalHotkeyCommands@@@@\n .?AVCSpecificTargetBindableCommand@?$CBindTargetDescriptor@VCQPropertyEditor@@@@\n .?AVCToolEditContextQuery_Base@@\n+.?AVCToolEditContextQuery_ExpressionGlobal@@\n .?AVCToolEditContextQuery_String@@\n .?AVCTreeWidgetFilter@@\n .?AVCTreeWidgetFilter_KeywordList@@\n@@ -432,6 +447,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n .?AVIPropertyEditorSystem@@\n .?AVIPropertyModificationListener@@\n .?AVIQtImageCache@@\n+.?AVIToolAttrExpressionContext@@\n .?AVIToolAttr_Value@@\n .?AVIToolFrameListener@@\n .?AVQAbstractButton@@\n@@ -526,7 +542,7 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n /\\r?hideEvent@QScrollBar@@MEAAXPEAVQHideEvent@@@Z\n /\\v?event@QAbstractScrollArea@@MEAA_NPEAVQEvent@@@Z\n /]?size@QImage@@QEBA?AVQSize@@XZ\n-0123456789X\n+04O\\f\n 0x%1\n 0x%p = %s '%s'\n 1\"?updateGeometry@QWidget@@QEAAXXZ\n@@ -653,8 +669,8 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n 2\\n?doItemsLayout@QListView@@UEAAXXZ\n 2\\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z\n 2\\v?event@QAction@@MEAA_NPEAVQEvent@@@Z\n-2\\vpd\n-2\\vpt\n+2\\vp4O\\f\n+2\\vpt2\\r\n 2aboutToShow()\n 2accepted()\n 2changed()\n@@ -841,7 +857,6 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n ??0QString@@QEAA@AEBV0@@Z\n ??0QString@@QEAA@AEBVQByteArray@@@Z\n ??0QString@@QEAA@PEBD@Z\n-??0QString@@QEAA@VQChar@@@Z\n ??0QString@@QEAA@XZ\n ??0QStyledItemDelegate@@QEAA@PEAVQObject@@@Z\n ??0QTabWidget@@QEAA@PEAVQWidget@@@Z\n@@ -2119,13 +2134,15 @@ $\\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z\n ?userType@QVariant@@QEBAHXZ\n ?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z\n @#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z\n+@InputBindSystem\n @\\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z\n A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z\n ARRAY\n ATTR\n About...\n AcceptColorInternal\n AcceptIfItemPicked\n+Accepted\n Active Window Widget\n Add to Array\n Add to Map\n@@ -2171,11 +2188,13 @@ CQAttributeEditor_CurveEditor\n CQAttributeEditor_DomainAgnostic\n CQAttributeEditor_DomainAgnosticKV3\n CQAttributeEditor_DomainAgnosticPlural\n+CQAttributeEditor_EditWithButton\n CQAttributeEditor_EditWithFloatSlider\n CQAttributeEditor_EditWithIntSlider\n CQAttributeEditor_Editbox\n CQAttributeEditor_EditboxOctaveBand\n CQAttributeEditor_EditboxQAngle\n+CQAttributeEditor_EditboxTransform\n CQAttributeEditor_EditboxVector12\n CQAttributeEditor_EditboxVector2\n CQAttributeEditor_EditboxVector3\n@@ -2185,10 +2204,12 @@ CQAttributeEditor_EditboxVector8\n CQAttributeEditor_EditboxVectorBase\n CQAttributeEditor_Flags\n CQAttributeEditor_Gradient\n+CQAttributeEditor_GradientWithAlpha\n CQAttributeEditor_ImageAbsPathBrowse\n CQAttributeEditor_NoEditor\n CQAttributeEditor_Radio\n CQAttributeEditor_Range\n+CQAttributeEditor_ReadOnlyLabel\n CQAttributeEditor_TextBlock\n CQBindNameFilterWidget\n CQBindableCommandAction\n@@ -2275,7 +2296,8 @@ CQPropertyEditor::UnblockRebuilds() %d -> %d\\n\n CQPropertyEditor::UpdateDraggingLabelWidthColumn() - cursor[%d,%d] - col = %d\\n\n CQPropertyEditorToolbar\n CQPropertyOverlayWidget\n-CQRichItemListPicker\n+CQRichItemListPickerDialog\n+CQRichItemListPickerWidget\n CQRichItemListPicker_Choice_Internal*\n CQRichItemListPicker_Group_Internal*\n CQScreenCaptureOverlay\n@@ -2427,11 +2449,13 @@ Ease Out Quart\n Ease Out Sine\n EatEscapeKeyPress\n Edit...\n+EditWithButton\n EditWithFloatSlider\n EditWithIntSlider\n Editbox\n EditboxOctaveBand\n EditboxQAngle\n+EditboxTransform\n EditboxVector12\n EditboxVector2\n EditboxVector3\n@@ -2475,8 +2499,9 @@ Failed to paste gradient\n Failed to read colors: %s\\n\n Failed to save colors: %s\\n\n FatColor_t\n-Filter name/description:\n+Filter type/description:\n Filter:\n+FilterApplied\n Find:\n Fixed\n FlagsChanged\n@@ -2502,6 +2527,7 @@ Global\n GlobalHotkeys\n GlobalTopLevel\n GradientChanged\n+GradientWithAlpha\n Grid layout should be an array of arrays\n HACK_OnToggled\n HSLA\n@@ -2536,7 +2562,6 @@ InitIncrementalOperation\n Input Binding Error\n Input Debugger [%1]\n Input Sequence\n-InputBindSystem\n Insert After\n Insert Before\n InteractiveEditFinished\n@@ -2621,6 +2646,7 @@ N?hsvSaturation@QColor@@QEBAHXZ\n N?hsvSaturationF@QColor@@QEBANXZ\n N?index@QStandardItemModel@@UEBA?AVQModelIndex@@HHAEBV2@@Z\n NO COMMAND TARGET\n+NO_UI\n NT?pixelColor@QImage@@QEBA?AVQColor@@HH@Z\n N\\v?event@QMainWindow@@MEAA_NPEAVQEvent@@@Z\n Name: %s (%s)\\n\n@@ -2763,6 +2789,7 @@ PgUp\n Pick\n PickCancelled\n PickColor\n+Pitch: rotation around Y axis\n Policy\n PopupClosed\n PopupOpened\n@@ -2838,16 +2865,16 @@ RGBA\\t%1\\t%2\\t%3\\t%4\n RMouse\n RMouseDoubleClick\n R\\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z\n-R\\fpt\n+R\\fp4O\\f\n R\\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z\n R\\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z\n-R\\vpd\n R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ\n Randomize\n RandomizeGradient\n RangeEditor\n Raw Edit Mode\n ReSelectOnReturn\n+ReadOnlyLabel\n Really delete this widget?<br><br>***THIS MAY CRASH THE PROGRAM***<br>\n Redo\n Reloading...\n@@ -2869,6 +2896,7 @@ ReverseGradient\n RichItemList_Accept\n RichItemList_Reject\n Right Mouse (Average)\n+Roll: rotation around X axis\n RunCommand\n S?movePosition@QTextCursor@@QEAA_NW4MoveOperation@1@W4MoveMode@1@H@Z\n S?name@QColor@@QEBA?AVQString@@XZ\n@@ -3005,6 +3033,7 @@ U^?supportedImageFormats@QImageReader@@SA?AV?$QList@VQByteArray@@@@XZ\n UnderMouse\n Undo\n Unhandled/unrecognized child entry (Must have a _class, or be a special entry like: vbox=[] hbox=[] grid=[[],[]] flowing=[] spacing=NUM stretch=NUM\n+Uniform scale\n Unrecognized\n Unrecognized action class '%s'\n Unrecognized property '%s.%s'\n@@ -3060,6 +3089,7 @@ Warning: This text ends with whitespace\n Widget Debugger\n Widget Properties\n Writable\n+X offset\n X?setBrush@QPainter@@QEAAXAEBVQBrush@@@Z\n X?setBrush@QPainter@@QEAAXW4BrushStyle@Qt@@@Z\n X?setBrushOrigin@QPainter@@QEAAXAEBVQPoint@@@Z\n@@ -3078,6 +3108,7 @@ XN?hasChildren@QStandardItemModel@@UEBA_NAEBVQModelIndex@@@Z\n XR?mergeCharFormat@QTextCursor@@QEAAXAEBVQTextCharFormat@@@Z\n X\\r?horizontalHeader@QTableView@@QEBAPEAVQHeaderView@@XZ\n X\\v?event@QPushButton@@MEAA_NPEAVQEvent@@@Z\n+Y offset\n Y?setData@QStandardItem@@UEAAXAEBVQVariant@@H@Z\n Y?setData@QStandardItemModel@@UEAA_NAEBVQModelIndex@@AEBVQVariant@@H@Z\n Y?setFocalPoint@QRadialGradient@@QEAAXAEBVQPointF@@@Z\n@@ -3094,6 +3125,8 @@ Y?setHsvF@QColor@@QEAAXNNNN@Z\n YO?insertColumns@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z\n YY?setDropAction@QDropEvent@@QEAAXW4DropAction@Qt@@@Z\n Y\\v?event@QRadioButton@@MEAA_NPEAVQEvent@@@Z\n+Yaw: rotation around Z axis\n+Z offset\n Z?setItalic@QFont@@QEAAX_N@Z\n Z?setItemData@QStandardItemModel@@UEAA_NAEBVQModelIndex@@AEBV?$QMap@HVQVariant@@@@@Z\n Z?setJoinStyle@QPen@@QEAAXW4PenJoinStyle@Qt@@@Z\n@@ -3109,7 +3142,6 @@ Z?setPixmap@QDrag@@QEAAXAEBVQPixmap@@@Z\n Z?setPlainText@QTextDocument@@QEAAXAEBVQString@@@Z\n Z?setPointSize@QFont@@QEAAXH@Z\n ZX?setBackground@QTextFormat@@QEAAXAEBVQBrush@@@Z\n-Z\\tV_modfd\n Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z\n [?setPointSizeF@QFont@@QEAAXN@Z\n [?setPos@QCursor@@SAXHH@Z\n@@ -3284,6 +3316,7 @@ Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z\n \\v?fixup@QSpinBox@@MEBAXAEAVQString@@@Z\n \\v?focusChanged@QApplication@@QEAAXPEAVQWidget@@0@Z\n \\v\\f?focusInEvent@QGroupBox@@MEAAXPEAVQFocusEvent@@@Z\n+\\vp4O\\f\n ]?sharedPainter@QPaintDevice@@MEBAPEAVQPainter@@XZ\n ]?staticMetaObject@QStandardItemModel@@2UQMetaObject@@B\n ]?staticMetaObject@QTextDocument@@2UQMetaObject@@B\n@@ -3337,6 +3370,7 @@ backgroundEnabled\n backgroundFill\n backgroundStyle\n before\n+binary\n black\n blue\n bold\n@@ -3369,6 +3403,7 @@ dropDraggedColorSet\n e\"?validate@QSpinBox@@MEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z\n e\\f?foregroundRole@QWidget@@QEBA?AW4ColorRole@QPalette@@XZ\n e\\n?dragEnterEvent@QAbstractItemView@@MEAAXPEAVQDragEnterEvent@@@Z\n+e\\tV_modfd\n end_as_info\n end_group\n f\\n?dragEnterEvent@QAbstractScrollArea@@MEAAXPEAVQDragEnterEvent@@@Z\n@@ -3523,6 +3558,7 @@ o\\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z\n offsetDelta\n orientation\n output_name\n+p4O\\f\n pButton\n pCurrentFocusWidget\n pFileName\n@@ -3546,10 +3582,10 @@ qQ?lineTo@QPainterPath@@QEAAXAEBVQPointF@@@Z\n q\\n?dragLeaveEvent@QAbstractScrollArea@@MEAAXPEAVQDragLeaveEvent@@@Z\n q\\v?event@QWidgetAction@@MEAA_NPEAVQEvent@@@Z\n quiet\n-r\\vpd\n-r\\vpt\n+r\\vp4O\\f\n rebuilding\n right\n+rowlist\n rowspan\n sO?insertRows@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z\n scroll_widget\n@@ -3579,6 +3615,9 @@ tabs\n tentative\n text/uri-list\n toggleViewAction\n+tool_request_args\n+tool_request_text\n+tool_request_tool\n toolbarArea\n tools/colors/shared_colors.txt\n tools/keybindings/global_key_bindings.txt"
        },
        {
          "filename": "game/bin/win64/pulse_system_strings.txt",
          "status": "modified",
          "additions": 167,
          "deletions": 54,
          "changes": 221,
          "patch": "@@ -1,4 +1,4 @@\n-  C%d:I%-2d {F=%-10d,V=%-10d} \n+  C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s} \n   CallInfo%d: %s\\n\n   Cell%d - NULL\\n\n   Cell%d EditorID:%d [%s]: %s\\n\n@@ -16,6 +16,7 @@\n  [*OBSERVABLE*]\n !g_pPulseSystem->GetWeakHandleTable()->AnyHandlesAllocated()\n \"Limit Count: \" + m_nLimitCount\n+#\\tV_exp2f\n %d CallInfos:\\n\n %d Cells:\\n\n %d Chunks:\\n\n@@ -28,17 +29,22 @@\n %s '%s' (%s)\n %s (uid=%d)\n %s [%u] - %s\\n\n+%s%02d:%02d\n %s::%s (%u)\n %s::%s (Entity Output Handler)\n+%s:autowake\n+%s:interrupt\n+%s:wait\n (debug)\n *** Test failure: \"%s\"\n - Graph Def '\n+. Dead\n . Req FAIL\n . Req PASS\n-. Retired\n . Tag Added: '%s'\n . Tag Removed: '%s'\n .?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@\n+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@\n .?AUCPulseCell_Timeline_DebugInfo_t@@\n .?AUFakeEntityDerivedA_t@@\n .?AUFakeEntityDerivedB_t@@\n@@ -49,25 +55,37 @@\n .?AUPulseSystemEventObservableVariableSourceChanged_t@@\n .?AUPulseSystemEventYieldResume_t@@\n .?AUTestComponent_t@@\n-.?AV<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@\n-.?AV<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@\n-.?AV<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@\n-.?AV<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@\n+.?AV<lambda_10>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@\n+.?AV<lambda_11>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@\n+.?AV<lambda_12>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@\n+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@\n+.?AV<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@\n+.?AV<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@\n+.?AV<lambda_7>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@\n+.?AV<lambda_8>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@\n+.?AV<lambda_9>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@\n .?AV?$CBaseAppSystem@VIPulseSystem@@@@\n .?AV?$CKV3ResourceTypeManager@$0GFHDGMHFHAHG@@@\n .?AV?$CPulseModuleRegistrationHook@VCPulseDomainScopeLoader@@@@\n .?AV?$CTier0AppSystem@VIPulseSystem@@$0A@@@\n .?AV?$CTier1AppSystem@VIPulseSystem@@$0A@@@\n .?AV?$CTier2AppSystem@VIPulseSystem@@$0A@@@\n .?AV?$CTier3AppSystem@VIPulseSystem@@$0A@@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@VCPulseValueFullType@@$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@I$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@VCPulseValueFullType@@$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_10>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_11>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_12>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_7>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@VCPulseValueFullType@@$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_8>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@I$$V@std@@\n+.?AV?$_Func_impl_no_alloc@V<lambda_9>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@VCPulseValueFullType@@$$V@std@@\n .?AVCBasePulseGraphInstance@@\n .?AVCKV3ResourceBlockHelper@@\n .?AVCKV3Transfer_ResourceLoadInterface@@\n-.?AVCPulseAPIExtensionRegistrationContext_t@@\n+.?AVCPulseAPIExtensionRegistrationContext@@\n .?AVCPulseBlackboardViewFromGraphInstance@@\n .?AVCPulseCell_BaseState@@\n .?AVCPulseCell_BooleanSwitchState@@\n@@ -97,7 +115,11 @@\n .?AVCPulseCell_Step_TestDomainDestroyFakeEntity@@\n .?AVCPulseCell_Step_TestDomainEntFire@@\n .?AVCPulseCell_Step_TestDomainTracepoint@@\n+.?AVCPulseCell_TestEnums@@\n+.?AVCPulseCell_TestWaitWithAutoTracepoints@@\n .?AVCPulseCell_TestWaitWithCursorState@@\n+.?AVCPulseCell_TestYieldForever@@\n+.?AVCPulseCell_TestYieldWithObservables@@\n .?AVCPulseCell_Test_MultiInflow_NoDefault@@\n .?AVCPulseCell_Test_MultiInflow_WithDefault@@\n .?AVCPulseCell_Test_MultiOutflow_WithParams@@\n@@ -123,8 +145,8 @@\n .?AVCPulseGraphInstance_TestDomain_UseReadOnlyBlackboardView@@\n .?AVCPulseGraphInstance_TurtleGraphics@@\n .?AVCPulseGraphLoadContext@@\n+.?AVCPulseLibraryVisitForFingerprint@@\n .?AVCPulseSystem@@\n-.?AVCPulseTargetVisitForVMMD_t@@\n .?AVCPulseTestHandleService@@\n .?AVCPulseTurtleGraphicsCursor@@\n .?AVCPulseTypeManager@@\n@@ -133,6 +155,7 @@\n .?AVCSchemaRegistration_pulse_runtime_lib@@\n .?AVCSchemaRegistration_pulse_system@@\n .?AVCTestDomainDerived_Cursor@@\n+.?AVCVisitTargetRootForGDClasses@@\n .?AVIAsyncProcessedDataResult@@\n .?AVIPulseBlackboardView@@\n .?AVIPulseExecLog@@\n@@ -146,9 +169,11 @@\n .?AVIPulseHost_YieldingCursor@@\n .?AVIPulseSystem@@\n .?AVIResourceTypeManager@@\n+;1#INF\n <No Cell>\n <map_key>\n <map_value>\n+<non-RTTI type>\n <none>\\n\n == PulseGraphDef ==\\n\n @fff>fff>fff>fff>\n@@ -164,10 +189,12 @@ Abs Float\n Abs Int\n Absolute value (float)\n Absolute value (int)\n+Add Flags\n Add R%d <- R%d + R%d\n+Add flags to the given value.\n Add the array 'b' to the end of 'a'.\n Adjust heading (positive = right, negative = left)\n-Always\n+After the real remainder, how many additional digits should we continue to append to create additional visual movement?\n And R%d <- R%d && R%d\n Any Other Cursors Have Tag\n Arc Cos\n@@ -191,9 +218,11 @@ Array Remove Invalid Elements\n Array Set Count\n Array Shuffle\n Assert True\n+Async Call Method (Child Cursor) C%d:I%d\n Async Child1\n Async Child2\n-Async Fire C%d:I%d\n+Async Outflow (Child Cursor) C%d:I%d\n+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.\n Bad FLC data for resource '%s': %s\\n\n Bad KV3 data for resource '%s': %s\\n\n Bad count in ArraySetCount (%d)\n@@ -204,6 +233,7 @@ Bad reinterpret on ArrayRemoveElementMatching\n Base-10 logarithm\n Base-2 logarithm\n Basic Function\n+Basic string support.\n Begin testing a condition composed of Observable values. Continues checking until canceled.\n Begin testing a condition composed of Observable variable references. Continues checking until true.\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\pulse_system\\_vpc_pulse_system\\default\\win64\\_msvc_\\Retail\\pulse_system.pdb\n@@ -222,8 +252,8 @@ CGlobalSymbol\n CGlobalSymbolCaseSensitive\n CKV3MemberNameSet\n CKV3MemberNameWithStorage\n-COMPONENT(\n-COMPONENT(%s)+%s\n+COMPONENT!\n+COMPONENT!%s+%s\n CPiecewiseCurve\n CPulseArraylib::ArrayAppend\n CPulseArraylib::ArrayConcatenate\n@@ -236,11 +266,11 @@ CPulseArraylib::ArrayRemoveIndex\n CPulseArraylib::ArrayRemoveInvalidElements\n CPulseArraylib::ArraySetCount\n CPulseArraylib::ArrayShuffle\n+CPulseBreakpointLocation\n CPulseCell_BooleanSwitchState::Activate\n CPulseCell_CursorQueue::Wait\n CPulseCell_ExampleCriteria::CheckRequirement\n CPulseCell_ExampleSelector::ProcessSelector\n-CPulseCell_FireCursors::Cancel\n CPulseCell_FireCursors::Start\n CPulseCell_FireCursors::StopWaiting\n CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s\n@@ -250,7 +280,6 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s\n CPulseCell_InlineNodeSkipSelector::ProcessSelector\n CPulseCell_IntervalTimer::OnInterval\n CPulseCell_IntervalTimer::Start\n-CPulseCell_IntervalTimer::StopTimer\n CPulseCell_IsRequirementValid::CheckRequirement\n CPulseCell_LimitCount::CheckRequirement\n CPulseCell_LimitCount::CommitStep\n@@ -262,8 +291,16 @@ CPulseCell_Step_TestDomainCreateFakeEntity::Run\n CPulseCell_Step_TestDomainDestroyFakeEntity::Run\n CPulseCell_Step_TestDomainEntFire::Run\n CPulseCell_Step_TestDomainTracepoint::Run\n-CPulseCell_TestWaitWithCursorState::FailImmediately\n+CPulseCell_TestEnums\n+CPulseCell_TestEnums::CompareValues\n+CPulseCell_TestWaitWithAutoTracepoints\n+CPulseCell_TestWaitWithAutoTracepoints::Wait\n+CPulseCell_TestWaitWithCursorState::InstanceState_t\n CPulseCell_TestWaitWithCursorState::Wait\n+CPulseCell_TestYieldForever\n+CPulseCell_TestYieldForever::Run\n+CPulseCell_TestYieldWithObservables\n+CPulseCell_TestYieldWithObservables::Run\n CPulseCell_Test_MultiInflow_NoDefault::InflowA\n CPulseCell_Test_MultiInflow_NoDefault::InflowB\n CPulseCell_Test_MultiInflow_WithDefault::InflowA\n@@ -278,24 +315,26 @@ CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnOut1\n CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnYieldResume1\n CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnYieldResume2\n CPulseCell_Test_MultiOutflow_WithParams_Yielding::Start\n-CPulseCell_Test_MultiOutflow_WithParams_Yielding::Stop\n CPulseCell_Timeline::Start\n-CPulseCell_Timeline::Stop\n CPulseCell_Val_TestDomainFindEntityByName::Eval\n CPulseCell_Val_TestDomainGetEntityName::Eval\n CPulseCell_Value_Curve::Eval\n CPulseCell_Value_Gradient::Eval\n CPulseCell_Value_TestValue50::Eval\n CPulseCell_WaitForCursorsWithTag::Wait\n-CPulseCell_WaitForObservable::Cancel\n CPulseCell_WaitForObservable::Start\n CPulseCursorFuncs::AnyOtherCursorsHaveTag\n CPulseCursorFuncs::CursorHasTag\n CPulseCursorFuncs::KillAllOtherCursors\n CPulseCursorFuncs::KillCursorsWithTag\n-CPulseCursorFuncs::KillThisCursorAndCancel\n CPulseCursorFuncs::RemoveTagFromCursor\n CPulseCursorFuncs::TagCursor\n+CPulseCursorFuncs::WakeCursorsWithTag\n+CPulseEnumlib\n+CPulseEnumlib::AddFlags\n+CPulseEnumlib::HasAllFlags\n+CPulseEnumlib::HasAnyFlags\n+CPulseEnumlib::RemoveFlags\n CPulseFakeEntityList::CreateFakeEntity\n CPulseFakeEntityList::DestroyAll\n CPulseGraphInstance_TestDomain::GenerateInt\n@@ -343,6 +382,7 @@ CPulseMathlib::MakeTransform\n CPulseMathlib::MakeVector\n CPulseMathlib::MakeVector2D\n CPulseMathlib::MakeVector4D\n+CPulseMathlib::MakeVectorFromAngle\n CPulseMathlib::MakeWorldTransform\n CPulseMathlib::MakeWorldVector\n CPulseMathlib::MaxFloat\n@@ -372,18 +412,23 @@ CPulseMathlib::SplitWorldVector\n CPulseMathlib::SqrFloat\n CPulseMathlib::SqrInt\n CPulseMathlib::Sqrt\n-CPulseMathlib::StringLength\n CPulseMathlib::StringsAreEqualCaseSensitive\n CPulseMathlib::Tan\n CPulseMathlib::VectorToWorldVector\n CPulseMathlib::WorldVectorToVector\n+CPulseObservableExpression\n+CPulseStringlib\n+CPulseStringlib::FormatDurationStringFromSeconds\n+CPulseStringlib::StringLength\n+CPulseStringlib::StringsAreEqualCaseSensitive\n CPulseSystem: Detected NULL RESOURCE_TYPE_PULSE_GRAPH_DEF, skipping type manager registration.\\n\n CPulseSystem::Internal_InstanceCreated( %s, %p )\\n\n CPulseSystem::Internal_InstanceDestroyed( %s, %p )\\n\n CPulseTestFuncs_LibraryA::AGreaterThan5\n CPulseTestFuncs_LibraryA::AValueChanged\n CPulseTestFuncs_LibraryA::AZeroed\n CPulseTestFuncs_LibraryA::GetEnumColorValue\n+CPulseTestFuncs_LibraryA::GetEnumFlagsValue\n CPulseTestFuncs_LibraryA::GetEnumShapeValue\n CPulseTestFuncs_LibraryA::GetFloatValue\n CPulseTestFuncs_LibraryA::GetIntValue\n@@ -396,6 +441,7 @@ CPulseTestFuncs_LibraryA::LibrarySpawnFakeEntity\n CPulseTestFuncs_LibraryA::PrintStringWithEditorSuggestions\n CPulseTestFuncs_LibraryA::PrintStringWithLeafSuggestions\n CPulseTestFuncs_LibraryA::SetEnumColor\n+CPulseTestFuncs_LibraryA::SetEnumFlags\n CPulseTestFuncs_LibraryA::SetEnumShape\n CPulseTestFuncs_LibraryA::SetFloatValue\n CPulseTestFuncs_LibraryA::SetFloatValueOptional\n@@ -432,6 +478,7 @@ CPulseTurtleGraphicsCursor::Turn\n CPulseTypeManager::Allocate( %s )\\n\n CPulseTypeManager::Deallocate( %s, %p )\\n\n CPulseTypeManager::DeallocateResource( %s, %s, dealloc=%p live=%p )\\n\n+CREATE_CHILD_CURSOR_OUTFLOW\n CStrongHandle\n CTestDomainDerived_Cursor::GetCursorValueA\n CTestDomainDerived_Cursor::GetCursorValueB\n@@ -445,15 +492,9 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_InstructionDebug,int,c\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class CMemAllocAllocator>,struct CPulse_RegisterInfo,int>::InsertBeforeGetPtr\n CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr\n CUtlOrderedMap<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::FindElement\n-CUtlRBTree<struct CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CUtlVectorFixedGrowable\n Call C%d:I%d (%s)\n Called to invoke the graph\n-Cancel\n-Cancel observing.\n Cannot allocate abstract class\n Cast of %s loses value information (returning %s) in %s on %s:%u\\n\n Ceiling - round float up to nearest integer)\n@@ -468,8 +509,10 @@ Clamp value to range (float)\n Clamp value to range (int)\n Class does not allow allocation from its schema binding\n Commit Step\n-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive\n+Compare Values\n+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.\n Completed\n+CompletedNormally\n Component Func\n Computes 2 ( 2.71...) raised to a power\n Computes e ( 2.71...) raised to a power\n@@ -492,7 +535,6 @@ Cross Product of Vector a x Vector b\n Cursor Has Tag\n Cursor [%s] @ %.2f. Cell: %u => %s: %s\n Cursor[ ptr:%p | id:%d | graph:%p ]: CPulseExecCursor()\\n\n-Cursor[ ptr:%p | id:%d | graph:%p ]: Completed with result:%d\\n\n Cursor[ ptr:%p | id:%d | graph:%p ]: Observer notifying cell ptr:%p id:%d of result:%d from Subject:%d\\n\n Cursor[ ptr:%p | id:%d | graph:%p ]: Resumed from cell ptr:%p id:%d\\n\n Cursor[ ptr:%p | id:%d | graph:%p ]: Yielded at cell ptr:%p id:%d\\n\n@@ -523,6 +565,8 @@ Dot Product of Vector a\n Element Access R%d <- R%d[R%d]\n EntFire,%s,%s,%s\n EntityName\n+Enum flags '%s' invalid value '%s'\n+Enum support.\n Enumeration '%s' does not have a value '%s'\n Eq R%d <- R%d == R%d\n Evaluate the curve at the specified input position\n@@ -532,10 +576,9 @@ External system providing an int for the test graph to consume\n External system requesting a vector from the test graph\n External system requesting an int from the test graph\n External system requesting an int from the test graph (variant)\n-Fail Immediately\n Fail Outflow\n-Failed to allocate an instance of a class\n-Failed to allocate an instance of class '%s'\n+Failed to allocate an instance of a class of type '%s'\n+Failed to allocate an instance of class '%s' (type '%s')\n Failed to apply FLC data to resource '%s': %s\\n\n Failed to load %s: %s\n Failed to load: '%s' graph not found\\n\n@@ -556,6 +599,7 @@ FakeEntity_t_DomainSubType\n Find a spawned entity by name.\n Find all the yielded cursors on this graph and cancel them.\n Find all the yielded cursors on this graph with the matching tag and cancel them.\n+Find all the yielded cursors on this graph with the matching tag and wake them.\n Find first element 'a' which compare equal to 'element' and return its index.\n Fired when A becomes 0 from any other number.\n Fired when A exceeds 5.\n@@ -564,6 +608,7 @@ Float To Game Time\n Floor - round float down to nearest integer\n Floor Float\n Flow Node ID\n+Format Duration String From Seconds\n Frac\n Fractional component (ie. returns 0.34 for 12.34)\n Free\n@@ -577,6 +622,7 @@ GenerateVector\n Get Cursor Value A\n Get Cursor Value B\n Get Enum Color Value\n+Get Enum Flags Value\n Get Enum Shape Value\n Get Float Value\n Get Instance Value X\n@@ -589,6 +635,7 @@ Get the 'ValueA' number off the cursor.\n Get the 'ValueB' number off the cursor.\n Get the 'ValueX' number off the graph instance.\n Get the global color enum value.\n+Get the global flags enum value.\n Get the global float value.\n Get the global int value.\n Get the global shape enum value.\n@@ -604,14 +651,18 @@ GetInlineConst R%d <- C%d (%s)\n GetVar R%d <- V%d (%s)\n GetVar R%d <=MOVE*V%d (%s)\n Gradient()\n+HPulseCell\n+HPulseCellBase\n+HYieldedCursor\n HandleInt\n HandleIntDerived\n+Has All Flags\n+Has Any Flags\n IKV3TransferInterface_ResourceSave\n IPulseGraphLoadErrorReporter\n IPulseReloadListener\n If (R%d) Jump to Instr I%d\n If (R%d) Leap to Chunk C%d\n-If -1 timer will continue forever\n If specified, each wait interval will vary randomly between WaitInterval this value\n If this cursor spawns other work via Fire And Forget, should this Tag be inherited?\n Impl::AssertCastImpl\n@@ -626,6 +677,8 @@ InflowB\n Insert 'element' in the given index in 'a', increasing its count by one and moving the elements after index.\n Integer Divide\n Integer division - unlike the divide (/) node, this will truncate any remainder (floor) and return an integer.\n+InterruptElegantly\n+InterruptImmediately\n Invoke Cell%d [eid=%d] %s%s\n Invoke Lib %s\n Invoke binding %d (%s) not found, converting to NOP\\n\n@@ -636,7 +689,6 @@ Jump to Instr I%d\n KeyValues3\n Kill All Other Cursors\n Kill Cursors With Tag\n-Kill This Cursor And Cancel\n Leap to Chunk C%d\n Length (magnitude) of Vector\n Length (magnitude) of Vector2D\n@@ -650,29 +702,35 @@ LessEq R%d <- R%d <= R%d\n Library Destroy Fake Entity\n Library Find Fake Entity By Name\n Library Spawn Fake Entity\n+Live Float Value\n+Live String Value\n Log10\n Log2\n Lower pen.\n MAtomicTransfersAsPlainString\n+MM:SS with leading zeros\n+MM_SS_LEADING_ZERO\n MPropertyFlattenIntoParentRow\n MPropertyLeafSuggestionProviderFn\n MPulseEditorHeaderExpr\n MPulseEditorHeaderText\n MPulseExpressionAlias\n MPulseFunctionDisableRequirements\n MPulseFunctionHiddenInTool\n-MPulseLegacyName\n+MPulseTypeRestriction\n Make Angle\n Make Angle From Forward Vector\n Make Color\n Make Transform\n Make Vector\n+Make Vector From Angle\n Make Vector2 D\n Make Vector4 D\n Make World Transform\n Make World Vector\n Make a Color from component parts\n Make a Transform from component parts.\n+Make a Vector from an Angle\n Make a Vector from component parts.\n Make a Vector2D from component parts.\n Make a World Vector from component parts.\n@@ -696,6 +754,7 @@ Multiple pointer returns\n NULL CELL \n NULL_ENT\n Natural logarithm (base e)\n+Need to specify a pulse file to open.\\n\n Neg R%d <- -R%d\n Neq R%d <- R%d != R%d\n No DATA block for resource\\n\n@@ -704,6 +763,7 @@ Normalize Vector a\n Not R%d <- !R%d\n Not safe to 'new' this class due to alignment requirements\n NotReloading\n+OUTPUT!%s::%s\n On Interval\n On True\n OnAsyncChild1\n@@ -714,7 +774,7 @@ OnOut2\n OnYieldResume1\n OnYieldResume2\n Only wrote %d (of %d) values when saving map!\n-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.\n+Opens the specified pulse used in this map in the editor.\\n\\tArguments: <pulse_file>\n Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.\n Or R%d <- R%d || R%d\n Out1\n@@ -733,6 +793,7 @@ PanelID\n Parameters\n ParametersKV3\n Parent Map: %s\\n\n+Parent VData\n Pass Outflow\n Pen Down\n Pen Up\n@@ -744,13 +805,17 @@ PrintStringWithEditorSuggestions: %s\\n\n PrintStringWithLeafSuggestions: %s\\n\n Probable infinite loop detected! Terminating pulse cursor after %d consecutive instructions (%s)\n Probable runaway cursor creation detected! Permanently disabling this graph instance (%s)\n+Proceed Immediately\n Process Selector\n Pulse system: minimal vpulse definition loading enabled - graphs may be incomplete!\\n\n Pulse: %s \n+PulseDurationStringFormat_t\n PulseSystemEventCursorResult_t\n PulseSystemEventObservableVariableListenerNotify_t\n PulseSystemEventObservableVariableSourceChanged_t\n PulseSystemEventYieldResume_t\n+PulseTestEnumFlagsAlt_t\n+PulseTestEnumFlags_t\n R Sqrt\n RESOURCE_TYPE_PULSE_GRAPH_DEF\n Rad2 Deg\n@@ -759,15 +824,19 @@ Random World Position\n Randomizes the order of items in the array (Knuth/Fisher-Yates Shuffle)\n Reciprocoal square root (1/sqrt)\n Record that the function was called\n+Reference Color\n+Reference Flags\n Register Test Checkpoint\n RegisterChoice_CPulseTestFuncs_LibraryA_PrintStringWithLeafSuggestions\n Reinterpret Instance %s R%d <- %s R%d\n Reloading\n Remap Clamped Float\n Remap and clamp input value from input range to output range (float)\n+Remove Flags\n Remove Tag From Cursor\n Remove all elements from 'a' which are invalid instances.\n Remove all elements from 'a' which compare equal to 'element'.\n+Remove flags from the given value.\n Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.\n Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.\n Return the input string, use the code default if none was supplied.\n@@ -784,15 +853,18 @@ Returns true if the World Vector is valid\n Returns up to the maximum requested elements. Never grows the array (unlike SetCount).\n Round - round float up or down to integer\n Round Float\n+SECOND\n Saturate\n Saturate (clamps float between 0 and 1)\n Save a named value of any type on the cursor.\n Scale INV R%d <- R%d / R%d\n Scale R%d <- R%d * R%d\n+Second\n Set And Get Int Value\n Set Cursor Value A\n Set Cursor Value B\n Set Enum Color\n+Set Enum Flags\n Set Enum Shape\n Set Float Value\n Set Float Value Optional\n@@ -805,6 +877,7 @@ Set the 'ValueB' number on the cursor.\n Set the 'ValueX' number on the graph instance.\n Set the current color\n Set the global color enum value.\n+Set the global color flags value.\n Set the global color shape value.\n Set the global float value (with default).\n Set the global float value.\n@@ -847,14 +920,15 @@ Sqr Int\n Sqrt\n Square root\n Start a timer with the specified duration, fire the OnInterval output \n-Stop Timer\n-Stop any active timers - the completed outflow will still fire\n+Stop Waiting\n String Length\n Strings Are Equal Case Sensitive\n Sub R%d <- R%d - R%d\n-T\\tV_log2f\n+Synchronous - Wait for this node to fully complete before proceeding.\n+THIRD\n Tag Cursor\n Tag Self When Complete\n+TagsRemoved\n Tangent of angle. Input in radians, output in radians\n Test Array Array Access\n Test Array Int Shuffle\n@@ -863,6 +937,7 @@ Test Compiled Params  After Type Changes\n Test Compiled Params  Before Type Changes\n Test Domain\n Test Domain Entity\n+Test Enums\n Test Function Renamed   With Args  New\n Test Function Renamed  New\n Test Function Renamed  Old\n@@ -889,25 +964,37 @@ TestFunctionRenamed_New\n TestFunctionRenamed_Old\n TestFunctionRenamed_WithArgs_New\n TestFunctionRenamed_WithArgs_Old\n+The Target object. In code, this parameter is the API This() object for this Input.\n+Third\n This is the description of the fake entity sub-domain\n+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.\n Time since the start of the timer\n+Trace Prefix\n TracePoint: %s\n Tried to load a polymorphic pointer with no '%s' key\n Tried to load resource reference '%s' from a value without a resource reference specific type.\n+Turn a time in seconds into a display string. NOT localized.\n Turtle Graphics Domain\n TurtleGraphics\n+Unknown format type\n Unsupported version %d for resource '%s' (Expected %d)\\n\n Used to flag a test as having failed.\n+VDATA\n Value 0-1 how far along duration (always 0 if duration is -1)\n Vector To World Vector\n WARNING: Pulse failed to restore yielded cursor - error with cell state (%d:%s)\\n\n WARNING: Pulse failed to restore yielded cursor - no yielding cell or landing pad (%d:%s)\\n\n WARNING: Pulse failed to save yielded cursor - no yielding cell or landing pad (C%d:I%d)\\n\n Wait Complete\n-Wake Cancel\n+Wait and Trace\n+Wake Cursors With Tag\n Wake Fail\n-When False\n-When True\n+Watch For Float Value\n+Watch For String Value\n+Whether value has ALL of the specified flags set (it may have other flags.)\n+Whether value has ANY of the specified flags set (it may have other flags.)\n+While False\n+While True\n World Vector To Vector\n X to the Y power\n Yield Resume1\n@@ -922,24 +1009,24 @@ Yield, Resume=%s\n [NOP]\n [RETURN R%d]\n [RETURN]\n-\\tV_acosd\n+\\f\\tV_acosd\n \\tV_asind\n+\\tV_atand\n \\tV_cosd\n-\\tV_exp2f\n \\tV_tand\n-\\t\\tV_atand\n \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\t_V_StringAfterPrefixCaseSensitive\n+_\\tV_log2f\n __CursorQueue__\n __FireCursorsParent__\n __State_Child_Condition__\n-__State_Child_Subgraph__\n __TimelineParent__\n __test_graph_%d.vpulse\n _cells\n a:fulltype\n a:typeparam\n active_frame\n+allflags\n allow_direct_return\n allowed_api_features\n allowed_requirements\n@@ -949,11 +1036,13 @@ animgraph2_clip\n animgraph2_graph\n animgraph2_identifier\n animgraph_enum\n+anyflags\n arg1\n arg2\n arg3\n arg4\n attr_factory\n+bFail\n bInAutoWakeList\n bInherit\n bValue\n@@ -982,6 +1071,7 @@ domain_subtype_info\n element\n execution_history\n expr_alias\n+expression_type\n fakeEnt.m_nHandle.WeakHandle() == PULSE_WEAK_HANDLE_INVALID\n fake_derived_a\n fake_derived_b\n@@ -1005,6 +1095,7 @@ flPitch\n flRadians\n flRoll\n flScale\n+flSeconds\n flTime\n flVal\n flValue\n@@ -1021,7 +1112,6 @@ flc_file_ids\n flc_file_list\n flc_lines\n frac\n-friendly_name_without_target\n gamedata\n gameitemclass\n gameunitclass\n@@ -1038,6 +1128,7 @@ instance_parm\n instance_variable\n instances\n intchoices\n+interrupt_priority\n intmap\n is_pulse_domain_subtype\n is_pulse_global_event\n@@ -1048,8 +1139,6 @@ is_pulse_target_output\n is_selector\n is_spontaneous\n keyframeclass\n-legacy_name_replacement\n-legacy_names\n length2d\n length3d\n lerp\n@@ -1072,15 +1161,21 @@ m_Inputs\n m_Items\n m_KV3Metadata\n m_LegacyDefaultStr\n+m_LiveFloatValue\n+m_LiveStringValue\n m_LongName\n m_MetaData\n+m_Metadata\n m_MissingRetvalDefault\n m_ParamType\n m_PlugType\n m_PreparedHook\n m_ResumePoint\n+m_SequencePoint\n m_Stops\n m_TagValue\n+m_TracePrefix\n+m_WatchForStringValue\n m_bChildCursorsShouldInherit\n m_bConditionValue\n m_bCustom\n@@ -1091,22 +1186,30 @@ m_bUsingLegacyDefault\n m_bmaxs\n m_bmins\n m_curValue\n-m_externalMethodTargetGraph\n m_flSlopeIncoming\n m_flSlopeOutgoing\n m_flWakeTime\n+m_flWatchForFloatValue\n m_hCursor\n+m_hCursorOnOtherGraph\n m_hDef\n m_hGraphInstance\n m_hInstance\n m_hListenerInstance\n m_hObserver\n+m_hSelfCellInstance\n+m_hSelfCellInstanceUntyped\n+m_hSelfCursor\n m_iValue\n+m_nCellID\n m_nClassType\n m_nCurrentWakeIndex\n m_nCursorID\n+m_nDummy\n m_nGraphID\n m_nLegacyDefaultInt\n+m_nReferenceColor\n+m_nReferenceFlags\n m_nResult\n m_nStackDepthWhenAdded\n m_nSubject\n@@ -1133,15 +1236,19 @@ modelstatechoices\n moveclass\n nAsyncRet1\n nDenominator\n+nFormat\n nHandle\n nKillPriority\n nMaxElements\n nNumerator\n nParam\n+nRemainderDigits\n+nRemainderNoiseDigits\n nRetValue\n nRetValue2\n nShape\n nValue\n+nWakePriority\n nWhichOutflowA\n nWhichOutflowB\n nYieldArg1\n@@ -1152,14 +1259,14 @@ node_id\n node_id_List\n npc_ability_name\n npcclass\n-o\\tV_sind\n observable_false\n observable_listeners\n observable_scope\n observable_true\n observer_cursors\n omni\n open_asset %s\n+open_current_map_pulse_in_tool\n operator int\n outbound\n overrideclass\n@@ -1212,6 +1319,8 @@ remove_key\n requested_cancel\n required_domain_subtype\n resourcesystem\n+return_values\n+return_values_enabled\n round\n rsqrt\n saturate\n@@ -1249,7 +1358,9 @@ text_block\n tools/images/pulse_editor/cursor_kill.png\n tools/images/pulse_editor/kill_cursor_with_tag.png\n type:\n+type_restriction_is_enum_flags\n vForward\n+value:fulltype\n vdata\n vdata_choice\n vdataderived\n@@ -1261,3 +1372,5 @@ world_angle\n world_point\n world_transform\n yield_token\n+z\\tV_sind\n+{ item_factory = 'IntervalTimer' }"
        },
        {
          "filename": "game/bin/win64/rendersystemdx11_strings.txt",
          "status": "modified",
          "additions": 95,
          "deletions": 147,
          "changes": 242,
          "patch": "@@ -47,8 +47,8 @@\n #RenderSystem_CannotCreateDevice\n #RenderSystem_IncompatibleAmdDriver\n #RenderSystem_UnableToStartGame\n-#RenderSystem_UnsupportedStructuredBuffers\n #line\n+$\\tV_expd\n %-100s %-6s %-6s\\n\n %.0Lf\n %.100s: Can not read TIFF directory\n@@ -125,16 +125,11 @@\n %suncompressed data\n (%s): ADD %s = %s\\n\n (%s): Setting %s to %s\\n\n-(9sA\n-(9tA\n (On the line reading %s):\\n\n-(QuA\n (Repeated %dx) \n-(avA\n-(esA\n *** Buffer \"%s\": Failed to create shader resource view!\\n\n *** Buffer \"%s\": Failed to create unordered access view!\\n\n-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n *** Error masking unused parts! Equal sign not found after token \"%s\"! (line %d)\\n\n *** IL \"%s\": Unable to create input layout; layout has %d fields, which is more than %d!\\n\n *** Run with -dx11debug to see native D3D errors!\\n\n@@ -146,10 +141,10 @@\n *** VB \"%s\": Tried to lock too much memory (%s>%s)!\\n\n *** VB \"%s\": Tried to lock too much memory for subregion (%s>%s)!\\n\n *** VB \"%s\": Tried to lock twice without an unlock!\\n\n-*** VfxPopulateSourceCache(1137): Error opening file \"%s\"!\\n\\n\n-*** VfxPopulateSourceCache(1145): Error opening file \"%s\"!\\n\\n\n-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file \"%s\" missing!\\n\\n\n-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for \"%s\"!\\n\\n\n+*** VfxPopulateSourceCache(1097): Error opening file \"%s\"!\\n\\n\n+*** VfxPopulateSourceCache(1105): Error opening file \"%s\"!\\n\\n\n+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file \"%s\" missing!\\n\\n\n+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for \"%s\"!\\n\\n\n *.spv\n +v$x+v$xv$+xv+$xv$+x+$vx+$vx$v+x+$vx$+vx+v $+v $v $+v +$v $++$ v+$ v$ v++$ v$+ v+xv$+ v$v$ +v+ $v$ ++x$v+ $v$v ++ $v$ +v\n , channels = \n@@ -161,11 +156,11 @@\n .?AUmessages_base@std@@\n .?AUmoney_base@std@@\n .?AUtime_base@std@@\n+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@\n .?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@\n .?AV<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@\n .?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@\n .?AV<lambda_1>@?1??QueueShaderCompile@CRenderDeviceDx11@@QEAAXPEAVBaseGPUShader_t@@@Z@\n-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@\n .?AV?$CBaseAppSystem@VIRenderDeviceMgr@@@@\n .?AV?$CBaseAppSystem@VIRenderUtils@@@@\n@@ -184,21 +179,18 @@\n .?AV?$IOpCodeHandler@H@@\n .?AV?$IOpEvaluator@H@@\n .?AV?$IStreamBuilderCallback@VCCommandStream@@@@\n-.?AV?$ITSHashConstructor@PEAUID3D11InputLayout@@@@\n-.?AV?$ITSHashConstructor@PEAX@@\n-.?AV?$ITSHashConstructor@VCSamplerStateBinding@@@@\n .?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@\n .?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??QueueShaderCompile@CRenderDeviceDx11@@QEAAXPEAVBaseGPUShader_t@@@Z@X$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Mpunct@D@std@@\n .?AV?$_Mpunct@G@std@@\n .?AV?$_Mpunct@_W@std@@\n+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@\n .?AV?$codecvt@DDU_Mbstatet@@@std@@\n .?AV?$codecvt@GDU_Mbstatet@@@std@@\n .?AV?$codecvt@_WDU_Mbstatet@@@std@@\n@@ -241,12 +233,10 @@\n .?AVCAMDAntiLagDx11@@\n .?AVCAftermathDx11@@\n .?AVCBarrierHelperEmpty@?1??GetBarrierHelper@CRenderContextBase@@UEAA?AV?$unique_ptr@VIBarrierHelper@@U?$default_delete@VIBarrierHelper@@@std@@@std@@XZ@\n-.?AVCBlendStateCreator@@\n .?AVCColorFormatBase@@\n .?AVCColorFormatDx11@@\n .?AVCCompileTargetExprOpCodeHandler@@\n .?AVCCompileTargetExprStackMachineBuilder@@\n-.?AVCDepthStencilStateCreator@@\n .?AVCDeviceFence@@\n .?AVCDeviceFenceBase@@\n .?AVCDeviceFenceDx11@@\n@@ -256,11 +246,9 @@\n .?AVCFrameSyncBase@@\n .?AVCFrameSyncDx11@@\n .?AVCIntOpEvaluator@@\n-.?AVCLayoutInsert@@\n .?AVCNVReflexDx11@@\n .?AVCPooledIndexBuffer@@\n .?AVCPooledVertexBuffer@@\n-.?AVCRasterizerStateCreator@@\n .?AVCReadGPUBuffer@@\n .?AVCRenderContextBase@@\n .?AVCRenderContextDx11@@\n@@ -275,11 +263,9 @@\n .?AVCRenderThreadBase@@\n .?AVCRenderThreadDx11@@\n .?AVCRenderUtils@@\n-.?AVCSamplerStateCreator@@\n .?AVCSchemaRegistration_rendersystemdx11@@\n .?AVCSheetHashConstructor@@\n .?AVCSingletonCriticalSection@@\n-.?AVCStateBundleCreator@@\n .?AVCSwapChainBase@@\n .?AVCSwapChainDx11@@\n .?AVCTextureBase@@\n@@ -315,12 +301,9 @@\n 0123456789-\n 0123456789ABCDEFabcdef-+Xx\n 0123456789ABCDEFabcdef-+XxPp\n-10_0\n-10_1\n-11_0\n-11_1\n-2\\f%24\n 2\\nP!E\n+2\\vp,d\n+2\\vp0v\n 3|am\n 5;FJ$,XEK4<\n 7&F|If\n@@ -334,17 +317,14 @@\n :AM:am:PM:pm\n :Jan:January:Feb:February:Mar:March:Apr:April:May:May:Jun:June:Jul:July:Aug:August:Sep:September:Oct:October:Nov:November:Dec:December\n :Sun:Sunday:Mon:Monday:Tue:Tuesday:Wed:Wednesday:Thu:Thursday:Fri:Friday:Sat:Saturday\n-<Invalid>\n-<No D3D11>\n-<No D3D11Create>\n-<Not set>\n <invalid %d>\n <unknown layout>\n <unknown multisample type\n =\\t ();,\\n\\r<>\n >-memory-\n ?ParseEXRHeaderFromMemory() failed! Error message: %s\\n\n ?fff?\n+?~~~~~~~~~~~~~~~~\n @Integer overflow in %s\n AGS Library initialization failed: %d\\n\n AGS Library initialized: v%d.%d.%d\\n\n@@ -355,14 +335,9 @@ AMD LiquidVR MultiGPU Rendering - Disabled\\n\n AMD LiquidVR MultiGPU Rendering - Enabled!\\n\n AMD LiquidVR MultiGPU Rendering - Found %d GPUs, using %d GPUs\\n\n AMD LiquidVR MultiGPU Rendering - Hooked dll, but not enabled yet\\n\n-ANDROID_VULKAN\n-ANDROID_VULKAN_4_0\n-ANDROID_VULKAN_4_1\n-ANDROID_VULKAN_5_0\n APPLICATION_DEFINED\n A\\t5Ad\n ActiveArea\n-Adapter %d/%d: VendorID: %04x, DeviceID: %04x, dxlevel %d/%d/%d\\n\n Adapter: %d\\nDriver Name:  %s\\nDriver Version: %s\\nVendorId / DeviceId:  0x%x / 0x%x\\nSubSystem / Rev:  0x%x / 0x%x\\n\\n\n AdobeDeflate\n Allow\n@@ -372,9 +347,6 @@ Alpha to coverage depth-only rendering is broken on AMD driver versions before 3\n Alpha to coverage depth-only rendering is broken on GCN 1/2/3, disabling alpha to coverage for PCI ID 0x%x.\\n\n AmdDxExtCreate11\n AnalogBalance\n-Android SM 4.0 (VULKAN)\n-Android SM 4.1 (VULKAN)\n-Android SM 5.0 (VULKAN)\n AnimatedTextureMask\n AntiAliasStrength\n App logging hooks successfully initialized\n@@ -395,7 +367,6 @@ AsyncHookUpTextureBits Disk\n AsyncTextureHookup\n Attempted to hook renderdoc using path '%s'.  Result: '%s'\\n\n Attempting to render without calling BindRenderTargets!\\n\n-B0r?\n B\\vP\\n0\n Bad VTEX data for '%s'\\n\n Bad code word\n@@ -423,6 +394,7 @@ C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/common/util-log.cpp\n C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_d3d11_lib.cpp\n C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_lib_windows.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\rendersystem\\_vpc_rendersystemdx11\\default\\win64\\_msvc_\\Retail\\rendersystemdx11.pdb\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\dx\\dxfunctions.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\dx\\dxfunctions.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\dx\\rendercontextdx11.cpp\n@@ -435,30 +407,30 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\rendercontextbase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\renderdevicebase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\renderdevicemgrbase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2423):Error loading texture: %s\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2339):Error loading texture: %s\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n C:\\buildworker\\csgo_rel_win64\\build\\src\\vfx\\compiletargetexpr.g\n CCITT Group 3\n CCITT Group 4\n CCITT RLE\n CCITT RLE/W\n CCommandBufferChunk CUtlMemoryPool\n-CDeviceFenceDx11::CDeviceFenceDx11(4565): \n+CDeviceFenceDx11::CDeviceFenceDx11(4487): \n CDmeSheetSequence\n CFALayout\n CFAPlaneColor\n@@ -477,6 +449,7 @@ COMMENT\n COMMON\n COMPILATION\n CORRUPTION!!! \n+CRenderContextBase::LockDynamicConstantBuffer\n CRenderContextBase::Present\n CRenderContextDx11:: Cannot resolve from a non-MSAA buffer to an MSAA buffer!\\n\n CRenderContextDx11:: Trying to copy from a rect that is outside of the src texture\\n\n@@ -497,46 +470,46 @@ CRenderContextDx11_SoftwareCommandLists::BeginQuery - Bad query or D3D device\\n\n CRenderContextDx11_SoftwareCommandLists::BeginQuery - Issued a Begin on a non-occlusion/pipeline stats query\\n\n CRenderContextDx11_SoftwareCommandLists::BeginQuery - Issued on an in-progress query!\\n\n CRenderContextDx11_SoftwareCommandLists::CopyTexture\n-CRenderContextDx11_SoftwareCommandLists::CopyTextureUsingShaders(2093):  got invalid ID3D11RenderTargetView, skipping copy to '%s'\\n\n+CRenderContextDx11_SoftwareCommandLists::CopyTextureUsingShaders(2075):  got invalid ID3D11RenderTargetView, skipping copy to '%s'\\n\n CRenderContextDx11_SoftwareCommandLists::EndQuery - Bad query or D3D device\\n\n-CRenderContextDx11_SoftwareCommandLists::ForceFlushGPU(2508): \n-CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2025):  failed to get ID3D11ShaderResourceView for source texture '%s', skipping.\\n\n-CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2042):  failed to get view for dest texture '%s', skipping.\\n\n+CRenderContextDx11_SoftwareCommandLists::ForceFlushGPU(2490): \n+CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2007):  failed to get ID3D11ShaderResourceView for source texture '%s', skipping.\\n\n+CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2024):  failed to get view for dest texture '%s', skipping.\\n\n CRenderDeviceBase\n-CRenderDeviceBase::AllocatePooledIndexBuffer(3626): \n-CRenderDeviceBase::AllocatePooledIndexBuffer(3662): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3803): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3834): \n-CRenderDeviceBase::AsyncSetTextureData(3265): \n-CRenderDeviceBase::BeginRenderingToSwapChain(3519): \n-CRenderDeviceBase::CreateConstantBuffer(1571): \n-CRenderDeviceBase::EndRenderDocCapture(3499): \n-CRenderDeviceBase::FindOrCreateTexture(1713): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3638): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3665): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3825): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3847): \n+CRenderDeviceBase::AsyncSetTextureData(3266): \n+CRenderDeviceBase::BeginRenderingToSwapChain(3520): \n+CRenderDeviceBase::CreateConstantBuffer(1573): \n+CRenderDeviceBase::CreateConstantBufferInternal\n+CRenderDeviceBase::EndRenderDocCapture(3500): \n+CRenderDeviceBase::FindOrCreateTexture(1715): \n CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\\n\n-CRenderDeviceBase::Flush(898): \n-CRenderDeviceBase::ForceFlushGPU(915): \n-CRenderDeviceBase::FreeTextureGPUResources(2025): \n-CRenderDeviceBase::FreeTextureGPUResources(2029): \n+CRenderDeviceBase::Flush(889): \n+CRenderDeviceBase::ForceFlushGPU(914): \n+CRenderDeviceBase::FreeTextureGPUResources(2032): \n+CRenderDeviceBase::FreeTextureGPUResources(2036): \n CRenderDeviceBase::InitPerFrameMemoryStack\n-CRenderDeviceBase::Present(610): \n-CRenderDeviceBase::StartRenderDocCapture(3486): \n-CRenderDeviceDx11::BeginSubmittingDisplayLists(1162): \n+CRenderDeviceBase::Present(601): \n+CRenderDeviceBase::StartRenderDocCapture(3487): \n+CRenderDeviceDx11::BeginSubmittingDisplayLists(1126): \n CRenderDeviceDx11::CreateDefaultShaders::<lambda_1>::operator ()\n-CRenderDeviceDx11::DeleteQueryObject(3862): \n+CRenderDeviceDx11::DeleteQueryObject(3794): \n CRenderDeviceDx11::EndQuery - Issued on an in-progress query!\\n\n-CRenderDeviceDx11::QueueReleaseShader(3074): \n-CRenderDeviceDx11::ReadTexturePixels(1996): \n+CRenderDeviceDx11::QueueReleaseShader(3006): \n+CRenderDeviceDx11::ReadTexturePixels(1924): \n CRenderDeviceDx11::SetHardwareGammaRamp: Unable to set gamma controls!\\n\n CRenderDeviceDx11::SetMode: Previous mode has not been shut down!\\n\n-CRenderDeviceMgrDx11::CreateDevice\n CRenderDeviceMgrDx11::DisplayErrorAndExit\n CRenderDeviceMgrDx11::Init\n CRenderDocAPI::AutoGenerateDebugShaders(), C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\renderdocapi.cpp:874\n CRenderThreadDx11::CopyToStagingResource(275): Error! NULL texture pointer sent to CopyToStagingResource()!\\n\n-CRenderThreadDx11::GetReadBackResource(1472): Warning: Failed to create staging texture %d(%x)\\n\n-CRenderThreadDx11::GetReadBackResource(1476): Warning: GetDeviceRemovedReason: %d(%x)\\n\n-CRenderThreadDx11::GetReadBackResource(1494): Warning: Failed to create staging buffer %d(%x)\\n\n-CRenderThreadDx11::GetReadBackResource(1498): Warning: GetDeviceRemovedReason: %d(%x)\\n\n+CRenderThreadDx11::GetReadBackResource(1542): Warning: Failed to create staging texture %d(%x)\\n\n+CRenderThreadDx11::GetReadBackResource(1546): Warning: GetDeviceRemovedReason: %d(%x)\\n\n+CRenderThreadDx11::GetReadBackResource(1564): Warning: Failed to create staging buffer %d(%x)\\n\n+CRenderThreadDx11::GetReadBackResource(1568): Warning: GetDeviceRemovedReason: %d(%x)\\n\n CRenderThreadDx11::OnAsyncReadback\n CRenderThreadDx11::OnAsyncReadback(168): \n CRenderThreadDx11::OnReadBuffer(453): Error! NULL texture pointer sent to OnReadBuffer()!\\n\n@@ -548,10 +521,9 @@ CSheetDataTextureCache::AllocateAndUploadSequenceData(582):\n CSwapChainBase::QueuePresentAndWait() looped for %d iterations without a present event.\\n\n CTSQueue<class CVertexBufferDx11 *,0>::Push\n CTSQueue<struct QueuedDisplayListItem_t,0>::Push\n-CTextureDx11::ReleaseD3DTexture(877): \n+CTextureDx11::ReleaseD3DTexture(864): \n CTextureManagerBase::AsyncHookUpTextureBits\n CTextureManagerBase::LoadStreamingData\n-CTextureManagerBase::MN_BuildRequestedResourcesList\n CTextureManagerBase::MN_DeallocateCacheableData\n CTextureManagerBase::MN_OnResourceFileLoaded\n CTextureManagerBase::MN_OnResourceLoadCompleted\n@@ -563,7 +535,6 @@ CTextureManagerDx11::ComputeTextureObject: Tried to create a depth-stencil textu\n CTextureStreamingHelper::LoadExplicitlyRequestedTextures\n CTextureStreamingHelper::RemoveMipLevelsForTextures\n CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CVertexBufferDx11 *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n CVfxProgramData::CalcDynamicComboIdFromValues\n CVfxProgramData::CalcStaticComboIdFromValues\n CalibrationIlluminant1\n@@ -579,7 +550,6 @@ Can't load vfx file for %s for RenderDoc shader debug info.\\n\n Cannot handle different per-sample values for field \"%s\"\n Cannot read TIFF header\n Cannot reconstruct lineOffset table in DecodeEXRImage.\n-Cannot use DX11 render system - adapter DirectX level only %d!\\n\n Cannot write directory, out of space\n CellLength\n CellWidth\n@@ -620,6 +590,7 @@ ConsecutiveBadFaxLines\n Copyright\n Could not decode alpha data.\n CreateComputeShader\n+CreateConstantBufferInternal\n CreateDXGIFactory\n CreateDXGIFactory1\n CreateDevice: Requested DX level %d, clamped to DX level %d\\n\n@@ -628,7 +599,7 @@ CreateGeometryShader\n CreatePixelShader\n CreateTexture2D FAILED with E_INVALIDARG! bImmutable = %s desc = \\n\\tWidth = %d\\n\\tHeight = %d\\n\\tMipLevels = %d\\n\\tArraySize = %d\\n\\tFormat = %d\\n\\tSampleDesc.Count = %d\\n\\tSampleDesc.Quality = %d\\n\\tUsage = %d\\n\\tBindFlags = %d\\n\\tCPUAccessFlags = %d\\n\\tMiscFlags = %d\\n\\tSource 2 Requested Format = %d\\n\n CreateVertexShader\n-Created DX9 FL Device.\n+Created unsupported DX Device?\n Creating device for graphics adapter %d '%s' [vendorid 0x%X]: %d.%d.%d.%d\\n\n CryptDecodeObjectEx\n CryptMsgClose\n@@ -803,7 +774,7 @@ Discarding abandoned streaming texture load for %s\\n\n DispatchComputeShaderIndirect failed - invalid dispatch buffer\\n.\n DocumentName\n Don't know how to deal with MSAA!\n-Don't support DXLevel < 100\n+Don't support DXLevel < 110\n DotRange\n DrawIndexedInstancedIndirect failed - invalid drawarg buffer\\n.\n DrawInstancedIndirect failed - invalid drawarg buffer\\n.\n@@ -863,7 +834,7 @@ Failed to create D3D11 compute shader \"%s\"!\\n\n Failed to create D3D11 geometry shader \"%s\"!\\n\n Failed to create D3D11 pixel shader \"%s\"!\\n\n Failed to create D3D11 vertex shader \"%s\"!\\n\n-Failed to create Dx11 render device!\\n\n+Failed to create DirectX 11 render device!\\nPlease check that your GPU supports at least DirectX 11 and Shader Model 5\n Failed to create device. Modules loaded: %s\\n\n Failed to create swap chain %s, may try again.\\n\n Failed to create the DXGI Factory!\\n\n@@ -950,15 +921,11 @@ GrayResponseCurve\n GrayResponseUnit\n Group3Options\n Group4Options\n-H)yA\n-H=zA\n HEADER\n HEX_DIGIT\n HalftoneHints\n Hash\n Hitch alert: Present was waiting for %d iterations and %.1f seconds.\\n\n-HixA\n-HizA\n Horizontal differencing \"Predictor\" not supported with %d-bit samples\n HostComputer\n I@r9iF\n@@ -975,15 +942,10 @@ ID3D11ShaderReflection::GetDesc failed\\n\n IL \"%s\": Unable to create input layout for shader!\\n\n IND)ind)a\n INITIALIZATION\n-IOS_VULKAN\n-IOS_VULKAN_4_0\n-IOS_VULKAN_4_1\n-IOS_VULKAN_5_0\n ISG1\n ISGN\n ISO JBIG\n IS_DIRECTX\n-IS_MOBILE\n IS_PC\n IS_SM_\n IS_VULKAN\n@@ -1115,6 +1077,7 @@ Loaded video settings config from '%s'\\n\n Loading %ls succeeded\n LocalAlloc\n LocalizedCameraModel\n+LockDynamicConstantBuffer\n LogD3DResult\n LogL16Decode: Not enough data at row %d (short %d pixels)\n LogL16InitState\n@@ -1126,7 +1089,6 @@ LowLatencySleep\n MISCELLANEOUS\n MN_AddAsyncTextureBitsHookupJob Data\n MN_AddAsyncTextureBitsHookupJob Disk\n-MN_CacheRequestedResources\n MN_OnResourceFileLoaded\n MODES\n MV.Scale.X\n@@ -1276,10 +1238,6 @@ Output aborted.\n Overall System GPU memory use:\\n\n Overflow of the sheet cache texture. Releasing and starting over. This is ok in asset browser, not so ok if the game is triggering this!\\n\n Overflow of the sheet cache texture: Try increasing SheetCacheTextureRows in gameinfo.gi (current value %d)!\\n\n-PC SM 4.0 (D3D10)\n-PC SM 4.0 (VULKAN)\n-PC SM 4.1 (D3D10.1)\n-PC SM 4.1 (VULKAN)\n PC SM 5.0 (D3D11)\n PC SM 5.0 (VULKAN)\n PC SM 6.0 (VULKAN)\n@@ -1289,10 +1247,6 @@ PCLStatsInit\n PCLStatsInput\n PCLStatsShutdown\n PCLStatsTraceLoggingProvider\n-PC_SM_4_0\n-PC_SM_4_0_VULKAN\n-PC_SM_4_1\n-PC_SM_4_1_VULKAN\n PC_SM_5_0\n PC_SM_5_0_VULKAN\n PC_SM_6_0_VULKAN\n@@ -1349,9 +1303,16 @@ RDEFl\n RDEF|\n RDEF|\\t\n RENDERDOC_GetAPI\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RESOURCE_MANIPULATION\n RESOURCE_TYPE_TEXTURE\n-R\\vpT^\n+RS_CMP_CLOSER\n+RS_CMP_CLOSER_EQUAL\n+RS_CMP_CLOSER_FARTHER_FLAG\n+RS_CMP_FARTHER\n+RS_CMP_FARTHER_EQUAL\n+RS_CMP_FUNC_MASK\n+R\\fp,d\n R_T5Y\n RawDataUniqueID\n RayReconstruction.Hint.Render.Preset.Balanced\n@@ -1381,20 +1342,17 @@ RenderSystem/AllowPartialMipChainImmediateTexLoads\n RenderSystem/IndexBufferPoolSizeMB\n RenderSystem/LowLatency\n RenderSystem/MaxPreloadTextureResolution\n-RenderSystem/MinDXLevel\n RenderSystem/MinStreamingPoolSizeMB\n RenderSystem/MinStreamingPoolSizeMBTools\n RenderSystem/ReserveMemoryForNonTextureUseMB\n RenderSystem/SetInitialStreamingPoolSizeFromBudget\n-RenderSystem/SwapChainSampleableDepth\n RenderSystem/Use32BitDepthBuffer\n RenderSystem/Use32BitDepthBufferWithoutStencil\n RenderSystem/UseHardwareGammaRamp\n RenderSystem/UseReverseDepth\n RenderSystem/VertexBufferPoolSizeMB\n Rendersystem/SheetCacheTextureCols\n Rendersystem/SheetCacheTextureRows\n-Required feature D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS.ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x not supported.\\n\n Requires\n Requires%d\n ResolutionUnit\n@@ -1451,9 +1409,7 @@ STATE_SETTING\n SUPPORTS_CS\n SUPPORTS_GS\n SV_InstanceID\n-S_BINDLESS_RUNTIME\n S_EXECUTION_REORDERING\n-S_MOBILE\n S_MOLTEN_VK\n S_REVERSE_DEPTH_BUFFER\n S_SHADER_QUALITY\n@@ -1512,6 +1468,7 @@ SuperSampling.FeatureInitResult\n SuperSampling.MinDriverVersionMajor\n SuperSampling.MinDriverVersionMinor\n SuperSampling.NeedsUpdatedDriver\n+Swap Chain Mode Changing:\\n\\tm_nVersion: %d -> %d\\n\\tm_DisplayMode:\\n\\t\\tm_nVersion: %d -> %d\\n\\t\\tm_nWidth: %d -> %d\\n\\t\\tm_nHeight: %d -> %d\\n\\t\\tm_Format: %d -> %d\\n\\t\\tm_nRefreshRateNumerator: %d -> %d\\n\\t\\tm_nRefreshRateDenominator: %d -> %d\\n\\t\\tm_nFlags: 0x%X -> 0x%X\\n\\tm_nBackBufferCount: %d -> %d\\n\\tm_nMultisampleType: %d -> %d\\n\\tm_nModeUsage: %d -> %d\\n\\tm_bUseStencil: %d -> %d\\n\\tm_bWaitForVSync: %d -> %d\\n\\tm_bScaleToOutputResolution: %d -> %d\\n\\tm_bProgressive: %d -> %d\\n\\tm_bUsingMultipleWindows: %d -> %d\\n\\tm_bIsMainWindow: %d -> %d\\n\n SwapChainColor.vtex\n SwapChainDepth.vtex\n SwapChainTrueColor.vtex\n@@ -1575,7 +1532,6 @@ TextureWrapModes\n Textures created overall: %s; textures evicted: %s\\n\n Textures loaded: %llu\\nTexture Memory: %.2f MB\\n\n The minimum amount of GPU memory for streaming textures is set to %d MB.\\n\n-This application requires DX11, no valid device found!\\n\n This is a BigTIFF file.  This format not supported\\nby this version of libtiff.\n This shader says it isn't in the queue, but we found it there!\\n\n Threshholding\n@@ -1598,8 +1554,13 @@ Trying to create a render target with invalid image format %s\\n\n Trying to set dxlevel (%d) which is higher than the card can support (%d)!\\n\n Trying to set dxlevel (%d) which is lower than the card can support (%d)!\\n\n UNICODE_ESC\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n U\\8h(\n-U\\tV_logd\n Unable to create the DLSS feature : error code = 0x%08x, info: %s\n Unable to enumerate any DX11 adapters (hr = 0x%08X), this system may not support DX11.\\n\n Unable to find swapchain named %s\n@@ -1621,6 +1582,7 @@ Unknown encoding %d for LogLuv compression\n Unsatisfied dependency at present time = death!\n Unsupported PSD color mode!\\n\n UpdateExternalTexture called on unknown external texture '%s'\\n\n+UpscalerType_t\n Usage: %s <window_name>\n UseSlangForDX11\n VB Size: %s (Count: %d)\\n\n@@ -1679,7 +1641,6 @@ XMLPacket\n XPosition\n XResolution\n XYZ, Luv\n-XayA\n YCbCrCoefficients\n YCbCrPositioning\n YCbCrSubsampling\n@@ -1706,13 +1667,13 @@ ZIPVSetField\n \\n*** A feature alias in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A feature in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A static combo in %s doesn't start with \"S_\"! Aborting shader compile!\\n\\n\n-\\n*** CVfx::ParseBoolFromFile(6414): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list\"%s\"!\\n\\n\n-\\n*** CVfx::ParseModesFromFile(5909): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseVersionFromFile(6460): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseBoolFromFile(6330): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list\"%s\"!\\n\\n\n+\\n*** CVfx::ParseModesFromFile(5825): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseVersionFromFile(6376): Error opening file \"%s\"!\\n\\n\n \\n*** Combo \"%s\" in %s doesn't match a known combo source!\\n\\n\n \\n*** Combo \"%s\" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\\n\\n\n \\n*** Combo \"%s\" in %s has arg %s that doesn't match an existing feature!\\n\\n\n@@ -1764,13 +1725,12 @@ ZIPVSetField\n \\n*** Unable to parse Version in HEADER section of %s!\\n\\n\n \\n*** Unknown rule \"%s\" in %s!\\n\\n\n \\n*** Unknown text found in FEATURES section in %s: \"%s\"\\n\\n\n-\\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file \"%s\"!\\n\\n\n-\\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file \"%s\"!\\n\\n\n \\nGetVfxDll(93): ERROR! Can't load %s dll, automatic RenderDoc shader debug info not available.\\n\n \\nMS,\\nVS_MS_RTX\n \\nPS_RENDER_STATE\n \\nRTX\n-\\n\\tV_atanf\n \\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\src\\shaders\\\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n@@ -1784,8 +1744,9 @@ ZIPVSetField\n \\tMultisampleEnable: %d\\n\n \\tScissorEnable: %d\\n\n \\tSlopeScaledDepthBias: %f\\n\n+\\tV_ZSTD_decompress\n \\tV_atan2d\n-\\tV_expd\n+\\tV_atanf\n \\tV_strspn\n \\tV_strtoi64\n \\tV_strtoui64\n@@ -1795,7 +1756,6 @@ ZIPVSetField\n \\tg_TSPointerListNodes\n \\tpSubResource[ array %d mip %d ]: pSysMem = %p sysMemPitch = %d SysMemSlicePitch = %d\\n\n \\tpTextureBitsData = %p\\n\n-\\vp4F\n _DOD3D\n _INTC_CreateDeviceExtensionContext\n _INTC_D3D11_BeginUAVOverlap\n@@ -1884,8 +1844,7 @@ _psrs\n _rtx\n _tools.txt\n _wjb\n-`ywA\n-a\\tV_powd\n+`\\tV_logd\n agsDeInitialize\n agsDriverExtensionsDX11_CreateDevice\n agsDriverExtensionsDX11_CreateDevice failed %x, disabling AGS.\\n\n@@ -2020,8 +1979,6 @@ fraps64.dll\n g_pEngineServiceMgr is NULL. Display mode information unavailable\\n\n g_pRenderDevice is NULL. %d adapter(s) available. Iterating adapters %d - %d\\n\n g_pRenderHardwareConfig is NULL. Display mode information unavailable\\n\n-gs_4_0\n-gs_4_1\n gs_5_0\n gs_6_0\n horizontal differencing \n@@ -2036,15 +1993,13 @@ iInputColorResourceDimensions\n iLumaMipDimensions\n iLumaMipLevelToUse\n iMaxRenderSize\n-iOS SM 4.0 (VULKAN)\n-iOS SM 4.1 (VULKAN)\n-iOS SM 5.0 (VULKAN)\n iRenderSize\n immediate\n incorrect count for field \"%s\" (%u, expecting %u); tag ignored\n incorrect count for field \"%s\" (%u, expecting %u); tag trimmed\n invalid handle\n invalid vector subscript\n+l\\tV_powd\n lib_6_4\n lineOrder\n ltmX.\n@@ -2094,7 +2049,6 @@ pixelAspectRatio\n png/jpg\n powf\n ps_4_0\n-ps_4_1\n ps_5_0\n ps_6_0\n pseudo-\n@@ -2103,7 +2057,7 @@ psrs\n q!T9MiZ\n r1?1\n rP1`=RO\n-r\\fpT^\n+r\\vp,d\n r_dilatedDepth\n r_dilated_motion_vectors\n r_dilated_reactive_masks\n@@ -2160,16 +2114,11 @@ screenWindowCenter\n screenWindowWidth\n secure exception triggered - invalid parameter - %ls:%d:%ls:%ls\\n\n setting.\n-setting.CentroidHack\n setting.DXLevel\n setting.DisableShaderOptimizations\n setting.HasBrokenPipelineStats\n setting.MaxDXLevel\n setting.MinDXLevel\n-setting.PreferHardwareSync\n-setting.PreferTexturesInHWMemory\n-setting.PreferZPrepass\n-setting.SuppressPixelShaderCentroidHackFixup\n setting.Unsupported\n setting.knowndevice\n setting.maxdxlevel\n@@ -2217,7 +2166,6 @@ vfxc\n video.cfg\n video_version\n vs_4_0\n-vs_4_1\n vs_5_0\n vs_6_0\n warning: failed to load %ls"
        },
        {
          "filename": "game/bin/win64/rendersystemempty_strings.txt",
          "status": "modified",
          "additions": 57,
          "deletions": 62,
          "changes": 119,
          "patch": "@@ -41,6 +41,7 @@\n \"screenWindowWidth\" attribute not found in the header.\n # of channels is zero.\\n\n #CfU7\n+$\\tV_expd\n %-100s %-6s %-6s\\n\n %.100s: Can not read TIFF directory\n %A Is\n@@ -106,9 +107,9 @@\n , channels = \n , height = \n --------------------------------------------\\n\n+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@\n .?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@\n .?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@\n-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@\n .?AV?$CBaseAppSystem@VIRenderDeviceMgr@@@@\n .?AV?$CBaseAppSystem@VIRenderUtils@@@@\n@@ -120,22 +121,17 @@\n .?AV?$CTier1AppSystem@VIRenderUtils@@$0A@@@\n .?AV?$CTier2AppSystem@VIRenderDeviceMgr@@$0A@@@\n .?AV?$CTier2AppSystem@VIRenderUtils@@$0A@@@\n-.?AV?$ITSHashConstructor@PEAX@@\n .?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@\n .?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@\n-.?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@\n-.?AVCBlendStateCreator@@\n-.?AVCDepthStencilStateCreator@@\n+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@\n .?AVCDeviceFence@@\n .?AVCDeviceFenceBase@@\n .?AVCEmptyShaderBuffer@@\n .?AVCPooledIndexBuffer@@\n .?AVCPooledVertexBuffer@@\n-.?AVCRasterizerStateCreator@@\n .?AVCReadGPUBuffer@@\n .?AVCRenderContextEmpty@@\n .?AVCRenderDeviceBase@@\n@@ -148,7 +144,6 @@\n .?AVCRenderUtils@@\n .?AVCSchemaRegistration_rendersystemempty@@\n .?AVCSheetHashConstructor@@\n-.?AVCStateBundleCreator@@\n .?AVCSwapChainBase@@\n .?AVCSwapChainEmpty@@\n .?AVCTextureBase@@\n@@ -173,6 +168,7 @@\n <invalid %d>\n <unknown multisample type\n ?EncodeBC7Blocks\n+?~~~~~~~~~~~~~~~~\n @Integer overflow in %s\n ActiveArea\n Adapter: %d\\nDriver Name:  %s\\nDriver Version: %s\\nVendorId / DeviceId:  0x%x / 0x%x\\nSubSystem / Rev:  0x%x / 0x%x\\n\\n\n@@ -211,23 +207,23 @@ C:\\buildworker\\csgo_rel_win64\\build\\_build_\\rendersystem\\_vpc_rendersystemempty\\\n C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\renderdevicebase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2423):Error loading texture: %s\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2339):Error loading texture: %s\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n CCITT Group 3\n CCITT Group 4\n CCITT RLE\n@@ -239,28 +235,27 @@ CFAPlaneColor\n CLargeCommandBufferChunk CUtlMemoryPool\n CMediumCommandBufferChunk CUtlMemoryPool\n CRenderDeviceBase\n-CRenderDeviceBase::AllocatePooledIndexBuffer(3626): \n-CRenderDeviceBase::AllocatePooledIndexBuffer(3662): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3803): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3834): \n-CRenderDeviceBase::AsyncSetTextureData(3265): \n-CRenderDeviceBase::BeginRenderingToSwapChain(3519): \n-CRenderDeviceBase::CreateConstantBuffer(1571): \n-CRenderDeviceBase::EndRenderDocCapture(3499): \n-CRenderDeviceBase::FindOrCreateTexture(1713): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3638): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3665): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3825): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3847): \n+CRenderDeviceBase::AsyncSetTextureData(3266): \n+CRenderDeviceBase::BeginRenderingToSwapChain(3520): \n+CRenderDeviceBase::CreateConstantBuffer(1573): \n+CRenderDeviceBase::CreateConstantBufferInternal\n+CRenderDeviceBase::EndRenderDocCapture(3500): \n+CRenderDeviceBase::FindOrCreateTexture(1715): \n CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\\n\n-CRenderDeviceBase::Flush(898): \n-CRenderDeviceBase::ForceFlushGPU(915): \n-CRenderDeviceBase::FreeTextureGPUResources(2025): \n-CRenderDeviceBase::FreeTextureGPUResources(2029): \n-CRenderDeviceBase::Present(610): \n-CRenderDeviceBase::StartRenderDocCapture(3486): \n+CRenderDeviceBase::Flush(889): \n+CRenderDeviceBase::ForceFlushGPU(914): \n+CRenderDeviceBase::FreeTextureGPUResources(2032): \n+CRenderDeviceBase::FreeTextureGPUResources(2036): \n+CRenderDeviceBase::Present(601): \n+CRenderDeviceBase::StartRenderDocCapture(3487): \n CSheetDataTextureCache::AllocateAndUploadSequenceData(582): \n CTextureManagerBase::AsyncHookUpTextureBits\n CTextureManagerBase::LoadStreamingData\n-CTextureManagerBase::MN_BuildRequestedResourcesList\n CTextureManagerBase::MN_DeallocateCacheableData\n-CTextureManagerBase::MN_OnResourceFileLoaded\n CTextureManagerBase::MN_OnResourceLoadCompleted\n CTextureManagerBase::MN_OnResourceLoadFailed\n CTextureManagerBase::MarkAsyncUpdatedThisFrame - Invalid texture handle.\\n\n@@ -271,8 +266,6 @@ CameraCalibration1\n CameraCalibration2\n CameraSerialNumber\n Can not read scanlines from a tiled image\n-Can't clear TEXTURE_WAITING_FOR_IO flag because of streaming request mismatch: %d in handle, %d in request\\n\n-Can't clear TEXTURE_WAITING_FOR_IO flag because pTexture is NULL\\n\n Can't detect memory size on this platform!\\n\n Cannot handle different per-sample values for field \"%s\"\n Cannot read TIFF header\n@@ -282,7 +275,6 @@ CellLength\n CellWidth\n ChromaBlurRadius\n CleanFaxData\n-Clearing TEXTURE_WAITING_FOR_IO flag because it's has no streaming request id anymore\\n\n ClipPath\n ColorMap\n ColorMatrix1\n@@ -297,6 +289,7 @@ Compression scheme %u %s encoding is not implemented\n ConsecutiveBadFaxLines\n Copyright\n Could not decode alpha data.\n+CreateConstantBufferInternal\n CurrentICCProfile\n CurrentPreProfileMatrix\n DBM&(\n@@ -319,7 +312,7 @@ DeviceID\n Direct3D 11\n Discarding abandoned streaming texture load for %s\\n\n DocumentName\n-Don't support DXLevel < 100\n+Don't support DXLevel < 110\n DotRange\n Driver Name:  %s\\nDriver Version: %s\\nVendorId / DeviceId:  0x%x / 0x%x\\nSubSystem / Rev:  0x%x / 0x%x\\nDXLevel:  %d\\nTexture memory:  %s\\nGPU memory (use / budget): %s / %s\\nVid:  %s, render at %i x %i, display at %i x %i, refresh rate %.2fHz (%uHz desktop)\\n\n DumpModeDecode: Not enough data for scanline %d\n@@ -456,8 +449,6 @@ LogLuvDecode32: Not enough data at row %d (short %d pixels)\n LogLuvInitState\n MN_AddAsyncTextureBitsHookupJob Data\n MN_AddAsyncTextureBitsHookupJob Disk\n-MN_CacheRequestedResources\n-MN_OnResourceFileLoaded\n Make\n MakerNoteSafety\n MaskedAreas\n@@ -534,8 +525,15 @@ Premature end-of-file encountered.\n Premature end-of-partition0 encountered.\n PrimaryChromaticities\n RENDERDOC_GetAPI\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RESOURCE_TYPE_TEXTURE\n RSDSM\n+RS_CMP_CLOSER\n+RS_CMP_CLOSER_EQUAL\n+RS_CMP_CLOSER_FARTHER_FLAG\n+RS_CMP_FARTHER\n+RS_CMP_FARTHER_EQUAL\n+RS_CMP_FUNC_MASK\n R_T5Y\n RawDataUniqueID\n ReductionMatrix1\n@@ -549,12 +547,9 @@ Render system:  %s\\n\n RenderDoc is not active, did you forget to add -renderdoc to the command-line? Is RenderDoc installed?\\n\n RenderSystem\n RenderSystem/AllowPartialMipChainImmediateTexLoads\n-RenderSystem/IndexBufferPoolSizeMB\n RenderSystem/MaxPreloadTextureResolution\n-RenderSystem/MinDXLevel\n RenderSystem/MinStreamingPoolSizeMB\n RenderSystem/MinStreamingPoolSizeMBTools\n-RenderSystem/VertexBufferPoolSizeMB\n Rendersystem/SheetCacheTextureCols\n Rendersystem/SheetCacheTextureRows\n ResolutionUnit\n@@ -588,13 +583,12 @@ StripOffsets\n SubIFD\n SubfileType\n Success\n+Swap Chain Mode Changing:\\n\\tm_nVersion: %d -> %d\\n\\tm_DisplayMode:\\n\\t\\tm_nVersion: %d -> %d\\n\\t\\tm_nWidth: %d -> %d\\n\\t\\tm_nHeight: %d -> %d\\n\\t\\tm_Format: %d -> %d\\n\\t\\tm_nRefreshRateNumerator: %d -> %d\\n\\t\\tm_nRefreshRateDenominator: %d -> %d\\n\\t\\tm_nFlags: 0x%X -> 0x%X\\n\\tm_nBackBufferCount: %d -> %d\\n\\tm_nMultisampleType: %d -> %d\\n\\tm_nModeUsage: %d -> %d\\n\\tm_bUseStencil: %d -> %d\\n\\tm_bWaitForVSync: %d -> %d\\n\\tm_bScaleToOutputResolution: %d -> %d\\n\\tm_bProgressive: %d -> %d\\n\\tm_bUsingMultipleWindows: %d -> %d\\n\\tm_bIsMainWindow: %d -> %d\\n\n TEXMAN: %s LoadStreamingData (%s)\\n\n TEXMAN: %s MarkTextureBitsLoaded (%s)\\n\n TEXMAN: %s TextureBecameEvicted (%s)\\n\n TEXMAN: %s loaded %s %i/%i mips (%ix%i / %ix%i) of %s (%i bytes)\\n\n TEXMAN: Abandoning job in %s (%s)\\n\n-TEXMAN: Abandoning streaming request early in %s\\n\n-TEXMAN: Abandoning streaming request in %s\\n\n TEXMAN: Adding %llx+%p (binding=%p), %s to abandoned hookup jobs\\n\n TEXMAN: Deleting %d textures\\n\n TEXMAN: Outstanding stream count %d -> %d (%s)\\n\n@@ -646,17 +640,22 @@ Truncated header.\n Trying to create a render target with invalid image format %s\\n\n Trying to set dxlevel (%d) which is higher than the card can support (%d)!\\n\n Trying to set dxlevel (%d) which is lower than the card can support (%d)!\\n\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n U\\8h(\n-U\\tV_logd\n Unable to find swapchain named %s\n-Unable to stream in resource file \"%s\" (Error: %s)\\n\n Unavailable\n Unexpected resource version '%d' for '%s'\\n\n UniqueCameraModel\n Unknown compression type.\n Unknown data format %d for LogLuv compression\n Unknown encoding %d for LogLuv compression\n Unsupported PSD color mode!\\n\n+UpscalerType_t\n Usage: %s <window_name>\n VB Size: %s (Count: %d)\\n\n VBPool\n@@ -692,8 +691,8 @@ ZIPSetupDecode\n ZIPSetupEncode\n ZIPVSetField\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n+\\tV_ZSTD_decompress\n \\tV_atan2d\n-\\tV_expd\n \\tV_strtoi64\n \\t\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\n\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\v\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\f\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\tg_TSPointerListNodes\n@@ -703,7 +702,7 @@ _TIFFVGetField\n _TIFFVSetField\n _tools.txt\n _wjb\n-a\\tV_powd\n+`\\tV_logd\n aoB>\"\n ati_compress_wrapper.dll\n bValid\n@@ -751,6 +750,7 @@ immediate\n incorrect count for field \"%s\" (%u, expecting %u); tag ignored\n incorrect count for field \"%s\" (%u, expecting %u); tag trimmed\n invalid vector subscript\n+l\\tV_powd\n lineOrder\n ltmX.\n makemelast\n@@ -784,16 +784,11 @@ scanline\n screenWindowCenter\n screenWindowWidth\n setting.\n-setting.CentroidHack\n setting.DXLevel\n setting.DisableShaderOptimizations\n setting.HasBrokenPipelineStats\n setting.MaxDXLevel\n setting.MinDXLevel\n-setting.PreferHardwareSync\n-setting.PreferTexturesInHWMemory\n-setting.PreferZPrepass\n-setting.SuppressPixelShaderCentroidHackFixup\n setting.Unsupported\n setting.knowndevice\n setting.maxdxlevel"
        },
        {
          "filename": "game/bin/win64/rendersystemvulkan_strings.txt",
          "status": "modified",
          "additions": 130,
          "deletions": 166,
          "changes": 296,
          "patch": "@@ -53,6 +53,7 @@\n #Vulkan_InitializationFailure\n #Vulkan_RequiredExtensionMissing\n #line\n+$\\tV_expd\n %-100s %-6s %-6s\\n\n %.0Lf\n %.100s: Can not read TIFF directory\n@@ -72,13 +73,17 @@\n %s %s: vkAllocateMemory failed for (%s) memory indicating heap is full, trying again in non-device local as a fallback.\\n\n %s - encountered shader with requiredSubgroupSize (%d), but VK_EXT_subgroup_size_control not enabled.  Will be ignored, might cause rendering artifacts because device subgroup size is (%d).\\n\n %s - encountered shader with requiredSubgroupSize (%d), but maxSubgroupSize is (%d).  Will be ignored, might cause rendering artifacts.\\n\n+%s - expected result = %s\\n\n %s - invalid indirect execution set.\\n\n %s - invalid pipeline index %d.\\n\n %s - unable to compute pipeline/pipeline layout.\\n\n+%s - unexpected result = %s\\n\n %s - vkCreateIndirectExecutionSetEXT returned error %s.\\n\n %s compression support is not configured\n %s does not support all required features, disabling.\\n\n %s does not support computeDerivativeGroupQuads, disabling.\\n\n+%s does not support fragmentShaderBarycentric, disabling.\\n\n+%s required because VulkanRequireBarycentrics is set in gameinfo.gi, but it is not supported.  Vulkan device creation failed.\\n\n %s required because VulkanRequireComputeShaderDerivatives is set in gameinfo.gi, but it is not supported.  Vulkan device creation failed.\\n\n %s.spv\n %s2-d encoding\n@@ -159,12 +164,8 @@\n ( result == VK_SUCCESS )\n (%s): ADD %s = %s\\n\n (%s): Setting %s to %s\\n\n-(1yY\n (On the line reading %s):\\n\n-(QzY\n-(qxY\n-(qyY\n-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\\n\n *** Error masking unused parts! Equal sign not found after token \"%s\"! (line %d)\\n\n *** IL \"%s\": Unable to create input layout; layout has %d fields, which is more than %d!\\n\n *** VB \"%s\": Failed to lock!\\n\n@@ -173,15 +174,14 @@\n *** VB \"%s\": Tried to lock too much memory (%s > %s)!\\n\n *** VB \"%s\": Tried to lock too much memory for subregion (%s > %s)!\\n\n *** VB \"%s\": Tried to lock twice without an unlock!\\n\n-*** VfxPopulateSourceCache(1137): Error opening file \"%s\"!\\n\\n\n-*** VfxPopulateSourceCache(1145): Error opening file \"%s\"!\\n\\n\n-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file \"%s\" missing!\\n\\n\n-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for \"%s\"!\\n\\n\n+*** VfxPopulateSourceCache(1097): Error opening file \"%s\"!\\n\\n\n+*** VfxPopulateSourceCache(1105): Error opening file \"%s\"!\\n\\n\n+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file \"%s\" missing!\\n\\n\n+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for \"%s\"!\\n\\n\n *.spv\n +v$x+v$xv$+xv+$xv$+x+$vx+$vx$v+x+$vx$+vx+v $+v $v $+v +$v $++$ v+$ v$ v++$ v$+ v+xv$+ v$v$ +v+ $v$ ++x$v+ $v$v ++ $v$ +v\n , channels = \n , height = \n-,VUID-VkCopyAccelerationStructureInfoKHR-src-04963\n --------------------------------------------\\n\n -rtest1\n -sSO\\\n@@ -194,6 +194,7 @@\n -vulkan_enable_gpu_validation\n -vulkan_enable_sync_validation\n -vulkan_enable_thread_safety_validation\n+-vulkan_gpuav_shader_names\n ../../../src/thirdparty/nvidia/nvngx_dlss_sdk/lib/Windows_x86_64/dev/\n .?AUConcurrentDatabase@Fossilize@@\n .?AUPerThreadDataBase_t@@\n@@ -202,10 +203,10 @@\n .?AUmessages_base@std@@\n .?AUmoney_base@std@@\n .?AUtime_base@std@@\n+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@\n .?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@\n .?AV<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@\n .?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@\n-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@\n .?AV<lambda_1>@?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@34@@Z@\n .?AV<lambda_1>@?7???R0?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@34@@Z@QEBA@XZ@\n@@ -238,21 +239,18 @@\n .?AV?$CVulkanObject@PEAUVkAccelerationStructureKHR_T@@$1?vkDestroyAccelerationStructureKHR@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@\n .?AV?$CVulkanObject@PEAUVkBufferView_T@@$1?vkDestroyBufferView@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@\n .?AV?$CVulkanObject@PEAUVkImageView_T@@$1?vkDestroyImageView@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@\n+.?AV?$CVulkanObject@PEAUVkMicromapEXT_T@@$1?vkDestroyMicromapEXT@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@\n .?AV?$CVulkanObject@PEAUVkSampler_T@@$1?vkDestroySampler@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@\n .?AV?$IOpCodeHandler@H@@\n .?AV?$IOpEvaluator@H@@\n .?AV?$IStreamBuilderCallback@VCCommandStream@@@@\n-.?AV?$ITSHashConstructor@PEAUInputLayoutVulkan_t@@@@\n-.?AV?$ITSHashConstructor@PEAX@@\n-.?AV?$ITSHashConstructor@VCSamplerStateBinding@@@@\n .?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@\n .?AV?$_CancellationTokenCallback@V<lambda_1>@?1??_RegisterCancellation@_Task_impl_base@details@Concurrency@@QEAAXV?$weak_ptr@U_Task_impl_base@details@Concurrency@@@std@@@Z@@details@Concurrency@@\n .?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@\n-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@45@@Z@X$$V@std@@\n .?AV?$_Func_impl_no_alloc@V<lambda_1>@?7???R1?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@45@@Z@QEBA@XZ@X$$V@std@@\n@@ -263,6 +261,8 @@\n .?AV?$_Mpunct@G@std@@\n .?AV?$_Mpunct@_W@std@@\n .?AV?$_Ref_count_obj2@U_ExceptionHolder@details@Concurrency@@@std@@\n+.?AV?$_Ref_count_obj2@VCReadTexturePixelsCallback@@@std@@\n+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@\n .?AV?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@\n .?AV?$codecvt@DDU_Mbstatet@@@std@@\n .?AV?$codecvt@GDU_Mbstatet@@@std@@\n@@ -309,7 +309,6 @@\n .?AVCBarrierHelperEmpty@?1??GetBarrierHelper@CRenderContextBase@@UEAA?AV?$unique_ptr@VIBarrierHelper@@U?$default_delete@VIBarrierHelper@@@std@@@std@@XZ@\n .?AVCBarrierHelperVulkan@@\n .?AVCBaseAccelerationStructureVulkan@@\n-.?AVCBlendStateCreator@@\n .?AVCBufferBarrierTracker@@\n .?AVCBufferMovedListenerDeferredDeletion@@\n .?AVCBufferedDescriptorSetVulkan@@\n@@ -318,7 +317,6 @@\n .?AVCCompileTargetExprOpCodeHandler@@\n .?AVCCompileTargetExprStackMachineBuilder@@\n .?AVCConstantBufferVulkan@@\n-.?AVCDepthStencilStateCreator@@\n .?AVCDescriptorCountTracker@@\n .?AVCDescriptorSetReferenced@@\n .?AVCDescriptorSetVulkan@@\n@@ -335,7 +333,6 @@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??ExecuteOustandingSWCommandStreamJobs@CRenderThreadVulkan@@AEAAXXZ@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??ExecuteOustandingSWCommandStreamJobs@CRenderThreadVulkan@@AEAAXXZ@@Z@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??PerformQueuedTextureDeletions@CRenderDeviceVulkan@@AEAAX_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??PerformQueuedTextureDeletions@CRenderDeviceVulkan@@AEAAX_N@Z@@Z@\n .?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?1??QueuePresent@CRenderContextVulkan@@UEAAXPEAUSwapChainHandle_t__@@HPEAVIRenderDevicePresentCallback@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?1??QueuePresent@CRenderContextVulkan@@UEAAXPEAUSwapChainHandle_t__@@HPEAVIRenderDevicePresentCallback@@@Z@@Z@\n-.?AVCLayoutInsert@@\n .?AVCMemoryManagerVulkan@@\n .?AVCNVReflexVulkan@@\n .?AVCNsightAPI@@\n@@ -344,7 +341,7 @@\n .?AVCPipelineVulkan@@\n .?AVCPooledIndexBuffer@@\n .?AVCPooledVertexBuffer@@\n-.?AVCRasterizerStateCreator@@\n+.?AVCRayTraceOMMVulkan@@\n .?AVCRayTracePipelineVulkan@@\n .?AVCRayTraceShaderBindingTableVulkan@@\n .?AVCReadGPUBuffer@@\n@@ -363,12 +360,10 @@\n .?AVCRenderThreadBase@@\n .?AVCRenderThreadVulkan@@\n .?AVCRenderUtils@@\n-.?AVCSamplerStateCreator@@\n .?AVCSchemaRegistration_rendersystemvulkan@@\n .?AVCShaderTableVulkan@@\n .?AVCShaderVulkanBase@@\n .?AVCSheetHashConstructor@@\n-.?AVCStateBundleCreator@@\n .?AVCSwapChainBase@@\n .?AVCSwapChainVulkan@@\n .?AVCTLASVulkan@@\n@@ -434,17 +429,16 @@\n 0123456789ABCDEFabcdef-+Xx\n 0123456789ABCDEFabcdef-+XxPp\n 0x%x\n-2\\f%24\n 2\\fu24*\n 2\\nP!E\n-2\\vpx\n 58x\\t\n 5;FJ$,XEK4<\n 5\\fE545\n 7&F|If\n 7T2,\n 8\"3hrf\n 8&Kx\n+8Fx*,\n 969p\n :AM:am:PM:pm\n :Jan:January:Feb:February:Mar:March:Apr:April:May:May:Jun:June:Jul:July:Aug:August:Sep:September:Oct:October:Nov:November:Dec:December\n@@ -457,17 +451,14 @@\n =\\t ();,\\n\\r<>\n >-memory-\n ?ParseEXRHeaderFromMemory() failed! Error message: %s\\n\n+?~~~~~~~~~~~~~~~~\n @BXV\n @Integer overflow in %s\n @count\n @iZb\n-ANDROID_VULKAN\n-ANDROID_VULKAN_4_0\n-ANDROID_VULKAN_4_1\n-ANDROID_VULKAN_5_0\n Aboring CRenderContextVulkan::ReadBufferIndirect because of GPU memory allocation failure.\\n\n-Aboring OnReadBuffer because of GPU memory allocation failure.\\n\n Aboring OnReadPixels because of GPU memory allocation failure.\\n\n+Aborting OnReadBuffer because of GPU memory allocation failure.\\n\n Aborting ReadTexturePixelsInternal - unable to create MSAA resolve image.\\n\n AccelStruct\n AccelStructBuffer %s [%s]\n@@ -493,9 +484,6 @@ Allow disabling memory aliasing in the device memory pool.  This is just intende\n Allow%d\n Alpha decoder initialization failed.\n AnalogBalance\n-Android SM 4.0 (VULKAN)\n-Android SM 4.1 (VULKAN)\n-Android SM 5.0 (VULKAN)\n AnimatedTextureMask\n AntiAliasStrength\n App logging hooks successfully initialized\n@@ -569,27 +557,28 @@ C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/common/util-log.cpp\n C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_lib_windows.cpp\n C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_vulkan_lib.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\_build_\\rendersystem\\_vpc_rendersystemvulkan\\default\\win64\\_msvc_\\Retail\\rendersystemvulkan.pdb\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\bitmap\\floatbitmap.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\public\\tier0\\utlqueue.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\rendercontextbase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\renderdevicebase.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2423):Error loading texture: %s\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n-C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(2339):Error loading texture: %s\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n+C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\\n\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\asynccompilehelpervulkan.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\memorymgrvulkan.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\pipelinecachemgrvulkan.cpp\n@@ -603,7 +592,7 @@ C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\texturevulkan.cpp\n C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\vulkanfunctions.h\n C:\\buildworker\\csgo_rel_win64\\build\\src\\vfx\\compiletargetexpr.g\n C:\\buildworker\\csgo_rel_win64\\build\\src\\vfx\\vfx_shader_file.cpp\n-CBaseAccelerationStructureVulkan::Create(236): \n+CBaseAccelerationStructureVulkan::Create(252): \n CCITT Group 3\n CCITT Group 4\n CCITT RLE\n@@ -617,17 +606,19 @@ CFossilizeStateCreator::RegisterShader\n CInputLayoutDict<class CInputLayoutVulkan>::ConcatentateInputLayouts\n CLargeCommandBufferChunk CUtlMemoryPool\n CMediumCommandBufferChunk CUtlMemoryPool\n-CMemoryManagerVulkan::AllocateBufferInCustomPoolGroup(1566): vmaCreatePool failed with error: %d\\n\n-CMemoryManagerVulkan::AllocateImageInCustomPoolGroup(1495): vmaCreatePool failed with error: %d\\n\n+CMemoryManagerVulkan::AllocateBufferInCustomPoolGroup(1547): vmaCreatePool failed with error: %d\\n\n+CMemoryManagerVulkan::AllocateImageInCustomPoolGroup(1476): vmaCreatePool failed with error: %d\\n\n CMemoryManagerVulkan::VmaDefragProcessDeletionQueueInternal(), C:\\buildworker\\csgo_rel_win64\\build\\src\\rendersystem\\vulkan\\memorymgrvulkan.cpp:723\n CNVReflexVulkan::LateWarpUpdateResolution(425): \n COLOR0\n COMMENT\n COMMON\n CPipelineManagerVulkan::LoadPipelineCache\n CRC mismatch!\\n\n+CRayTraceOMMVulkan::CRayTraceOMMVulkan(1556): \n CRayTracePipelineVulkan\n CRayTracePipelineVulkan::CRayTracePipelineVulkan\n+CRenderContextBase::LockDynamicConstantBuffer\n CRenderContextBase::Present\n CRenderContextVulkan:: Trying to resolve from a rect that is outside of the src rendertarget\\n\n CRenderContextVulkan::BeginImplicitRenderPass\n@@ -642,70 +633,72 @@ CRenderContextVulkan::CopyTexture failed to get resource.\\n\n CRenderContextVulkan::EndQuery - BeginQuery failed, aborting!\\n\n CRenderContextVulkan::EndQuery - Issued on an in-progress query!\\n\n CRenderContextVulkan::ExecuteGeneratedCommands requires VK_EXT_device_generated_commands.\\n\n-CRenderContextVulkan::MarkIssuesCommands(445): \n+CRenderContextVulkan::ForceFlushGPU(7157): \n+CRenderContextVulkan::MarkIssuesCommands(447): \n CRenderContextVulkan::PreprocessGeneratedCommands requires VK_EXT_device_generated_commands.\\n\n CRenderContextVulkan::QueuePolledBufferReadback - attempted to read invalid handle.\\n\n CRenderContextVulkan::QueuePresent\n CRenderContextVulkan::ReadBuffer - attempted to read invalid handle.\\n\n CRenderContextVulkan::ReadBufferIndirect - attempted to read invalid handle.\\n\n CRenderContextVulkan::SemaphoreWaitAtBegin - already set semaphore to wait on, can't set another one.\\n\n-CRenderContextVulkan::WriteDataIntoTexture(6288):  - invalid offset, aborting texture update to avoid hanging the GPU [texture: %s].\\n\n+CRenderContextVulkan::WriteDataIntoTexture(6406):  - invalid offset, aborting texture update to avoid hanging the GPU [texture: %s].\\n\n CRenderContextVulkan_SoftwareCommandLists::CopyFromVolumeTexture failed to get resource.\\n\n CRenderContextVulkan_SoftwareCommandLists::CopyTexture failed to get resource.\\n\n CRenderContextVulkan_SoftwareCommandLists::SemaphoreWaitAtBegin - already set semaphore to wait on, can't set another one.\\n\n CRenderDeviceBase\n-CRenderDeviceBase::AllocatePooledIndexBuffer(3626): \n-CRenderDeviceBase::AllocatePooledIndexBuffer(3662): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3803): \n-CRenderDeviceBase::AllocatePooledVertexBuffer(3834): \n-CRenderDeviceBase::AsyncSetTextureData(3265): \n-CRenderDeviceBase::BeginRenderingToSwapChain(3519): \n-CRenderDeviceBase::CreateConstantBuffer(1571): \n-CRenderDeviceBase::EndRenderDocCapture(3499): \n-CRenderDeviceBase::FindOrCreateTexture(1713): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3638): \n+CRenderDeviceBase::AllocatePooledIndexBuffer(3665): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3825): \n+CRenderDeviceBase::AllocatePooledVertexBuffer(3847): \n+CRenderDeviceBase::AsyncSetTextureData(3266): \n+CRenderDeviceBase::BeginRenderingToSwapChain(3520): \n+CRenderDeviceBase::CreateConstantBuffer(1573): \n+CRenderDeviceBase::CreateConstantBufferInternal\n+CRenderDeviceBase::EndRenderDocCapture(3500): \n+CRenderDeviceBase::FindOrCreateTexture(1715): \n CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\\n\n-CRenderDeviceBase::Flush(898): \n-CRenderDeviceBase::ForceFlushGPU(915): \n-CRenderDeviceBase::FreeTextureGPUResources(2025): \n-CRenderDeviceBase::FreeTextureGPUResources(2029): \n+CRenderDeviceBase::Flush(889): \n+CRenderDeviceBase::ForceFlushGPU(914): \n+CRenderDeviceBase::FreeTextureGPUResources(2032): \n+CRenderDeviceBase::FreeTextureGPUResources(2036): \n CRenderDeviceBase::InitPerFrameMemoryStack\n-CRenderDeviceBase::Present(610): \n-CRenderDeviceBase::StartRenderDocCapture(3486): \n+CRenderDeviceBase::Present(601): \n+CRenderDeviceBase::StartRenderDocCapture(3487): \n CRenderDeviceVulkan::AllocateBufferInPool - invalid memory pool handle.\\n\n-CRenderDeviceVulkan::AllocateBufferInPool(10207): failed to allocate GPU memory in custom pool for %s.\\n\n-CRenderDeviceVulkan::AllocateBufferInPool(10262): vmaBindImageMemory failed for buffer %s with error %d.\\n\n+CRenderDeviceVulkan::AllocateBufferInPool(10036): vmaBindImageMemory failed for buffer %s with error %d.\\n\n+CRenderDeviceVulkan::AllocateBufferInPool(9981): failed to allocate GPU memory in custom pool for %s.\\n\n CRenderDeviceVulkan::AllocateStaticDescriptorSet: Failed to allocate descriptor set.\\n\n CRenderDeviceVulkan::AllocateTextureInPool - invalid memory pool handle.\\n\n-CRenderDeviceVulkan::AllocateTextureInPool(10029): vmaBindImageMemory failed for image %s with error %d.\\n\n-CRenderDeviceVulkan::AllocateTextureInPool(9885): Allocation already set for %s, it is not valid to assign a new allocation.\\n\n-CRenderDeviceVulkan::AllocateTextureInPool(9962): failed to allocate GPU memory in custom pool for %s.\\n\n+CRenderDeviceVulkan::AllocateTextureInPool(9659): Allocation already set for %s, it is not valid to assign a new allocation.\\n\n+CRenderDeviceVulkan::AllocateTextureInPool(9736): failed to allocate GPU memory in custom pool for %s.\\n\n+CRenderDeviceVulkan::AllocateTextureInPool(9803): vmaBindImageMemory failed for image %s with error %d.\\n\n CRenderDeviceVulkan::AllocateUpdateAfterBindDescriptorSet: Failed to allocate descriptor set.\\n\n-CRenderDeviceVulkan::BeginSubmittingDisplayLists(4564): \n-CRenderDeviceVulkan::CreateDefaultBuffers(2557): \n+CRenderDeviceVulkan::BeginSubmittingDisplayLists(4365): \n+CRenderDeviceVulkan::CreateDefaultBuffers(2464): \n CRenderDeviceVulkan::CreateDefaultShaders\n CRenderDeviceVulkan::CreateDescriptorSet: Failed to create descriptor set.\\n\n CRenderDeviceVulkan::CreateIndirectCommandsPreprocessBuffer- invalid layout handle.\\n\n CRenderDeviceVulkan::CreateIndirectExecutionSet\n-CRenderDeviceVulkan::CreateTLAS(7964): \n-CRenderDeviceVulkan::DeleteQueryObject(4778): \n+CRenderDeviceVulkan::CreateTLAS(7723): \n+CRenderDeviceVulkan::DeleteQueryObject(4579): \n CRenderDeviceVulkan::DestroyDeviceMemoryPool - invalid memory pool handle.\\n\n CRenderDeviceVulkan::DestroyIndirectCommandsLayout - invalid layout handle.\\n\n-CRenderDeviceVulkan::FreeBufferFromPool(10301): Unable to get Vulkan buffer.\\n\n-CRenderDeviceVulkan::FreeBufferFromPool(10307): no allocation for buffer %s.\\n\n+CRenderDeviceVulkan::FreeBufferFromPool(10075): Unable to get Vulkan buffer.\\n\n+CRenderDeviceVulkan::FreeBufferFromPool(10081): no allocation for buffer %s.\\n\n CRenderDeviceVulkan::FreeTextureFromPool - invalid memory pool handle.\\n\n-CRenderDeviceVulkan::FreeTextureFromPool(10061): Unable to get Vulkan image for %s.\\n\n-CRenderDeviceVulkan::FreeTextureFromPool(10067): no allocation for image %s.\\n\n-CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10403): Unable to get Vulkan buffer.\\n\n-CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10409): no allocation for buffer %s.\\n\n-CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10378): Unable to get Vulkan image for %s.\\n\n-CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10384): no allocation for image %s.\\n\n+CRenderDeviceVulkan::FreeTextureFromPool(9835): Unable to get Vulkan image for %s.\\n\n+CRenderDeviceVulkan::FreeTextureFromPool(9841): no allocation for image %s.\\n\n+CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10177): Unable to get Vulkan buffer.\\n\n+CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10183): no allocation for buffer %s.\\n\n+CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10152): Unable to get Vulkan image for %s.\\n\n+CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10158): no allocation for image %s.\\n\n CRenderDeviceVulkan::GetDeviceSpecificTexture\n CRenderDeviceVulkan::GetDeviceSpecificTexture() failed to get texture data.\\n\n CRenderDeviceVulkan::InitDevice: failed to get queue properties\\n\n CRenderDeviceVulkan::InitDevice: no graphics queue found\\n\n CRenderDeviceVulkan::InitDevice: vkEnumerateDeviceExtensionProperties( ... ) failed.\\n\n CRenderDeviceVulkan::OnLowMemoryNotification - evicting all textures to reduce memory pressure.\\n\n-CRenderDeviceVulkan::ReadTexturePixels(4372): \n+CRenderDeviceVulkan::ReadTexturePixels(4176): \n CRenderDeviceVulkan::RebakeDescriptorSetsReferencing - could not allocate descriptor in new pool.\\n\n CRenderDeviceVulkan::SetHardwareGammaRamp failed to get swap chain.\\n\n CRenderDeviceVulkan::UpdateDescriptorSet: Failed to update descriptor set.\\n\n@@ -716,13 +709,13 @@ CRenderThreadVulkan::OnReadPixels not supported for MSAA depth.  Requires shader\n CSheetDataTextureCache::AllocateAndUploadSequenceData(582): \n CSwapChainBase::QueuePresentAndWait() looped for %d iterations without a present event.\\n\n CSwapChainVulkan::CreateSwapChain\n-CSwapChainVulkan::CreateSwapChain(3334): \n+CSwapChainVulkan::CreateSwapChain(3179): \n CSwapChainVulkan::CreateSwapChain::<lambda_2>::operator ()\n CSwapChainVulkan::SwapBuffers\n-CSwapChainVulkan::SwapBuffers vkAcquireNextImageKHR - completed result = %s\\n\n+CSwapChainVulkan::SwapBuffers vkAcquireNextImageKHR\n CSwapChainVulkan::SwapBuffers(): the main thread is more than %d frames ahead which means no swap queue images are available.  Waiting for outstanding frames...\\n\n CSwapChainVulkan::SwapBuffersRecreateSwapchain\n-CTLASVulkan::CTLASVulkan(720): \n+CTLASVulkan::CTLASVulkan(801): \n CTSQueue<class CCommandBufferChunk *,0>::Push\n CTSQueue<class CCommandStream *,0>::Push\n CTSQueue<struct CFossilizeStateCreator::RegisteredShader_t,0>::Push\n@@ -737,14 +730,13 @@ CTSQueue<struct VkFence_T *,0>::Push\n CTSQueue<struct VkShaderModule_T *,0>::Push\n CTextureManagerBase::AsyncHookUpTextureBits\n CTextureManagerBase::LoadStreamingData\n-CTextureManagerBase::MN_BuildRequestedResourcesList\n CTextureManagerBase::MN_DeallocateCacheableData\n CTextureManagerBase::MN_OnResourceFileLoaded\n CTextureManagerBase::MN_OnResourceLoadCompleted\n CTextureManagerBase::MN_OnResourceLoadFailed\n CTextureManagerBase::MarkAsyncUpdatedThisFrame - Invalid texture handle.\\n\n CTextureManagerBase::RemoveTextureFromAnyQueues\n-CTextureManagerVulkan::ComputeTextureObject(1438): \n+CTextureManagerVulkan::ComputeTextureObject(1436): \n CTextureManagerVulkan::ComputeTextureObject: Tried to create a depth-stencil texture which is *not* a render target!\\n\n CTextureStreamingHelper::LoadExplicitlyRequestedTextures\n CTextureStreamingHelper::RemoveMipLevelsForTextures\n@@ -782,19 +774,6 @@ CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __i\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity\n CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator>::EnsureCapacity\n CUtlQueue<struct VkSemaphore_T *,class CUtlLeanVector<struct CUtlQueueNode_t<struct VkSemaphore_T *>,int,class CMemAllocAllocator> >::RemoveAtTail\n-CUtlRBTree<struct CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert\n-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert\n CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\\n\n CVertexBufferVulkan::Allocate called with invalid buffer size = %s for buffer (%s).\\n\n CVfxProgramData::CalcDynamicComboIdFromValues\n@@ -859,6 +838,7 @@ ComputeTextureSpecificationFromMipDelta Disk\n ConsecutiveBadFaxLines\n Copyright\n Could not decode alpha data.\n+CreateConstantBufferInternal\n CreateEventW\n CreateGPUBufferFormatted(%s)\n CreatePipeline\n@@ -933,8 +913,6 @@ Deleting texture with outstanding streaming request (%s)\\n\n Denoiser\n Depth\n DepthHighRes\n-Descriptor pool allocation failed on available pool, reducing descriptors to attempt allocating in pool to %d\\n\n-Descriptor pool allocation failed, reducing descriptors to attempt allocating in pool to %d\\n\n Descriptor set layout\n Desktop-friendly Fullscreen\n DestroyAllDescriptorSetPools...\\n\n@@ -950,7 +928,7 @@ Disabling validation feature: %s\\n\n Discarding abandoned streaming texture load for %s\\n\n DispatchComputeShaderIndirect failed - invalid dispatch buffer.\\n\n DocumentName\n-Don't support DXLevel < 100\n+Don't support DXLevel < 110\n DotRange\n DrawIndexedInstancedIndirect failed - invalid drawarg buffer\\n.\n DrawInstancedIndirect failed - invalid drawarg buffer\\n.\n@@ -979,7 +957,6 @@ EXRReadFile() - R channel not found!\\n\n EXRReadFile() - cannot read image data!\\n\n Empty\n Enable Software Command lists for Vulkan\n-Enabling aggressive command pool rebalancing.\\n\n Enabling instance extension: %s.\\n\n Enabling validation feature: %s\\n\n Enabling validation layer: %s.\\n\n@@ -1160,7 +1137,6 @@ Group3Options\n Group4Options\n HEADER\n HEX_DIGIT\n-HI~Y\n HLSL SM6.0 level subgroup wave ops supported, subgroup size = %d\\n\n HOST_CACHED\n HOST_COHERENT\n@@ -1178,13 +1154,8 @@ IMAGE_LINEAR\n IMAGE_OPTIMAL\n IMAGE_UNKNOWN\n INFO : \n-IOS_VULKAN\n-IOS_VULKAN_4_0\n-IOS_VULKAN_4_1\n-IOS_VULKAN_5_0\n ISO JBIG\n IS_DIRECTX\n-IS_MOBILE\n IS_PC\n IS_SM_\n IS_VULKAN\n@@ -1212,6 +1183,7 @@ Initialized NVIDIA Reflex for low latency.\\n\n Initializing streaming texture manager.\\n\n InkNames\n InkSet\n+Instrumenting subset of GPU-AV shaders %s\\n\n Insufficient data length.\\n\n Insufficient data size for attributes.\\n\n Insufficient data size in offset table.\n@@ -1319,6 +1291,7 @@ Loaded video settings config from '%s'\\n\n Loading %ls succeeded\n LocalAlloc\n LocalizedCameraModel\n+LockDynamicConstantBuffer\n LogL16Decode: Not enough data at row %d (short %d pixels)\n LogL16InitState\n LogLuvDecode24: Not enough data at row %d (short %d pixels)\n@@ -1328,7 +1301,6 @@ Logging to requested file (%S) enabled successfully\n LowLatencySleep\n MN_AddAsyncTextureBitsHookupJob Data\n MN_AddAsyncTextureBitsHookupJob Disk\n-MN_CacheRequestedResources\n MN_OnResourceFileLoaded\n MODES\n MULTI_INSTANCE\n@@ -1457,6 +1429,7 @@ NumberOfInks\n NvLL_VK_Sleep vkLatencySleepNV error '%s'.\\n\n O8Mr\n OCTAL_ESC\n+OMM %s\n OUTSTANDING_HOOKUP_REQUEST \n OVER_BUDGET\n Old-style JPEG\n@@ -1477,10 +1450,6 @@ Output aborted.\n Overall System GPU memory use:\\n\n Overflow of the sheet cache texture. Releasing and starting over. This is ok in asset browser, not so ok if the game is triggering this!\\n\n Overflow of the sheet cache texture: Try increasing SheetCacheTextureRows in gameinfo.gi (current value %d)!\\n\n-PC SM 4.0 (D3D10)\n-PC SM 4.0 (VULKAN)\n-PC SM 4.1 (D3D10.1)\n-PC SM 4.1 (VULKAN)\n PC SM 5.0 (D3D11)\n PC SM 5.0 (VULKAN)\n PC SM 6.0 (VULKAN)\n@@ -1490,10 +1459,6 @@ PCLStatsInit\n PCLStatsInput\n PCLStatsShutdown\n PCLStatsTraceLoggingProvider\n-PC_SM_4_0\n-PC_SM_4_0_VULKAN\n-PC_SM_4_1\n-PC_SM_4_1_VULKAN\n PC_SM_5_0\n PC_SM_5_0_VULKAN\n PC_SM_6_0_VULKAN\n@@ -1553,8 +1518,15 @@ Prints out stats for the Vulkan shader table\n Query\n QueryServiceStatus\n RENDERDOC_GetAPI\n+RENDER_BUFFER_DYNAMIC_ZERO_COPY\n RESOURCE_TYPE_TEXTURE\n RJqn\n+RS_CMP_CLOSER\n+RS_CMP_CLOSER_EQUAL\n+RS_CMP_CLOSER_FARTHER_FLAG\n+RS_CMP_FARTHER\n+RS_CMP_FARTHER_EQUAL\n+RS_CMP_FUNC_MASK\n RTX\\n\n R_T5Y\n Ran out of query slots.\\n\n@@ -1567,8 +1539,6 @@ RayReconstruction.Hint.Render.Preset.Quality\n RayReconstruction.Hint.Render.Preset.UltraPerformance\n RayReconstruction.Hint.Render.Preset.UltraQuality\n RayTracingHitDistance\n-Rebalancing command buffer pool for thread (%s). Has %d command buffers, rebalancing to size %d command buffers\\n\n-Rebalancing command buffer pools. Largest has %d command buffers, rebalancing to size %d command buffers\\n\n ReductionMatrix1\n ReductionMatrix2\n ReferenceBlackWhite\n@@ -1591,15 +1561,12 @@ RenderDoc capture window '%s'.\\n\n RenderDoc is not active, did you forget to add -renderdoc to the command-line? Is RenderDoc installed?\\n\n RenderSystem\n RenderSystem/AllowPartialMipChainImmediateTexLoads\n-RenderSystem/GraphicsPipelineLibrary\n RenderSystem/IndexBufferPoolSizeMB\n RenderSystem/LowLatency\n RenderSystem/MaxPreloadTextureResolution\n-RenderSystem/MinDXLevel\n RenderSystem/MinStreamingPoolSizeMB\n RenderSystem/MinStreamingPoolSizeMBTools\n RenderSystem/ReserveMemoryForNonTextureUseMB\n-RenderSystem/SwapChainSampleableDepth\n RenderSystem/SwapChainSampleableStencil\n RenderSystem/Use32BitDepthBuffer\n RenderSystem/Use32BitDepthBufferWithoutStencil\n@@ -1612,6 +1579,7 @@ RenderSystem/VulkanDisableFossilizeLayer\n RenderSystem/VulkanMinAPIVersion\n RenderSystem/VulkanMutableSwapchain\n RenderSystem/VulkanRequestSM6\n+RenderSystem/VulkanRequireBarycentrics\n RenderSystem/VulkanRequireComputeShaderDerivatives\n RenderSystem/VulkanRequireDescriptorIndexing\n RenderSystem/VulkanRequireFullGPURayTracing\n@@ -1622,7 +1590,6 @@ RenderSystem/VulkanStagingPMBSizeLimitMB\n RenderSystem/VulkanStagingPMBSizeLimitToolsMB\n RenderSystem/VulkanSteamAppShaderCache\n RenderSystem/VulkanSteamDownloadedShaderCache\n-RenderSystem/VulkanSteamShaderCache\n RenderSystem/VulkanUseExternalSubpassDependency\n RenderTarget\n Renderpass with invalid attachment reference.  Attachment #%d  Max: %d Has: %d.  Rejecting.\\n\n@@ -1681,9 +1648,7 @@ STv/N\n SUPPORTS_CS\n SUPPORTS_GS\n SV_Position\n-S_BINDLESS_RUNTIME\n S_EXECUTION_REORDERING\n-S_MOBILE\n S_MOLTEN_VK\n S_REVERSE_DEPTH_BUFFER\n S_SHADER_QUALITY\n@@ -1701,12 +1666,13 @@ SceneSystem/Vulkan GPU Memory Visualizer\n Seek error at scanline %lu\n Setting max texture resolution to: %dx%d\\n\n Setting up field info failed\n-Settubg validation duplicate_message_limit to %d\\n\n+Setting validation duplicate_message_limit to %d\\n\n Shader %s doesn't support compile target %s\\n\n Shader '%s' has more than the maximum number of samplers per stage (has: %d MAX: %d)\\n\n Shader '%s' has more than the maximum number of textures per stage (has: %d MAX: %d)\\n\n Shader '%s' has more than the maximum number of uniform blocks per stage (has: %d MAX: %d)\\n\n-Shader cache size %s exceeds limit %s, deleting cache to reset.\n+Shader '%s' not compiled during level load, could result in runtime hitch.  Missing RegisterDescriptorSetLayout(%s) for ExternalDescriptorSet?\\n\n+Shader cache size %s exceeds limit %s, deleting cache to reset.\\n\n Shader file version mismatch.  Expected (%d), Got (%d).\n Shader module\n ShaderBindingTable\n@@ -1746,6 +1712,7 @@ SuperSampling.FeatureInitResult\n SuperSampling.MinDriverVersionMajor\n SuperSampling.MinDriverVersionMinor\n SuperSampling.NeedsUpdatedDriver\n+Swap Chain Mode Changing:\\n\\tm_nVersion: %d -> %d\\n\\tm_DisplayMode:\\n\\t\\tm_nVersion: %d -> %d\\n\\t\\tm_nWidth: %d -> %d\\n\\t\\tm_nHeight: %d -> %d\\n\\t\\tm_Format: %d -> %d\\n\\t\\tm_nRefreshRateNumerator: %d -> %d\\n\\t\\tm_nRefreshRateDenominator: %d -> %d\\n\\t\\tm_nFlags: 0x%X -> 0x%X\\n\\tm_nBackBufferCount: %d -> %d\\n\\tm_nMultisampleType: %d -> %d\\n\\tm_nModeUsage: %d -> %d\\n\\tm_bUseStencil: %d -> %d\\n\\tm_bWaitForVSync: %d -> %d\\n\\tm_bScaleToOutputResolution: %d -> %d\\n\\tm_bProgressive: %d -> %d\\n\\tm_bUsingMultipleWindows: %d -> %d\\n\\tm_bIsMainWindow: %d -> %d\\n\n SwapBuffers\n SwapChainColorImage%d\n SwapChainDepthImage\n@@ -1844,7 +1811,6 @@ Total VMA ( %llu MB ) ( Free %llu MB )\\n\n TotalBytes\n TransferFunction\n TransparencyMask\n-Trim descriptor pools when not in use for a number of frames.\n Truncated header.\n Trying registry key %ls in %ls\n Trying to create a render target with invalid image format %s\\n\n@@ -1853,10 +1819,15 @@ Trying to set dxlevel (%d) which is lower than the card can support (%d)!\\n\n Type \n UAVBarrier - requested barrier for more mip levels than are in the texture. Requested baseLevel: %d levelCount: %d (Actual levels: %d).  Clamping to actual number of levels.\\n\n UNICODE_ESC\n+UPSCALER_AMD_FSR2\n+UPSCALER_AMD_FSR3\n+UPSCALER_COUNT\n+UPSCALER_INTEL_XESS\n+UPSCALER_NONE\n+UPSCALER_NVIDIA_DLSS\n UUID mismatch in pipeline cache file.  Deleting %s in order to regenerate it.\\n\n UUU?,\n U\\8h(\n-U\\tV_logd\n Unable to create VkSurfaceKHR for invalid window handle.\\n\n Unable to create the DLSS feature : error code = 0x%08x, info: %s\n Unable to determine texture heap size, assuming %llu MB.\\n\n@@ -1893,6 +1864,7 @@ UnusedRangeSizeMax\n UnusedRangeSizeMin\n UnusedRanges\n UpdateExternalTexture called on unknown external texture '%s'\\n\n+UpscalerType_t\n Usage\n Usage: %s <window_name>\n UsageBytes\n@@ -1958,6 +1930,7 @@ VK_EXT_memory_priority\n VK_EXT_mesh_shader\n VK_EXT_multi_draw\n VK_EXT_mutable_descriptor_type\n+VK_EXT_opacity_micromap\n VK_EXT_pageable_device_local_memory\n VK_EXT_pipeline_creation_cache_control\n VK_EXT_pipeline_robustness\n@@ -1977,6 +1950,7 @@ VK_KHR_deferred_host_operations\n VK_KHR_depth_stencil_resolve\n VK_KHR_device_group_creation\n VK_KHR_dynamic_rendering\n+VK_KHR_fragment_shader_barycentric\n VK_KHR_fragment_shading_rate\n VK_KHR_get_memory_requirements2\n VK_KHR_get_physical_device_properties2\n@@ -2105,6 +2079,7 @@ VideoSuperResolution\n Viewport\n VirtualKey\n VisibilityNodeMask\n+VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromap not supported, disabling opacity micromaps.\\n\n VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.swapchainMaintenance1 not supported, disabling extension.\\n\n VkPhysicalDeviceVulkan11Features.variablePointers not supported, ConstBufferPointer<> will not work.\\n\n VkPipelineCacheHeaderVersion mismatch in pipeline cache file (Got: %d Expected: %d).  Deleting %s in order to regenerate it.\\n\n@@ -2138,11 +2113,8 @@ Vulkan pipelines: %s; pipeline layouts: %s\\n\n Vulkan shader pipeline cache file version is %d instead of %d for %s. Deleting.\\n\n Vulkan swapchain does not support VK_IMAGE_USAGE_TRANSFER_DST_BIT. Upscaling desktop friendly fullscreen not supported.\\n\n Vulkan swapchain does not support VK_IMAGE_USAGE_TRANSFER_SRC_BIT. Screenshots not supported.\\n\n-Vulkan swapchain out-of-date, suboptimal, or surface lost - recreating.  Result: (%s)\\n\n Vulkan swapchain recreated succesfully.  Attempting to acquire next image...\n Vulkan texture manager frame update\n-Vulkan trim all command pools per frame enabed.\\n\n-Vulkan trim command pools on rebalancing threads enabed.\\n\n Vulkan using external subpass dependencies for all renderpasses.\\n\n WAITING_FOR_HOOKUP_JOB \n WAITING_FOR_IO \n@@ -2200,13 +2172,13 @@ ZIPVSetField\n \\n*** A feature alias in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A feature in %s doesn't start with \"F_\"! Aborting shader compile!\\n\\n\n \\n*** A static combo in %s doesn't start with \"S_\"! Aborting shader compile!\\n\\n\n-\\n*** CVfx::ParseBoolFromFile(6414): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list\"%s\"!\\n\\n\n-\\n*** CVfx::ParseModesFromFile(5909): Error opening file \"%s\"!\\n\\n\n-\\n*** CVfx::ParseVersionFromFile(6460): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseBoolFromFile(6330): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list\"%s\"!\\n\\n\n+\\n*** CVfx::ParseModesFromFile(5825): Error opening file \"%s\"!\\n\\n\n+\\n*** CVfx::ParseVersionFromFile(6376): Error opening file \"%s\"!\\n\\n\n \\n*** Combo \"%s\" in %s doesn't match a known combo source!\\n\\n\n \\n*** Combo \"%s\" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\\n\\n\n \\n*** Combo \"%s\" in %s has arg %s that doesn't match an existing feature!\\n\\n\n@@ -2258,15 +2230,14 @@ ZIPVSetField\n \\n*** Unable to parse Version in HEADER section of %s!\\n\\n\n \\n*** Unknown rule \"%s\" in %s!\\n\\n\n \\n*** Unknown text found in FEATURES section in %s: \"%s\"\\n\\n\n-\\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file \"%s\"!\\n\\n\n-\\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file \"%s\"!\\n\\n\n+\\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file \"%s\"!\\n\\n\n \\nGetVfxDll(93): ERROR! Can't load %s dll, automatic RenderDoc shader debug info not available.\\n\n \\nMS,\\nVS_MS_RTX\n \\nPS_RENDER_STATE\n \\nRTX\n \\n\\tCommand Buffer Labels - %d\\n\n \\n\\tObjects - %d\\n\n-\\n\\tV_atanf\n \\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\\r\n \\src\\shaders\\\n \\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N\n@@ -2277,8 +2248,9 @@ ZIPVSetField\n \\tRenderpass Count Count ( %d ): \\n\n \\tThread (%s) Command Buffers (%d)\\n\n \\tTotal Command Buffers (%d)\\n\n+\\tV_ZSTD_decompress\n \\tV_atan2d\n-\\tV_expd\n+\\tV_atanf\n \\tV_strspn\n \\tV_strtoi64\n \\tV_strtoui64\n@@ -2323,7 +2295,7 @@ _psrs\n _rtx\n _tools.txt\n _wjb\n-a\\tV_powd\n+`\\tV_logd\n addressModeU\n addressModeV\n addressModeW\n@@ -2352,6 +2324,7 @@ bad conversion\n bad partition length\n basePipelineHandle\n basePipelineIndex\n+binary\n binaryValue\n bindingFlags\n binormal\n@@ -2581,10 +2554,10 @@ gl_LocalInvocationIndex\n gl_WorkGroupID\n gpuav_enable\n gpuav_reserve_binding_slot\n+gpuav_select_instrumented_shaders\n+gpuav_shaders_to_instrument\n graphicsPipelines\n groups\n-gs_4_0\n-gs_4_1\n gs_5_0\n gs_6_0\n hGT.\n@@ -2596,9 +2569,6 @@ iInputColorResourceDimensions\n iLumaMipDimensions\n iLumaMipLevelToUse\n iMaxRenderSize\n-iOS SM 4.0 (VULKAN)\n-iOS SM 4.1 (VULKAN)\n-iOS SM 5.0 (VULKAN)\n iRenderSize\n immediate\n immutableSamplers\n@@ -2620,6 +2590,7 @@ invalid handle\n invalid vector subscript\n k*do^\n k0V(\n+l\\tV_powd\n layout\n layoutBindingFlags\n layoutBindings\n@@ -2689,6 +2660,7 @@ nResult = vmaCreatePool( m_pVmaAllocator, &poolCreateInfo, &allocInfo.pool )\n nResult = vmaCreatePool( m_pVmaAllocator, &poolCreateInfo, &pNewPool )\n nSemaphoreIndex < static_cast< int32 >( m_nSwapQueueImageCount )\n nSemaphoreIndex >= 0\n+newDescriptorSetPool.m_nLastAllocResult = vkAllocateDescriptorSets( m_pDeviceVulkan, &allocInfo, &pNewDescriptorSet )\n ngx::util::logva\n ngx::util::setLogFilename\n no memory during frame initialization.\n@@ -2737,7 +2709,6 @@ primitiveRestartEnable\n printf_enable\n provokingVertexMode\n ps_4_0\n-ps_4_1\n ps_5_0\n ps_6_0\n pseudo-\n@@ -2782,7 +2753,6 @@ r_vma_defrag_moves_per_frame\n r_vma_defrag_threshold_mb\n r_vulkan_force_sync1\n r_vulkan_sw_cmd_lists\n-r_vulkan_trim_descriptor_pools\n r_vulkan_validation_filter_in\n r_vulkan_validation_filter_out\n raB3G\n@@ -2866,16 +2836,11 @@ screenWindowWidth\n secure exception triggered - invalid parameter - %ls:%d:%ls:%ls\\n\n setLayouts\n setting.\n-setting.CentroidHack\n setting.DXLevel\n setting.DisableShaderOptimizations\n setting.HasBrokenPipelineStats\n setting.MaxDXLevel\n setting.MinDXLevel\n-setting.PreferHardwareSync\n-setting.PreferTexturesInHWMemory\n-setting.PreferZPrepass\n-setting.SuppressPixelShaderCentroidHackFixup\n setting.Unsupported\n setting.knowndevice\n setting.maxdxlevel\n@@ -3014,7 +2979,6 @@ vkAcquireWinrtDisplayNV\n vkAllocateCommandBuffers\n vkAllocateCommandBuffers( m_pDeviceVulkan, &cmdBufferCreateinfo, &pCmdBuffer )\n vkAllocateDescriptorSets\n-vkAllocateDescriptorSets( m_pDeviceVulkan, &allocInfo, &pCurrentDescriptorSetPool->m_ppDescriptorSets[ pCurrentDescriptorSetPool->m_nCurrentDescriptorSet - 1 ] )\n vkAllocateMemory\n vkAntiLagUpdateAMD\n vkBeginCommandBuffer\n@@ -3376,6 +3340,7 @@ vkCreateIndirectExecutionSetEXT( m_pDeviceVulkan, &indirectExecutionSetCreateInf\n vkCreateInstance\n vkCreateInstance failed, unable to create instance.\\n\n vkCreateMicromapEXT\n+vkCreateMicromapEXT( m_pDevice, &micromapCreateInfo, nullptr, &m_pMicromap )\n vkCreateOpticalFlowSessionNV\n vkCreatePipelineBinariesKHR\n vkCreatePipelineCache\n@@ -3472,6 +3437,7 @@ vkDestroyValidationCacheEXT\n vkDestroyVideoSessionKHR\n vkDestroyVideoSessionParametersKHR\n vkDeviceWaitIdle\n+vkDeviceWaitIdle( VulkanDevice() )\n vkDeviceWaitIdle( m_pDeviceVulkan )\n vkDisplayPowerControlEXT\n vkEndCommandBuffer\n@@ -3702,7 +3668,7 @@ vkInitializePerformanceApiINTEL\n vkInvalidateMappedMemoryRanges\n vkLatencySleepNV\n vkMapMemory\n-vkMapMemory( m_pDeviceVulkan, pNewMemoryPool->m_pGPUMemory, 0, pNewMemoryPool->m_nPoolSize, 0, (void**)&pNewMemoryPool->m_pMappedBuffer )\n+vkMapMemory( m_pDeviceVulkan, pNewMemoryPool->m_pGPUMemory, 0, pNewMemoryPool->m_nPoolSize, 0, ( void ** ) &pNewMemoryPool->m_pMappedBuffer )\n vkMapMemory2KHR\n vkMergePipelineCaches\n vkMergeValidationCachesEXT\n@@ -3712,7 +3678,6 @@ vkQueueEndDebugUtilsLabelEXT\n vkQueueInsertDebugUtilsLabelEXT\n vkQueueNotifyOutOfBandNV\n vkQueuePresentKHR\n-vkQueuePresentKHR failed with error %d\\n\n vkQueueSetPerformanceConfigurationINTEL\n vkQueueSubmit\n vkQueueSubmit( VulkanQueue(), 1, &submitInfo, VK_NULL_HANDLE )\n@@ -3792,7 +3757,6 @@ vmaCreatePool failed with error: %d\\n\n vmaMapMemory( GetVmaAllocator(), asyncReadback.m_pVmaAllocation, &pLockedData )\n vma_memdump%d.json\n vs_4_0\n-vs_4_1\n vs_5_0\n vs_6_0\n vulkan-1.dll"
        },
        {
          "filename": "game/bin/win64/resourcecompiler.exe_strings.txt",
          "status": "modified",
          "additions": 3,
          "deletions": 2,
          "changes": 5,
          "patch": "@@ -3,15 +3,16 @@\n %s (binlaunch): Can't get interface %s from from %s\\n\\n\n %s (binlaunch): No dot character in the filename.\\n\n %s (binlaunch): Unable to find game\\bin directory anywhere up the tree from %s.\\n\n-%s (binlaunch): Unable to load module %s, error %ld\\n\\n\n+%s (binlaunch): Unable to load module '%s', error %lu\\n\\n\n .CRT$XCAA\n .CRT$XIAA\n .CRT$XIAC\n 2\\vp(x\n-C:\\buildworker\\csgo_rel_win64\\build\\_build_\\utils\\binlaunch\\_vpc_binlaunch\\default\\win64\\_msvc_\\Retail\\binlaunch.pdb\n+C:\\buildworker\\csgo_rel_win64\\build\\_build_\\utils\\resourcecompiler\\_vpc_resourcecompiler_launch\\default\\win64\\_msvc_\\Retail\\resourcecompiler_launch.pdb\n GetFileAttributesA\n PATH\n PATH=%s;%s\n+RSDSr\n \\nPl8\n launchable_dll_1\n local_AppendSlash: ran out of space on %s."
        },
        {
          "filename": "game/bin/win64/resourcecompiler_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/bin/win64/resourcecopy.exe_strings.txt",
          "status": "modified",
          "additions": 13,
          "deletions": 12,
          "changes": 25,
          "patch": null
        },
        {
          "filename": "game/bin/win64/resourceinfo.exe_strings.txt",
          "status": "modified",
          "additions": 458,
          "deletions": 303,
          "changes": 761,
          "patch": null
        },
        {
          "filename": "game/bin/win64/resourcesystem_strings.txt",
          "status": "modified",
          "additions": 16,
          "deletions": 10,
          "changes": 26,
          "patch": null
        },
        {
          "filename": "game/bin/win64/scenefilecache_strings.txt",
          "status": "modified",
          "additions": 143,
          "deletions": 42,
          "changes": 185,
          "patch": null
        },
        {
          "filename": "game/bin/win64/scenesystem_strings.txt",
          "status": "modified",
          "additions": 148,
          "deletions": 435,
          "changes": 583,
          "patch": null
        },
        {
          "filename": "game/bin/win64/schemasystem_strings.txt",
          "status": "modified",
          "additions": 8,
          "deletions": 11,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/bin/win64/soundsystem_strings.txt",
          "status": "modified",
          "additions": 435,
          "deletions": 132,
          "changes": 567,
          "patch": null
        },
        {
          "filename": "game/bin/win64/source1import.exe_strings.txt",
          "status": "modified",
          "additions": 672,
          "deletions": 582,
          "changes": 1254,
          "patch": null
        },
        {
          "filename": "game/bin/win64/steamaudio_strings.txt",
          "status": "modified",
          "additions": 42,
          "deletions": 21,
          "changes": 63,
          "patch": null
        },
        {
          "filename": "game/bin/win64/steamnetworkingsockets_strings.txt",
          "status": "modified",
          "additions": 29,
          "deletions": 18,
          "changes": 47,
          "patch": null
        },
        {
          "filename": "game/bin/win64/subtools/convarhelper_subtool_strings.txt",
          "status": "modified",
          "additions": 443,
          "deletions": 4,
          "changes": 447,
          "patch": null
        },
        {
          "filename": "game/bin/win64/subtools/dashboard_subtool_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/bin/win64/subtools/netgraph_subtool_strings.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 3,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/bin/win64/subtools/soundviewer_subtool_strings.txt",
          "status": "modified",
          "additions": 10,
          "deletions": 8,
          "changes": 18,
          "patch": null
        },
        {
          "filename": "game/bin/win64/subtools/vprof_subtool_strings.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 4,
          "changes": 9,
          "patch": null
        },
        {
          "filename": "game/bin/win64/sycl7_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tier0_strings.txt",
          "status": "modified",
          "additions": 72,
          "deletions": 67,
          "changes": 139,
          "patch": null
        },
        {
          "filename": "game/bin/win64/toolframework2_strings.txt",
          "status": "modified",
          "additions": 150,
          "deletions": 68,
          "changes": 218,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/cs2_item_editor_strings.txt",
          "status": "modified",
          "additions": 87,
          "deletions": 113,
          "changes": 200,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/cs2_workshop_manager_strings.txt",
          "status": "modified",
          "additions": 4,
          "deletions": 3,
          "changes": 7,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/hammer_strings.txt",
          "status": "modified",
          "additions": 710,
          "deletions": 579,
          "changes": 1289,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/met_strings.txt",
          "status": "modified",
          "additions": 138,
          "deletions": 112,
          "changes": 250,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/modeldoc_editor_strings.txt",
          "status": "modified",
          "additions": 571,
          "deletions": 234,
          "changes": 805,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/pet_strings.txt",
          "status": "modified",
          "additions": 454,
          "deletions": 165,
          "changes": 619,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/postprocessingeditor_strings.txt",
          "status": "modified",
          "additions": 137,
          "deletions": 124,
          "changes": 261,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/sfm_strings.txt",
          "status": "modified",
          "additions": 238,
          "deletions": 370,
          "changes": 608,
          "patch": null
        },
        {
          "filename": "game/bin/win64/tools/subrecteditor_strings.txt",
          "status": "modified",
          "additions": 11,
          "deletions": 11,
          "changes": 22,
          "patch": null
        },
        {
          "filename": "game/bin/win64/toolscenenodes_strings.txt",
          "status": "modified",
          "additions": 423,
          "deletions": 258,
          "changes": 681,
          "patch": null
        },
        {
          "filename": "game/bin/win64/v8_icui18n_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/bin/win64/v8_icuuc_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/bin/win64/v8_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/bin/win64/v8system_strings.txt",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": null
        },
        {
          "filename": "game/bin/win64/valve_avi_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 4,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/bin/win64/valve_webm_strings.txt",
          "status": "modified",
          "additions": 6,
          "deletions": 4,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/bin/win64/valve_wmf_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 4,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vconcomm_strings.txt",
          "status": "modified",
          "additions": 13,
          "deletions": 3,
          "changes": 16,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vconsole2.exe_strings.txt",
          "status": "modified",
          "additions": 421,
          "deletions": 453,
          "changes": 874,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vfx_dx11_strings.txt",
          "status": "modified",
          "additions": 21,
          "deletions": 46,
          "changes": 67,
          "patch": null
        },
        {
          "filename": "game/bin/win64/video64_strings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/bin/win64/visbuilder_strings.txt",
          "status": "modified",
          "additions": 28,
          "deletions": 30,
          "changes": 58,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vphysics2_strings.txt",
          "status": "modified",
          "additions": 106,
          "deletions": 49,
          "changes": 155,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vrad3.exe_strings.txt",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vrad3_strings.txt",
          "status": "modified",
          "additions": 565,
          "deletions": 221,
          "changes": 786,
          "patch": null
        },
        {
          "filename": "game/bin/win64/vscript_strings.txt",
          "status": "modified",
          "additions": 4,
          "deletions": 8,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/bin/win64/worldrenderer_strings.txt",
          "status": "modified",
          "additions": 23,
          "deletions": 25,
          "changes": 48,
          "patch": null
        },
        {
          "filename": "game/core/ai_basenpc.fgd",
          "status": "modified",
          "additions": 2,
          "deletions": 12,
          "changes": 14,
          "patch": null
        },
        {
          "filename": "game/core/ai_defaultnpc.fgd",
          "status": "modified",
          "additions": 15,
          "deletions": 37,
          "changes": 52,
          "patch": null
        },
        {
          "filename": "game/core/base.fgd",
          "status": "modified",
          "additions": 56,
          "deletions": 185,
          "changes": 241,
          "patch": null
        },
        {
          "filename": "game/core/cfg/sfm_default_animation_groups.vcfg",
          "status": "modified",
          "additions": 2,
          "deletions": 1,
          "changes": 3,
          "patch": null
        },
        {
          "filename": "game/core/lights2.fgd",
          "status": "modified",
          "additions": 12,
          "deletions": 12,
          "changes": 24,
          "patch": null
        },
        {
          "filename": "game/core/models_base.fgd",
          "status": "modified",
          "additions": 11,
          "deletions": 6,
          "changes": 17,
          "patch": null
        },
        {
          "filename": "game/core/models_base_breakables.fgd",
          "status": "modified",
          "additions": 32,
          "deletions": 9,
          "changes": 41,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir.txt",
          "status": "modified",
          "additions": 89,
          "deletions": 85,
          "changes": 174,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/panorama/styles/popups/popup_manager.css",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/panorama/styles/tooltips/tooltip_base.css",
          "status": "modified",
          "additions": 40,
          "deletions": 0,
          "changes": 40,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/resource/toolhelp_particles_english.txt",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/resource/valve_english.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 26,
          "changes": 27,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/scripts/replay_compatability_settings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/scripts/tools/animgrapheditor/graph_view_styles.vdata",
          "status": "modified",
          "additions": 17,
          "deletions": 0,
          "changes": 17,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/scripts/tools/pulse_scene_styles_v2.vdata",
          "status": "modified",
          "additions": 120,
          "deletions": 19,
          "changes": 139,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/soundevents/soundevents_diagnostics.vsndevts",
          "status": "modified",
          "additions": 57,
          "deletions": 9,
          "changes": 66,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/soundstacks/beatpattern_manager.vdata",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/soundstacks/soundstacks_core.vsndstck",
          "status": "modified",
          "additions": 0,
          "deletions": 35,
          "changes": 35,
          "patch": null
        },
        {
          "filename": "game/core/pak01_dir/soundstacks/soundstacks_diagnostics.vsndstck",
          "status": "modified",
          "additions": 132,
          "deletions": 2,
          "changes": 134,
          "patch": null
        },
        {
          "filename": "game/core/readonly_tools_asset_info.txt",
          "status": "modified",
          "additions": 13,
          "deletions": 10,
          "changes": 23,
          "patch": null
        },
        {
          "filename": "game/core/shaders_pc_dir.txt",
          "status": "modified",
          "additions": 389,
          "deletions": 398,
          "changes": 787,
          "patch": null
        },
        {
          "filename": "game/core/shaders_vulkan_dir.txt",
          "status": "modified",
          "additions": 407,
          "deletions": 418,
          "changes": 825,
          "patch": null
        },
        {
          "filename": "game/core/tools/demoinfo2/demoinfo2.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 1,
          "changes": 6,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/common/asset_euro.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/common/asset_industrial.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/common/not_shipping.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/hammer/attach_follow_hierarchy.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/hammer/entityio_parameter_passthrough.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/hammer/property_linked_but_not_allowed.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/hammer/property_linked_but_not_allowed_hover.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/modeldoc_editor/outliner_icon_dnaanimfile.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/modeldoc_editor/outliner_icon_dnarig.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/modeldoc_editor/outliner_icon_dnarig_list.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/pet/float_cp_set.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/pet/gpu_particles_on.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/pet/gpu_particles_on_unsupported.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/postprocessingeditor/layer-local-exposure.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/propertyeditor/eye_hidden.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/images/propertyeditor/eye_visible.png",
          "status": "added",
          "additions": 0,
          "deletions": 0,
          "changes": 0,
          "patch": null
        },
        {
          "filename": "game/core/tools/keybindings/hammer_key_bindings.txt",
          "status": "modified",
          "additions": 5,
          "deletions": 0,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/core/tools/keybindings/modeldoc_editor_key_bindings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/core/tools/keybindings/shared_tool_key_bindings.txt",
          "status": "modified",
          "additions": 1,
          "deletions": 0,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/core/vdata_base.fgd",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/bin/win64/client_strings.txt",
          "status": "modified",
          "additions": 1743,
          "deletions": 1324,
          "changes": 3067,
          "patch": null
        },
        {
          "filename": "game/csgo/bin/win64/host_strings.txt",
          "status": "modified",
          "additions": 24,
          "deletions": 41,
          "changes": 65,
          "patch": null
        },
        {
          "filename": "game/csgo/bin/win64/matchmaking_strings.txt",
          "status": "modified",
          "additions": 29,
          "deletions": 62,
          "changes": 91,
          "patch": null
        },
        {
          "filename": "game/csgo/bin/win64/modtools_strings.txt",
          "status": "modified",
          "additions": 278,
          "deletions": 99,
          "changes": 377,
          "patch": null
        },
        {
          "filename": "game/csgo/bin/win64/server_strings.txt",
          "status": "modified",
          "additions": 2074,
          "deletions": 1218,
          "changes": 3292,
          "patch": null
        },
        {
          "filename": "game/csgo/cfg/gamemode_competitive.cfg",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/csgo.fgd",
          "status": "modified",
          "additions": 2,
          "deletions": 0,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/gameinfo.gi",
          "status": "modified",
          "additions": 10,
          "deletions": 9,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/csgo/import_scripts/bin/tier0_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/csgo/import_scripts/bin/vstdlib_strings.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 2,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir.txt",
          "status": "modified",
          "additions": 3449,
          "deletions": 2748,
          "changes": 6197,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/gamemodes.txt",
          "status": "modified",
          "additions": 249,
          "deletions": 30,
          "changes": 279,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/items/inventory_image_data.vdata",
          "status": "modified",
          "additions": 0,
          "deletions": 48,
          "changes": 48,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/maps/editor/zoo/scripts/setup.js",
          "status": "modified",
          "additions": 11,
          "deletions": 1,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/maps/workshop_compatibility_versions.txt",
          "status": "modified",
          "additions": 16,
          "deletions": 0,
          "changes": 16,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/base_globalpanels.xml",
          "status": "added",
          "additions": 6,
          "deletions": 0,
          "changes": 6,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/buymenu.xml",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/chat.xml",
          "status": "modified",
          "additions": 4,
          "deletions": 4,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/color_picker.xml",
          "status": "added",
          "additions": 12,
          "deletions": 0,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/color_picker_hue.xml",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/color_picker_saturation_value.xml",
          "status": "added",
          "additions": 10,
          "deletions": 0,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/endofmatch-rank.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/endofmatch-win.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/endofmatch.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/friendslist.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/friendtile.xml",
          "status": "modified",
          "additions": 3,
          "deletions": 5,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/honor_icon.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 3,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hud.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/huddeathnotice.xml",
          "status": "modified",
          "additions": 3,
          "deletions": 3,
          "changes": 6,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/huddeathpanel.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudhealthammocenter.xml",
          "status": "modified",
          "additions": 4,
          "deletions": 3,
          "changes": 7,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudprogressbar.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudreticle.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudteamcounter.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudweaponselection.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/hud/hudwinpanel.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/leaderboard.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 3,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/mainmenu.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 1,
          "changes": 3,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/mainmenu_play.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/matchinfo.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/player_stats_card.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/playercard.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 3,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/popups/popup_directchallenge_join.xml",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboard_namelock.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboards.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/popups/popup_offers_laptop_interface.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/popups/popup_premier_pick_ban.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/scoreboard.xml",
          "status": "modified",
          "additions": 5,
          "deletions": 6,
          "changes": 11,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/scoreboard_owner.xml",
          "status": "added",
          "additions": 11,
          "deletions": 0,
          "changes": 11,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/simple_player_tile.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/teamintromenu.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 3,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/teamselectmenu.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/vanity_player_info.xml",
          "status": "modified",
          "additions": 2,
          "deletions": 3,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/layout/vanityloadout_inspect.xml",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/common/formattext.js",
          "status": "modified",
          "additions": 4,
          "deletions": 7,
          "changes": 11,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/endofmatch-rank.js",
          "status": "modified",
          "additions": 5,
          "deletions": 14,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/endofmatch-win.js",
          "status": "modified",
          "additions": 10,
          "deletions": 9,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/friendlobby.js",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/friendtile.js",
          "status": "modified",
          "additions": 3,
          "deletions": 6,
          "changes": 9,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/hud/hudwinpanel.js",
          "status": "modified",
          "additions": 1,
          "deletions": 1,
          "changes": 2,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/inspect.js",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/leaderboard.js",
          "status": "modified",
          "additions": 4,
          "deletions": 8,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/mapdraft.js",
          "status": "modified",
          "additions": 9,
          "deletions": 10,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/mock_adapter.js",
          "status": "modified",
          "additions": 0,
          "deletions": 1,
          "changes": 1,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/party.js",
          "status": "modified",
          "additions": 4,
          "deletions": 8,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/player_stats_card.js",
          "status": "modified",
          "additions": 2,
          "deletions": 6,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/playercard.js",
          "status": "modified",
          "additions": 4,
          "deletions": 9,
          "changes": 13,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/popups/popup_inspect_action-bar.js",
          "status": "modified",
          "additions": 2,
          "deletions": 2,
          "changes": 4,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/scoreboard.js",
          "status": "modified",
          "additions": 996,
          "deletions": 527,
          "changes": 1523,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/teamintromenu.js",
          "status": "modified",
          "additions": 8,
          "deletions": 11,
          "changes": 19,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/scripts/vanity_player_info.js",
          "status": "modified",
          "additions": 4,
          "deletions": 8,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/color_picker.css",
          "status": "added",
          "additions": 39,
          "deletions": 0,
          "changes": 39,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/csgostyles.css",
          "status": "modified",
          "additions": 8,
          "deletions": 0,
          "changes": 8,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/hud/hud.css",
          "status": "modified",
          "additions": 0,
          "deletions": 5,
          "changes": 5,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/hud/hudhealthammocenter.css",
          "status": "modified",
          "additions": 63,
          "deletions": 4,
          "changes": 67,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/popups/popup_offers_laptop_interface.css",
          "status": "modified",
          "additions": 8,
          "deletions": 2,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/panorama/styles/scoreboard.css",
          "status": "modified",
          "additions": 8,
          "deletions": 2,
          "changes": 10,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/pulse/csgo_devonly/de_inferno_script.vpulse",
          "status": "modified",
          "additions": 77,
          "deletions": 39,
          "changes": 116,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/pulse/csgo_devonly/de_nuke_script.vpulse",
          "status": "modified",
          "additions": 77,
          "deletions": 39,
          "changes": 116,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/pulse/csgo_devonly/de_overpass_script.vpulse",
          "status": "modified",
          "additions": 80,
          "deletions": 42,
          "changes": 122,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/pulse/csgo_devonly/de_train_script.vpulse",
          "status": "modified",
          "additions": 38,
          "deletions": 32,
          "changes": 70,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/pulse/csgo_devonly/de_vertigo_script.vpulse",
          "status": "modified",
          "additions": 138,
          "deletions": 61,
          "changes": 199,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/resource/csgo_english.txt",
          "status": "modified",
          "additions": 465,
          "deletions": 104,
          "changes": 569,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/resource/mod.gameevents",
          "status": "modified",
          "additions": 3,
          "deletions": 0,
          "changes": 3,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/resource/toolhelp_cs2_item_editor_english.txt",
          "status": "modified",
          "additions": 20,
          "deletions": 1,
          "changes": 21,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/scripts/items/items_game.txt",
          "status": "modified",
          "additions": 1765,
          "deletions": 29,
          "changes": 1794,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/scripts/soundmixers.txt",
          "status": "modified",
          "additions": 87,
          "deletions": 2,
          "changes": 89,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/soundevents/game_sounds_footsteps.vsndevts",
          "status": "modified",
          "additions": 38,
          "deletions": 18,
          "changes": 56,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/soundevents/game_sounds_weapons.vsndevts",
          "status": "modified",
          "additions": 878,
          "deletions": 0,
          "changes": 878,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/soundstacks/soundstacks_csgo_mega.vsndstck",
          "status": "modified",
          "additions": 197,
          "deletions": 50,
          "changes": 247,
          "patch": null
        },
        {
          "filename": "game/csgo/pak01_dir/soundstacks/soundstacks_csgo_surf.vsndstck",
          "status": "modified",
          "additions": 8,
          "deletions": 1,
          "changes": 9,
          "patch": null
        },
        {
          "filename": "game/csgo/readonly_tools_asset_info.txt",
          "status": "modified",
          "additions": 727,
          "deletions": 21,
          "changes": 748,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_pc_dir.txt",
          "status": "modified",
          "additions": 213,
          "deletions": 206,
          "changes": 419,
          "patch": null
        },
        {
          "filename": "game/csgo/shaders_vulkan_dir.txt",
          "status": "modified",
          "additions": 238,
          "deletions": 231,
          "changes": 469,
          "patch": null
        },
        {
          "filename": "game/csgo/steam.inf",
          "status": "modified",
          "additions": 6,
          "deletions": 6,
          "changes": 12,
          "patch": null
        },
        {
          "filename": "game/csgo_community_addons/cs_shelter/cs_shelter_dir.txt",
          "status": "added",
          "additions": 1042,
          "deletions": 0,
          "changes": 1042,
          "patch": null
        },
        {
          "filename": "game/csgo_community_addons/de_boulder/de_boulder_dir.txt",
          "status": "added",
          "additions": 2861,
          "deletions": 0,
          "changes": 2861,
          "patch": null
        },
        {
          "filename": "game/csgo_community_addons/de_debris/de_debris_dir.txt",
          "status": "added",
          "additions": 400,
          "deletions": 0,
          "changes": 400,
          "patch": null
        },
        {
          "filename": "game/csgo_community_addons/de_eldorado/de_eldorado_dir.txt",
          "status": "added",
          "additions": 356,
          "deletions": 0,
          "changes": 356,
          "patch": null
        },
        {
          "filename": "game/csgo_community_addons/de_fachwerk/de_fachwerk_dir.txt",
          "status": "added",
          "additions": 2120,
          "deletions": 0,
          "changes": 2120,
          "patch": null
        },
        {
          "filename": "game/csgo_core/gameinfo.gi",
          "status": "modified",
          "additions": 13,
          "deletions": 11,
          "changes": 24,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_pc_dir.txt",
          "status": "modified",
          "additions": 121,
          "deletions": 121,
          "changes": 242,
          "patch": null
        },
        {
          "filename": "game/csgo_core/shaders_vulkan_dir.txt",
          "status": "modified",
          "additions": 137,
          "deletions": 137,
          "changes": 274,
          "patch": null
        },
        {
          "filename": "game/csgo_lv/readonly_tools_asset_info.txt",
          "status": "modified",
          "additions": 9,
          "deletions": 0,
          "changes": 9,
          "patch": null
        },
        {
          "filename": "game/thirdpartylegalnotices.txt",
          "status": "modified",
          "additions": 0,
          "deletions": 210,
          "changes": 210,
          "patch": null
        }
      ]
    }
  ],
  "note": "Steam buildid via steamcmd is not available on Vercel serverless; using GitHub GameTracking commits instead."
}
9.7.2026, 21.50.22
Assets/UI/maps update (game/bin/win64/panorama_strings.txt, game/bin/win64/panorama_text_pango_strings.txt, game/bin/win64/panoramauiclient_strings.txt).
Files changed: 37 • +189 / -276
scriptsuimisccontent-change
Changed files
DumpSource2/schemas/server/dynpitchvol_base_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": -1972506438,
-// "vol": 32766,
+// "pitchfrac": -1164249830,
+// "vol": 32762,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
DumpSource2/schemas/server/dynpitchvol_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": -1972506438,
-// "vol": 32766,
+// "pitchfrac": -1164249830,
+// "vol": 32762,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
game/bin/built_from_cl.txt
modified • +1 / -1 • changes: 2
Show patch
@@ -1 +1 @@
-10810962
+10812601
game/bin/win64/animationsystem_strings.txt
modified • +0 / -4 • changes: 4
Show patch
@@ -2128,7 +2128,6 @@
?const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)
?expf
?m_flPosition
-@08N
@6P9b
@6P;b
@6p]b
@@ -3024,8 +3023,6 @@ Overlay Blend: %.2f%%
OverlayBlendTask - Trying to perform an overlay blend with mismatched pose types ( additive/parent-space )
OverlayProjectionDirection
P08@Jp
-P08J
-P08N
P6pLb
P6plb
PARENT
@@ -3805,7 +3802,6 @@ offWhenFinished
optionallycompressedtangentframe
options.m_pBoneWeights->Count() >= m_boneIDs.Count()
options.m_pBoneWeights->Count() >= m_pSkeleton->GetNumBones()
-p08@H^
p6`Bb
pCheckpointName
pDescription
game/bin/win64/assetpreview_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -14069,7 +14069,6 @@ ROTATION
R\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z
R\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z
R\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z
-R\vp4
R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ
R_T5Y
Rad2 Deg
game/bin/win64/assetrename_strings.txt
modified • +0 / -3 • changes: 3
Show patch
@@ -15568,7 +15568,6 @@ $x(<*L(^$*.d$40.2Z$D6@$Q
@%s_lookFrame_2
@&*(**&,b*t
@&*(**&,b*~
-@08N
@2Py\t
@60jB
@6@KB
@@ -21012,7 +21011,6 @@ Overwriting existing wrinkle map data on mesh
P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z
P."0$.p2:4&6"8>6
P08@JP
-P08J
P08~
P4 Delete of GAME file
P4 branch/copy and edit destination
@@ -27058,7 +27056,6 @@ overwrite_existing
overwrite_existing_flags_only
ownerlog
owns_polymorphic_data
-p08@H^
p2Py\t
p2|N
p6pjB
game/bin/win64/engine2_strings.txt
modified • +65 / -54 • changes: 119
Show patch
@@ -152,9 +152,10 @@
%i refs\n
(08@HPX`hpx
(08@HPX`j@E
- (08@HPXb@
+ (08@HPXb
(08@HPZ@E
- (0X`hpz@
+ (08@HR
+ (0X`hpz
(Start:
(default = .tga + .wav file)\n
(fallback, started with
@@ -169,7 +170,7 @@
-component "%s"
-noscreenshot
-product "%s"
- .phG
+ .06G
2r6
3CQ`p
7Me}
@@ -926,6 +927,7 @@ $tI(knN
(channel =
(dump took %.1fms)\n
(end of input).\n\t This indicates a poorly specified lexer RULE\n\t or unterminated input element such as: "STRING["]\n
+(f YG
(merge
(no landmark)
(no reason given)
@@ -1073,9 +1075,10 @@ $tI(knN
../src/shaders
..\content
.00cfg
-.01G
-.0WG
-.0cG
+.08G
+.0eG
+.0jG
+.0lG
.9GXdx
.>\rfJBGo
.?AU?$Container@VUnknownFieldSet@protobuf@google@@@InternalMetadata@internal@protobuf@google@@
@@ -2475,12 +2478,9 @@ $tI(knN
.ESource2PlayStatsFieldType
.ESplitScreenMessageType
.P6AXPEBD@Z
-.PBG
.PEAVCEntityIdentity@@
+.PIG
.PLACEHOLDER_VALUE
-.PRG
-.PcG
-.PeG
.ProtoFlattenedSerializer_t
.RequestPause_t
.SignonState_t
@@ -2520,10 +2520,13 @@ $tI(knN
.log
.los
.lzh
-.p7G
-.pVG
-.pcG
+.p6G
+.pMG
+.pbG
+.pdG
.pdata
+.peG
+.pfG
.placeholder.proto
.rdata
.rdata$00
@@ -2596,14 +2599,14 @@ $tI(knN
0123456789abcdefghijklmnopqrstuvwxyz
08@HP
08@HR@E
-08@J@
+08@J
08B@E
08\fj
0: run all send jobs on main thread; 1: send jobs run asynchronously (except on dedicated server); 2: send jobs asynchronously; 3: send jobs run in parallel but block to not overlap the next tick; 4: main server clients' send jobs run in parallel, then HLTV server jobs; this approximately matches pre-async profile for a single HLTV server configuration
+0:0d%
0:<\n\fdelta_ignore
0=Off, 1=Surface Wireframe, 2=Transparent Wireframe
0=Off, 1=Visualize trace from camera, 2=Visualize occlusion, 3=Visualize far field trace from camera
-0>PUG
0B_u
0C&C
0E>X
@@ -2650,11 +2653,13 @@ $tI(knN
2#GameUI_Disconnect_RemoteProblem_TimeoutConnecting
2$.google.protobuf.FieldOptions.JSType:\tJS_NORMAL
2%sT5
+2(RB
2).google.protobuf.FileOptions.OptimizeMode:
2*.google.protobuf.FieldDescriptorProto.Type
2+.google.protobuf.FieldDescriptorProto.Label
2/.google.protobuf.MethodOptions.IdempotencyLevel:
200000
+20b%
25:Q
2CZu
2Hax
@@ -2666,7 +2671,7 @@ $tI(knN
2\r.PrefetchType"h\n
2\rU2t
2\tV_fpclassifyd
-2\vpL
+2\vpT
2i0/
3$EE\f
3'F^7
@@ -2706,21 +2711,22 @@ $tI(knN
5\n\vnested_type
5c;3E
5y?4
-6 BG
-605G
+6 3G
+6 SG
+60BG
+60IG
+60RG
64-bit
6?k 6?t
6GQ^h~
6KT3c7
6NK>
-6V{G
+6PZG
6\fXO>\ntA
6\n\fmessage_type
6\r56t
-6`7G
-6`gG
-6`kG
-6p4G
+6`LG
+6`MG
6s?fBbEcJYG[I[NYVP\B]@f;g<h<u4{,
6tmT
6uu?>
@@ -2741,6 +2747,7 @@ $tI(knN
8@HP:
8@J@E
8A3b
+8B0}$
8B@E
8Csinf
8Smt
@@ -2749,6 +2756,7 @@ $tI(knN
8\n\vdescriptors
8\vu8t
8b 16-May-2010
+8e5^
8ke?;
8}WW`
9*ubC'
@@ -2812,7 +2820,6 @@ $tI(knN
=e2m
=imb;D
=rF`JXKXWJYB[Cd;l2x(z%a+N2SNTQXKVJWGZI]J]Jm(r$u"u"
->0MG
>0|t?z7
>5dK
>6uu
@@ -2826,7 +2833,8 @@ $tI(knN
>cQ6
>fff?fff?fff?fff?invalid_hitbox
>jtm}S
->pLG
+>p5G
+>pPG
>qxs
>qxs?
>qxs?z7
@@ -3184,14 +3192,13 @@ $tI(knN
?ysB
@ Current : %s\n
@08@HPX`hpx
-@08Nd
-@6P*G
+@08N
+@60bG
+@60dG
@GetProfile_ultrafast
@HPX
@HPX&I
-@HPX`hv@CG
-@HV QG
-@NPDG
+@HPX`hv
@\tV_fwrite
@^8U)zj
@i-kuX
@@ -3381,7 +3388,6 @@ Automatically records all games as SourceTV demos.
Av8I5
Avestan
A{v8
-B0b%
B2Bk
B5@S
B86!
@@ -5182,7 +5188,10 @@ Extensions to non-lite types can only be declared in non-lite files. Note that
Extra arguments given after name\n
ExtractModuleMetadata
Extraneous token
+F JG
+F0XG
F>qUxv
+F@HG
FAIL
FALSE
FATAL
@@ -6570,14 +6579,12 @@ Override Fog color: %f %f %f\n
Overrides the SourceTV master root address.
Overrides the max players reported to prospective clients
Overriding minidump handler with Engine2MinidumpFunction\n
-P08@J@
-P08JP
-P08Nd
+P08@J
+P08J
+P08N
P2@E
P4File
-P6P=G
-P6PgG
-P6`/G
+P6`bG
P:S;A
P?fff?33s?{
P@HPX`hpx\f
@@ -6701,6 +6708,7 @@ PerFrameSleepChanged
PerFrameSleepMS
Perf stats buffer full, no more data will be collected.\n
Performs a bind <key> "increment var <cvar> 0 1 1".
+Pfp1G
Phags_Pa
Phoenician
PhysicsBuilderMgr001
@@ -6849,6 +6857,7 @@ Playing Broadcast (%s)
Playing Demo (%s)
Playing back demo: '%s' at tick %u\n
PmNk
+PnP3G
Pointers cannot be used as numeric values
PollAndProcessInput
Poor man's restart: reload the current map from disk.
@@ -7035,7 +7044,7 @@ RP_PAUSE
RP_TOGGLEPAUSE
RSDS
RST%d
-R\vpL
+R\vp4
RaiseException
Random Float
Random Integer
@@ -8338,7 +8347,6 @@ UtlVectorMemory_FailedAllocation
U}JK
U}g7x~
V/?[w8rV
-V0fG
V<@ss
V?wm\v
VApplication001
@@ -8473,7 +8481,6 @@ Visibility %s.\n
Voice
VoiceDataFormat_t
Void
-Vp\G
Vrad3_001
Vu?N\t?8Ws?vGr?
Vv.q
@@ -8667,7 +8674,6 @@ You have been kicked and banned %s by the server.\n
Your current chat group is "%s"\n
YpU_Z
Z-google.golang.org/protobuf/types/descriptorpb
-Z0b%
Z48wN39
Z6y\r?
Z?SHX?
@@ -8754,7 +8760,7 @@ Zq",9\fB
\fV4U
\fX\fm\vH\vH\vm\v
\f\ng_pThreadPool
-\foNj
+\fp\vPP
\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
\n Actual :
\n Field type:
@@ -9172,7 +9178,6 @@ Zq",9\fB
]\n,NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION
]\tV_log2_uint
^<V7w
-^PUG
^RfN>
^\n*NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT
^\n*NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT
@@ -9233,8 +9238,8 @@ _spawngroup_logging/log_%s_group_%s.txt
_temp_mapcycle.txt
`-uRQg
`3Q"X
-`6 eG
-`60eG
+`6PdG
+`6PeG
`?m'_?&~]?(
`RTTI
`adjustor{
@@ -9292,7 +9297,6 @@ a numbered reference must not be zero
a&M-=Z]<i*k)n-t&q&p&|
a6>r
a?wSa?\
-aBvd
a\tV_logf
a\v4+Wk
abcdefghijklmnopqrstuvwxyz
@@ -10001,6 +10005,7 @@ false:=\n\rvalve_map_key
false:?\n
false:A\n
fast path %d at %d\n
+fb{G
field
field_serializer_name_sym
field_serializer_version
@@ -10032,6 +10037,7 @@ float32
float64
floor
fmod
+fn{G
fog_enable
fog_override_color
fog_override_enable
@@ -10052,8 +10058,6 @@ forcing new thread crash\n
forcing parallel process non-main thread crash\n
format
found duplicate in %s\n
-fp(G
-fpGG
fps variability,
fps,
fps_max
@@ -10176,6 +10180,7 @@ guid
h0'D
h>1my
hJ4%
+hMI^
hPU3
hTarget
h\n,NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING
@@ -10230,7 +10235,6 @@ hostname
hostname : %s\n
hostname_in_client_status
hostport
-hpz@
hscript
hscript_lightbinding
http Send %.3f ms ave, %.3f ms max\n
@@ -10719,11 +10723,13 @@ multvar
multvar: cvar "%s" not found\n
multvar: no varname specified!\n
mx=E
+n 4G
n03>Pu
+n0UG
n>sak><
n?A6
n?SZn?
-n@jG
+n@QG
nBits != 32
nGh>
nI9>h
@@ -10834,6 +10840,8 @@ not started
not supported
notes
nothing to repeat
+npHG
+npWG
null
nullptr
num_bits
@@ -10941,20 +10949,21 @@ overwatch
owM&
owner dead
oz>!km>
-p08@H^d
+p08@H^
p0p@
+p20}$
p2@E
p2p_listpeers
p2p_ping "%s"
p4edit
-p6@0G
+p6@OG
+p>7{G
p?ff
p@HPX`h\f
pClass
pClass->m_ClassID(%i) >= %i\n
pClient
pCm)
-pF ]G
pH\fy
pMessage
pNewSet->m_readPipe.OpenPipe_Named( false, szReadPipeParam, true )
@@ -11103,10 +11112,12 @@ quit
quit\n
qxs?L
qxs?z7
+r0b%
r?dar?\n
rA?7
rEy5
rFg7
+r\fp4
r\tVr.>T
r_always_render_all_windows
r_aspectratio
@@ -11951,6 +11962,7 @@ utcdatetime_vals
utl_vector,
utlstringtoken
uzKs@>
+v0iG
v2!L.2
vE-2
vQO+t
@@ -12131,7 +12143,6 @@ y\tV_sincosf
yields
yiq-
yslf`ZTMGA;5.
-z0b%
z?Mbz?H5z?
z\n8NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY
z\nB\fz
game/bin/win64/gfsdk_aftermath_lib.x64_strings.txt
modified • +0 / -2 • changes: 2
Show patch
@@ -1088,7 +1088,6 @@ $@(2.(0f6(:b@
=5au
>global
@08B
-@08N
@20z\n
@HJP~
@HPV
@@ -5002,7 +5001,6 @@ Zig Software Foundation Zig Compiler
[structured binding for
[unnamed type (instance
\6^6V
-\fp\vPP
\mfpmp.exe
\n to
\n; <label>:
game/bin/win64/libfbxsdk_2020_3_1_strings.txt
modified • +0 / -2 • changes: 2
Show patch
@@ -12974,7 +12974,6 @@ $\t$\n$\v$\f$\r$
?valueAs@FbxDistance@fbxsdk@@QEBAMAEBVFbxSystemUnit@2@@Z
@&DlF4D>H4D>J4D
@08B
-@08N
@2p9'
@6 Zj
@60/k
@@ -16580,7 +16579,6 @@ Overscan Fit
P$RfP
P%luY%luM%luDT%luH%luM%.14gS
P(Pe{
-P08N
P08~
P0F&RPTZX
P2 p
game/bin/win64/meshsystem_strings.txt
modified • +1 / -1 • changes: 2
Show patch
@@ -115,7 +115,7 @@
.?AVIShaderReloadListener@@
.?AVIVPhysicsLegacyKeyHandler@@
.vmdl
-2\vpT
+2\vpL
2_BONE_IK
8a\v6;
;1#INF
game/bin/win64/networksystem_strings.txt
modified • +0 / -5 • changes: 5
Show patch
@@ -266,9 +266,7 @@
8Fpu
::Storage_t
<classname> <fieldname>: spew why field was excluded from networking for classname.
-@08N
@6po
-@HPX`hv
Accepting Steam Net connection %s\n
AckSeqNum
Activates/deactivates net message validation
@@ -670,8 +668,6 @@ Order,'From','To',Bits\n
OutSeqNumAck
Overrides IP for multihomed hosts
P08@Jpq
-P08J
-P08N
P2pq
P6 R
P:pq
@@ -1075,7 +1071,6 @@ out-of-order
outgoing_data_bytespersecond
outgoing_sequence
outgoing_sequence_start
-p08@H^
p0j@
p2pq
p\rP\f0!h
game/bin/win64/panorama_strings.txt
modified • +31 / -47 • changes: 78
Show patch
@@ -17,10 +17,7 @@
' ) - 3 G M Q _ c e i w }
(%ld unused bits)\n
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
(INVALID PSS PARAMETERS)\n
(Negative)
(derived from %s)
@@ -265,54 +262,49 @@ $hRh
(!(1(=(?(I(Q([(](a(g(u(
((long)msg_hdr->msg_len) > 0
(0'yX
-(1oJ
+(1GJ
(4?NewFromUnsigned@Integer@v8@@SA?AV?$Local@VInteger@v8@@@2@PEAVIsolate@2@I@Z
-(5BJ
-(5EJ
-(5JJ
(5Me
-(5OJ
(5jP
-(A9J
+(95J
+(AkJ
(BZq
(D4D
-(ENJ
-(EaJ
-(EjJ
+(EUJ
(I?Value@External@v8@@QEBAPEAXXZ
+(M2J
+(M8J
(NONE)
-(QkJ
+(U0J
(U1h
-(U2J
-(U5J
-(U7J
-(Y0J
-(YyJ
+(UHJ
+(UvJ
+(Y4J
+(YlJ
(ZdOt\n&
(_Assert)
-(acJ
+(aWJ
+(abJ
(anonymous)
(d4t8
(down)
(fS{ggRcjh
(h`H1pqA
(i/Al
-(i8J
-(iHJ
-(iMJ
-(iQJ
+(ihJ
(jvg;
(memory)
-(qGJ
+(moJ
+(qBJ
+(qEJ
+(qJJ
+(qOJ
(undefined)
(unset)
(unset) w/parent: %s
(vQF
(wMww
-(yCJ
-(yRJ
-(yeJ
-(ylJ
+(yDJ
)!)#)?)G)])e)i)o)u)
)4?NewFromUtf8@String@v8@@SA?AV?$MaybeLocal@VString@v8@@@2@PEAVIsolate@2@PEBDW4NewStringType@2@H@Z
)Ck?B
@@ -989,12 +981,10 @@ $hRh
02V8[
05=k
08@HR
-08@J
08bX
09,h
0;Q5[
0<cz
-0>pc=
0M2~@p
0W/5
0Z@q
@@ -1029,6 +1019,7 @@ $hRh
2)252Y2]2c2k2o2u2w2{2
2)Ab`
2+~,@\r;Zj09
+20I
20t\f
24U\n
27;C
@@ -1051,7 +1042,6 @@ $hRh
2f)l=
2nIg
2p"6
-2pO$
2prB
3%3+3/353A3G3[3_3g3k3s3y3
31tPR
@@ -1125,7 +1115,6 @@ $hRh
6l13
6lkc
6myY;
-6px=
6qo~
6r-m_v
6r1ij
@@ -1157,15 +1146,16 @@ $hRh
7wKR
7zRQ
8"3hrf
-8)KJ
8+Qw
80F2<
82\n:XPH
851Pe
+85}J
8<pl
8= zp
8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z
8A6j
+8AXJ
8BP!\n
8GZS
8SIffK5W
@@ -1174,6 +1164,7 @@ $hRh
8]Vc2
8ca1
8dS2
+8eKJ
8pe7?
8q-S*]X
8sOy
@@ -1190,7 +1181,6 @@ $hRh
9J9;6
9N1=@
9QTA
-9R}J
9Y@nJM
9Zr4
9\not
@@ -1342,15 +1332,14 @@ $hRh
?uWS
?x29
@!@%@+@1@?@C@E@]@a@g@m@
-@08N
@0pp
-@60d=
-@60f=
+@6Pd=
+@6Pf=
@?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z
@BH]f
-@HPX`hv y=
+@HPX`hv@y=
@MfKZ
-@NPz=
+@Npz=
@Pgl
@Pu\rm
@WE]X
@@ -3579,12 +3568,9 @@ P-224
P-256
P-384
P-521
-P08@J
-P08J
-P08N
+P08J0
P1\t98"
P5[1
-P6`d=
PAGN_4
PARAMETERS
PARSE_BAG
@@ -4646,7 +4632,6 @@ Ut]<E
Uv1t
Uz_G3=
V07;m
-V0b=
V2I_ASIDENTIFIERS
V2I_AUTHORITY_INFO_ACCESS
V2I_AUTHORITY_KEYID
@@ -4690,6 +4675,7 @@ VNotify Abandoned (Not enabled)\n
VNotify Sent\n
VNotify StartProcess failed!\n
VNotify: %s\n
+VPb=
VY5[;o
VZ#-DLU[3=h
V\rKk
@@ -5024,7 +5010,6 @@ Z~wl
\n5a=Z
\n:82H
\nJS(%s:%d:%d)\n%s\n%s\n
-\nWKJ
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
\n\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
@@ -5103,7 +5088,6 @@ _}eOk
`28)fk
`3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z
`:zQF
-`AMJ
`D$daM-l
`DZG
`F?ToLocalEmpty@api_internal@v8@@YAXXZ
@@ -8131,7 +8115,6 @@ p.other
p.ppBasis
p.prime
p.tpBasis
-p08@H^
p2P!\n
p2{l
p4Z3
@@ -8452,6 +8435,7 @@ quiet
qx(q
r$0I
r-IE
+r05
r184
r3A~
r<\rND
game/bin/win64/panorama_text_pango_strings.txt
modified • +0 / -2 • changes: 2
Show patch
@@ -904,7 +904,6 @@ $hRh
@08NX
@0pp
@BH]f
-@HPX`hv
@MfKZ
@Pgl
@Pu\rm
@@ -2625,7 +2624,6 @@ P-256
P-384
P-521
P08@J`k
-P08J
P08NX
P1\t98"
P2`k
game/bin/win64/panoramauiclient_strings.txt
modified • +0 / -6 • changes: 6
Show patch
@@ -1,9 +1,6 @@
!"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
<b>@import</b>
cubic-bezier( %1.3f, %1.3f, %1.3f, %1.3f )
ellipsis
@@ -443,7 +440,6 @@
.PEA_N
.PEBVILocalizationString@panorama@@
08@HR
-08@J
0:Pj
0vt8
0x%4.4x
@@ -493,7 +489,6 @@
@08Nt8
@?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z
@DebugIndividualStyle
-@HPX`hv
@keyframes
@keyframes '%s'\r\n{\r\n
@nt8
@@ -1113,7 +1108,6 @@ OpenStyleFileForEditAtByteIndex
OpenText
Option_%d
OverMaxPips
-P08@J
P08J0
P08Nt8
PageDown
game/bin/win64/physicsbuilder_strings.txt
modified • +1 / -0 • changes: 1
Show patch
@@ -6920,6 +6920,7 @@ $prefix_element$
2DBlend
2DBlendEditor
2DBlendFromAnimation
+2\vpL
2_BONE_IK
4-byte data pool
4\r54t
game/bin/win64/pi_level_zero_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -523,7 +523,6 @@ Queue->executeOpenCommandList(OpenCommandList->second.isCopy(Queue))
Queue->insertStartBarrierIfDiscardEventsMode(CommandList)
Queue->resetCommandList(it, true, EventListToCleanup)
RSDSU
-R\vp4
Raising QueueBatchSize to %d\n
Read from device global variable is out of range.
SPIR-V_%d.%d
game/bin/win64/pulse_system_strings.txt
modified • +1 / -0 • changes: 1
Show patch
@@ -169,6 +169,7 @@
.?AVIPulseHost_YieldingCursor@@
.?AVIPulseSystem@@
.?AVIResourceTypeManager@@
+2\vpL
;1#INF
<No Cell>
<map_key>
game/bin/win64/resourcecompiler_strings.txt
modified • +0 / -10 • changes: 10
Show patch
@@ -169,10 +169,7 @@
(%lu = 0x%lx)\n
(%u = 0x%x)\n
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
(Bad Remap %d)
(INVALID PSS PARAMETERS)\n
(Negative)
@@ -21270,7 +21267,6 @@ $prefix_element$
02V8[
05=k
08@HR
-08@J
08bX
09,h
0;Q5[
@@ -21708,7 +21704,6 @@ $prefix_element$
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
-@08N
@0pp
@BH]f
@CMapLocator
@@ -31843,9 +31838,6 @@ P-224
P-256
P-384
P-521
-P08@J
-P08J
-P08N
P1\t98"
P5[1
PAGN_4
@@ -32890,7 +32882,6 @@ RT Proxy geometry: %s verts / %s, %s indices / %s. Duplicated %i verts due to p
RT60 for low, mid, and high frequency bands for the probe.
R\r1>Vp
R\vp!y
-R\vp4
R]Di
R_T5Y
Rad2 Deg
@@ -43804,7 +43795,6 @@ p.other
p.ppBasis
p.prime
p.tpBasis
-p08@H^
p2{l
p4Z3
p4lib
game/bin/win64/scenesystem_strings.txt
modified • +0 / -5 • changes: 5
Show patch
@@ -26,10 +26,7 @@
%i fog-only.
%s | Flags %lld \n
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
(EXTERN)
(Frozen)
(MAYBE DISABLED?!)
@@ -879,7 +876,6 @@ $tIP
001.003
050s0
08@HR
-08@J
0?333?333?333?333?
0x%02X
0x%04X
@@ -3888,7 +3884,6 @@ Override ChildBg color
Override Streaming GPU Memory
P+\fGj
P.P5
-P08@J
P08J`
P08Np
P3\rA
game/bin/win64/steamaudio_strings.txt
modified • +2 / -0 • changes: 2
Show patch
@@ -674,6 +674,7 @@ $hRh
2Zq)
2\fWQx
2\rlhp
+2\vpL
2\vpPK
2\vpdY
2^pV
@@ -3123,6 +3124,7 @@ RSA_verify_PKCS1_PSS_mgf1
RSDS3z"
R\fpPK
R\r1>Vp
+R\vpL
R]Di
Rbg.E
ReadConsoleInputW
game/bin/win64/steamnetworkingsockets_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -4280,7 +4280,6 @@ RSA_sign_ASN1_OCTET_STRING
RSA_verify
RSA_verify_ASN1_OCTET_STRING
RSA_verify_PKCS1_PSS_mgf1
-R\vp4
Rank=%d
Rbg.E
Read-only file system
game/bin/win64/tier0_strings.txt
modified • +11 / -12 • changes: 23
Show patch
@@ -76,7 +76,6 @@
#include is NULL
#int#
#nyf
-#vpulse1
$Ib?s
$eax
$ebp
@@ -434,7 +433,7 @@ $xmm9
(yaX
) : AssertMsg Failed in function
) : Assertion Failed in function
-)05\tX81
+)05\t`81
)14:;EFIJ^de
)14:EFIJNOde\
)EIWde
@@ -451,6 +450,7 @@ $xmm9
*Vc>L
*fj\rv
*nullptr*
++$p81
+i9O
+inf
+tPOu
@@ -818,7 +818,7 @@ $xmm9
5\fE5d
5m8>8=t
5nsfZ
-5t8.1
+5tH.1
64-bit DWARF format is not supported\n
67VW
6A_p
@@ -844,6 +844,7 @@ $xmm9
8Z~H
8ke?;
8powf
+8x(.1
99jd9
9>70
9>expf
@@ -3789,6 +3790,7 @@ EnableWindow
Enabling flag '%s' on channel '%s'.\n
EncodePointer
End of input was reached and '[' was not matched by ']'
+End of input was reached and '{' was not matched by '}'
EndDialog
EndPaint
Engine2/MapMaxCoord
@@ -4328,7 +4330,7 @@ ISolveIKChainAnimNode
ISubGraphAnimNode
ISubGraphManager
ITALIAN
-I\zH6H71
+I\zH6
Ignore
Ignore All Asserts
Ignore For 24 Hours
@@ -4367,7 +4369,6 @@ InitializeSListHead
InitializeSRWLock
InitializeSecurityDescriptor
Inline attr without expected value\n
-Input contains no data
InputService_001
InputStackSystemVersion001
InputSystemVersion001
@@ -4855,7 +4856,7 @@ Outflow_NPCScriptedMoveTo
Outflow_NPCUseScriptedAbility
Outflow_Simultaneous
OutputDebugStringA
-P(YX8
+P(YXH
P4_EXTRACT_CMD=p4.exe print -o %srcsrvtrg% -q "//%var3%#%var4%"\n
P4_EXTRACT_TARGET=%targ%\%var2%\%fnbksl%(%var3%)\%var4%\%fnfile%(%var1%)\n
PARTICLE_DEPTH_FEATHERING_OFF
@@ -6170,6 +6171,7 @@ Unable to seek to ELF shoff\n
Unable to seek to Mach-O load commands\n
Unable to seek to Macho-O slice base\n
Unable to seek to module section at file offset 0x%x\n
+Unable to write file '%s'\n
Unaccounted
Unexpected EOF while parsing number
Unexpected augmentation string byte 0x%x (shouldn't have augmentation data)\n
@@ -6887,7 +6889,7 @@ ZwSetTimerResolution
\nk>oB
\ntier0.dll
\rConsole
-\rEnd of input was reached and '{' was not matched by '}'
+\rInput contains no data
\r\f\v\v\n\n\t\t\t\t\t
\rmj>zjZ
\sdktools\bin
@@ -7008,7 +7010,6 @@ _root_keyname
_test_conversion_counter
_wWT+
`RTTI
-`X71
`anonymous namespace'
`copy constructor closure'
`default constructor closure'
@@ -7594,7 +7595,6 @@ k*WBjL
k=yI
k>4\tF
k>RU
-kH81
kernel32.dll
kernelbase.dll
l6qnk
@@ -8299,7 +8299,6 @@ nOffset < m_nAllocationSize
nOverrideCPField
nSwitchValue
nTries < 10000000
-nUnable to write file '%s'\n
nXAO
n\f"pA3Q
n]?iJ
@@ -8814,6 +8813,7 @@ vpcf8
vpcf9
vpk:
vpulse
+vpulse1
vpulse10
vpulse11
vpulse12
@@ -8871,7 +8871,6 @@ x=9v
xSvf$
xT?V
xYiu
-x\th71
x`tm6
xu37
xuRCk
@@ -8903,7 +8902,7 @@ zs}O
{}{}{:0<{}s}.0
|jPZ
~DSTRCT
-~Lx71
+~L071
~NX4
~cU4
~g9A
game/bin/win64/tools/cs2_item_editor_strings.txt
modified • +0 / -2 • changes: 2
Show patch
@@ -4378,7 +4378,6 @@ $\n\tword_list
?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z
@#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z
@08N<U;
-@HPX`hv
@\n\fSingleObject
@\n\vserver_type
@\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z
@@ -5687,7 +5686,6 @@ Other Tools
Outliner
OverlayProjectionDirection
P08@Jp
-P08J
P08N<U;
P?isValid@QColor@@QEBA_NXZ
P?isValid@QTextCharFormat@@QEBA_NXZ
game/bin/win64/tools/hammer_strings.txt
modified • +0 / -10 • changes: 10
Show patch
@@ -92,11 +92,8 @@
(%lu = 0x%lx)\n
(%u = 0x%x)\n
(08@HPX`j0
- (08@HPXb
(08@HPZ0
- (08@HR
(08@J0
- (0X`hpz
(Driven by choice group '%1')
(INVALID PSS PARAMETERS)\n
(Negative)
@@ -15115,7 +15112,6 @@ $worldspacetype
02V8[
05=k
08@HR0
-08@J
08B0
08bX
09,h
@@ -18793,7 +18789,6 @@ $worldspacetype
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
-@08N
@0pp
@6 vS
@6 yS
@@ -18802,7 +18797,6 @@ $worldspacetype
@:p1B
@BH]f
@C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlsortvector.h
-@HPX`hv
@Integer overflow in %s
@MfKZ
@Pgl
@@ -29358,9 +29352,6 @@ P-224
P-256
P-384
P-521
-P08@J
-P08J
-P08N
P1\t98"
P4CopyFile
P4CopyFile: Couldn't copy "%s" to "%s"\n
@@ -42108,7 +42099,6 @@ p.other
p.ppBasis
p.prime
p.tpBasis
-p08@H^
p2{l
p4 fstat -Op %s
p4Z3
game/bin/win64/tools/modeldoc_editor_strings.txt
modified • +0 / -5 • changes: 5
Show patch
@@ -12780,7 +12780,6 @@ $prefix_element$
2\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z
2\v?event@QAction@@MEAA_NPEAVQEvent@@@Z
2\vp4
-2\vpT
2_BONE_IK
2aboutToShow()
2accepted()
@@ -14869,7 +14868,6 @@ $prefix_element$
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
-@08N
@AuthPhysCollisionAttributesModeEnum_t
@HPX`hv
@HV0
@@ -21575,8 +21573,6 @@ Overwrite all bone data
Overwrite existing flags only
Overwriting existing wrinkle map data on mesh
P08@J0p.
-P08J
-P08N
P20p.
P:0p.
P?isValid@QColor@@QEBA_NXZ
@@ -27036,7 +27032,6 @@ overwrite_existing
overwrite_existing_flags_only
owns_polymorphic_data
p"?value@QSpinBox@@QEBAHXZ
-p08@H^
p20p.
pAction
pActionObject
game/bin/win64/tools/sfm_strings.txt
modified • +4 / -1 • changes: 5
Show patch
@@ -6540,6 +6540,7 @@ $prefix_element$
?waitForFinished@QProcess@@QEAA_NH@Z
?waitForReadyRead@QProcess@@UEAA_NH@Z
@#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z
+@08Nd
@606
@608
@HPX`hvpP
@@ -10471,7 +10472,7 @@ Overwrite
Overwrite With Current
P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z
P08@JPk+
-P08J
+P08Nd
P2Pk+
P4 Operation failed
P4InteractionDialog
@@ -12963,6 +12964,7 @@ a?windowText@QPalette@@QEBAAEBVQBrush@@XZ
a?write@QStandardItem@@UEBAXAEAVQDataStream@@@Z
a?x@QMouseEvent@@QEBAHXZ
a?y@QMouseEvent@@QEBAHXZ
+aBvd
aC=H
aTR>7
aZure : voiced postalveolar fricative
@@ -14653,6 +14655,7 @@ overrideShutterSpeedValue
ownerelement
ownerlog
p"?value@QSpinBox@@QEBAHXZ
+p08@H^d
p2Pk+
p4win
p60\
game/bin/win64/v8system_strings.txt
modified • +1 / -0 • changes: 1
Show patch
@@ -19,6 +19,7 @@
.?AVISource2V8System@@
.?AVV8ArrayBufferAllocator@@
1?LowMemoryNotification@Isolate@v8@@QEAAXXZ
+2\vpL
2\vp`9
3?New@Isolate@v8@@SAPEAV12@AEBUCreateParams@12@@Z
9?Reallocate@Allocator@ArrayBuffer@v8@@UEAAPEAXPEAX_K1@Z
game/bin/win64/visbuilder_strings.txt
modified • +0 / -2 • changes: 2
Show patch
@@ -82,7 +82,6 @@
.?AVISequence@@
.?AVIVertColorBase@@
08@HR
-2\vpT
=fff?
?expf
@08NP
@@ -181,7 +180,6 @@ No triangles found to compute visibility\n
Note, removing %u lines of sight, too much memory! (was %s, use -debuglos to preserve more of these for debugging)\n
Outside detection took %.2f seconds\n
OverlayProjectionDirection
-P08J
P08NP
P6p\
PerVertexLighting
game/csgo/bin/win64/client_strings.txt
modified • +6 / -11 • changes: 17
Show patch
@@ -111,10 +111,7 @@
(%ld unused bits)\n
(+%d more due to usercommand delivery)
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
(DEFAULT)
(Dirty Animation)
(INVALID PSS PARAMETERS)\n
@@ -10983,7 +10980,6 @@ $taser_charge
02V8[
05=k
08@HR
-08@J
08bX
09,h
0;Q5[
@@ -11377,6 +11373,7 @@ $taser_charge
5-\rGw
50Q5
51t&
+5248
52pk
5760
5A10K
@@ -12842,7 +12839,7 @@ BloomVisualisation
BlurBackground
BlurOperationPanel
BlurPopupPanel
-Bm_nEndMatchNextMapVote
+Bm_iCompetitiveRankingPredicted_Win
BoX5
Body Component Scriptdesc
BodyGameSystem
@@ -14138,8 +14135,8 @@ CMS_stream
CMS_uncompress
CMS_verify
CMapBombDamageGameSystem
-CMapBombDamageRuntimeData::RenderVisualization(), C:\buildworker\csgo_rel_win64\build\src\game\shared\cstrike15\cs_bomb_damage.cpp:440
-CMapBombDamageRuntimeData::RenderVisualization(), C:\buildworker\csgo_rel_win64\build\src\game\shared\cstrike15\cs_bomb_damage.cpp:459
+CMapBombDamageRuntimeData::RenderVisualization(), C:\buildworker\csgo_rel_win64\build\src\game\shared\cstrike15\cs_bomb_damage.cpp:448
+CMapBombDamageRuntimeData::RenderVisualization(), C:\buildworker\csgo_rel_win64\build\src\game\shared\cstrike15\cs_bomb_damage.cpp:467
CMapInfo_API::FireWinCondition
CMissionTemplate::BMakeQuestDefSchema
CModel::GetBoneIndexForHitboxForMesh
@@ -14686,7 +14683,7 @@ CRenderGameSystem::OnClientPreOutputParallelWithServer
CRenderGameSystem::OnClientPreOutputParallelWithServer(), C:\buildworker\csgo_rel_win64\build\src\game\shared\rendergamesystem.cpp:1245
CRenderGameSystem::OnClientPreOutputParallelWithServer(1345):
CRenderingPipelineCS2Shadows
-CRenderingPipelineCsgo::AddLayersToView(10761):
+CRenderingPipelineCsgo::AddLayersToView(10760):
CResourceName
CResourceNameTyped
CResourcePrecacherGameSystem
@@ -21873,8 +21870,6 @@ P-224
P-256
P-384
P-521
-P08@J
-P08J
P08N$
P1\t98"
P2P Voice
@@ -36259,7 +36254,7 @@ p.ppBasis
p.prime
p.tpBasis
p08@H^$
-p0j0a
+p0j0e
p250
p2p_ping could not convert "%s" to a CPeerToPeerAddress\n
p2p_ping could not ping "%s" because they are an unknown peer\n
game/csgo/bin/win64/host_strings.txt
modified • +0 / -10 • changes: 10
Show patch
@@ -1,9 +1,6 @@
!"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 9
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
!m_hParam.IsValid()
%%s%%s%%d: sv[%%%d.%ds] cl[%%%d.%ds]\n
%s: IGameSystem::LoopActivateAllSystems {\n
@@ -96,13 +93,10 @@
.?AVISinglePlayerSharedMemory@@
.?AVISource2Host@@
08@HR
-08@J
2\vpD
8Fp\
?expf
-@08N
@6pV
-@HPX`hv
AA:@0
APPSYSTEM: In ConnectGameInterfaces(), s_nRegistrationCount is %d!\n
APPSYSTEM: In ConnectGameInterfaces(), tried to use different connection modes!\n
@@ -137,9 +131,6 @@ IND)ind)"
LightmapUV
LightmapUVW
OverlayProjectionDirection
-P08@J
-P08J
-P08N
Parameter %s is an incorrect type (needs to be %s)
PerVertexLighting
Physics
@@ -181,7 +172,6 @@ lowprecisionuv
lowprecisionuv1
medium
optionallycompressedtangentframe
-p08@H^
p6`f
posxyz
runleft
game/csgo/bin/win64/matchmaking_strings.txt
modified • +0 / -6 • changes: 6
Show patch
@@ -16,10 +16,7 @@
View %s failed to allocate description!\n
!"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$P
(08@HPX`j
- (08@HPXb
(08@HPZ
- (08@HR
- (0X`hpz
:score average_contribution :payloadformat { payload0 { :score mvp_awards :format int :upload sum } payload1 { :score rounds_played :format int :upload sum } payload2 { :score total_contribution :format int :upload sum } payload3 { :score kills :format int :upload sum } payload4 { :score deaths :format int :upload sum } payload5 { :score damage :format int :upload sum } }
:score kd_ratio :payloadformat { payload0 { :score kills :format int :upload sum } payload1 { :score deaths :format int :upload sum } payload2 { :score rounds_played :format int :upload sum } payload3 { :score shots_fired :format int :upload sum } payload4 { :score head_shots :format int :upload sum } payload5 { :score shots_hit :format int :upload sum } }
:score num_rounds :scoresum 1 :payloadformat { payload0 { :score time_played :format uint64 :upload sum } payload1 { :score time_played_ct :format uint64 :upload sum } payload2 { :score time_played_t :format uint64 :upload sum } payload3 { :score total_medals :format int :upload last } }
@@ -350,7 +347,6 @@ $tIJobs/Coroutines
0.0.0.0
00000000
08@HR
-08@J
0\n,GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE
0\n,k_ECommunityItemAttribute_CommunityItemAppID
0v8,
@@ -379,7 +375,6 @@ $tIJobs/Coroutines
<\n\ncategories
>\n\tTypeCache
@08N8,
-@HPX`hv
@\n\fSingleObject
@workshop
APPSYSTEM: In ConnectGameInterfaces(), s_nRegistrationCount is %d!\n
@@ -715,7 +710,6 @@ OnlineSearch::StartSearch failed to build filter list!\n
OnlineSearch::StartSearchPass:\n
Options/searchteamkey
Options/server
-P08@J
P08Jp
P08N8,
P\n\nattributes
game/csgo/bin/win64/modtools_strings.txt
modified • +0 / -5 • changes: 5
Show patch
@@ -8850,8 +8850,6 @@ $modelname$_surface
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
-@08N
-@HPX`hv
@Integer overflow in %s
@N08
@m_nParticle
@@ -11973,8 +11971,6 @@ Overwrite all bone data
Overwrite existing flags only
Overwriting existing wrinkle map data on mesh
P08@J0s
-P08J
-P08N
P20s
P6 W
P:0s
@@ -14583,7 +14579,6 @@ overridesound
overwrite_existing
overwrite_existing_flags_only
owns_polymorphic_data
-p08@H^
p20s
p6pR
pEvent != nullptr
game/csgo/bin/win64/server_strings.txt
modified • +30 / -38 • changes: 68
Show patch
@@ -100,12 +100,10 @@
%s%lu (%s0x%lx)\n
' ) - 3 G M Q _ c e i w }
(%ld unused bits)\n
- (08@HPX`j0
- (08@HPXb
- (08@HPZ0
- (08@HR
- (08@J0
- (0X`hpz
+ (08@HPX`j
+ (08@HPXb`
+ (08@HPZ
+ (0X`hpz`
(Dirty Animation)
(Disabled on Server)
(INVALID PSS PARAMETERS)\n
@@ -124,6 +122,7 @@
-8CKV
-> %s '%s'\n
-> Could not find an item definition named '%s'\n
+ .pMX
0@NYa
0Fa
1CSc\t
@@ -2177,7 +2176,6 @@ $tH@T\tI
-\n)GAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED
-\n)GAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET
-\n)k_ECsgoSteamUserStat_MatchWinsCompetitive
--\n0TX
-\n\fcommendation
-\n\nconditions
-\n\tAttribute
@@ -2242,9 +2240,7 @@ $tH@T\tI
... and no start position
....................
..uR5&m
-.0CX
-.0LX
-.0uX
+.0aX
.0zX
.4bb
.97yY
@@ -8497,7 +8493,6 @@ $tH@T\tI
.PEAVCPlayer_UseServices@@
.PEAVCPlayer_WaterServices@@
.PEAVCPlayer_WeaponServices@@
-.PPX
.PlayerCommendationInfo
.PlayerDecalDigitalSignature
.PlayerDecalDigitalSignature":\n
@@ -8507,7 +8502,8 @@ $tH@T\tI
.PlayerRankingInfo
.PlayerRankingInfo"L\n3CMsgGCCStrike15_v2_MatchmakingOperator2GCBlogUpdate
.PlayerRankingInfo.PerMapRank
-.PuX
+.PyX
+.PzX
.Q.Ol
.ScoreLeaderboardData
.ScoreLeaderboardData"S\n%CCSUsrMsg_PlayerDecalDigitalSignature
@@ -8797,10 +8793,9 @@ $tH@T\tI
.dx_LV9
.fatdem
.lbN
-.pCX
-.pPX
.pp@0
-.ppX
+.pyX
+.pzX
.text$
.vjs_c
.vmap
@@ -8841,9 +8836,8 @@ $tH@T\tI
0123456789
02V8[
05=k
-08@HR0
-08@J
-08B0
+08@HR
+08@J`
08bX
09,h
0;Q5[
@@ -8958,7 +8952,6 @@ $tH@T\tI
2\n.eRollType
2\n\nline_items
2\rlhp
-2\vp4
2^pV
2a"l
2bT~
@@ -9037,6 +9030,7 @@ $tH@T\tI
4\re4h#
4\vU44
4f h
+4t\nGV
4tpD
4zj@1;IJ
4|2;#GameUI_Retake_Card_LightEmUp,1,1,rifle1,grenade0|2;#GameUI_Retake_Card_Kobe,1,1,rifle1,grenade2|1;#GameUI_Retake_Card_1g,1,1,rifle1,grenade3|1;#GameUI_Retake_Card_DisappearingAct,1,1,rifle1,grenade1|1;#GameUI_Retake_Card_EyesOnTarget,1,1,weapon_aug
@@ -9107,16 +9101,13 @@ $tH@T\tI
6\n2GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION
6\n\nvariations
6_wEX
-6`fX
6afD
6bX+
6c&0|vvX
6i$R\nQ
6l13
6lkc
6myY;
-6pJX
-6pgX
6qo~
6r-m_v
6r1ij
@@ -9162,7 +9153,6 @@ $tH@T\tI
8<pl
8= zp
8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z
-8@J0
8A6j
8GZS
8SIffK5W
@@ -9344,6 +9334,7 @@ $tH@T\tI
>?SetClassName@FunctionTemplate@v8@@QEAAXV?$Local@VString@v8@@@2@@Z
>JRZ`c4DLV_c*8AN\c
>KS[ac5>IU^c+0<LZc
+>PVX
>Sem
>WK6
>\n9k_EGCItemCustomizationNotification_ClientRedeemFreeReward
@@ -9418,17 +9409,16 @@ $tH@T\tI
?uWS
?x29
@!@%@+@1@?@C@E@]@a@g@m@
-@08N
@0pp
@333
@333?
@33s@
-@6`pX
+@6 zX
+@6@yX
@?SlowGetAlignedPointerFromInternalField@Object@v8@@AEAAPEAXH@Z
@Aff
@BH]f
@BoneSetup
-@HPX`hv
@MfKZ
@Pgl
@Pu\rm
@@ -9443,7 +9433,6 @@ $tH@T\tI
@\n\vserver_type
@dKb]
@fff>fff>fff>fff>
-@htp
@i1V
@m_bLeftHanded
@m_zoomLevel
@@ -9467,6 +9456,7 @@ A<fP
A>x8
A@d0I
AA Compromise
+AA:0
AABB
AABBDirection
AACompromise
@@ -14498,7 +14488,6 @@ F9q'
F<mb
F?ToString@Value@v8@@QEBA?AV?$MaybeLocal@VString@v8@@@2@V?$Local@VContext@v8@@@2@@Z
F?ToUint32@Value@v8@@QEBA?AV?$MaybeLocal@VUint32@v8@@@2@V?$Local@VContext@v8@@@2@@Z
-F@aX
FACE_EXIT
FACE_LADDER
FACE_TRAVERSAL_DIRECTION
@@ -14551,6 +14540,7 @@ F\n\finventories2
F\n\finventories3
F\n\rroundstatsall
F\rH'4
+F`eX
Face %s
Face Actor
Face Entity
@@ -18039,8 +18029,7 @@ P-224
P-256
P-384
P-521
-P08@J
-P08N
+P08@J`
P1\t98"
P5[1
P@33
@@ -18341,6 +18330,7 @@ Permanent Identifier
Permanently removes the entity from the world.<br>Very similar to the 'Kill' input.<br>Keywords: remove kill erase delete eliminate
Permit Responses
Permitted
+Pf0cX
Phys.GlassBreakLg
Phys.GlassBreakMd
Phys.GlassBreakSm
@@ -18505,6 +18495,7 @@ Please specify 0 or 1 with the -stream Parameter\n
Please wait for broadcast to start ...
Pm8A?
PmR"H?
+Pn0dX
Point entity.
PointTemplate
Policy Qualifier CPS
@@ -18845,7 +18836,6 @@ RSA_verify_PKCS1_PSS
RSA_verify_PKCS1_PSS_mgf1
RSDS}
RTime32
-R\fp4
R\r1>Vp
R\vp!y
R]Di
@@ -21269,7 +21259,6 @@ Ut]<E
Uv1t
Uz_G3=
V07;m
-V0IX
V2I_ASIDENTIFIERS
V2I_AUTHORITY_INFO_ACCESS
V2I_AUTHORITY_KEYID
@@ -21780,7 +21769,7 @@ X\n\tTeamStats
X\n\vFantasyTeam
X\n\vLoadoutItem
X\tQo
-X`hr0
+X`hr
Xd3h
XfJ7
XjfR
@@ -22813,6 +22802,7 @@ Z~wl
\ri1I
\rjwB\t
\roKK
+\rpYX
\rrCj
\rusercmd.proto"\\n
\sG7tPD
@@ -22838,6 +22828,7 @@ Z~wl
\tJm_9
\tLa0+
\tNone\n
+\tPXX
\tPrivate script scope:
\tPublic script scope:
\tRead %s\t%s%s%s,\tOffs 0x%04x\n
@@ -22894,6 +22885,7 @@ Z~wl
]MSd
][LK~lO
^.om5r
+^0QX
^DnJ
^DqPt
^J_spY
@@ -22964,6 +22956,7 @@ _xU`u
_}eOk
`28)fk
`3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z
+`60}X
`:zQF
`D$daM-l
`DZG
@@ -26794,6 +26787,7 @@ houseIdentifier
hoverposeangles
hoverposeflags
hoverposeposition
+hpz`
hr_H
http request
http$
@@ -26810,6 +26804,7 @@ h|gg
i <= EVP_MAX_MD_SIZE
i%YR
i%|kB
+i0OP
i2b_PVK_bio
i2d ecpkparameters failure
i2d_ASN1_SET
@@ -29267,14 +29262,13 @@ p.other
p.ppBasis
p.prime
p.tpBasis
-p08@H^
+p0jP
p250
p2{l
p4Z3
p5Z3
p5\nL,
p618
-p6pZX
p>?Set@Template@v8@@QEAAXV?$Local@VName@v8@@@2@V?$Local@VData@v8@@@2@W4PropertyAttribute@2@@Z
p@0pqE5tsO?|1
pActivator
@@ -30145,7 +30139,6 @@ rX&O0
rZ1VwGf5
rZPM
r\vDi
-r\vp4
rad2deg
radio.go
radio.letsgo
@@ -32236,6 +32229,7 @@ tournament_team_id
tournament_teams
tournamentinfo
tpBasis
+tp\n0V
tq}a
trace
traceHitboxes
@@ -33280,14 +33274,12 @@ zz2K
}VKRZ
}W70d
}Xee+
-}\rpUX
}gE3
}n2W
}}JSON_END\n
~9ob
~If D
~P2T
-~PIX
~R65Fu
~jLRG
~w]UG
game/csgo/pak01_dir.txt
modified • +13 / -14 • changes: 27
Show patch
@@ -6295,7 +6295,7 @@ items/assets/stickers/community/auto_racing/foil_lucky_charms_albedo_texture_tga
items/assets/stickers/community/auto_racing/foil_lucky_charms_normal_map_tga_fb85240f.vtex_c CRC:0034029ea5 size:742846
items/assets/stickers/community/auto_racing/foil_turbo_peek_albedo_texture_tga_8f4e603c.vtex_c CRC:006c320bf9 size:309113
items/assets/stickers/community/auto_racing/foil_turbo_peek_normal_map_tga_8354208d.vtex_c CRC:00a98e3b7d size:374591
-items/assets/stickers/community/auto_racing/foil_watch_sniper_albedo_texture_tga_e452288b.vtex_c CRC:00af80f096 size:184959
+items/assets/stickers/community/auto_racing/foil_watch_sniper_albedo_texture_tga_e452288b.vtex_c CRC:0010e161fd size:189175
items/assets/stickers/community/auto_racing/foil_watch_sniper_normal_map_tga_621830d8.vtex_c CRC:00645c482a size:254689
items/assets/stickers/community/auto_racing/holo_cone_zone_albedo_texture_tga_71e7549c.vtex_c CRC:00b8e457be size:83385
items/assets/stickers/community/auto_racing/holo_cone_zone_holo_mask_tga_f99e55f2.vtex_c CRC:00e5d26088 size:1028164
@@ -38966,12 +38966,12 @@ models/inventory_items/phoenix_silver_01.vmdl_c CRC:00f0c0d5a4 size:93008
models/inventory_items/premier_seasons/premier_season_1_coin_eg.vmdl_c CRC:000fa56f6e size:37429
models/inventory_items/premier_seasons/premier_season_2_coin_eg.vmdl_c CRC:00971040b0 size:44725
models/inventory_items/premier_seasons/premier_season_3_coin_eg.vmdl_c CRC:0083526ee6 size:45701
-models/inventory_items/premier_seasons/premier_season_4_coin_eg.vmdl_c CRC:009832e264 size:40085
+models/inventory_items/premier_seasons/premier_season_4_coin_eg.vmdl_c CRC:00b78d6c38 size:40325
models/inventory_items/premier_seasons/premier_season_5_coin_eg.vmdl_c CRC:00cb23af80 size:42373
models/inventory_items/premier_seasons/premier_season_coin.vmat_c CRC:00b79bfbf7 size:3837
models/inventory_items/premier_seasons/premier_season_coin_ao_tga_6a8f4871.vtex_c CRC:00e2ac4961 size:7183960
models/inventory_items/premier_seasons/premier_season_coin_bar1.vmat_c CRC:006b039b7a size:4141
-models/inventory_items/premier_seasons/premier_season_coin_bar1_gold.vmat_c CRC:0079b82f43 size:4501
+models/inventory_items/premier_seasons/premier_season_coin_bar1_gold.vmat_c CRC:0058e0469c size:4501
models/inventory_items/premier_seasons/premier_season_coin_bar1_vmat_g_tcolor_fac801b5.vtex_c CRC:0076b8f03a size:2064
models/inventory_items/premier_seasons/premier_season_coin_bar2.vmat_c CRC:00d211060d size:4157
models/inventory_items/premier_seasons/premier_season_coin_bar2_gold.vmat_c CRC:00ae46014a size:4413
@@ -38986,7 +38986,6 @@ models/inventory_items/premier_seasons/premier_season_coin_bar5.vmat_c CRC:00531
models/inventory_items/premier_seasons/premier_season_coin_bar5_gold.vmat_c CRC:002fc20428 size:4413
models/inventory_items/premier_seasons/premier_season_coin_bar5_vmat_g_tcolor_fac801b5.vtex_c CRC:0076b8f03a size:2064
models/inventory_items/premier_seasons/premier_season_coin_color_tga_1d708fdb.vtex_c CRC:00d9eed8a7 size:2827804
-models/inventory_items/premier_seasons/premier_season_coin_color_tga_f6419421.vtex_c CRC:001fb01ae4 size:2780352
models/inventory_items/premier_seasons/premier_season_coin_gold_ao_tga_39746aa6.vtex_c CRC:002ee7a8ce size:7183960
models/inventory_items/premier_seasons/premier_season_coin_gold_color_tga_ef81bfea.vtex_c CRC:0044a4682c size:2684288
models/inventory_items/premier_seasons/premier_season_coin_gold_metal_tga_16922f51.vtex_c CRC:0038fccbec size:222930
@@ -81791,7 +81790,7 @@ panorama/scripts/premier_season_progress.vts_c CRC:0053e72f0c size:14126
panorama/scripts/rank_skillgroup_particles.vts_c CRC:00425ca141 size:34446
panorama/scripts/rankup_redemption_store.vts_c CRC:0091bfb806 size:36878
panorama/scripts/rating_emblem.vts_c CRC:003abf1e41 size:35918
-panorama/scripts/scoreboard.vts_c CRC:0044400b32 size:224254
+panorama/scripts/scoreboard.vts_c CRC:0092de6e3c size:224846
panorama/scripts/segmented_progress_bar.vts_c CRC:00d6a4c4ce size:13518
panorama/scripts/settingsmenu.vts_c CRC:009d8e72d6 size:16302
panorama/scripts/settingsmenu_chatwheel.vts_c CRC:000b1dcc0a size:26910
@@ -85010,35 +85009,35 @@ radial_quickinventory.txt CRC:005a0c1bf5 size:1080
rebuy.txt CRC:008332da3a size:1688
resource/clientscheme.res CRC:001b42ad42 size:14978
resource/csgo_brazilian.txt CRC:00941e8325 size:4920179
-resource/csgo_bulgarian.txt CRC:001face1c9 size:7594249
+resource/csgo_bulgarian.txt CRC:0026b37a2c size:7598247
resource/csgo_czech.txt CRC:00f59ee02a size:4991497
resource/csgo_danish.txt CRC:003e46ea1d size:4906226
resource/csgo_dutch.txt CRC:0089c165c8 size:4952011
resource/csgo_english.txt CRC:00fa51b5c5 size:4785583
resource/csgo_finnish.txt CRC:00d9f8e03c size:4864858
-resource/csgo_french.txt CRC:00be16d07a size:5148166
+resource/csgo_french.txt CRC:00f545b740 size:5148191
resource/csgo_german.txt CRC:00ee1788bc size:5063637
resource/csgo_greek.txt CRC:0012c39566 size:7030406
-resource/csgo_hungarian.txt CRC:0067326818 size:4977615
+resource/csgo_hungarian.txt CRC:00d782dde2 size:4977616
resource/csgo_indonesian.txt CRC:00f261dac9 size:4630531
-resource/csgo_italian.txt CRC:00d9dbd6a4 size:5077217
+resource/csgo_italian.txt CRC:00220e5342 size:5077239
resource/csgo_japanese.txt CRC:00ef75e1a8 size:5221252
resource/csgo_koreana.txt CRC:009b44bd51 size:4996771
resource/csgo_latam.txt CRC:00587a9883 size:5078895
resource/csgo_norwegian.txt CRC:00932029fc size:4829875
resource/csgo_polish.txt CRC:00a3eec447 size:5190511
resource/csgo_portuguese.txt CRC:00c3a7d6e9 size:4963053
-resource/csgo_romanian.txt CRC:0088598d38 size:5165601
+resource/csgo_romanian.txt CRC:006ad28ed1 size:5170162
resource/csgo_russian.txt CRC:003b679d3b size:6417600
-resource/csgo_schinese.txt CRC:0041bb0d45 size:4827202
+resource/csgo_schinese.txt CRC:00a0a2ded1 size:4829800
resource/csgo_schinese_pw.txt CRC:0083fe268a size:15645
resource/csgo_spanish.txt CRC:00ffc1299d size:5047337
-resource/csgo_swedish.txt CRC:00982d3d85 size:4931016
+resource/csgo_swedish.txt CRC:003abc81ac size:4936529
resource/csgo_tchinese.txt CRC:002014d5bb size:4530497
resource/csgo_thai.txt CRC:00768b3607 size:7991366
resource/csgo_turkish.txt CRC:00e2d9f88f size:5067916
resource/csgo_ukrainian.txt CRC:0039e1a88f size:6465856
-resource/csgo_vietnamese.txt CRC:00c3586118 size:5340104
+resource/csgo_vietnamese.txt CRC:0062216eb0 size:5343483
resource/game.gameevents CRC:0090de10bc size:9837
resource/halflife2.vfont CRC:00b064848c size:58000
resource/mod.gameevents CRC:0035ddf423 size:20770
@@ -118310,7 +118309,7 @@ stickers/community/auto_racing/foil_born_to_peek.vmat_c CRC:0038942f35 size:5264
stickers/community/auto_racing/foil_eco_mode.vmat_c CRC:0053510444 size:5248
stickers/community/auto_racing/foil_lucky_charms.vmat_c CRC:00c41ed6bb size:5264
stickers/community/auto_racing/foil_turbo_peek.vmat_c CRC:009bf4e2ae size:5264
-stickers/community/auto_racing/foil_watch_sniper.vmat_c CRC:0044ee4bbd size:5248
+stickers/community/auto_racing/foil_watch_sniper.vmat_c CRC:00fa47bbc1 size:5248
stickers/community/auto_racing/holo_cone_zone.vmat_c CRC:0000c144d6 size:5264
stickers/community/auto_racing/holo_engine_start.vmat_c CRC:000e15e52b size:5280
stickers/community/auto_racing/holo_first_lap.vmat_c CRC:00fcb7cad8 size:5264
game/csgo/pak01_dir/panorama/scripts/scoreboard.js
modified • +12 / -4 • changes: 16
Show patch
@@ -825,8 +825,14 @@ var Scoreboard;
_m_panelCache.m_elMusicKitUnborrow.SetHasClass('hidden', !isBorrowed);
}
let imagepath = 'file://{images}/' + InventoryAPI.GetItemInventoryImageFromMusicID(newStatValue) + '.png';
- $('#id-sb-meta__musickit-image').SetImage(imagepath);
- $('#id-sb-meta__musickit-name').text = $.Localize(InventoryAPI.GetMusicNameFromMusicID(newStatValue));
+ let elMusicKitImage = $('#id-sb-meta__musickit-image');
+ if (elMusicKitImage) {
+ elMusicKitImage.SetImage(imagepath);
+ }
+ let elMusicKitName = $('#id-sb-meta__musickit-name');
+ if (elMusicKitName) {
+ elMusicKitName.text = $.Localize(InventoryAPI.GetMusicNameFromMusicID(newStatValue));
+ }
}
}
}
@@ -1446,7 +1452,9 @@ var Scoreboard;
oPlayer.m_elPlayer.SetPanelEvent('onactivate', () => {
_m_arrSortingPausedRefGetCounter++;
let elPlayerCardContextMenu = UiToolkitAPI.ShowCustomLayoutContextMenuParametersDismissEventSetFocus('', '', 'file://{resources}/layout/context_menus/context_menu_playercard.xml', 'xuid=' + oPlayer.m_xuid, _OnPlayerCardDismiss, false);
- elPlayerCardContextMenu.AddClass('ContextMenu_NoArrow');
+ if (elPlayerCardContextMenu) {
+ elPlayerCardContextMenu.AddClass('ContextMenu_NoArrow');
+ }
if (!_m_hDenyInputToGame) {
_m_hDenyInputToGame = UiToolkitAPI.AddDenyInputFlagsToGame(elPlayerCardContextMenu, 'ScoreboardPlayercard', 'CaptureMouse');
}
@@ -2319,7 +2327,7 @@ var Scoreboard;
}
}
function _UpdateJob() {
- if (!_m_bInit) {
+ if (_m_bInit) {
_UpdateMatchInfo();
_UpdateScore();
_UpdateNextPlayer();
game/csgo/readonly_tools_asset_info.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -130189,7 +130189,6 @@ items/assets/paintkits/set_spy_tech/r8_monarch_normal_tga_2fedbf30.vtex
items/assets/paintkits/set_spy_tech/r8_monarch_overlay_mask_psd_c59cb2f.vtex
items/assets/paintkits/set_spy_tech/r8_monarch_rough_tga_c7cf9893.vtex
items/assets/paintkits/set_spy_tech/spytech_glitch_colorized_01_psd_50da255b.vtex
-models/inventory_items/premier_seasons/premier_season_coin_color_tga_f6419421.vtex
materials/trim/trim_concrete_pillar_base_01_height_tga_6c5fa117.vtex
materials/trim/trim_concrete_pillar_base_02_normal_psd_d94209ab.vtex
sounds/weapons/c4/c4_shockwave_debris_01.vsnd
game/csgo/steam.inf
modified • +6 / -6 • changes: 12
Show patch
@@ -1,9 +1,9 @@
-ClientVersion=2000872
-ServerVersion=2000872
-PatchVersion=1.41.6.8
+ClientVersion=2000873
+ServerVersion=2000873
+PatchVersion=1.41.6.9
ProductName=cs2
appID=730
ServerAppID=2347773
-SourceRevision=10810984
-VersionDate=Jul 08 2026
-VersionTime=23:09:39
+SourceRevision=10812696
+VersionDate=Jul 09 2026
+VersionTime=13:32:20
9.7.2026, 19.40.38
General update: “2000872 | 2 files | M DumpSource2/schemas/server/dynpitchvol_base_t.h, M DumpSource2/schemas/server/dynpitchvol_t.h” Files touched: DumpSource2/schemas/server/dynpitchvol_base_t.h, DumpSource2/schemas/server/dynpitchvol_t.h.
Files changed: 2 • +4 / -4
Changed files
DumpSource2/schemas/server/dynpitchvol_base_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": -770969414,
-// "vol": 32762,
+// "pitchfrac": -1972506438,
+// "vol": 32766,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
DumpSource2/schemas/server/dynpitchvol_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": -770969414,
-// "vol": 32762,
+// "pitchfrac": -1972506438,
+// "vol": 32766,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
9.7.2026, 17.08.42
Assets/UI/maps update (game/core/shaders_vulkan_dir/shaders/vfx/panorama.slang, game/core/shaders_vulkan_dir/shaders/vfx/panorama_fancyquad.slang, game/csgo/shaders_vulkan_dir/shaders/vfx/panorama_alpha.slang).
Files changed: 246 • +34228 / -30015
Changed files
DumpSource2/schemas/server/dynpitchvol_base_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": 295170234,
-// "vol": 32761,
+// "pitchfrac": -770969414,
+// "vol": 32762,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
DumpSource2/schemas/server/dynpitchvol_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,8 +17,8 @@
// "pitch": 0,
// "spinupsav": 0,
// "spindownsav": 0,
-// "pitchfrac": 295170234,
-// "vol": 32761,
+// "pitchfrac": -770969414,
+// "vol": 32762,
// "fadeinsav": 0,
// "fadeoutsav": 0,
// "volfrac": 0,
game/core/shaders_vulkan_dir/shaders/vfx/aoproxy_splat.slang
modified • +33 / -45 • changes: 78
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 1;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -38,7 +38,7 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3424 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2820 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _2817
{
@@ -50,11 +50,6 @@ VS
int4 _m0[20];
};
- struct _2691
- {
- float4 _m0[4];
- };
-
cbuffer AoProxyConstantBuffer_t : register(b1, space0)
{
_2817 AoProxyConstantBuffer_t_1_m0 : packoffset(c5);
@@ -63,11 +58,11 @@ VS
_2697 AoProxyConstantBuffer_t_1_m3 : packoffset(c65);
};
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _2691 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
- float3 _Globals_1_m2 : packoffset(c26);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);
};
@@ -107,15 +102,15 @@ VS
{
uint _24589 = uint(gl_InstanceIndex - gl_BaseInstanceARB);
float3 _9948 = lerp(AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz, AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz, vPositionOs.xyz * 2.0f).xyz;
- float4 _23609 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_9948, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
+ float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(_9948, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
float3 _23026 = 2.0f.xxx / (AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz - AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz);
output_0 = float4(((AoProxyConstantBuffer_t_1_m0._m0[_24589].xyz + AoProxyConstantBuffer_t_1_m1._m0[_24589].xyz) * (-0.5f)) * _23026.xyz, AoProxyConstantBuffer_t_1_m2._m0[_24589].x);
output_1 = _23026;
- output_2 = _9948 - _Globals_1_m2.xyz;
+ output_2 = _9948 - PerViewConstantBuffer_t_1_m2.xyz;
output_3 = AoProxyConstantBuffer_t_1_m1._m0[_24589].w;
output_4 = uint3(AoProxyConstantBuffer_t_1_m3._m0[_24589].xyz);
- _23609.y = -_23609.y;
- gl_Position = _23609;
+ _17971.y = -_17971.y;
+ gl_Position = _17971;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -152,43 +147,38 @@ PS
CreateInputTexture2D(TextureAoConeLUT, Linear, 8, "", "_lut_z000", "LUT", Default4(1, 1, 1, 0));
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (9696 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (8780 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _1276
+ struct _2704
{
float4 _m0[4];
};
- struct _2646
- {
- float4 _m0[3];
- };
-
- struct _532
+ struct _1413
{
- _2646 _m0[106];
+ column_major float4x3 _m0[106];
};
- struct _2688
+ struct _2520
{
float4 _m0[106];
};
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float4 _Globals_1_m0 : packoffset(c16);
- float _Globals_1_m1 : packoffset(c23);
- float _Globals_1_m2 : packoffset(c23.y);
- float3 _Globals_1_m3 : packoffset(c26);
- float3 _Globals_1_m4 : packoffset(c28);
+ float4 PerViewConstantBuffer_t_1_m0 : packoffset(c16);
+ float PerViewConstantBuffer_t_1_m1 : packoffset(c23);
+ float PerViewConstantBuffer_t_1_m2 : packoffset(c23.y);
+ float3 PerViewConstantBuffer_t_1_m3 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m4 : packoffset(c28);
};
cbuffer AoProxyConstantBuffer_t : register(b1, space1)
{
- _1276 AoProxyConstantBuffer_t_1_m0 : packoffset(c0);
+ _2704 AoProxyConstantBuffer_t_1_m0 : packoffset(c0);
float4 AoProxyConstantBuffer_t_1_m1 : packoffset(c4);
- _532 AoProxyConstantBuffer_t_1_m2 : packoffset(c85);
- _2688 AoProxyConstantBuffer_t_1_m3 : packoffset(c403);
+ _1413 AoProxyConstantBuffer_t_1_m2 : packoffset(c85);
+ _2520 AoProxyConstantBuffer_t_1_m3 : packoffset(c403);
};
Texture2D<float4> g_tSceneDepth : register(t31, space1);
@@ -220,7 +210,7 @@ PS
void MainPs_inner()
{
- float3 _10889 = (_Globals_1_m3.xyz + (input_1.xyz * (1.0f / (((clamp((g_tSceneDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - _Globals_1_m1) / (_Globals_1_m2 - _Globals_1_m1), 0.0f, 1.0f) * _Globals_1_m0.z) + _Globals_1_m0.w) * dot(_Globals_1_m4.xyz, input_1.xyz))))).xyz;
+ float3 _10889 = (PerViewConstantBuffer_t_1_m3.xyz + (input_1.xyz * (1.0f / (((clamp((g_tSceneDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - PerViewConstantBuffer_t_1_m1) / (PerViewConstantBuffer_t_1_m2 - PerViewConstantBuffer_t_1_m1), 0.0f, 1.0f) * PerViewConstantBuffer_t_1_m0.z) + PerViewConstantBuffer_t_1_m0.w) * dot(PerViewConstantBuffer_t_1_m4.xyz, input_1.xyz))))).xyz;
float3 _11842 = mad(_10889, input_2.xyz, input_3.xyz);
float3 _3852 = 1.0f.xxx - abs(_11842);
float _4208 = clamp(3.0f * min(_3852.x, min(_3852.y, _3852.z)), 0.0f, 1.0f) * clamp(2.7999999523162841796875f - (2.0f * length(_11842)), 0.0f, 1.0f);
@@ -241,12 +231,11 @@ PS
{
break;
}
- float4x3 _21989 = float4x3(float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].x, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].x, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].x), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].y, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].y, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].y), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].z, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].z, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].z), float3(AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[0].w, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[1].w, AoProxyConstantBuffer_t_1_m2._m0[_16208]._m0[2].w));
- float3 _17090 = mul(float4(_10889, 1.0f), _21989);
- float3 _17194 = _17090.xyz;
- float _8132 = rsqrt(dot(_17194, _17194));
- float3 _16478 = (_17090.xyz * (-_8132)).xyz;
- _16164 = _13155.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, _21989).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;
+ float3 _7095 = mul(float4(_10889, 1.0f), AoProxyConstantBuffer_t_1_m2._m0[_16208]);
+ float3 _11556 = _7095.xyz;
+ float _8132 = rsqrt(dot(_11556, _11556));
+ float3 _16478 = (_7095.xyz * (-_8132)).xyz;
+ _16164 = _13155.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16208]).xyz).xyz, _16478), 0.5f, 0.5f), _8132, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;
_21531 = _16208 + 1;
_13155 = _16164;
_16208 = _21531;
@@ -264,13 +253,12 @@ PS
{
break;
}
- float4x3 _21990 = float4x3(float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].x, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].x, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].x), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].y, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].y, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].y), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].z, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].z, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].z), float3(AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[0].w, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[1].w, AoProxyConstantBuffer_t_1_m2._m0[_16209]._m0[2].w));
- float3 _15779 = mul(float4(_10889, 1.0f), _21990);
- float3 _20220 = (clamp(_15779.xyz, -AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz, AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz) * 0.89999997615814208984375f) - _15779.xyz;
+ float3 _24855 = mul(float4(_10889, 1.0f), AoProxyConstantBuffer_t_1_m2._m0[_16209]);
+ float3 _20220 = (clamp(_24855.xyz, -AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz, AoProxyConstantBuffer_t_1_m3._m0[_16209].xyz) * 0.89999997615814208984375f) - _24855.xyz;
float3 _10134 = abs(_20220);
float _23212 = 1.0f / (1.0f + (dot(_10134 / ((_10134.x + _10134.y) + _10134.z).xxx, 3.1415927410125732421875f.xxx / (AoProxyConstantBuffer_t_1_m3._m0[_16209].yzx * AoProxyConstantBuffer_t_1_m3._m0[_16209].zxy).xyz) * length(_20220)));
float3 _16479 = normalize(_20220).xyz;
- _16165 = _13156.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, _21990).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;
+ _16165 = _13156.xyzw * float4(g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[0].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.x)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[1].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.y)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[2].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.z)).x, g_tTextureAoConeLUT.Sample(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint, float3(mad(dot(normalize(mul(AoProxyConstantBuffer_t_1_m0._m0[3].xyzw, AoProxyConstantBuffer_t_1_m2._m0[_16209]).xyz).xyz, _16479), 0.5f, 0.5f), _23212, AoProxyConstantBuffer_t_1_m1.w)).x).xyzw;
_21532 = _16209 + 1;
_13156 = _16165;
_16209 = _21532;
game/core/shaders_vulkan_dir/shaders/vfx/atrous_filter.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -95,7 +95,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vInputDimensions) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
@@ -105,7 +105,7 @@ PS
#extension GL_EXT_samplerless_texture_functions : require
const float _378[2][2] = float[][](float[](0.25, 0.125), float[](0.125, 0.0625));
- const float _2009[3] = float[](1.0, 0.666666686534881591796875, 0.16666667163372039794921875);
+ const float _1994[3] = float[](1.0, 0.666666686534881591796875, 0.16666667163372039794921875);
struct _1104
{
@@ -246,7 +246,7 @@ PS
{
_9364 = abs(_8858 - _3401.x) / _18186;
}
- float _6029 = (exp((-max(0.0, _9364)) - max(0.0, abs(_12624 - dot(_19777.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125))) / _7725)) * pow(clamp(dot(_12110, normalize(_8255)), 0.0, 1.0), _Globals_.g_fNormalPhi)) * (_2009[abs(_17017)] * _2009[abs(_17018)]);
+ float _6029 = (exp((-max(0.0, _9364)) - max(0.0, abs(_12624 - dot(_19777.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125))) / _7725)) * pow(clamp(dot(_12110, normalize(_8255)), 0.0, 1.0), _Globals_.g_fNormalPhi)) * (_1994[abs(_17017)] * _1994[abs(_17018)]);
_10913 = _13137 + _6029;
_17551 = _16325 + vec4(_19777.xyz * _6029, _19777.w * (_6029 * _6029));
}
game/core/shaders_vulkan_dir/shaders/vfx/atrous_pack_depthnormal.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/black.slang
modified • +59 / -36 • changes: 95
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -43,11 +43,11 @@ VS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2996 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2336 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -61,28 +61,35 @@ VS
float _m7;
};
- struct _856
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2671
+ struct _1126
{
- _856 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _982
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _982 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c17);
- float4 _Globals_1_m2 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
+ float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
@@ -107,18 +114,34 @@ VS
void MainVs_inner()
{
- _856 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3 _19937 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
- float4 _23894 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19937.xyz, 1.0f) + (_Globals_1_m2 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _19937 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
output_0 = _19937;
- _23894.y = -_23894.y;
- gl_Position = _23894;
- gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), _Globals_1_m1.xyzw);
+ _18256.y = -_18256.y;
+ gl_Position = _18256;
+ gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -147,15 +170,15 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (1748 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float _Globals_1_m0 : packoffset(c18);
- float3 _Globals_1_m1 : packoffset(c26);
- float3 _Globals_1_m2 : packoffset(c31);
- float _Globals_1_m3 : packoffset(c31.w);
- float _Globals_1_m4 : packoffset(c32);
- float _Globals_1_m5 : packoffset(c32.y);
- float _Globals_1_m6 : packoffset(c32.z);
+ float PerViewConstantBuffer_t_1_m0 : packoffset(c18);
+ float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);
+ float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);
+ float PerViewConstantBuffer_t_1_m4 : packoffset(c32);
+ float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);
+ float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
@@ -174,12 +197,12 @@ PS
void MainPs_inner()
{
- float3 _19800 = lerp(0.0f.xxx, _Globals_1_m2.xyz, clamp(min(_Globals_1_m5, pow(clamp((distance(input_0.xyz, _Globals_1_m1.xyz) * _Globals_1_m4) + _Globals_1_m3, 0.0f, 1.0f), _Globals_1_m6)), 0.0f, 1.0f).xxx);
+ float3 _19800 = lerp(0.0f.xxx, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_0.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);
float4 _17842 = float4(0.0f, 0.0f, 0.0f, 1.0f);
_17842.x = _19800.x;
_17842.y = _19800.y;
_17842.z = _19800.z;
- float3 _11003 = _17842.xyz * _Globals_1_m0;
+ float3 _11003 = _17842.xyz * PerViewConstantBuffer_t_1_m0;
float4 _8673 = _17842;
_8673.x = _11003.x;
_8673.y = _11003.y;
game/core/shaders_vulkan_dir/shaders/vfx/bloom.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/blur.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/cables.slang
modified • +104 / -71 • changes: 175
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -36,13 +36,18 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
float4 g_vColorMapParams < Attribute("ColorMapParams"); UiType(VectorText); >;
float4 g_vNormalMapParams < Attribute("NormalMapParams"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (12976 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (12340 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ struct _1119
+ {
+ float3x4 _m0;
+ };
struct _1125
{
@@ -56,19 +61,21 @@ VS
float _m7;
};
- struct _940
- {
- float4 _m0[3];
- };
-
- struct _2839
+ struct _1126
{
- _940 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1066
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
static float4 _4;
@@ -83,7 +90,7 @@ VS
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1066 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
@@ -118,7 +125,25 @@ VS
void MainVs_inner()
{
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(input_0 * 32 + 0) & 255u), (g_instanceBuffer.Load(input_0 * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(input_0 * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(input_0 * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(input_0 * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(input_0 * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(input_0 * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(input_0 * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(input_0 * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(input_0 * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(input_0 * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(input_0 * 32 + 28));
+ _1125 _20228;
+ _20228._m0 = _24007._m0;
+ _20228._m1 = _24007._m1;
+ _20228._m2 = _24007._m2;
+ _20228._m3 = _24007._m3;
+ _20228._m4 = _24007._m4;
+ _20228._m5 = _24007._m5;
+ _20228._m6 = _24007._m6;
+ _20228._m7 = _24007._m7;
+ float4 _23812 = float4(uint4(_20228._m0 & 255u, (_20228._m0 & 65280u) >> uint(8), (_20228._m0 & 16711680u) >> uint(16), (_20228._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -153,33 +178,42 @@ VS
_16668.x = _21354;
_16668.y = _21355;
_16668.z = _19167;
- _940 _25207;
- [unroll]
- for (int _4ident = 0; _4ident < 3; _4ident++)
- {
- _25207._m0[_4ident] = asfloat(g_transformBuffer.Load4(_4ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) - 1u) * 48 + 0));
- }
- _940 _25208;
- [unroll]
- for (int _5ident = 0; _5ident < 3; _5ident++)
- {
- _25208._m0[_5ident] = asfloat(g_transformBuffer.Load4(_5ident * 16 + g_instanceBuffer.Load(input_0 * 32 + 16) * 48 + 0));
- }
- _940 _25209;
- [unroll]
- for (int _6ident = 0; _6ident < 3; _6ident++)
- {
- _25209._m0[_6ident] = asfloat(g_transformBuffer.Load4(_6ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) + 1u) * 48 + 0));
- }
- _940 _25210;
- [unroll]
- for (int _7ident = 0; _7ident < 3; _7ident++)
- {
- _25210._m0[_7ident] = asfloat(g_transformBuffer.Load4(_7ident * 16 + (g_instanceBuffer.Load(input_0 * 32 + 16) + 2u) * 48 + 0));
- }
- float _23034 = float(g_instanceBuffer.Load(input_0 * 32 + 12));
- uint _14353 = input_0 + 1u;
- float4 _23813 = float4(uint4((g_instanceBuffer.Load(_14353 * 32 + 0) & 255u), (g_instanceBuffer.Load(_14353 * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(_14353 * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(_14353 * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ _1120 _18614;
+ _18614._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 - 1u) * 48 + 32)));
+ _1119 _19924;
+ _19924._m0 = _18614._m0;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_20228._m4 * 48 + 0), g_transformBuffer.Load4(_20228._m4 * 48 + 16), g_transformBuffer.Load4(_20228._m4 * 48 + 32)));
+ _1119 _21121;
+ _21121._m0 = _8152._m0;
+ _1120 _17001;
+ _17001._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 + 1u) * 48 + 32)));
+ _1119 _21122;
+ _21122._m0 = _17001._m0;
+ _1120 _17002;
+ _17002._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 0), g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 16), g_transformBuffer.Load4((_20228._m4 + 2u) * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _17002._m0;
+ float _23034 = float(_20228._m3);
+ _1126 _17003;
+ _17003._m0 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 0);
+ _17003._m1 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 4);
+ _17003._m2 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 8);
+ _17003._m3 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 12);
+ _17003._m4 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 16);
+ _17003._m5 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 20);
+ _17003._m6 = g_instanceBuffer.Load((input_0 + 1u) * 32 + 24);
+ _17003._m7 = asfloat(g_instanceBuffer.Load((input_0 + 1u) * 32 + 28));
+ _1125 _22470;
+ _22470._m0 = _17003._m0;
+ _22470._m1 = _17003._m1;
+ _22470._m2 = _17003._m2;
+ _22470._m3 = _17003._m3;
+ _22470._m4 = _17003._m4;
+ _22470._m5 = _17003._m5;
+ _22470._m6 = _17003._m6;
+ _22470._m7 = _17003._m7;
+ float4 _23813 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6254 = _23813.xyz;
float3 _17829 = _6254 * 0.077399380505084991455078125f.xxx;
float3 _7677 = pow((_6254 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -224,8 +258,7 @@ VS
float _22334 = _13095 * 2.0f;
float _22338 = _13095 * (-0.5f);
float _7486 = input_1.z * (-0.5f);
- float3 _17546 = float3(_25208._m0[0].x + ((_25209._m0[0].x * _22379) + ((_25207._m0[0].x * _7486) + ((_25210._m0[0].x * _22338) + ((_25209._m0[0].x * _22334) + ((_25208._m0[0].x * _22330) + ((_25207._m0[0].x * _13095) + ((_25210._m0[0].x * _22215) + ((_25209._m0[0].x * _9059) + ((_25208._m0[0].x * _9058) + (_25207._m0[0].x * _23270)))))))))), _25208._m0[0].y + ((_25209._m0[0].y * _22379) + ((_25207._m0[0].y * _7486) + ((_25210._m0[0].y * _22338) + ((_25209._m0[0].y * _22334) + ((_25208._m0[0].y * _22330) + ((_25207._m0[0].y * _13095) + ((_25210._m0[0].y * _22215) + ((_25209._m0[0].y * _9059) + ((_25208._m0[0].y * _9058) + (_25207._m0[0].y * _23270)))))))))), _25208._m0[0].z + ((_25209._m0[0].z * _22379) + ((_25207._m0[0].z * _7486) + ((_25210._m0[0].z * _22338) + ((_25209._m0[0].z * _22334) + ((_25208._m0[0].z * _22330) + ((_25207._m0[0].z * _13095) + ((_25210._m0[0].z * _22215) + ((_25209._m0[0].z * _9059) + ((_25208._m0[0].z * _9058) + (_25207._m0[0].z * _23270)))))))))));
- float _14966 = -_25207._m0[0].w;
+ float3 _17546 = float3(_21121._m0[0].x + ((_21122._m0[0].x * _22379) + ((_19924._m0[0].x * _7486) + ((_19848._m0[0].x * _22338) + ((_21122._m0[0].x * _22334) + ((_21121._m0[0].x * _22330) + ((_19924._m0[0].x * _13095) + ((_19848._m0[0].x * _22215) + ((_21122._m0[0].x * _9059) + ((_21121._m0[0].x * _9058) + (_19924._m0[0].x * _23270)))))))))), _21121._m0[0].y + ((_21122._m0[0].y * _22379) + ((_19924._m0[0].y * _7486) + ((_19848._m0[0].y * _22338) + ((_21122._m0[0].y * _22334) + ((_21121._m0[0].y * _22330) + ((_19924._m0[0].y * _13095) + ((_19848._m0[0].y * _22215) + ((_21122._m0[0].y * _9059) + ((_21121._m0[0].y * _9058) + (_19924._m0[0].y * _23270)))))))))), _21121._m0[0].z + ((_21122._m0[0].z * _22379) + ((_19924._m0[0].z * _7486) + ((_19848._m0[0].z * _22338) + ((_21122._m0[0].z * _22334) + ((_21121._m0[0].z * _22330) + ((_19924._m0[0].z * _13095) + ((_19848._m0[0].z * _22215) + ((_21122._m0[0].z * _9059) + ((_21121._m0[0].z * _9058) + (_19924._m0[0].z * _23270)))))))))));
float _22343 = (3.0f * input_1.z) * input_1.z;
float _22344 = _22343 * 0.5f;
float _22345 = _22343 * (-0.5f);
@@ -240,52 +273,52 @@ VS
float3 _15070;
if (input_1.z == 0.0f)
{
- _13136 = _25208._m0[0].w;
- _15070 = _25208._m0[0].xyz;
- _9326 = _25209._m0[0].xyz - _25207._m0[0].xyz;
+ _13136 = _21121._m0[0].w;
+ _15070 = _21121._m0[0].xyz;
+ _9326 = _21122._m0[0].xyz - _19924._m0[0].xyz;
}
else
{
- bool _15477 = input_1.z == 1.0f;
+ bool _17899 = input_1.z == 1.0f;
float3 _23151;
- if (_15477)
+ if (_17899)
{
- _23151 = _25210._m0[0].xyz - _25208._m0[0].xyz;
+ _23151 = _19848._m0[0].xyz - _21121._m0[0].xyz;
}
else
{
- _23151 = float3((_25209._m0[0].x * 0.5f) + ((_25207._m0[0].x * (-0.5f)) + ((_25210._m0[0].x * _14274) + ((_25209._m0[0].x * _22364) + ((_25208._m0[0].x * _22360) + ((_25207._m0[0].x * _7487) + ((_25210._m0[0].x * _22344) + ((_25209._m0[0].x * _22353) + ((_25208._m0[0].x * _22349) + (_25207._m0[0].x * _22345))))))))), (_25209._m0[0].y * 0.5f) + ((_25207._m0[0].y * (-0.5f)) + ((_25210._m0[0].y * _14274) + ((_25209._m0[0].y * _22364) + ((_25208._m0[0].y * _22360) + ((_25207._m0[0].y * _7487) + ((_25210._m0[0].y * _22344) + ((_25209._m0[0].y * _22353) + ((_25208._m0[0].y * _22349) + (_25207._m0[0].y * _22345))))))))), (_25209._m0[0].z * 0.5f) + ((_25207._m0[0].z * (-0.5f)) + ((_25210._m0[0].z * _14274) + ((_25209._m0[0].z * _22364) + ((_25208._m0[0].z * _22360) + ((_25207._m0[0].z * _7487) + ((_25210._m0[0].z * _22344) + ((_25209._m0[0].z * _22353) + ((_25208._m0[0].z * _22349) + (_25207._m0[0].z * _22345))))))))));
+ _23151 = float3((_21122._m0[0].x * 0.5f) + ((_19924._m0[0].x * (-0.5f)) + ((_19848._m0[0].x * _14274) + ((_21122._m0[0].x * _22364) + ((_21121._m0[0].x * _22360) + ((_19924._m0[0].x * _7487) + ((_19848._m0[0].x * _22344) + ((_21122._m0[0].x * _22353) + ((_21121._m0[0].x * _22349) + (_19924._m0[0].x * _22345))))))))), (_21122._m0[0].y * 0.5f) + ((_19924._m0[0].y * (-0.5f)) + ((_19848._m0[0].y * _14274) + ((_21122._m0[0].y * _22364) + ((_21121._m0[0].y * _22360) + ((_19924._m0[0].y * _7487) + ((_19848._m0[0].y * _22344) + ((_21122._m0[0].y * _22353) + ((_21121._m0[0].y * _22349) + (_19924._m0[0].y * _22345))))))))), (_21122._m0[0].z * 0.5f) + ((_19924._m0[0].z * (-0.5f)) + ((_19848._m0[0].z * _14274) + ((_21122._m0[0].z * _22364) + ((_21121._m0[0].z * _22360) + ((_19924._m0[0].z * _7487) + ((_19848._m0[0].z * _22344) + ((_21122._m0[0].z * _22353) + ((_21121._m0[0].z * _22349) + (_19924._m0[0].z * _22345))))))))));
}
- bool3 _10724 = _15477.xxx;
- _13136 = _15477 ? _25209._m0[0].w : (0.5f * ((((2.0f * _25208._m0[0].w) + ((_14966 + _25209._m0[0].w) * input_1.z)) + (((((2.0f * _25207._m0[0].w) - (5.0f * _25208._m0[0].w)) + (4.0f * _25209._m0[0].w)) - _25210._m0[0].w) * _13095)) + ((((_14966 + (3.0f * _25208._m0[0].w)) - (3.0f * _25209._m0[0].w)) + _25210._m0[0].w) * (_13095 * input_1.z))));
- _15070 = float3(_10724.x ? _25209._m0[0].xyz.x : _17546.x, _10724.y ? _25209._m0[0].xyz.y : _17546.y, _10724.z ? _25209._m0[0].xyz.z : _17546.z);
+ bool3 _10724 = _17899.xxx;
+ _13136 = _17899 ? _21122._m0[0].w : (0.5f * ((((2.0f * _21121._m0[0].w) + ((_21122._m0[0].w - _19924._m0[0].w) * input_1.z)) + (((((2.0f * _19924._m0[0].w) - (5.0f * _21121._m0[0].w)) + (4.0f * _21122._m0[0].w)) - _19848._m0[0].w) * _13095)) + (((((3.0f * _21121._m0[0].w) - _19924._m0[0].w) - (3.0f * _21122._m0[0].w)) + _19848._m0[0].w) * (_13095 * input_1.z))));
+ _15070 = float3(_10724.x ? _21122._m0[0].xyz.x : _17546.x, _10724.y ? _21122._m0[0].xyz.y : _17546.y, _10724.z ? _21122._m0[0].xyz.z : _17546.z);
_9326 = _23151;
}
float3 _17352;
if (input_1.z == 1.0f)
{
- _17352 = _25209._m0[1].xyz;
+ _17352 = _21122._m0[1].xyz;
}
else
{
- _17352 = _25208._m0[1].xyz;
+ _17352 = _21121._m0[1].xyz;
}
float3 _15988 = normalize(cross(_17352, _9326));
float3 _7048 = (_15988 * input_1.x) + (normalize(cross(_9326, _15988)) * input_1.y);
float3 _10252 = _15070 + (_7048 * _13136);
float3 _23727;
- if (_25207._m0[0].w < 0.0f)
+ if (_19924._m0[0].w < 0.0f)
{
- _23727 = normalize(_10252 - _25207._m0[0].xyz);
+ _23727 = normalize(_10252 - _19924._m0[0].xyz);
}
else
{
_23727 = _7048;
}
float3 _19321;
- if (_25210._m0[0].w < 0.0f)
+ if (_19848._m0[0].w < 0.0f)
{
- _19321 = normalize(_10252 - _25210._m0[0].xyz);
+ _19321 = normalize(_10252 - _19848._m0[0].xyz);
}
else
{
@@ -350,14 +383,14 @@ VS
_19303 = _9358.z;
}
float4 _18024 = float4(_10252.xyz, 1.0f);
- float4 _23875 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (_18024 + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
+ float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (_18024 + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
output_0 = float4(_Globals_1_g_vColorMapParams.x + (_Globals_1_g_vColorMapParams.z * input_1.w), (_Globals_1_g_vColorMapParams.y + (_Globals_1_g_vColorMapParams.w * _23034)) + (_Globals_1_g_vColorMapParams.w * input_1.z), _Globals_1_g_vNormalMapParams.x + (_Globals_1_g_vNormalMapParams.z * input_1.w), (_Globals_1_g_vNormalMapParams.y + (_Globals_1_g_vNormalMapParams.w * _23034)) + (_Globals_1_g_vNormalMapParams.w * input_1.z));
output_1 = lerp(float4(_23035, _23036, _19302, _23812.w), float4(_23037, _23038, _19303, _23813.w), input_1.z.xxxx);
output_2 = _10252;
output_3 = _19321;
output_4 = float4(cross(_9326, _7048), 1.0f).xyz;
- _23875.y = -_23875.y;
- gl_Position = _23875;
+ _18237.y = -_18237.y;
+ gl_Position = _18237;
gl_ClipDistance[0] = dot(_18024, PerViewConstantBuffer_t_1_m1.xyzw);
}
@@ -390,7 +423,7 @@ PS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
Texture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;
Texture2D g_tNormal < Channel(AG, MipNormal(TextureNormal), Linear); OutputFormat(DXT5); SrgbRead(false); >;
@@ -409,7 +442,7 @@ PS
float g_flSelfIllumAmount < Range(0, 5); UiType(Slider); UiGroup("Lighting"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4840 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4824 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _2;
@@ -436,10 +469,10 @@ PS
float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
- cbuffer SunLightShaderParamsCB : register(b3, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b3, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
Texture2D<float4> g_tColor : register(t30, space1);
@@ -472,8 +505,8 @@ PS
float _7644 = 1.0f - _Globals_1_g_flRoughness;
float _8478 = _7644 * 0.800000011920928955078125f;
float _23619 = exp2(_7644 * 10.0f);
- float _14805 = pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), _8478 + 0.60000002384185791015625f) * ((_8478 + 1.60000002384185791015625f) * 0.5f);
- float3 _9146 = ((SunLightShaderParamsCB_1_m0.xyz * (((pow(clamp(dot(_14744, normalize(SunLightShaderParamsCB_1_m1.xyz + (-normalize(input_3.xyz - PerViewConstantBuffer_t_1_m1.xyz)).xyz).xyz), 0.0f, 1.0f), _23619) * _14805) * (((_23619 + 2.0f) * (_23619 + 4.0f)) / (8.0f * (exp2(_23619 * (-0.5f)) + _23619)))) * (1.0f - clamp(_Globals_1_g_flRoughness * 0.5f, 0.0f, 1.0f)))) * 1.0f).xyz + ((g_tColor.Sample(DefaultSamplerState_0, input_0.xy).xyz * input_1.xyz) * ((((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * _14805) * 1.0f)).xyz * _Globals_1_g_flDiffuseAmount) + _Globals_1_g_flSelfIllumAmount.xxx));
+ float _14805 = pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), _8478 + 0.60000002384185791015625f) * ((_8478 + 1.60000002384185791015625f) * 0.5f);
+ float3 _9146 = ((SunLightShaderParamsCB_t_1_m0.xyz * (((pow(clamp(dot(_14744, normalize(SunLightShaderParamsCB_t_1_m1.xyz + (-normalize(input_3.xyz - PerViewConstantBuffer_t_1_m1.xyz)).xyz).xyz), 0.0f, 1.0f), _23619) * _14805) * (((_23619 + 2.0f) * (_23619 + 4.0f)) / (8.0f * (exp2(_23619 * (-0.5f)) + _23619)))) * (1.0f - clamp(_Globals_1_g_flRoughness * 0.5f, 0.0f, 1.0f)))) * 1.0f).xyz + ((g_tColor.Sample(DefaultSamplerState_0, input_0.xy).xyz * input_1.xyz) * ((((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * _14805) * 1.0f)).xyz * _Globals_1_g_flDiffuseAmount) + _Globals_1_g_flSelfIllumAmount.xxx));
float4 _20488;
_20488.x = _9146.x;
_20488.y = _9146.y;
game/core/shaders_vulkan_dir/shaders/vfx/cmaa2.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -47,7 +47,7 @@ CS
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1028 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
RWByteAddressBuffer undetermined : register(u159, space0);
RWBuffer<uint> _5971 : register(u163, space0);
game/core/shaders_vulkan_dir/shaders/vfx/combine_colorcorrection_lut_cs.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
game/core/shaders_vulkan_dir/shaders/vfx/compact_indirect_draws.slang
modified • +31 / -21 • changes: 52
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -35,7 +35,7 @@ CS
RWStructuredBuffer g_GlobalStats < Attribute("GlobalStats"); >;
Buffer g_Input < Attribute("InputDraws"); SrgbRead(false); >;
RWBuffer<float4> g_Output < Attribute("OutputDraws"); >;
- StructuredBuffer g_Requests < Attribute("CompactionRequests"); SrgbRead(false); >;
+ StructuredBuffer g_Requests < Attribute("CompactionRequests"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (3000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
@@ -46,10 +46,16 @@ CS
uint _m1;
};
+ struct _991
+ {
+ uint _m0;
+ uint _m1;
+ };
+
ByteAddressBuffer g_Requests : register(t30, space0);
- RWBuffer<uint> _3229 : register(u159, space0);
- Buffer<uint4> undetermined : register(t31, space0);
+ Buffer<uint4> undetermined_unexpectedTypeId408_1045 : register(t31, space0);
RWBuffer<uint> _4783 : register(u158, space0);
+ RWBuffer<uint> _3229 : register(u159, space0);
static uint3 gl_LocalInvocationID;
static uint3 gl_GlobalInvocationID;
@@ -63,12 +69,16 @@ CS
void MainCs_inner()
{
- uint _24425 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 0);
- uint _19512 = _24425 >> uint(8);
- uint _23353 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 4);
- uint _6021 = _24425 & 255u;
- bool _20621 = gl_LocalInvocationID.y == 0u;
- if (_20621)
+ _991 _8152;
+ _8152._m0 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 0);
+ _8152._m1 = g_Requests.Load(gl_GlobalInvocationID.x * 8 + 4);
+ _990 _20228;
+ _20228._m0 = _8152._m0;
+ _20228._m1 = _8152._m1;
+ uint _24796 = _20228._m0 >> uint(8);
+ uint _6021 = _20228._m0 & 255u;
+ bool _21645 = gl_LocalInvocationID.y == 0u;
+ if (_21645)
{
_5866[gl_LocalInvocationID.x] = 0u;
}
@@ -81,29 +91,29 @@ CS
{
break;
}
- uint _18763 = (_19512 + _13039) * 5u;
- uint4 _8527 = undetermined.Load(int(_18763));
+ uint _18763 = (_24796 + _13039) * 5u;
+ uint4 _8527 = undetermined_unexpectedTypeId408_1045.Load(int(_18763));
uint _7919 = _8527.x;
- uint4 _8603 = undetermined.Load(int(_18763 + 1u));
+ uint4 _8603 = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 1u));
uint _8120 = _8603.x;
if ((_7919 * _8120) != 0u)
{
- uint _3233;
- InterlockedAdd(_5866[gl_LocalInvocationID.x], 1u, _3233);
- uint _25189 = (_23353 + _3233) * 5u;
+ uint _8060;
+ InterlockedAdd(_5866[gl_LocalInvocationID.x], 1u, _8060);
+ uint _25189 = (_20228._m1 + _8060) * 5u;
_4783[_25189] = _7919.x;
_4783[_25189 + 1u] = _8120.x;
- _4783[_25189 + 2u] = undetermined.Load(int(_18763 + 2u)).x.x;
- _4783[_25189 + 3u] = undetermined.Load(int(_18763 + 3u)).x.x;
- _4783[_25189 + 4u] = undetermined.Load(int(_18763 + 4u)).x.x;
+ _4783[_25189 + 2u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 2u)).x.x;
+ _4783[_25189 + 3u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 3u)).x.x;
+ _4783[_25189 + 4u] = undetermined_unexpectedTypeId408_1045.Load(int(_18763 + 4u)).x.x;
}
_4283 = _13039 + 16u;
_13039 = _4283;
continue;
}
GroupMemoryBarrierWithGroupSync();
bool _12885;
- if (_20621)
+ if (_21645)
{
_12885 = _6021 != 0u;
}
@@ -113,7 +123,7 @@ CS
}
if (_12885)
{
- _3229[_23353] = _5866[gl_LocalInvocationID.x].x;
+ _3229[_20228._m1] = _5866[gl_LocalInvocationID.x].x;
}
}
game/core/shaders_vulkan_dir/shaders/vfx/compute_depthbin_cullbits.slang
modified • +83 / -13 • changes: 96
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -30,12 +30,12 @@ CS
{
cbuffer CullParams_t < Attribute("CullParams_t"); >;
- StructuredBuffer g_CullItems < Attribute("CullItems"); SrgbRead(false); >;
+ StructuredBuffer g_CullItems < Attribute("CullItems"); >;
RWStructuredBuffer g_OutputCullBits < Attribute("OutputCullBits"); >;
ExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerGpuSet"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3352 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3372 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1017
{
@@ -45,12 +45,41 @@ CS
uint _m3;
};
- struct _2489
+ struct _1935
{
- _1017 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ float2 _m4;
+ float2 _m5;
+ float _m6;
+ float _m7;
+ float2 _m8;
+ float _m9;
+ float _m10;
+ float _m11;
+ float _m12;
+ float _m13;
+ float _m14;
+ float _m15;
+ float _m16;
};
- struct _1935
+ struct _1018
+ {
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ };
+
+ struct _535
+ {
+ _1018 _m0[3];
+ };
+
+ struct _1936
{
uint _m0;
uint _m1;
@@ -77,11 +106,11 @@ CS
float CullParams_t_1_m1 : packoffset(c2.z);
float CullParams_t_1_m2 : packoffset(c2.w);
uint4 CullParams_t_1_m3 : packoffset(c3);
- _2489 CullParams_t_1_m4 : packoffset(c7);
+ _535 CullParams_t_1_m4 : packoffset(c7);
};
- RWByteAddressBuffer undetermined : register(u158, space0);
ByteAddressBuffer g_CullItems : register(t30, space0);
+ RWByteAddressBuffer undetermined : register(u158, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_GlobalInvocationID;
@@ -97,8 +126,13 @@ CS
uint _3251 = gl_WorkGroupID.y - CullParams_t_1_m3[_22151];
float _17281 = (CullParams_t_1_m2 + (float(gl_GlobalInvocationID.x) * CullParams_t_1_m0)) - CullParams_t_1_m1;
float _15813 = (CullParams_t_1_m2 + (float(gl_GlobalInvocationID.x + 1u) * CullParams_t_1_m0)) + CullParams_t_1_m1;
- uint _5249 = CullParams_t_1_m4._m0[_22151]._m2 + (_3251 * 32u);
- uint _19037 = min(CullParams_t_1_m4._m0[_22151]._m3, (_5249 + 32u));
+ _1017 _20228;
+ _20228._m0 = CullParams_t_1_m4._m0[_22151]._m0;
+ _20228._m1 = CullParams_t_1_m4._m0[_22151]._m1;
+ _20228._m2 = CullParams_t_1_m4._m0[_22151]._m2;
+ _20228._m3 = CullParams_t_1_m4._m0[_22151]._m3;
+ uint _5249 = _20228._m2 + (_3251 * 32u);
+ uint _19037 = min(_20228._m3, (_5249 + 32u));
uint _13155;
_13155 = 0u;
uint _4284;
@@ -110,10 +144,46 @@ CS
{
break;
}
+ _1936 _10769;
+ _10769._m0 = g_CullItems.Load(_16208 * 80 + 0);
+ _10769._m1 = g_CullItems.Load(_16208 * 80 + 4);
+ _10769._m2 = g_CullItems.Load(_16208 * 80 + 8);
+ _10769._m3 = g_CullItems.Load(_16208 * 80 + 12);
+ _10769._m4 = asfloat(g_CullItems.Load2(_16208 * 80 + 16));
+ _10769._m5 = asfloat(g_CullItems.Load2(_16208 * 80 + 24));
+ _10769._m6 = asfloat(g_CullItems.Load(_16208 * 80 + 32));
+ _10769._m7 = asfloat(g_CullItems.Load(_16208 * 80 + 36));
+ _10769._m8 = asfloat(g_CullItems.Load2(_16208 * 80 + 40));
+ _10769._m9 = asfloat(g_CullItems.Load(_16208 * 80 + 48));
+ _10769._m10 = asfloat(g_CullItems.Load(_16208 * 80 + 52));
+ _10769._m11 = asfloat(g_CullItems.Load(_16208 * 80 + 56));
+ _10769._m12 = asfloat(g_CullItems.Load(_16208 * 80 + 60));
+ _10769._m13 = asfloat(g_CullItems.Load(_16208 * 80 + 64));
+ _10769._m14 = asfloat(g_CullItems.Load(_16208 * 80 + 68));
+ _10769._m15 = asfloat(g_CullItems.Load(_16208 * 80 + 72));
+ _10769._m16 = asfloat(g_CullItems.Load(_16208 * 80 + 76));
+ _1935 _22261;
+ _22261._m0 = _10769._m0;
+ _22261._m1 = _10769._m1;
+ _22261._m2 = _10769._m2;
+ _22261._m3 = _10769._m3;
+ _22261._m4 = _10769._m4;
+ _22261._m5 = _10769._m5;
+ _22261._m6 = _10769._m6;
+ _22261._m7 = _10769._m7;
+ _22261._m8 = _10769._m8;
+ _22261._m9 = _10769._m9;
+ _22261._m10 = _10769._m10;
+ _22261._m11 = _10769._m11;
+ _22261._m12 = _10769._m12;
+ _22261._m13 = _10769._m13;
+ _22261._m14 = _10769._m14;
+ _22261._m15 = _10769._m15;
+ _22261._m16 = _10769._m16;
bool _12885;
- if (asfloat(g_CullItems.Load(_16208 * 80 + 32)) <= _15813)
+ if (_22261._m6 <= _15813)
{
- _12885 = asfloat(g_CullItems.Load(_16208 * 80 + 36)) >= _17281;
+ _12885 = _22261._m7 >= _17281;
}
else
{
@@ -132,7 +202,7 @@ CS
_16208 = _4284;
continue;
}
- undetermined.Store(((CullParams_t_1_m4._m0[_22151]._m0 + (gl_GlobalInvocationID.x * CullParams_t_1_m4._m0[_22151]._m1)) + _3251) * 4 + 0, _13155);
+ undetermined.Store(((_20228._m0 + (gl_GlobalInvocationID.x * _20228._m1)) + _3251) * 4 + 0, _13155);
}
[numthreads(32, 1, 1)]
game/core/shaders_vulkan_dir/shaders/vfx/compute_smooth_normals_cs.slang
modified • +6 / -6 • changes: 12
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -36,9 +36,9 @@ CS
int g_bIs16BitIB < Attribute("16BitIB"); UiType(Slider); >;
float g_flCompressMultiplier < Attribute("CompressMultiplier"); UiType(Slider); >;
float g_flStretchMultiplier < Attribute("StretchMultiplier"); UiType(Slider); >;
- ByteAddressBuffer g_inputIB < Attribute("InputIB"); SrgbRead(false); >;
- ByteAddressBuffer g_inputVB < Attribute("InputVB"); SrgbRead(false); >;
- ByteAddressBuffer g_inputVertAliasInfo < Attribute("InputVertAliasInfo"); SrgbRead(false); >;
+ ByteAddressBuffer g_inputIB < Attribute("InputIB"); >;
+ ByteAddressBuffer g_inputVB < Attribute("InputVB"); >;
+ ByteAddressBuffer g_inputVertAliasInfo < Attribute("InputVertAliasInfo"); >;
int g_nAccumVBStartIndex < Attribute("TempBufferStartIndex"); UiType(Slider); >;
int g_nInputIndexOffset < Attribute("InputIBOffset"); UiType(Slider); >;
int g_nInputVertexSizeInBytes < Attribute("VertexSize"); UiType(Slider); >;
@@ -51,7 +51,7 @@ CS
RWByteAddressBuffer g_vertexCacheVB < Attribute("VertexCacheVB"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4524 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4508 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
@@ -114,7 +114,7 @@ CS
}
else
{
- _19017 = uint3(g_inputIB.Load(_6279 * 4 + 0), g_inputIB.Load(_6751 * 4 + 0), g_inputIB.Load((uint(int(_9848 + 8u)) / 4u) * 4 + 0));
+ _19017 = uint3(g_inputIB.Load(_6279 * 4 + 0), g_inputIB.Load(_6751 * 4 + 0), g_inputIB.Load(((_9848 + 8u) / 4u) * 4 + 0));
}
uint _11276 = (_19017.x + _Globals_1_g_nVertexCacheStartIndex) * 24u;
uint _6234 = undetermined.Load((_11276 / 4u) * 4 + 0);
game/core/shaders_vulkan_dir/shaders/vfx/compute_tile_cullbits.slang
modified • +134 / -29 • changes: 163
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -31,27 +31,57 @@ CS
DynamicCombo( D_SUBGROUP_SIZE_32, 0..1 );
cbuffer CullParams_t < Attribute("CullParams_t"); >;
- StructuredBuffer g_CullItems < Attribute("CullItems"); SrgbRead(false); >;
- StructuredBuffer g_CullPlanes < Attribute("CullPlanes"); SrgbRead(false); >;
+ StructuredBuffer g_CullItems < Attribute("CullItems"); >;
+ StructuredBuffer g_CullPlanes < Attribute("CullPlanes"); >;
RWStructuredBuffer g_OutputCullBits < Attribute("OutputCullBits"); >;
ExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerGpuSet"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (7936 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (7684 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _1002
+ struct _1017
{
uint _m0;
uint _m1;
uint _m2;
+ uint _m3;
+ };
+
+ struct _1935
+ {
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ float2 _m4;
+ float2 _m5;
+ float _m6;
+ float _m7;
+ float2 _m8;
+ float _m9;
+ float _m10;
+ float _m11;
+ float _m12;
+ float _m13;
+ float _m14;
+ float _m15;
+ float _m16;
+ };
+
+ struct _1018
+ {
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
};
- struct _701
+ struct _2681
{
- _1002 _m0[3];
+ _1018 _m0[3];
};
- struct _1935
+ struct _1936
{
uint _m0;
uint _m1;
@@ -82,12 +112,12 @@ CS
float2 CullParams_t_1_m3 : packoffset(c1);
float2 CullParams_t_1_m4 : packoffset(c1.z);
uint4 CullParams_t_1_m5 : packoffset(c3);
- _701 CullParams_t_1_m6 : packoffset(c4);
+ _2681 CullParams_t_1_m6 : packoffset(c4);
};
ByteAddressBuffer g_CullItems : register(t31, space0);
- RWByteAddressBuffer undetermined : register(u158, space0);
ByteAddressBuffer g_CullPlanes : register(t30, space0);
+ RWByteAddressBuffer undetermined : register(u158, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_LocalInvocationID;
@@ -105,6 +135,11 @@ CS
{
uint _22151 = (gl_WorkGroupID.z >= CullParams_t_1_m5.z) ? 2u : uint(gl_WorkGroupID.z >= CullParams_t_1_m5.y);
uint _3251 = gl_WorkGroupID.z - CullParams_t_1_m5[_22151];
+ _1017 _20228;
+ _20228._m0 = CullParams_t_1_m6._m0[_22151]._m0;
+ _20228._m1 = CullParams_t_1_m6._m0[_22151]._m1;
+ _20228._m2 = CullParams_t_1_m6._m0[_22151]._m2;
+ _20228._m3 = CullParams_t_1_m6._m0[_22151]._m3;
float2 _23453 = (float2(gl_GlobalInvocationID.xy) * CullParams_t_1_m3) + CullParams_t_1_m4;
uint2 _7433 = gl_WorkGroupID.xy * uint2(8u, 4u);
float2 _16631 = (float2(_7433) * CullParams_t_1_m3) + CullParams_t_1_m4;
@@ -116,14 +151,49 @@ CS
{
_5602 = 0u;
}
- uint _24395 = CullParams_t_1_m6._m0[_22151]._m2 + (_3251 * 32u);
- uint _7606 = _24395 + _3716;
- float2 _4241 = asfloat(g_CullItems.Load2(_7606 * 80 + 16)) - _3512;
- float2 _5212 = asfloat(g_CullItems.Load2(_7606 * 80 + 24)) + _3512;
- bool2 _17472 = bool2(_4823.x >= _4241.x, _4823.y >= _4241.y);
+ uint _24395 = _20228._m2 + (_3251 * 32u);
+ _1936 _17001;
+ _17001._m0 = g_CullItems.Load((_24395 + _3716) * 80 + 0);
+ _17001._m1 = g_CullItems.Load((_24395 + _3716) * 80 + 4);
+ _17001._m2 = g_CullItems.Load((_24395 + _3716) * 80 + 8);
+ _17001._m3 = g_CullItems.Load((_24395 + _3716) * 80 + 12);
+ _17001._m4 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 16));
+ _17001._m5 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 24));
+ _17001._m6 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 32));
+ _17001._m7 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 36));
+ _17001._m8 = asfloat(g_CullItems.Load2((_24395 + _3716) * 80 + 40));
+ _17001._m9 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 48));
+ _17001._m10 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 52));
+ _17001._m11 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 56));
+ _17001._m12 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 60));
+ _17001._m13 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 64));
+ _17001._m14 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 68));
+ _17001._m15 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 72));
+ _17001._m16 = asfloat(g_CullItems.Load((_24395 + _3716) * 80 + 76));
+ _1935 _21178;
+ _21178._m0 = _17001._m0;
+ _21178._m1 = _17001._m1;
+ _21178._m2 = _17001._m2;
+ _21178._m3 = _17001._m3;
+ _21178._m4 = _17001._m4;
+ _21178._m5 = _17001._m5;
+ _21178._m6 = _17001._m6;
+ _21178._m7 = _17001._m7;
+ _21178._m8 = _17001._m8;
+ _21178._m9 = _17001._m9;
+ _21178._m10 = _17001._m10;
+ _21178._m11 = _17001._m11;
+ _21178._m12 = _17001._m12;
+ _21178._m13 = _17001._m13;
+ _21178._m14 = _17001._m14;
+ _21178._m15 = _17001._m15;
+ _21178._m16 = _17001._m16;
+ float2 _4241 = _21178._m4 - _3512;
+ float2 _5212 = _21178._m5 + _3512;
+ bool2 _20688 = bool2(_4823.x >= _4241.x, _4823.y >= _4241.y);
bool2 _8020 = bool2(_5212.x >= _4823.x, _5212.y >= _4823.y);
uint _15363;
- if (all(bool2(_17472.x && _8020.x, _17472.y && _8020.y)))
+ if (all(bool2(_20688.x && _8020.x, _20688.y && _8020.y)))
{
_15363 = 1u << _3716;
}
@@ -155,18 +225,53 @@ CS
}
uint _17426 = firstbitlow(_17017);
_3461 = _17017 & (_17017 - 1u);
- uint _24956 = _24395 + _17426;
+ _1936 _17002;
+ _17002._m0 = g_CullItems.Load((_24395 + _17426) * 80 + 0);
+ _17002._m1 = g_CullItems.Load((_24395 + _17426) * 80 + 4);
+ _17002._m2 = g_CullItems.Load((_24395 + _17426) * 80 + 8);
+ _17002._m3 = g_CullItems.Load((_24395 + _17426) * 80 + 12);
+ _17002._m4 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 16));
+ _17002._m5 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 24));
+ _17002._m6 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 32));
+ _17002._m7 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 36));
+ _17002._m8 = asfloat(g_CullItems.Load2((_24395 + _17426) * 80 + 40));
+ _17002._m9 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 48));
+ _17002._m10 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 52));
+ _17002._m11 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 56));
+ _17002._m12 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 60));
+ _17002._m13 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 64));
+ _17002._m14 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 68));
+ _17002._m15 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 72));
+ _17002._m16 = asfloat(g_CullItems.Load((_24395 + _17426) * 80 + 76));
+ _1935 _20229;
+ _20229._m0 = _17002._m0;
+ _20229._m1 = _17002._m1;
+ _20229._m2 = _17002._m2;
+ _20229._m3 = _17002._m3;
+ _20229._m4 = _17002._m4;
+ _20229._m5 = _17002._m5;
+ _20229._m6 = _17002._m6;
+ _20229._m7 = _17002._m7;
+ _20229._m8 = _17002._m8;
+ _20229._m9 = _17002._m9;
+ _20229._m10 = _17002._m10;
+ _20229._m11 = _17002._m11;
+ _20229._m12 = _17002._m12;
+ _20229._m13 = _17002._m13;
+ _20229._m14 = _17002._m14;
+ _20229._m15 = _17002._m15;
+ _20229._m16 = _17002._m16;
bool _12885;
do
{
- if (!(asfloat(g_CullItems.Load(_24956 * 80 + 72)) != 0.0f))
+ if (_20229._m15 == 0.0f)
{
_12885 = true;
break;
}
float _7381 = _23453.x;
float _16189 = _23453.y;
- _12885 = ((((((asfloat(g_CullItems.Load(_24956 * 80 + 48)) * (_7381 * _7381)) + (asfloat(g_CullItems.Load(_24956 * 80 + 52)) * (_16189 * _16189))) + (asfloat(g_CullItems.Load(_24956 * 80 + 56)) * (_7381 * _16189))) + (asfloat(g_CullItems.Load(_24956 * 80 + 60)) * _7381)) + (asfloat(g_CullItems.Load(_24956 * 80 + 64)) * _16189)) + asfloat(g_CullItems.Load(_24956 * 80 + 68))) >= 0.0f;
+ _12885 = ((((((_20229._m9 * (_7381 * _7381)) + (_20229._m10 * (_16189 * _16189))) + (_20229._m11 * (_7381 * _16189))) + (_20229._m12 * _7381)) + (_20229._m13 * _16189)) + _20229._m14) >= 0.0f;
break;
} while(false);
bool _16055;
@@ -175,24 +280,24 @@ CS
bool _12501;
do
{
- if (g_CullItems.Load(_24956 * 80 + 8) != 0u)
+ if (_20229._m2 != 0u)
{
float2 _13155;
- _13155 = asfloat(g_CullPlanes.Load2(((g_CullItems.Load(_24956 * 80 + 0) + g_CullItems.Load(_24956 * 80 + 8)) - 1u) * 8 + 0));
+ _13155 = asfloat(g_CullPlanes.Load2(((_20229._m0 + _20229._m2) - 1u) * 8 + 0));
float2 _6325;
uint _23989;
bool _13174;
bool _16054;
uint _16208 = 0u;
for (;;)
{
- if (!(_16208 < g_CullItems.Load(_24956 * 80 + 8)))
+ if (!(_16208 < _20229._m2))
{
_13174 = _16305;
_16054 = false;
break;
}
- _6325 = asfloat(g_CullPlanes.Load2((g_CullItems.Load(_24956 * 80 + 0) + _16208) * 8 + 0));
+ _6325 = asfloat(g_CullPlanes.Load2((_20229._m0 + _16208) * 8 + 0));
float2 _6626 = _6325 - _13155;
float2 _10733 = float2(-_6626.y, _6626.x);
if ((dot(_10733, _23453) + CullParams_t_1_m2) < dot(_10733, _6325))
@@ -226,28 +331,28 @@ CS
bool _16057;
if (_16055)
{
- uint _13648 = g_CullItems.Load(_24956 * 80 + 0) + g_CullItems.Load(_24956 * 80 + 8);
+ uint _24392 = _20229._m0 + _20229._m2;
bool _12502;
do
{
- if (g_CullItems.Load(_24956 * 80 + 12) != 0u)
+ if (_20229._m3 != 0u)
{
float2 _13156;
- _13156 = asfloat(g_CullPlanes.Load2(((_13648 + g_CullItems.Load(_24956 * 80 + 12)) - 1u) * 8 + 0));
+ _13156 = asfloat(g_CullPlanes.Load2(((_24392 + _20229._m3) - 1u) * 8 + 0));
float2 _6326;
uint _23990;
bool _13176;
bool _16056;
uint _16209 = 0u;
for (;;)
{
- if (!(_16209 < g_CullItems.Load(_24956 * 80 + 12)))
+ if (!(_16209 < _20229._m3))
{
_13176 = _13136;
_16056 = false;
break;
}
- _6326 = asfloat(g_CullPlanes.Load2((_13648 + _16209) * 8 + 0));
+ _6326 = asfloat(g_CullPlanes.Load2((_24392 + _16209) * 8 + 0));
float2 _6627 = _6326 - _13156;
float2 _10734 = float2(-_6627.y, _6627.x);
if ((dot(_10734, _23453) + CullParams_t_1_m2) < dot(_10734, _6326))
@@ -303,7 +408,7 @@ CS
}
if (_12886)
{
- undetermined.Store(((CullParams_t_1_m6._m0[_22151]._m0 + (((gl_GlobalInvocationID.y * CullParams_t_1_m0) + gl_GlobalInvocationID.x) * CullParams_t_1_m6._m0[_22151]._m1)) + _3251) * 4 + 0, _17133);
+ undetermined.Store(((_20228._m0 + (((gl_GlobalInvocationID.y * CullParams_t_1_m0) + gl_GlobalInvocationID.x) * _20228._m1)) + _3251) * 4 + 0, _17133);
}
}
game/core/shaders_vulkan_dir/shaders/vfx/convolve_environment_map.slang
modified • +6 / -6 • changes: 12
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_41
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -41,7 +41,7 @@ VS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vMatRow1) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
@@ -86,7 +86,7 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (2524 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _365
+ struct _71
{
float4 _m0[2048];
};
@@ -98,8 +98,8 @@ PS
cbuffer FilterTapConstantBuffer_t : register(b2, space1)
{
- _365 FilterTapConstantBuffer_t_1_m0 : packoffset(c0);
- _365 FilterTapConstantBuffer_t_1_m1 : packoffset(c2048);
+ _71 FilterTapConstantBuffer_t_1_m0 : packoffset(c0);
+ _71 FilterTapConstantBuffer_t_1_m1 : packoffset(c2048);
};
TextureCube<float4> g_tCubemap : register(t30, space1);
game/core/shaders_vulkan_dir/shaders/vfx/copytexture.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -127,7 +127,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vScaleAndBias) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_bc7.slang
modified • +271 / -278 • changes: 549
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -38,17 +38,17 @@ CS
float2 g_vImageSize < Attribute("ImageSize"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (40472 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (40284 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
float2 _Globals_1_g_vImageSize : packoffset(c0);
uint _Globals_1_g_nMipLevel : packoffset(c0.z);
};
- RWTexture2D<uint4> _3592 : register(u158, space0);
Texture2D<float4> g_tSrc : register(t30, space0);
SamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint : register(s14, space0);
+ RWTexture2D<uint4> _3592 : register(u158, space0);
static uint3 gl_GlobalInvocationID;
struct SPIRV_Cross_Input
@@ -115,10 +115,10 @@ CS
_13039 = _4299;
continue;
}
+ float4 _6603[16] = _3448;
uint4 _23123;
do
{
- float4 _19980[16] = _3448;
int _23989;
bool _12885;
int _13041 = 0;
@@ -129,7 +129,7 @@ CS
_12885 = false;
break;
}
- if (_19980[_13041].w < 0.99800002574920654296875f)
+ if (_6603[_13041].w < 0.99800002574920654296875f)
{
_12885 = true;
break;
@@ -140,7 +140,6 @@ CS
}
if (_12885)
{
- float4 _16414[16] = _3448;
float4 _13155;
_13155 = 0.0f.xxxx;
float4 _17199;
@@ -153,7 +152,7 @@ CS
{
break;
}
- _17199 = _13155 + _16414[_16208];
+ _17199 = _13155 + _6603[_16208];
_20924 = _16208 + 1;
_13155 = _17199;
_16208 = _20924;
@@ -181,7 +180,7 @@ CS
{
break;
}
- float4 _6911 = _16414[_17017] - _21291;
+ float4 _6911 = _6603[_17017] - _21291;
_7775 = _13136 + (_6911 * _6911.x);
_7776 = _16305 + (_6911 * _6911.y);
_7777 = _17114 + (_6911 * _6911.z);
@@ -236,7 +235,7 @@ CS
{
break;
}
- float _15242 = dot(_16414[_17018] - _21291, _12501);
+ float _15242 = dot(_6603[_17018] - _21291, _12501);
_16925 = min(_16324, _15242);
_22816 = max(_13137, _15242);
_24638 = _17018 + 1u;
@@ -248,7 +247,6 @@ CS
float4 _17231 = clamp(_21291 + (_12501 * _16324), 0.0f.xxxx, 1.0f.xxxx);
float4 _24558 = clamp(_21291 + (_12501 * _13137), 0.0f.xxxx, 1.0f.xxxx);
bool4 _6853 = (dot(_17231, float4(1.0f, 1.0f, 1.0f, 0.0f)) > dot(_24558, float4(1.0f, 1.0f, 1.0f, 0.0f))).xxxx;
- float4 _16413[16] = _3448;
float4 _13138;
float4 _16325;
_13138 = float4(_6853.x ? _24558.x : _17231.x, _6853.y ? _24558.y : _17231.y, _6853.z ? _24558.z : _17231.z, _6853.w ? _24558.w : _17231.w);
@@ -289,12 +287,12 @@ CS
{
break;
}
- int _23276 = int((clamp(dot(_16413[_17020] - _13138, _15667) / _7122, 0.0f, 1.0f) * 15.0f) + 0.5f);
+ int _23276 = int((clamp(dot(_6603[_17020] - _13138, _15667) / _7122, 0.0f, 1.0f) * 15.0f) + 0.5f);
if (_23276 == 0)
{
_13140 = _13139;
_16307 = _16306;
- _14891 = _17115 + _16413[_17020];
+ _14891 = _17115 + _6603[_17020];
_18360 = _17134 + 1;
}
else
@@ -304,7 +302,7 @@ CS
if (_23276 == 15)
{
_13212 = _16306 + 1;
- _15670 = _13139 + _16413[_17020];
+ _15670 = _13139 + _6603[_17020];
}
else
{
@@ -347,10 +345,9 @@ CS
continue;
}
float4 _6656 = float4(uint4((clamp(_13138, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
- float4 _19267 = float4(uint4((clamp(_16325, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
- float4 _16412[16] = _3448;
- float4 _13869 = (_19267 - _6656) * 0.0039215688593685626983642578125f;
- float4 _18308 = _13869 * (1.0f / (dot(_13869, _13869) + 9.9999997473787516355514526367188e-05f));
+ float4 _7539 = float4(uint4((clamp(_16325, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
+ float4 _21909 = (_7539 - _6656) * 0.0039215688593685626983642578125f;
+ float4 _18308 = _21909 * (1.0f / (dot(_21909, _21909) + 9.9999997473787516355514526367188e-05f));
float _17055 = dot(_6656, _18308) * 0.0039215688593685626983642578125f;
uint2 _13157;
_13157 = uint2(0u, 0u);
@@ -364,7 +361,7 @@ CS
break;
}
_9504 = _13157;
- _9504.x = _13157.x | (uint((15.0f * clamp(dot(_16412[_16210], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16210 * 4));
+ _9504.x = _13157.x | (uint((15.0f * clamp(dot(_6603[_16210], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16210 * 4));
_8515 = _16210 + 1;
_13157 = _9504;
_16210 = _8515;
@@ -382,7 +379,7 @@ CS
break;
}
_9505 = _13158;
- _9505.y = _13158.y | (uint((15.0f * clamp(dot(_16412[8 + _16211], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16211 * 4));
+ _9505.y = _13158.y | (uint((15.0f * clamp(dot(_6603[8 + _16211], _18308) - _17055, 0.0f, 1.0f)) + 0.5f) << uint(_16211 * 4));
_8516 = _16211 + 1;
_13158 = _9505;
_16211 = _8516;
@@ -399,8 +396,8 @@ CS
_21166 = _13158;
}
bool4 _19656 = _15644.xxxx;
- float4 _17592 = float4(_19656.x ? _6656.x : _19267.x, _19656.y ? _6656.y : _19267.y, _19656.z ? _6656.z : _19267.z, _19656.w ? _6656.w : _19267.w);
- float4 _23067 = float4(_19656.x ? _19267.x : _6656.x, _19656.y ? _19267.y : _6656.y, _19656.z ? _19267.z : _6656.z, _19656.w ? _19267.w : _6656.w);
+ float4 _17592 = float4(_19656.x ? _6656.x : _7539.x, _19656.y ? _6656.y : _7539.y, _19656.z ? _6656.z : _7539.z, _19656.w ? _6656.w : _7539.w);
+ float4 _23068 = float4(_19656.x ? _7539.x : _6656.x, _19656.y ? _7539.y : _6656.y, _19656.z ? _7539.z : _6656.z, _19656.w ? _7539.w : _6656.w);
uint4 _16326;
_16326 = uint4(0u, 0u, 0u, 0u);
int _10579;
@@ -451,7 +448,7 @@ CS
_17021 = _10579;
continue;
}
- uint _10056 = uint(_23067.x) >> uint(1);
+ uint _10056 = uint(_23068.x) >> uint(1);
uint4 _16327;
_16327 = _16326;
int _10580;
@@ -553,7 +550,7 @@ CS
_17023 = _10581;
continue;
}
- uint _10058 = uint(_23067.y) >> uint(1);
+ uint _10058 = uint(_23068.y) >> uint(1);
uint4 _16329;
_16329 = _16328;
int _10582;
@@ -655,7 +652,7 @@ CS
_17026 = _10583;
continue;
}
- uint _10060 = uint(_23067.z) >> uint(1);
+ uint _10060 = uint(_23068.z) >> uint(1);
uint4 _16331;
_16331 = _16330;
int _10584;
@@ -757,7 +754,7 @@ CS
_17028 = _10585;
continue;
}
- uint _10062 = uint(_23067.w) >> uint(1);
+ uint _10062 = uint(_23068.w) >> uint(1);
uint4 _16333;
_16333 = _16332;
int _10586;
@@ -915,7 +912,6 @@ CS
_23123 = _23135;
break;
}
- float4 _16409[16] = _3448;
float3 _13159;
_13159 = 0.0f.xxx;
int _9913;
@@ -927,14 +923,14 @@ CS
{
break;
}
- _21805 = _13159 + _16409[_16218].xyz;
+ _21805 = _13159 + _6603[_16218].xyz;
_9913 = _16218 + 1;
_13159 = _21805;
_16218 = _9913;
continue;
}
float3 _12972 = _13159 * 0.0625f.xxx;
- float3x3 _16410 = float3x3(0.0f.xxx, 0.0f.xxx, 0.0f.xxx);
+ float3x3 _20506 = float3x3(0.0f.xxx, 0.0f.xxx, 0.0f.xxx);
int _10608;
int _13042 = 0;
for (;;)
@@ -943,27 +939,27 @@ CS
{
break;
}
- float3 _12822 = _16409[_13042].xyz - _12972;
+ float3 _12822 = _6603[_13042].xyz - _12972;
float _6827 = _12822.x;
- _16410[0].x += (_6827 * _6827);
+ _20506[0].x += (_6827 * _6827);
float _6828 = _12822.y;
float _22952 = _6827 * _6828;
- _16410[0].y += _22952;
- _16410[1].x += _22952;
+ _20506[0].y += _22952;
+ _20506[1].x += _22952;
float _6829 = _12822.z;
float _22953 = _6827 * _6829;
- _16410[0].z += _22953;
- _16410[2].x += _22953;
- _16410[1].y += (_6828 * _6828);
+ _20506[0].z += _22953;
+ _20506[2].x += _22953;
+ _20506[1].y += (_6828 * _6828);
float _18844 = _6828 * _6829;
- _16410[1].z += _18844;
- _16410[2].y += _18844;
- _16410[2].z += (_6829 * _6829);
+ _20506[1].z += _18844;
+ _20506[2].y += _18844;
+ _20506[2].z += (_6829 * _6829);
_10608 = _13042 + 1;
_13042 = _10608;
continue;
}
- float3x3 _16411 = float3x3(float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f));
+ float3x3 _23854 = float3x3(float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f));
int _21567;
int _13043 = 0;
for (;;)
@@ -972,25 +968,25 @@ CS
{
break;
}
- float _23755 = _16410[0].y;
+ float _23755 = _20506[0].y;
float _24236 = abs(_23755);
- float _20289 = _16410[0].z;
+ float _20289 = _20506[0].z;
bool _11754 = abs(_20289) > _24236;
float _22864;
if (_11754)
{
- _22864 = abs(_16410[0].z);
+ _22864 = abs(_20506[0].z);
}
else
{
_22864 = _24236;
}
- float _6983 = _16410[1].z;
+ float _6983 = _20506[1].z;
bool _11755 = abs(_6983) > _22864;
float _24840;
if (_11755)
{
- _24840 = abs(_16410[1].z);
+ _24840 = abs(_20506[1].z);
}
else
{
@@ -1002,9 +998,9 @@ CS
{
break;
}
- float _8600 = _16410[_16226][_16226];
- float _8524 = _16410[_9005][_9005];
- float _12024 = _16410[_16226][_9005];
+ float _8600 = _20506[_16226][_16226];
+ float _8524 = _20506[_9005][_9005];
+ float _12024 = _20506[_16226][_9005];
float _6561 = _8524 - _8600;
float _9028;
if (abs(_6561) < 9.9999997473787516355514526367188e-06f)
@@ -1037,108 +1033,108 @@ CS
}
if (_12886)
{
- float _8525 = _16410[_13044][_16226];
- float _13973 = _16410[_13044][_9005];
+ float _8525 = _20506[_13044][_16226];
+ float _13973 = _20506[_13044][_9005];
float _19722 = (_8525 * _14203) - (_13973 * _17205);
int _21437 = _13044 * 3;
switch (_21437 + _16226)
{
case 0:
{
- _16410[0].x = _19722;
+ _20506[0].x = _19722;
break;
}
case 1:
{
- _16410[0].y = _19722;
+ _20506[0].y = _19722;
break;
}
case 2:
{
- _16410[0].z = _19722;
+ _20506[0].z = _19722;
break;
}
case 3:
{
- _16410[1].x = _19722;
+ _20506[1].x = _19722;
break;
}
case 4:
{
- _16410[1].y = _19722;
+ _20506[1].y = _19722;
break;
}
case 5:
{
- _16410[1].z = _19722;
+ _20506[1].z = _19722;
break;
}
case 6:
{
- _16410[2].x = _19722;
+ _20506[2].x = _19722;
break;
}
case 7:
{
- _16410[2].y = _19722;
+ _20506[2].y = _19722;
break;
}
case 8:
{
- _16410[2].z = _19722;
+ _20506[2].z = _19722;
break;
}
default:
{
break;
}
}
- float _25208 = _16410[_13044][_16226];
- switch ((_16226 * 3) + _13044)
+ float _18807 = _20506[_13044][_16226];
+ switch ((_11755 ? 3 : 0) + _13044)
{
case 0:
{
- _16410[0].x = _25208;
+ _20506[0].x = _18807;
break;
}
case 1:
{
- _16410[0].y = _25208;
+ _20506[0].y = _18807;
break;
}
case 2:
{
- _16410[0].z = _25208;
+ _20506[0].z = _18807;
break;
}
case 3:
{
- _16410[1].x = _25208;
+ _20506[1].x = _18807;
break;
}
case 4:
{
- _16410[1].y = _25208;
+ _20506[1].y = _18807;
break;
}
case 5:
{
- _16410[1].z = _25208;
+ _20506[1].z = _18807;
break;
}
case 6:
{
- _16410[2].x = _25208;
+ _20506[2].x = _18807;
break;
}
case 7:
{
- _16410[2].y = _25208;
+ _20506[2].y = _18807;
break;
}
case 8:
{
- _16410[2].z = _25208;
+ _20506[2].z = _18807;
break;
}
default:
@@ -1151,100 +1147,100 @@ CS
{
case 0:
{
- _16410[0].x = _20014;
+ _20506[0].x = _20014;
break;
}
case 1:
{
- _16410[0].y = _20014;
+ _20506[0].y = _20014;
break;
}
case 2:
{
- _16410[0].z = _20014;
+ _20506[0].z = _20014;
break;
}
case 3:
{
- _16410[1].x = _20014;
+ _20506[1].x = _20014;
break;
}
case 4:
{
- _16410[1].y = _20014;
+ _20506[1].y = _20014;
break;
}
case 5:
{
- _16410[1].z = _20014;
+ _20506[1].z = _20014;
break;
}
case 6:
{
- _16410[2].x = _20014;
+ _20506[2].x = _20014;
break;
}
case 7:
{
- _16410[2].y = _20014;
+ _20506[2].y = _20014;
break;
}
case 8:
{
- _16410[2].z = _20014;
+ _20506[2].z = _20014;
break;
}
default:
{
break;
}
}
- float _25209 = _16410[_13044][_9005];
+ float _25208 = _20506[_13044][_9005];
switch ((_9005 * 3) + _13044)
{
case 0:
{
- _16410[0].x = _25209;
+ _20506[0].x = _25208;
break;
}
case 1:
{
- _16410[0].y = _25209;
+ _20506[0].y = _25208;
break;
}
case 2:
{
- _16410[0].z = _25209;
+ _20506[0].z = _25208;
break;
}
case 3:
{
- _16410[1].x = _25209;
+ _20506[1].x = _25208;
break;
}
case 4:
{
- _16410[1].y = _25209;
+ _20506[1].y = _25208;
break;
}
case 5:
{
- _16410[1].z = _25209;
+ _20506[1].z = _25208;
break;
}
case 6:
{
- _16410[2].x = _25209;
+ _20506[2].x = _25208;
break;
}
case 7:
{
- _16410[2].y = _25209;
+ _20506[2].y = _25208;
break;
}
case 8:
{
- _16410[2].z = _25209;
+ _20506[2].z = _25208;
break;
}
default:
@@ -1260,53 +1256,53 @@ CS
float _17556 = _14203 * _14203;
float _22675 = ((2.0f * _17205) * _14203) * _12024;
float _10137 = _17205 * _17205;
- float _17037 = ((_17556 * _8600) - _22675) + (_10137 * _8524);
- int _21935 = _16226 * 3;
- switch (_21935 + _16226)
+ float _10637 = ((_17556 * _8600) - _22675) + (_10137 * _8524);
+ int _23930 = _11755 ? 3 : 0;
+ switch (_23930 + _16226)
{
case 0:
{
- _16410[0].x = _17037;
+ _20506[0].x = _10637;
break;
}
case 1:
{
- _16410[0].y = _17037;
+ _20506[0].y = _10637;
break;
}
case 2:
{
- _16410[0].z = _17037;
+ _20506[0].z = _10637;
break;
}
case 3:
{
- _16410[1].x = _17037;
+ _20506[1].x = _10637;
break;
}
case 4:
{
- _16410[1].y = _17037;
+ _20506[1].y = _10637;
break;
}
case 5:
{
- _16410[1].z = _17037;
+ _20506[1].z = _10637;
break;
}
case 6:
{
- _16410[2].x = _17037;
+ _20506[2].x = _10637;
break;
}
case 7:
{
- _16410[2].y = _17037;
+ _20506[2].y = _10637;
break;
}
case 8:
{
- _16410[2].z = _17037;
+ _20506[2].z = _10637;
break;
}
default:
@@ -1315,156 +1311,156 @@ CS
}
}
float _20268 = ((_10137 * _8600) + _22675) + (_17556 * _8524);
- int _21936 = _9005 * 3;
- switch (_21936 + _9005)
+ int _21935 = _9005 * 3;
+ switch (_21935 + _9005)
{
case 0:
{
- _16410[0].x = _20268;
+ _20506[0].x = _20268;
break;
}
case 1:
{
- _16410[0].y = _20268;
+ _20506[0].y = _20268;
break;
}
case 2:
{
- _16410[0].z = _20268;
+ _20506[0].z = _20268;
break;
}
case 3:
{
- _16410[1].x = _20268;
+ _20506[1].x = _20268;
break;
}
case 4:
{
- _16410[1].y = _20268;
+ _20506[1].y = _20268;
break;
}
case 5:
{
- _16410[1].z = _20268;
+ _20506[1].z = _20268;
break;
}
case 6:
{
- _16410[2].x = _20268;
+ _20506[2].x = _20268;
break;
}
case 7:
{
- _16410[2].y = _20268;
+ _20506[2].y = _20268;
break;
}
case 8:
{
- _16410[2].z = _20268;
+ _20506[2].z = _20268;
break;
}
default:
{
break;
}
}
- switch (_21935 + _9005)
+ switch (_23930 + _9005)
{
case 0:
{
- _16410[0].x = 0.0f;
+ _20506[0].x = 0.0f;
break;
}
case 1:
{
- _16410[0].y = 0.0f;
+ _20506[0].y = 0.0f;
break;
}
case 2:
{
- _16410[0].z = 0.0f;
+ _20506[0].z = 0.0f;
break;
}
case 3:
{
- _16410[1].x = 0.0f;
+ _20506[1].x = 0.0f;
break;
}
case 4:
{
- _16410[1].y = 0.0f;
+ _20506[1].y = 0.0f;
break;
}
case 5:
{
- _16410[1].z = 0.0f;
+ _20506[1].z = 0.0f;
break;
}
case 6:
{
- _16410[2].x = 0.0f;
+ _20506[2].x = 0.0f;
break;
}
case 7:
{
- _16410[2].y = 0.0f;
+ _20506[2].y = 0.0f;
break;
}
case 8:
{
- _16410[2].z = 0.0f;
+ _20506[2].z = 0.0f;
break;
}
default:
{
break;
}
}
- switch (_21936 + _16226)
+ switch (_21935 + _16226)
{
case 0:
{
- _16410[0].x = 0.0f;
+ _20506[0].x = 0.0f;
break;
}
case 1:
{
- _16410[0].y = 0.0f;
+ _20506[0].y = 0.0f;
break;
}
case 2:
{
- _16410[0].z = 0.0f;
+ _20506[0].z = 0.0f;
break;
}
case 3:
{
- _16410[1].x = 0.0f;
+ _20506[1].x = 0.0f;
break;
}
case 4:
{
- _16410[1].y = 0.0f;
+ _20506[1].y = 0.0f;
break;
}
case 5:
{
- _16410[1].z = 0.0f;
+ _20506[1].z = 0.0f;
break;
}
case 6:
{
- _16410[2].x = 0.0f;
+ _20506[2].x = 0.0f;
break;
}
case 7:
{
- _16410[2].y = 0.0f;
+ _20506[2].y = 0.0f;
break;
}
case 8:
{
- _16410[2].z = 0.0f;
+ _20506[2].z = 0.0f;
break;
}
default:
@@ -1480,55 +1476,55 @@ CS
{
break;
}
- float _8526 = _16411[_13045][_16226];
- float _13974 = _16411[_13045][_9005];
+ float _8526 = _23854[_13045][_16226];
+ float _13974 = _23854[_13045][_9005];
float _19723 = (_8526 * _14203) - (_13974 * _17205);
int _21438 = _13045 * 3;
switch (_21438 + _16226)
{
case 0:
{
- _16411[0].x = _19723;
+ _23854[0].x = _19723;
break;
}
case 1:
{
- _16411[0].y = _19723;
+ _23854[0].y = _19723;
break;
}
case 2:
{
- _16411[0].z = _19723;
+ _23854[0].z = _19723;
break;
}
case 3:
{
- _16411[1].x = _19723;
+ _23854[1].x = _19723;
break;
}
case 4:
{
- _16411[1].y = _19723;
+ _23854[1].y = _19723;
break;
}
case 5:
{
- _16411[1].z = _19723;
+ _23854[1].z = _19723;
break;
}
case 6:
{
- _16411[2].x = _19723;
+ _23854[2].x = _19723;
break;
}
case 7:
{
- _16411[2].y = _19723;
+ _23854[2].y = _19723;
break;
}
case 8:
{
- _16411[2].z = _19723;
+ _23854[2].z = _19723;
break;
}
default:
@@ -1541,47 +1537,47 @@ CS
{
case 0:
{
- _16411[0].x = _20016;
+ _23854[0].x = _20016;
break;
}
case 1:
{
- _16411[0].y = _20016;
+ _23854[0].y = _20016;
break;
}
case 2:
{
- _16411[0].z = _20016;
+ _23854[0].z = _20016;
break;
}
case 3:
{
- _16411[1].x = _20016;
+ _23854[1].x = _20016;
break;
}
case 4:
{
- _16411[1].y = _20016;
+ _23854[1].y = _20016;
break;
}
case 5:
{
- _16411[1].z = _20016;
+ _23854[1].z = _20016;
break;
}
case 6:
{
- _16411[2].x = _20016;
+ _23854[2].x = _20016;
break;
}
case 7:
{
- _16411[2].y = _20016;
+ _23854[2].y = _20016;
break;
}
case 8:
{
- _16411[2].z = _20016;
+ _23854[2].z = _20016;
break;
}
default:
@@ -1597,18 +1593,18 @@ CS
_13043 = _21567;
continue;
}
- bool _6405 = _16410[1].y > _16410[0].x;
+ bool _6405 = _20506[1].y > _20506[0].x;
float _22865;
if (_6405)
{
- _22865 = _16410[1].y;
+ _22865 = _20506[1].y;
}
else
{
- _22865 = _16410[0].x;
+ _22865 = _20506[0].x;
}
- int _22180 = (_16410[2].z > _22865) ? 2 : int(_6405);
- float3 _11081 = normalize(float3(_16411[0][_22180], _16411[1][_22180], _16411[2][_22180]));
+ int _22180 = (_20506[2].z > _22865) ? 2 : int(_6405);
+ float3 _11081 = normalize(float3(_23854[0][_22180], _23854[1][_22180], _23854[2][_22180]));
bool _21167;
if (any(isnan(_11081)))
{
@@ -1620,9 +1616,8 @@ CS
_21167 = all(bool3(_9948.x < 9.9999997473787516355514526367188e-05f.xxx.x, _9948.y < 9.9999997473787516355514526367188e-05f.xxx.y, _9948.z < 9.9999997473787516355514526367188e-05f.xxx.z));
}
bool3 _17965 = _21167.xxx;
- float4 _21564 = float4(_12972, 0.0f);
- float4 _18330 = float4(float3(_17965.x ? float3(0.0f, 1.0f, 0.0f).x : _11081.x, _17965.y ? float3(0.0f, 1.0f, 0.0f).y : _11081.y, _17965.z ? float3(0.0f, 1.0f, 0.0f).z : _11081.z), 0.0f);
- float4 _16408[16] = _3448;
+ float4 _25117 = float4(_12972, 0.0f);
+ float4 _24102 = float4(float3(_17965.x ? float3(0.0f, 1.0f, 0.0f).x : _11081.x, _17965.y ? float3(0.0f, 1.0f, 0.0f).y : _11081.y, _17965.z ? float3(0.0f, 1.0f, 0.0f).z : _11081.z), 0.0f);
float _13151;
float _16336;
_13151 = -1000000000.0f;
@@ -1637,7 +1632,7 @@ CS
{
break;
}
- float _15243 = dot(_16408[_17032] - _21564, _18330);
+ float _15243 = dot(_6603[_17032] - _25117, _24102);
_16926 = min(_16336, _15243);
_22843 = max(_13151, _15243);
_24639 = _17032 + 1;
@@ -1646,11 +1641,10 @@ CS
_17032 = _24639;
continue;
}
- float4 _23854[16] = _3448;
float4 _13152;
float4 _16337;
- _13152 = clamp(_21564 + (_18330 * _16336), 0.0f.xxxx, 1.0f.xxxx);
- _16337 = clamp(_21564 + (_18330 * _13151), 0.0f.xxxx, 1.0f.xxxx);
+ _13152 = clamp(_25117 + (_24102 * _16336), 0.0f.xxxx, 1.0f.xxxx);
+ _16337 = clamp(_25117 + (_24102 * _13151), 0.0f.xxxx, 1.0f.xxxx);
int _8088;
float4 _6560;
float4 _14391;
@@ -1687,12 +1681,12 @@ CS
{
break;
}
- int _23277 = int((clamp(dot(_23854[_17034] - _13152, _15668) / _7123, 0.0f, 1.0f) * 15.0f) + 0.5f);
+ int _23277 = int((clamp(dot(_6603[_17034] - _13152, _15668) / _7123, 0.0f, 1.0f) * 15.0f) + 0.5f);
if (_23277 == 0)
{
_13154 = _13153;
_16309 = _16308;
- _14892 = _17116 + _23854[_17034];
+ _14892 = _17116 + _6603[_17034];
_18361 = _17135 + 1;
}
else
@@ -1702,7 +1696,7 @@ CS
if (_23277 == 15)
{
_13213 = _16308 + 1;
- _15671 = _13153 + _23854[_17034];
+ _15671 = _13153 + _6603[_17034];
}
else
{
@@ -1745,10 +1739,9 @@ CS
continue;
}
float4 _6657 = float4(uint4((clamp(_13152, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
- float4 _19268 = float4(uint4((clamp(_16337, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
- float4 _20506[16] = _3448;
- float4 _13870 = (_19268 - _6657) * 0.0039215688593685626983642578125f;
- float4 _18309 = _13870 * (1.0f / (dot(_13870, _13870) + 9.9999997473787516355514526367188e-05f));
+ float4 _7540 = float4(uint4((clamp(_16337, 0.0f.xxxx, 1.0f.xxxx) * 255.0f) + 0.5f.xxxx));
+ float4 _21910 = (_7540 - _6657) * 0.0039215688593685626983642578125f;
+ float4 _18309 = _21910 * (1.0f / (dot(_21910, _21910) + 9.9999997473787516355514526367188e-05f));
float _17056 = dot(_6657, _18309) * 0.0039215688593685626983642578125f;
uint2 _13160;
_13160 = uint2(0u, 0u);
@@ -1762,7 +1755,7 @@ CS
break;
}
_9506 = _13160;
- _9506.x = _13160.x | (uint((15.0f * clamp(dot(_20506[_16219], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16219 * 4));
+ _9506.x = _13160.x | (uint((15.0f * clamp(dot(_6603[_16219], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16219 * 4));
_8517 = _16219 + 1;
_13160 = _9506;
_16219 = _8517;
@@ -1780,7 +1773,7 @@ CS
break;
}
_9507 = _13161;
- _9507.y = _13161.y | (uint((15.0f * clamp(dot(_20506[8 + _16220], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16220 * 4));
+ _9507.y = _13161.y | (uint((15.0f * clamp(dot(_6603[8 + _16220], _18309) - _17056, 0.0f, 1.0f)) + 0.5f) << uint(_16220 * 4));
_8518 = _16220 + 1;
_13161 = _9507;
_16220 = _8518;
@@ -1797,8 +1790,8 @@ CS
_21168 = _13161;
}
bool4 _19657 = _15645.xxxx;
- float4 _17593 = float4(_19657.x ? _6657.x : _19268.x, _19657.y ? _6657.y : _19268.y, _19657.z ? _6657.z : _19268.z, _19657.w ? _6657.w : _19268.w);
- float4 _23068 = float4(_19657.x ? _19268.x : _6657.x, _19657.y ? _19268.y : _6657.y, _19657.z ? _19268.z : _6657.z, _19657.w ? _19268.w : _6657.w);
+ float4 _17593 = float4(_19657.x ? _6657.x : _7540.x, _19657.y ? _6657.y : _7540.y, _19657.z ? _6657.z : _7540.z, _19657.w ? _6657.w : _7540.w);
+ float4 _23069 = float4(_19657.x ? _7540.x : _6657.x, _19657.y ? _7540.y : _6657.y, _19657.z ? _7540.z : _6657.z, _19657.w ? _7540.w : _6657.w);
uint4 _16338;
_16338 = uint4(0u, 0u, 0u, 0u);
int _10589;
@@ -1849,7 +1842,7 @@ CS
_17035 = _10589;
continue;
}
- uint _10064 = uint(_23068.x) >> uint(1);
+ uint _10064 = uint(_23069.x) >> uint(1);
uint4 _16339;
_16339 = _16338;
int _10590;
@@ -1907,23 +1900,23 @@ CS
uint _20694;
uint4 _19672;
uint _13164 = _10065;
- int _17038 = 14;
+ int _17037 = 14;
[unroll]
for (;;)
{
- if (!(_17038 < 21))
+ if (!(_17037 < 21))
{
break;
}
- uint _23706 = uint(_17038 & 31);
- uint _16838 = min(uint(21 - _17038), (32u - _23706));
- switch (uint(_17038 >> 5))
+ uint _23706 = uint(_17037 & 31);
+ uint _16838 = min(uint(21 - _17037), (32u - _23706));
+ switch (uint(_17037 >> 5))
{
case 0u:
{
- uint4 _19269 = _16340;
- _19269.x = spvBitfieldInsert(_16340.x, _13164, _23706, _16838);
- _19672 = _19269;
+ uint4 _19267 = _16340;
+ _19267.x = spvBitfieldInsert(_16340.x, _13164, _23706, _16838);
+ _19672 = _19267;
break;
}
case 1u:
@@ -1945,43 +1938,43 @@ CS
}
}
_20694 = _13164 >> _16838;
- _10591 = _17038 + int(_16838);
+ _10591 = _17037 + int(_16838);
_13164 = _20694;
_16340 = _19672;
- _17038 = _10591;
+ _17037 = _10591;
continue;
}
- uint _10066 = uint(_23068.y) >> uint(1);
+ uint _10066 = uint(_23069.y) >> uint(1);
uint4 _16341;
_16341 = _16340;
int _10592;
uint _20695;
uint4 _19673;
uint _13165 = _10066;
- int _17039 = 21;
+ int _17038 = 21;
[unroll]
for (;;)
{
- if (!(_17039 < 28))
+ if (!(_17038 < 28))
{
break;
}
- uint _23707 = uint(_17039 & 31);
- uint _16839 = min(uint(28 - _17039), (32u - _23707));
- switch (uint(_17039 >> 5))
+ uint _23707 = uint(_17038 & 31);
+ uint _16839 = min(uint(28 - _17038), (32u - _23707));
+ switch (uint(_17038 >> 5))
{
case 0u:
{
- uint4 _19271 = _16341;
- _19271.x = spvBitfieldInsert(_16341.x, _13165, _23707, _16839);
- _19673 = _19271;
+ uint4 _19269 = _16341;
+ _19269.x = spvBitfieldInsert(_16341.x, _13165, _23707, _16839);
+ _19673 = _19269;
break;
}
case 1u:
{
- uint4 _19270 = _16341;
- _19270.y = spvBitfieldInsert(_16341.y, _13165, _23707, _16839);
- _19673 = _19270;
+ uint4 _19268 = _16341;
+ _19268.y = spvBitfieldInsert(_16341.y, _13165, _23707, _16839);
+ _19673 = _19268;
break;
}
case 2u:
@@ -1996,10 +1989,10 @@ CS
}
}
_20695 = _13165 >> _16839;
- _10592 = _17039 + int(_16839);
+ _10592 = _17038 + int(_16839);
_13165 = _20695;
_16341 = _19673;
- _17039 = _10592;
+ _17038 = _10592;
continue;
}
uint _10067 = uint(_17593.y) >> uint(1);
@@ -2009,30 +2002,30 @@ CS
uint _20696;
uint4 _19674;
uint _13166 = _10067;
- int _17040 = 28;
+ int _17039 = 28;
[unroll]
for (;;)
{
- if (!(_17040 < 35))
+ if (!(_17039 < 35))
{
break;
}
- uint _23708 = uint(_17040 & 31);
- uint _16840 = min(uint(35 - _17040), (32u - _23708));
- switch (uint(_17040 >> 5))
+ uint _23708 = uint(_17039 & 31);
+ uint _16840 = min(uint(35 - _17039), (32u - _23708));
+ switch (uint(_17039 >> 5))
{
case 0u:
{
- uint4 _19273 = _16342;
- _19273.x = spvBitfieldInsert(_16342.x, _13166, _23708, _16840);
- _19674 = _19273;
+ uint4 _19271 = _16342;
+ _19271.x = spvBitfieldInsert(_16342.x, _13166, _23708, _16840);
+ _19674 = _19271;
break;
}
case 1u:
{
- uint4 _19272 = _16342;
- _19272.y = spvBitfieldInsert(_16342.y, _13166, _23708, _16840);
- _19674 = _19272;
+ uint4 _19270 = _16342;
+ _19270.y = spvBitfieldInsert(_16342.y, _13166, _23708, _16840);
+ _19674 = _19270;
break;
}
case 2u:
@@ -2047,43 +2040,43 @@ CS
}
}
_20696 = _13166 >> _16840;
- _10593 = _17040 + int(_16840);
+ _10593 = _17039 + int(_16840);
_13166 = _20696;
_16342 = _19674;
- _17040 = _10593;
+ _17039 = _10593;
continue;
}
- uint _10068 = uint(_23068.z) >> uint(1);
+ uint _10068 = uint(_23069.z) >> uint(1);
uint4 _16343;
_16343 = _16342;
int _10594;
uint _20697;
uint4 _19675;
uint _13167 = _10068;
- int _17041 = 35;
+ int _17040 = 35;
[unroll]
for (;;)
{
- if (!(_17041 < 42))
+ if (!(_17040 < 42))
{
break;
}
- uint _23709 = uint(_17041 & 31);
- uint _16841 = min(uint(42 - _17041), (32u - _23709));
- switch (uint(_17041 >> 5))
+ uint _23709 = uint(_17040 & 31);
+ uint _16841 = min(uint(42 - _17040), (32u - _23709));
+ switch (uint(_17040 >> 5))
{
case 0u:
{
- uint4 _19275 = _16343;
- _19275.x = spvBitfieldInsert(_16343.x, _13167, _23709, _16841);
- _19675 = _19275;
+ uint4 _19273 = _16343;
+ _19273.x = spvBitfieldInsert(_16343.x, _13167, _23709, _16841);
+ _19675 = _19273;
break;
}
case 1u:
{
- uint4 _19274 = _16343;
- _19274.y = spvBitfieldInsert(_16343.y, _13167, _23709, _16841);
- _19675 = _19274;
+ uint4 _19272 = _16343;
+ _19272.y = spvBitfieldInsert(_16343.y, _13167, _23709, _16841);
+ _19675 = _19272;
break;
}
case 2u:
@@ -2098,10 +2091,10 @@ CS
}
}
_20697 = _13167 >> _16841;
- _10594 = _17041 + int(_16841);
+ _10594 = _17040 + int(_16841);
_13167 = _20697;
_16343 = _19675;
- _17041 = _10594;
+ _17040 = _10594;
continue;
}
uint _10069 = uint(_17593.z) >> uint(1);
@@ -2111,30 +2104,30 @@ CS
uint _20698;
uint4 _19676;
uint _13168 = _10069;
- int _17042 = 42;
+ int _17041 = 42;
[unroll]
for (;;)
{
- if (!(_17042 < 49))
+ if (!(_17041 < 49))
{
break;
}
- uint _23710 = uint(_17042 & 31);
- uint _16842 = min(uint(49 - _17042), (32u - _23710));
- switch (uint(_17042 >> 5))
+ uint _23710 = uint(_17041 & 31);
+ uint _16842 = min(uint(49 - _17041), (32u - _23710));
+ switch (uint(_17041 >> 5))
{
case 0u:
{
- uint4 _19277 = _16344;
- _19277.x = spvBitfieldInsert(_16344.x, _13168, _23710, _16842);
- _19676 = _19277;
+ uint4 _19275 = _16344;
+ _19275.x = spvBitfieldInsert(_16344.x, _13168, _23710, _16842);
+ _19676 = _19275;
break;
}
case 1u:
{
- uint4 _19276 = _16344;
- _19276.y = spvBitfieldInsert(_16344.y, _13168, _23710, _16842);
- _19676 = _19276;
+ uint4 _19274 = _16344;
+ _19274.y = spvBitfieldInsert(_16344.y, _13168, _23710, _16842);
+ _19676 = _19274;
break;
}
case 2u:
@@ -2149,10 +2142,10 @@ CS
}
}
_20698 = _13168 >> _16842;
- _10595 = _17042 + int(_16842);
+ _10595 = _17041 + int(_16842);
_13168 = _20698;
_16344 = _19676;
- _17042 = _10595;
+ _17041 = _10595;
continue;
}
uint4 _16345;
@@ -2161,30 +2154,30 @@ CS
uint _20699;
uint4 _19677;
uint _13169 = 127u;
- int _17043 = 49;
+ int _17042 = 49;
[unroll]
for (;;)
{
- if (!(_17043 < 56))
+ if (!(_17042 < 56))
{
break;
}
- uint _23711 = uint(_17043 & 31);
- uint _16843 = min(uint(56 - _17043), (32u - _23711));
- switch (uint(_17043 >> 5))
+ uint _23711 = uint(_17042 & 31);
+ uint _16843 = min(uint(56 - _17042), (32u - _23711));
+ switch (uint(_17042 >> 5))
{
case 0u:
{
- uint4 _19279 = _16345;
- _19279.x = spvBitfieldInsert(_16345.x, _13169, _23711, _16843);
- _19677 = _19279;
+ uint4 _19277 = _16345;
+ _19277.x = spvBitfieldInsert(_16345.x, _13169, _23711, _16843);
+ _19677 = _19277;
break;
}
case 1u:
{
- uint4 _19278 = _16345;
- _19278.y = spvBitfieldInsert(_16345.y, _13169, _23711, _16843);
- _19677 = _19278;
+ uint4 _19276 = _16345;
+ _19276.y = spvBitfieldInsert(_16345.y, _13169, _23711, _16843);
+ _19677 = _19276;
break;
}
case 2u:
@@ -2199,10 +2192,10 @@ CS
}
}
_20699 = _13169 >> _16843;
- _10596 = _17043 + int(_16843);
+ _10596 = _17042 + int(_16843);
_13169 = _20699;
_16345 = _19677;
- _17043 = _10596;
+ _17042 = _10596;
continue;
}
uint4 _16346;
@@ -2211,30 +2204,30 @@ CS
uint _20700;
uint4 _19678;
uint _13170 = 127u;
- int _17044 = 56;
+ int _17043 = 56;
[unroll]
for (;;)
{
- if (!(_17044 < 63))
+ if (!(_17043 < 63))
{
break;
}
- uint _23712 = uint(_17044 & 31);
- uint _16844 = min(uint(63 - _17044), (32u - _23712));
- switch (uint(_17044 >> 5))
+ uint _23712 = uint(_17043 & 31);
+ uint _16844 = min(uint(63 - _17043), (32u - _23712));
+ switch (uint(_17043 >> 5))
{
case 0u:
{
- uint4 _19282 = _16346;
- _19282.x = spvBitfieldInsert(_16346.x, _13170, _23712, _16844);
- _19678 = _19282;
+ uint4 _19279 = _16346;
+ _19279.x = spvBitfieldInsert(_16346.x, _13170, _23712, _16844);
+ _19678 = _19279;
break;
}
case 1u:
{
- uint4 _19281 = _16346;
- _19281.y = spvBitfieldInsert(_16346.y, _13170, _23712, _16844);
- _19678 = _19281;
+ uint4 _19278 = _16346;
+ _19278.y = spvBitfieldInsert(_16346.y, _13170, _23712, _16844);
+ _19678 = _19278;
break;
}
case 2u:
@@ -2249,10 +2242,10 @@ CS
}
}
_20700 = _13170 >> _16844;
- _10597 = _17044 + int(_16844);
+ _10597 = _17043 + int(_16844);
_13170 = _20700;
_16346 = _19678;
- _17044 = _10597;
+ _17043 = _10597;
continue;
}
uint4 _16347;
@@ -2261,30 +2254,30 @@ CS
uint _20701;
uint4 _19679;
uint _13171 = 1u;
- int _17045 = 63;
+ int _17044 = 63;
[unroll]
for (;;)
{
- if (!(_17045 < 64))
+ if (!(_17044 < 64))
{
break;
}
- uint _23713 = uint(_17045 & 31);
- uint _16845 = min(uint(64 - _17045), (32u - _23713));
- switch (uint(_17045 >> 5))
+ uint _23713 = uint(_17044 & 31);
+ uint _16845 = min(uint(64 - _17044), (32u - _23713));
+ switch (uint(_17044 >> 5))
{
case 0u:
{
- uint4 _19285 = _16347;
- _19285.x = spvBitfieldInsert(_16347.x, _13171, _23713, _16845);
- _19679 = _19285;
+ uint4 _19283 = _16347;
+ _19283.x = spvBitfieldInsert(_16347.x, _13171, _23713, _16845);
+ _19679 = _19283;
break;
}
case 1u:
{
- uint4 _19284 = _16347;
- _19284.y = spvBitfieldInsert(_16347.y, _13171, _23713, _16845);
- _19679 = _19284;
+ uint4 _19282 = _16347;
+ _19282.y = spvBitfieldInsert(_16347.y, _13171, _23713, _16845);
+ _19679 = _19282;
break;
}
case 2u:
@@ -2299,10 +2292,10 @@ CS
}
}
_20701 = _13171 >> _16845;
- _10598 = _17045 + int(_16845);
+ _10598 = _17044 + int(_16845);
_13171 = _20701;
_16347 = _19679;
- _17045 = _10598;
+ _17044 = _10598;
continue;
}
uint4 _23136 = _16347;
game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_dxt5.slang
modified • +27 / -22 • changes: 49
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -40,16 +40,16 @@ CS
Texture2D g_tSrc < Attribute("SrcTex"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (13848 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (13428 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _990
{
uint _m0;
uint _m1;
};
- static const float _570[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1000000.0f };
- static const float _2509[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1000000.0f };
+ static const float _835[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1000000.0f };
+ static const float _2774[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1000000.0f };
cbuffer _Globals_ : register(b0, space0)
{
@@ -170,11 +170,11 @@ CS
uint _17514 = uint(clamp(_7518, 0.0f, 1.0f) * 31.0f);
uint _17515 = uint(clamp(_23665, 0.0f, 1.0f) * 63.0f);
uint _9971 = uint(clamp(_22729, 0.0f, 1.0f) * 31.0f);
- uint _10217 = (((_17514 + uint(_7518 > _570[_17514])) << uint(11)) | ((_17515 + uint(_23665 > _2509[_17515])) << uint(5))) | (_9971 + uint(_22729 > _570[_9971]));
+ uint _10217 = (((_17514 + uint(_7518 > _835[_17514])) << uint(11)) | ((_17515 + uint(_23665 > _2774[_17515])) << uint(5))) | (_9971 + uint(_22729 > _835[_9971]));
uint _17516 = uint(clamp(_10163, 0.0f, 1.0f) * 31.0f);
uint _17517 = uint(clamp(_21065, 0.0f, 1.0f) * 63.0f);
uint _9972 = uint(clamp(_7478, 0.0f, 1.0f) * 31.0f);
- uint _23070 = (((_17516 + uint(_10163 > _570[_17516])) << uint(11)) | ((_17517 + uint(_21065 > _2509[_17517])) << uint(5))) | (_9972 + uint(_7478 > _570[_9972]));
+ uint _23070 = (((_17516 + uint(_10163 > _835[_17516])) << uint(11)) | ((_17517 + uint(_21065 > _2774[_17517])) << uint(5))) | (_9972 + uint(_7478 > _835[_9972]));
bool _22273 = _10217 < _23070;
_990 _22365 = { _22273 ? _23070 : _10217, _22273 ? _10217 : _23070 };
_4616[_3122] = _22365;
@@ -183,20 +183,25 @@ CS
float3 _17633 = _3401.xyz;
uint3 _23854[4];
uint _24547 = (_4616[_3122]._m0 >> uint(11)) & 31u;
- uint _16188 = (_4616[_3122]._m0 >> uint(5)) & 63u;
- uint _9953 = (_4616[_3122]._m0) & 31u;
- _23854[0] = uint3((_24547 << uint(3)) | (_24547 >> uint(2)), (_16188 << uint(2)) | (_16188 >> uint(4)), (_9953 << uint(3)) | (_9953 >> uint(2)));
+ uint _22227 = (_4616[_3122]._m0 >> uint(5)) & 63u;
+ uint _14202 = _4616[_3122]._m0 & 31u;
+ uint _20832 = (_24547 << uint(3)) | (_24547 >> uint(2));
+ uint _20833 = (_22227 << uint(2)) | (_22227 >> uint(4));
+ uint _19321 = (_14202 << uint(3)) | (_14202 >> uint(2));
+ _23854[0] = uint3(_20832, _20833, _19321);
uint _24548 = (_4616[_3122]._m1 >> uint(11)) & 31u;
- uint _16189 = (_4616[_3122]._m1 >> uint(5)) & 63u;
- uint _9954 = (_4616[_3122]._m1) & 31u;
+ uint _22228 = (_4616[_3122]._m1 >> uint(5)) & 63u;
+ uint _14203 = _4616[_3122]._m1 & 31u;
uint _20834 = (_24548 << uint(3)) | (_24548 >> uint(2));
- _23854[1] = uint3(_20834, (_16189 << uint(2)) | (_16189 >> uint(4)), (_9954 << uint(3)) | (_9954 >> uint(2)));
- _23854[2].x = (((43u * _23854[0].x) + (21u * _20834)) + 32u) >> uint(6);
- _23854[2].y = (((43u * _23854[0].y) + (21u * _23854[1].y)) + 32u) >> uint(6);
- _23854[2].z = (((43u * _23854[0].z) + (21u * _23854[1].z)) + 32u) >> uint(6);
- _23854[3].x = (((43u * _23854[1].x) + (21u * _23854[0].x)) + 32u) >> uint(6);
- _23854[3].y = (((43u * _23854[1].y) + (21u * _23854[0].y)) + 32u) >> uint(6);
- _23854[3].z = (((43u * _23854[1].z) + (21u * _23854[0].z)) + 32u) >> uint(6);
+ uint _20835 = (_22228 << uint(2)) | (_22228 >> uint(4));
+ uint _19322 = (_14203 << uint(3)) | (_14203 >> uint(2));
+ _23854[1] = uint3(_20834, _20835, _19322);
+ _23854[2].x = (((43u * _20832) + (21u * _20834)) + 32u) >> uint(6);
+ _23854[2].y = (((43u * _20833) + (21u * _20835)) + 32u) >> uint(6);
+ _23854[2].z = (((43u * _19321) + (21u * _19322)) + 32u) >> uint(6);
+ _23854[3].x = (((43u * _20834) + (21u * _20832)) + 32u) >> uint(6);
+ _23854[3].y = (((43u * _20835) + (21u * _20833)) + 32u) >> uint(6);
+ _23854[3].z = (((43u * _19322) + (21u * _19321)) + 32u) >> uint(6);
uint _11407;
float3 _20506[4];
uint _13039 = 0u;
@@ -238,10 +243,10 @@ CS
}
uint _17340 = _3699[_3122];
int _13195 = int((_8316 * 7u) + uint(int(_11502) - int(_17340 * 7u)));
- int _24611 = (_13195 >= int(_6776)) ? (-1) : 0;
- int _15235 = _13195 - int(_6776 & uint(_24611));
- int _24687 = (_15235 >= int(_7236)) ? (-1) : 0;
- int _16739 = (-(((_24611 & 4) + (_24687 & 2)) + int((_15235 - int(_7236 & uint(_24687))) >= int(_21936)))) & 7;
+ bool _8011 = _13195 >= int(_6776);
+ int _15235 = _13195 - int(_6776 & uint(_8011 ? (-1) : 0));
+ bool _12850 = _15235 >= int(_7236);
+ int _16739 = (-(((_8011 ? 4 : 0) + (_12850 ? 2 : 0)) + int((_15235 - int(_7236 & uint(_12850 ? (-1) : 0))) >= int(_21936)))) & 7;
int _22562 = _16739 ^ int(2 > _16739);
if (_5443 == 5u)
{
game/core/shaders_vulkan_dir/shaders/vfx/cs_compress_stb_dxt5.slang
modified • +68 / -72 • changes: 140
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -34,24 +34,24 @@ CS
Texture2D g_tSrc < Attribute("SrcTex"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (41180 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (40512 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- static const uint _2487[32] = { 0u, 8u, 16u, 24u, 33u, 41u, 49u, 57u, 66u, 74u, 82u, 90u, 99u, 107u, 115u, 123u, 132u, 140u, 148u, 156u, 165u, 173u, 181u, 189u, 198u, 206u, 214u, 222u, 231u, 239u, 247u, 255u };
- static const uint _1397[64] = { 0u, 4u, 8u, 12u, 16u, 20u, 24u, 28u, 32u, 36u, 40u, 44u, 48u, 52u, 56u, 60u, 65u, 69u, 73u, 77u, 81u, 85u, 89u, 93u, 97u, 101u, 105u, 109u, 113u, 117u, 121u, 125u, 130u, 134u, 138u, 142u, 146u, 150u, 154u, 158u, 162u, 166u, 170u, 174u, 178u, 182u, 186u, 190u, 195u, 199u, 203u, 207u, 211u, 215u, 219u, 223u, 227u, 231u, 235u, 239u, 243u, 247u, 251u, 255u };
- static const float _1549[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1.0f };
- static const float _1902[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1.0f };
- static const int _652[4] = { 3, 0, 2, 1 };
- static const int _1536[4] = { 589824, 2304, 262402, 66562 };
- static const uint2 _2967[256] = { uint2(0u, 0u), uint2(0u, 0u), uint2(0u, 1u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 0u), uint2(0u, 4u), uint2(2u, 1u), uint2(2u, 1u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(1u, 5u), uint2(3u, 2u), uint2(3u, 2u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(4u, 1u), uint2(4u, 2u), uint2(4u, 2u), uint2(4u, 2u), uint2(3u, 5u), uint2(5u, 1u), uint2(5u, 1u), uint2(5u, 2u), uint2(4u, 4u), uint2(5u, 3u), uint2(5u, 3u), uint2(5u, 3u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 3u), uint2(5u, 5u), uint2(6u, 4u), uint2(6u, 4u), uint2(4u, 8u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 5u), uint2(5u, 9u), uint2(7u, 6u), uint2(7u, 6u), uint2(8u, 4u), uint2(8u, 4u), uint2(8u, 5u), uint2(8u, 5u), uint2(8u, 6u), uint2(8u, 6u), uint2(8u, 6u), uint2(7u, 9u), uint2(9u, 5u), uint2(9u, 5u), uint2(9u, 6u), uint2(8u, 8u), uint2(9u, 7u), uint2(9u, 7u), uint2(9u, 7u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 7u), uint2(9u, 9u), uint2(10u, 8u), uint2(10u, 8u), uint2(8u, 12u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 9u), uint2(9u, 13u), uint2(11u, 10u), uint2(11u, 10u), uint2(12u, 8u), uint2(12u, 8u), uint2(12u, 9u), uint2(12u, 9u), uint2(12u, 10u), uint2(12u, 10u), uint2(12u, 10u), uint2(11u, 13u), uint2(13u, 9u), uint2(13u, 9u), uint2(13u, 10u), uint2(12u, 12u), uint2(13u, 11u), uint2(13u, 11u), uint2(13u, 11u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 11u), uint2(13u, 13u), uint2(14u, 12u), uint2(14u, 12u), uint2(12u, 16u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 13u), uint2(13u, 17u), uint2(15u, 14u), uint2(15u, 14u), uint2(16u, 12u), uint2(16u, 12u), uint2(16u, 13u), uint2(16u, 13u), uint2(16u, 14u), uint2(16u, 14u), uint2(16u, 14u), uint2(15u, 17u), uint2(17u, 13u), uint2(17u, 13u), uint2(17u, 14u), uint2(16u, 16u), uint2(17u, 15u), uint2(17u, 15u), uint2(17u, 15u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 15u), uint2(17u, 17u), uint2(18u, 16u), uint2(18u, 16u), uint2(16u, 20u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 17u), uint2(17u, 21u), uint2(19u, 18u), uint2(19u, 18u), uint2(20u, 16u), uint2(20u, 16u), uint2(20u, 17u), uint2(20u, 17u), uint2(20u, 18u), uint2(20u, 18u), uint2(20u, 18u), uint2(19u, 21u), uint2(21u, 17u), uint2(21u, 17u), uint2(21u, 18u), uint2(20u, 20u), uint2(21u, 19u), uint2(21u, 19u), uint2(21u, 19u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 19u), uint2(21u, 21u), uint2(22u, 20u), uint2(22u, 20u), uint2(20u, 24u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 21u), uint2(21u, 25u), uint2(23u, 22u), uint2(23u, 22u), uint2(24u, 20u), uint2(24u, 20u), uint2(24u, 21u), uint2(24u, 21u), uint2(24u, 22u), uint2(24u, 22u), uint2(24u, 22u), uint2(23u, 25u), uint2(25u, 21u), uint2(25u, 21u), uint2(25u, 22u), uint2(24u, 24u), uint2(25u, 23u), uint2(25u, 23u), uint2(25u, 23u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 23u), uint2(25u, 25u), uint2(26u, 24u), uint2(26u, 24u), uint2(24u, 28u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 25u), uint2(25u, 29u), uint2(27u, 26u), uint2(27u, 26u), uint2(28u, 24u), uint2(28u, 24u), uint2(28u, 25u), uint2(28u, 25u), uint2(28u, 26u), uint2(28u, 26u), uint2(28u, 26u), uint2(27u, 29u), uint2(29u, 25u), uint2(29u, 25u), uint2(29u, 26u), uint2(28u, 28u), uint2(29u, 27u), uint2(29u, 27u), uint2(29u, 27u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 27u), uint2(29u, 29u), uint2(30u, 28u), uint2(30u, 28u), uint2(30u, 28u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 29u), uint2(31u, 29u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 31u), uint2(31u, 31u) };
- static const uint2 _929[256] = { uint2(0u, 0u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(5u, 0u), uint2(5u, 1u), uint2(6u, 0u), uint2(6u, 0u), uint2(6u, 1u), uint2(7u, 0u), uint2(7u, 0u), uint2(7u, 1u), uint2(8u, 0u), uint2(8u, 1u), uint2(8u, 1u), uint2(8u, 2u), uint2(9u, 1u), uint2(9u, 2u), uint2(9u, 2u), uint2(9u, 3u), uint2(10u, 2u), uint2(10u, 3u), uint2(10u, 3u), uint2(10u, 4u), uint2(11u, 3u), uint2(11u, 4u), uint2(11u, 4u), uint2(11u, 5u), uint2(12u, 4u), uint2(12u, 5u), uint2(12u, 5u), uint2(12u, 6u), uint2(13u, 5u), uint2(13u, 6u), uint2(8u, 16u), uint2(13u, 7u), uint2(14u, 6u), uint2(14u, 7u), uint2(9u, 17u), uint2(14u, 8u), uint2(15u, 7u), uint2(15u, 8u), uint2(11u, 16u), uint2(15u, 9u), uint2(15u, 10u), uint2(16u, 8u), uint2(16u, 9u), uint2(16u, 10u), uint2(15u, 13u), uint2(17u, 9u), uint2(17u, 10u), uint2(17u, 11u), uint2(15u, 16u), uint2(18u, 10u), uint2(18u, 11u), uint2(18u, 12u), uint2(16u, 16u), uint2(19u, 11u), uint2(19u, 12u), uint2(19u, 13u), uint2(17u, 17u), uint2(20u, 12u), uint2(20u, 13u), uint2(20u, 14u), uint2(19u, 16u), uint2(21u, 13u), uint2(21u, 14u), uint2(21u, 15u), uint2(20u, 17u), uint2(22u, 14u), uint2(22u, 15u), uint2(25u, 10u), uint2(22u, 16u), uint2(23u, 15u), uint2(23u, 16u), uint2(26u, 11u), uint2(23u, 17u), uint2(24u, 16u), uint2(24u, 17u), uint2(27u, 12u), uint2(24u, 18u), uint2(25u, 17u), uint2(25u, 18u), uint2(28u, 13u), uint2(25u, 19u), uint2(26u, 18u), uint2(26u, 19u), uint2(29u, 14u), uint2(26u, 20u), uint2(27u, 19u), uint2(27u, 20u), uint2(30u, 15u), uint2(27u, 21u), uint2(28u, 20u), uint2(28u, 21u), uint2(28u, 21u), uint2(28u, 22u), uint2(29u, 21u), uint2(29u, 22u), uint2(24u, 32u), uint2(29u, 23u), uint2(30u, 22u), uint2(30u, 23u), uint2(25u, 33u), uint2(30u, 24u), uint2(31u, 23u), uint2(31u, 24u), uint2(27u, 32u), uint2(31u, 25u), uint2(31u, 26u), uint2(32u, 24u), uint2(32u, 25u), uint2(32u, 26u), uint2(31u, 29u), uint2(33u, 25u), uint2(33u, 26u), uint2(33u, 27u), uint2(31u, 32u), uint2(34u, 26u), uint2(34u, 27u), uint2(34u, 28u), uint2(32u, 32u), uint2(35u, 27u), uint2(35u, 28u), uint2(35u, 29u), uint2(33u, 33u), uint2(36u, 28u), uint2(36u, 29u), uint2(36u, 30u), uint2(35u, 32u), uint2(37u, 29u), uint2(37u, 30u), uint2(37u, 31u), uint2(36u, 33u), uint2(38u, 30u), uint2(38u, 31u), uint2(41u, 26u), uint2(38u, 32u), uint2(39u, 31u), uint2(39u, 32u), uint2(42u, 27u), uint2(39u, 33u), uint2(40u, 32u), uint2(40u, 33u), uint2(43u, 28u), uint2(40u, 34u), uint2(41u, 33u), uint2(41u, 34u), uint2(44u, 29u), uint2(41u, 35u), uint2(42u, 34u), uint2(42u, 35u), uint2(45u, 30u), uint2(42u, 36u), uint2(43u, 35u), uint2(43u, 36u), uint2(46u, 31u), uint2(43u, 37u), uint2(44u, 36u), uint2(44u, 37u), uint2(44u, 37u), uint2(44u, 38u), uint2(45u, 37u), uint2(45u, 38u), uint2(40u, 48u), uint2(45u, 39u), uint2(46u, 38u), uint2(46u, 39u), uint2(41u, 49u), uint2(46u, 40u), uint2(47u, 39u), uint2(47u, 40u), uint2(43u, 48u), uint2(47u, 41u), uint2(47u, 42u), uint2(48u, 40u), uint2(48u, 41u), uint2(48u, 42u), uint2(47u, 45u), uint2(49u, 41u), uint2(49u, 42u), uint2(49u, 43u), uint2(47u, 48u), uint2(50u, 42u), uint2(50u, 43u), uint2(50u, 44u), uint2(48u, 48u), uint2(51u, 43u), uint2(51u, 44u), uint2(51u, 45u), uint2(49u, 49u), uint2(52u, 44u), uint2(52u, 45u), uint2(52u, 46u), uint2(51u, 48u), uint2(53u, 45u), uint2(53u, 46u), uint2(53u, 47u), uint2(52u, 49u), uint2(54u, 46u), uint2(54u, 47u), uint2(57u, 42u), uint2(54u, 48u), uint2(55u, 47u), uint2(55u, 48u), uint2(58u, 43u), uint2(55u, 49u), uint2(56u, 48u), uint2(56u, 49u), uint2(59u, 44u), uint2(56u, 50u), uint2(57u, 49u), uint2(57u, 50u), uint2(60u, 45u), uint2(57u, 51u), uint2(58u, 50u), uint2(58u, 51u), uint2(61u, 46u), uint2(58u, 52u), uint2(59u, 51u), uint2(59u, 52u), uint2(62u, 47u), uint2(59u, 53u), uint2(60u, 52u), uint2(60u, 53u), uint2(60u, 53u), uint2(60u, 54u), uint2(61u, 53u), uint2(61u, 54u), uint2(61u, 54u), uint2(61u, 55u), uint2(62u, 54u), uint2(62u, 55u), uint2(62u, 55u), uint2(62u, 56u), uint2(63u, 55u), uint2(63u, 56u), uint2(63u, 56u), uint2(63u, 57u), uint2(63u, 58u), uint2(63u, 59u), uint2(63u, 59u), uint2(63u, 60u), uint2(63u, 61u), uint2(63u, 62u), uint2(63u, 62u), uint2(63u, 63u) };
+ static const uint2 _720[256] = { uint2(0u, 0u), uint2(0u, 0u), uint2(0u, 1u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 0u), uint2(0u, 4u), uint2(2u, 1u), uint2(2u, 1u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(1u, 5u), uint2(3u, 2u), uint2(3u, 2u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(4u, 1u), uint2(4u, 2u), uint2(4u, 2u), uint2(4u, 2u), uint2(3u, 5u), uint2(5u, 1u), uint2(5u, 1u), uint2(5u, 2u), uint2(4u, 4u), uint2(5u, 3u), uint2(5u, 3u), uint2(5u, 3u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 2u), uint2(6u, 3u), uint2(5u, 5u), uint2(6u, 4u), uint2(6u, 4u), uint2(4u, 8u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 3u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 4u), uint2(7u, 5u), uint2(5u, 9u), uint2(7u, 6u), uint2(7u, 6u), uint2(8u, 4u), uint2(8u, 4u), uint2(8u, 5u), uint2(8u, 5u), uint2(8u, 6u), uint2(8u, 6u), uint2(8u, 6u), uint2(7u, 9u), uint2(9u, 5u), uint2(9u, 5u), uint2(9u, 6u), uint2(8u, 8u), uint2(9u, 7u), uint2(9u, 7u), uint2(9u, 7u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 6u), uint2(10u, 7u), uint2(9u, 9u), uint2(10u, 8u), uint2(10u, 8u), uint2(8u, 12u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 7u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 8u), uint2(11u, 9u), uint2(9u, 13u), uint2(11u, 10u), uint2(11u, 10u), uint2(12u, 8u), uint2(12u, 8u), uint2(12u, 9u), uint2(12u, 9u), uint2(12u, 10u), uint2(12u, 10u), uint2(12u, 10u), uint2(11u, 13u), uint2(13u, 9u), uint2(13u, 9u), uint2(13u, 10u), uint2(12u, 12u), uint2(13u, 11u), uint2(13u, 11u), uint2(13u, 11u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 10u), uint2(14u, 11u), uint2(13u, 13u), uint2(14u, 12u), uint2(14u, 12u), uint2(12u, 16u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 11u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 12u), uint2(15u, 13u), uint2(13u, 17u), uint2(15u, 14u), uint2(15u, 14u), uint2(16u, 12u), uint2(16u, 12u), uint2(16u, 13u), uint2(16u, 13u), uint2(16u, 14u), uint2(16u, 14u), uint2(16u, 14u), uint2(15u, 17u), uint2(17u, 13u), uint2(17u, 13u), uint2(17u, 14u), uint2(16u, 16u), uint2(17u, 15u), uint2(17u, 15u), uint2(17u, 15u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 14u), uint2(18u, 15u), uint2(17u, 17u), uint2(18u, 16u), uint2(18u, 16u), uint2(16u, 20u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 15u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 16u), uint2(19u, 17u), uint2(17u, 21u), uint2(19u, 18u), uint2(19u, 18u), uint2(20u, 16u), uint2(20u, 16u), uint2(20u, 17u), uint2(20u, 17u), uint2(20u, 18u), uint2(20u, 18u), uint2(20u, 18u), uint2(19u, 21u), uint2(21u, 17u), uint2(21u, 17u), uint2(21u, 18u), uint2(20u, 20u), uint2(21u, 19u), uint2(21u, 19u), uint2(21u, 19u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 18u), uint2(22u, 19u), uint2(21u, 21u), uint2(22u, 20u), uint2(22u, 20u), uint2(20u, 24u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 19u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 20u), uint2(23u, 21u), uint2(21u, 25u), uint2(23u, 22u), uint2(23u, 22u), uint2(24u, 20u), uint2(24u, 20u), uint2(24u, 21u), uint2(24u, 21u), uint2(24u, 22u), uint2(24u, 22u), uint2(24u, 22u), uint2(23u, 25u), uint2(25u, 21u), uint2(25u, 21u), uint2(25u, 22u), uint2(24u, 24u), uint2(25u, 23u), uint2(25u, 23u), uint2(25u, 23u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 22u), uint2(26u, 23u), uint2(25u, 25u), uint2(26u, 24u), uint2(26u, 24u), uint2(24u, 28u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 23u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 24u), uint2(27u, 25u), uint2(25u, 29u), uint2(27u, 26u), uint2(27u, 26u), uint2(28u, 24u), uint2(28u, 24u), uint2(28u, 25u), uint2(28u, 25u), uint2(28u, 26u), uint2(28u, 26u), uint2(28u, 26u), uint2(27u, 29u), uint2(29u, 25u), uint2(29u, 25u), uint2(29u, 26u), uint2(28u, 28u), uint2(29u, 27u), uint2(29u, 27u), uint2(29u, 27u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 26u), uint2(30u, 27u), uint2(29u, 29u), uint2(30u, 28u), uint2(30u, 28u), uint2(30u, 28u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 27u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 28u), uint2(31u, 29u), uint2(31u, 29u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 30u), uint2(31u, 31u), uint2(31u, 31u) };
+ static const uint2 _1694[256] = { uint2(0u, 0u), uint2(0u, 1u), uint2(1u, 0u), uint2(1u, 0u), uint2(1u, 1u), uint2(2u, 0u), uint2(2u, 1u), uint2(3u, 0u), uint2(3u, 0u), uint2(3u, 1u), uint2(4u, 0u), uint2(4u, 0u), uint2(4u, 1u), uint2(5u, 0u), uint2(5u, 1u), uint2(6u, 0u), uint2(6u, 0u), uint2(6u, 1u), uint2(7u, 0u), uint2(7u, 0u), uint2(7u, 1u), uint2(8u, 0u), uint2(8u, 1u), uint2(8u, 1u), uint2(8u, 2u), uint2(9u, 1u), uint2(9u, 2u), uint2(9u, 2u), uint2(9u, 3u), uint2(10u, 2u), uint2(10u, 3u), uint2(10u, 3u), uint2(10u, 4u), uint2(11u, 3u), uint2(11u, 4u), uint2(11u, 4u), uint2(11u, 5u), uint2(12u, 4u), uint2(12u, 5u), uint2(12u, 5u), uint2(12u, 6u), uint2(13u, 5u), uint2(13u, 6u), uint2(8u, 16u), uint2(13u, 7u), uint2(14u, 6u), uint2(14u, 7u), uint2(9u, 17u), uint2(14u, 8u), uint2(15u, 7u), uint2(15u, 8u), uint2(11u, 16u), uint2(15u, 9u), uint2(15u, 10u), uint2(16u, 8u), uint2(16u, 9u), uint2(16u, 10u), uint2(15u, 13u), uint2(17u, 9u), uint2(17u, 10u), uint2(17u, 11u), uint2(15u, 16u), uint2(18u, 10u), uint2(18u, 11u), uint2(18u, 12u), uint2(16u, 16u), uint2(19u, 11u), uint2(19u, 12u), uint2(19u, 13u), uint2(17u, 17u), uint2(20u, 12u), uint2(20u, 13u), uint2(20u, 14u), uint2(19u, 16u), uint2(21u, 13u), uint2(21u, 14u), uint2(21u, 15u), uint2(20u, 17u), uint2(22u, 14u), uint2(22u, 15u), uint2(25u, 10u), uint2(22u, 16u), uint2(23u, 15u), uint2(23u, 16u), uint2(26u, 11u), uint2(23u, 17u), uint2(24u, 16u), uint2(24u, 17u), uint2(27u, 12u), uint2(24u, 18u), uint2(25u, 17u), uint2(25u, 18u), uint2(28u, 13u), uint2(25u, 19u), uint2(26u, 18u), uint2(26u, 19u), uint2(29u, 14u), uint2(26u, 20u), uint2(27u, 19u), uint2(27u, 20u), uint2(30u, 15u), uint2(27u, 21u), uint2(28u, 20u), uint2(28u, 21u), uint2(28u, 21u), uint2(28u, 22u), uint2(29u, 21u), uint2(29u, 22u), uint2(24u, 32u), uint2(29u, 23u), uint2(30u, 22u), uint2(30u, 23u), uint2(25u, 33u), uint2(30u, 24u), uint2(31u, 23u), uint2(31u, 24u), uint2(27u, 32u), uint2(31u, 25u), uint2(31u, 26u), uint2(32u, 24u), uint2(32u, 25u), uint2(32u, 26u), uint2(31u, 29u), uint2(33u, 25u), uint2(33u, 26u), uint2(33u, 27u), uint2(31u, 32u), uint2(34u, 26u), uint2(34u, 27u), uint2(34u, 28u), uint2(32u, 32u), uint2(35u, 27u), uint2(35u, 28u), uint2(35u, 29u), uint2(33u, 33u), uint2(36u, 28u), uint2(36u, 29u), uint2(36u, 30u), uint2(35u, 32u), uint2(37u, 29u), uint2(37u, 30u), uint2(37u, 31u), uint2(36u, 33u), uint2(38u, 30u), uint2(38u, 31u), uint2(41u, 26u), uint2(38u, 32u), uint2(39u, 31u), uint2(39u, 32u), uint2(42u, 27u), uint2(39u, 33u), uint2(40u, 32u), uint2(40u, 33u), uint2(43u, 28u), uint2(40u, 34u), uint2(41u, 33u), uint2(41u, 34u), uint2(44u, 29u), uint2(41u, 35u), uint2(42u, 34u), uint2(42u, 35u), uint2(45u, 30u), uint2(42u, 36u), uint2(43u, 35u), uint2(43u, 36u), uint2(46u, 31u), uint2(43u, 37u), uint2(44u, 36u), uint2(44u, 37u), uint2(44u, 37u), uint2(44u, 38u), uint2(45u, 37u), uint2(45u, 38u), uint2(40u, 48u), uint2(45u, 39u), uint2(46u, 38u), uint2(46u, 39u), uint2(41u, 49u), uint2(46u, 40u), uint2(47u, 39u), uint2(47u, 40u), uint2(43u, 48u), uint2(47u, 41u), uint2(47u, 42u), uint2(48u, 40u), uint2(48u, 41u), uint2(48u, 42u), uint2(47u, 45u), uint2(49u, 41u), uint2(49u, 42u), uint2(49u, 43u), uint2(47u, 48u), uint2(50u, 42u), uint2(50u, 43u), uint2(50u, 44u), uint2(48u, 48u), uint2(51u, 43u), uint2(51u, 44u), uint2(51u, 45u), uint2(49u, 49u), uint2(52u, 44u), uint2(52u, 45u), uint2(52u, 46u), uint2(51u, 48u), uint2(53u, 45u), uint2(53u, 46u), uint2(53u, 47u), uint2(52u, 49u), uint2(54u, 46u), uint2(54u, 47u), uint2(57u, 42u), uint2(54u, 48u), uint2(55u, 47u), uint2(55u, 48u), uint2(58u, 43u), uint2(55u, 49u), uint2(56u, 48u), uint2(56u, 49u), uint2(59u, 44u), uint2(56u, 50u), uint2(57u, 49u), uint2(57u, 50u), uint2(60u, 45u), uint2(57u, 51u), uint2(58u, 50u), uint2(58u, 51u), uint2(61u, 46u), uint2(58u, 52u), uint2(59u, 51u), uint2(59u, 52u), uint2(62u, 47u), uint2(59u, 53u), uint2(60u, 52u), uint2(60u, 53u), uint2(60u, 53u), uint2(60u, 54u), uint2(61u, 53u), uint2(61u, 54u), uint2(61u, 54u), uint2(61u, 55u), uint2(62u, 54u), uint2(62u, 55u), uint2(62u, 55u), uint2(62u, 56u), uint2(63u, 55u), uint2(63u, 56u), uint2(63u, 56u), uint2(63u, 57u), uint2(63u, 58u), uint2(63u, 59u), uint2(63u, 59u), uint2(63u, 60u), uint2(63u, 61u), uint2(63u, 62u), uint2(63u, 62u), uint2(63u, 63u) };
+ static const uint _1528[32] = { 0u, 8u, 16u, 24u, 33u, 41u, 49u, 57u, 66u, 74u, 82u, 90u, 99u, 107u, 115u, 123u, 132u, 140u, 148u, 156u, 165u, 173u, 181u, 189u, 198u, 206u, 214u, 222u, 231u, 239u, 247u, 255u };
+ static const uint _1376[64] = { 0u, 4u, 8u, 12u, 16u, 20u, 24u, 28u, 32u, 36u, 40u, 44u, 48u, 52u, 56u, 60u, 65u, 69u, 73u, 77u, 81u, 85u, 89u, 93u, 97u, 101u, 105u, 109u, 113u, 117u, 121u, 125u, 130u, 134u, 138u, 142u, 146u, 150u, 154u, 158u, 162u, 166u, 170u, 174u, 178u, 182u, 186u, 190u, 195u, 199u, 203u, 207u, 211u, 215u, 219u, 223u, 227u, 231u, 235u, 239u, 243u, 247u, 251u, 255u };
+ static const int _632[4] = { 3, 0, 2, 1 };
+ static const int _1520[4] = { 589824, 2304, 262402, 66562 };
+ static const float _1958[32] = { 0.01568599976599216461181640625f, 0.047058999538421630859375f, 0.078431002795696258544921875f, 0.1117649972438812255859375f, 0.1450980007648468017578125f, 0.1764709949493408203125f, 0.207843005657196044921875f, 0.24117599427700042724609375f, 0.2745099961757659912109375f, 0.3058820068836212158203125f, 0.337255001068115234375f, 0.370588004589080810546875f, 0.4039219915866851806640625f, 0.4352940022945404052734375f, 0.466666996479034423828125f, 0.5f, 0.533333003520965576171875f, 0.564706027507781982421875f, 0.596077978610992431640625f, 0.629411995410919189453125f, 0.662744998931884765625f, 0.694118022918701171875f, 0.72548997402191162109375f, 0.75882399082183837890625f, 0.792156994342803955078125f, 0.8235290050506591796875f, 0.8549020290374755859375f, 0.88823497295379638671875f, 0.92156898975372314453125f, 0.952941000461578369140625f, 0.984314024448394775390625f, 1.0f };
+ static const float _1872[64] = { 0.007842999882996082305908203125f, 0.023529000580310821533203125f, 0.0392160005867481231689453125f, 0.0549019984900951385498046875f, 0.070588000118732452392578125f, 0.08627499639987945556640625f, 0.10196100175380706787109375f, 0.117646999657154083251953125f, 0.1333329975605010986328125f, 0.14902000129222869873046875f, 0.16470600664615631103515625f, 0.1803919970989227294921875f, 0.196078002452850341796875f, 0.21176500618457794189453125f, 0.2274509966373443603515625f, 0.24509799480438232421875f, 0.2627449929714202880859375f, 0.278430998325347900390625f, 0.294117987155914306640625f, 0.3098039925098419189453125f, 0.32548999786376953125f, 0.3411760032176971435546875f, 0.3568629920482635498046875f, 0.372548997402191162109375f, 0.3882350027561187744140625f, 0.4039219915866851806640625f, 0.41960799694061279296875f, 0.4352940022945404052734375f, 0.450980007648468017578125f, 0.466666996479034423828125f, 0.4823530018329620361328125f, 0.5f, 0.5176470279693603515625f, 0.533333003520965576171875f, 0.549019992351531982421875f, 0.564706027507781982421875f, 0.58039200305938720703125f, 0.596077978610992431640625f, 0.61176502704620361328125f, 0.627451002597808837890625f, 0.6431369781494140625f, 0.658824026584625244140625f, 0.67451000213623046875f, 0.690195977687835693359375f, 0.705882012844085693359375f, 0.721569001674652099609375f, 0.73725497722625732421875f, 0.75490200519561767578125f, 0.772548973560333251953125f, 0.788235008716583251953125f, 0.803921997547149658203125f, 0.8196079730987548828125f, 0.8352940082550048828125f, 0.850979983806610107421875f, 0.866666972637176513671875f, 0.882353007793426513671875f, 0.89803898334503173828125f, 0.91372501850128173828125f, 0.92941200733184814453125f, 0.945097982883453369140625f, 0.960784018039703369140625f, 0.976471006870269775390625f, 0.992156982421875f, 1.0f };
cbuffer _Globals_ : register(b0, space0)
{
uint _Globals_1_g_nMipLevel : packoffset(c0);
};
- RWTexture2D<uint4> _5094 : register(u158, space0);
Texture2D<float4> g_tSrc : register(t30, space0);
+ RWTexture2D<uint4> _5094 : register(u158, space0);
static uint3 gl_WorkGroupID;
struct SPIRV_Cross_Input
@@ -60,9 +60,9 @@ CS
};
groupshared uint _3620[64];
+ groupshared uint _4273;
groupshared uint _3314;
groupshared uint _5908;
- groupshared uint _4273;
groupshared uint _3832[16];
void MainCs_inner()
@@ -126,8 +126,8 @@ CS
int _8279 = int(_3620[1]);
int _8816 = int(_3620[2]);
_4273 = 2863311530u;
- _3314 = ((_2967[_8278].x << uint(11)) | (_929[_8279].x << uint(5))) | _2967[_8816].x;
- _5908 = ((_2967[_8278].y << uint(11)) | (_929[_8279].y << uint(5))) | _2967[_8816].y;
+ _3314 = ((_720[_8278].x << uint(11)) | (_1694[_8279].x << uint(5))) | _720[_8816].x;
+ _5908 = ((_720[_8278].y << uint(11)) | (_1694[_8279].y << uint(5))) | _720[_8816].y;
}
else
{
@@ -350,29 +350,27 @@ CS
_5908 = uint(((((_17008 + (_17008 >> 8)) >> 8) << 11) + (((_23420 + (_23420 >> 8)) >> 8) << 5)) + ((_13777 + (_13777 >> 8)) >> 8));
if (_3314 != _5908)
{
- _3832[0] = _2487[int((_3314 & 63488u) >> uint(11))];
- _3832[1] = _1397[int((_3314 & 2016u) >> uint(5))];
- _3832[2] = _2487[int((_3314 & 31u))];
+ int _13778 = int((_3314 & 63488u) >> uint(11));
+ _3832[0] = _1528[_13778];
+ _3832[1] = _1376[int((_3314 & 2016u) >> uint(5))];
+ _3832[2] = _1528[int(_3314 & 31u)];
_3832[3] = 0u;
- _3832[4] = _2487[int((_5908 & 63488u) >> uint(11))];
- _3832[5] = _1397[int((_5908 & 2016u) >> uint(5))];
- _3832[6] = _2487[int((_5908 & 31u))];
+ int _13779 = int((_5908 & 63488u) >> uint(11));
+ _3832[4] = _1528[_13779];
+ _3832[5] = _1376[int((_5908 & 2016u) >> uint(5))];
+ _3832[6] = _1528[int(_5908 & 31u)];
_3832[7] = 0u;
- uint _11312 = _3832[0];
- uint _19082 = _3832[4];
- uint _11245 = uint(int(((2u * _11312) + _19082) / 3u));
- _3832[8] = _11245;
- _3832[9] = _11245;
- _3832[10] = _11245;
- uint _11313 = _3832[4];
- uint _19083 = _3832[0];
- uint _11246 = uint(int(((2u * _11313) + _19083) / 3u));
- _3832[12] = _11246;
- _3832[13] = _11246;
- _3832[14] = _11246;
- int _25205 = int(_3832[0] - _3832[4]);
- int _25206 = int(_3832[1] - _3832[5]);
- int _15305 = int(_3832[2] - _3832[6]);
+ uint _15604 = ((2u * _1528[_13778]) + _1528[_13779]) / 3u;
+ _3832[8] = _15604;
+ _3832[9] = _15604;
+ _3832[10] = _15604;
+ uint _15605 = ((2u * _1528[_13779]) + _1528[_13778]) / 3u;
+ _3832[12] = _15605;
+ _3832[13] = _15605;
+ _3832[14] = _15605;
+ uint _13799 = _3832[0] - _3832[4];
+ uint _13800 = _3832[1] - _3832[5];
+ uint _22970 = _3832[2] - _3832[6];
int _9805;
int _16425[16];
int _13044 = 0;
@@ -383,7 +381,7 @@ CS
break;
}
int _20629 = _13044 * 4;
- _16425[_13044] = int(((_3620[_20629] * uint(_25205)) + (_3620[_20629 + 1] * uint(_25206))) + (_3620[_20629 + 2] * uint(_15305)));
+ _16425[_13044] = int(((_3620[_20629] * _13799) + (_3620[_20629 + 1] * _13800)) + (_3620[_20629 + 2] * _22970));
_9805 = _13044 + 1;
_13044 = _9805;
continue;
@@ -398,7 +396,7 @@ CS
break;
}
int _20630 = _13045 * 4;
- _16426[_13045] = int(((_3832[_20630] * uint(_25205)) + (_3832[_20630 + 1] * uint(_25206))) + (_3832[_20630 + 2] * uint(_15305)));
+ _16426[_13045] = int(((_3832[_20630] * _13799) + (_3832[_20630 + 1] * _13800)) + (_3832[_20630 + 2] * _22970));
_9806 = _13045 + 1;
_13045 = _9806;
continue;
@@ -486,8 +484,8 @@ CS
int _14959 = _17137 >> 4;
int _25216 = _16309 >> 4;
int _21980 = _13141 >> 4;
- _9659 = ((_2967[_14959].x << uint(11)) | (_929[_25216].x << uint(5))) | _2967[_21980].x;
- _6345 = ((_2967[_14959].y << uint(11)) | (_929[_25216].y << uint(5))) | _2967[_21980].y;
+ _9659 = ((_720[_14959].x << uint(11)) | (_1694[_25216].x << uint(5))) | _720[_21980].x;
+ _6345 = ((_720[_14959].y << uint(11)) | (_1694[_25216].y << uint(5))) | _720[_21980].y;
}
else
{
@@ -527,10 +525,10 @@ CS
int _16530 = int(_3620[_19018]);
int _16531 = int(_3620[_19018 + 1]);
int _8873 = int(_3620[_19018 + 2]);
- _22401 = _16308 + _1536[_12260];
- _24675 = _17119 + (_652[_12260] * _16530);
- _24676 = _17117 + (_652[_12260] * _16531);
- _6296 = _17115 + (_652[_12260] * _8873);
+ _22401 = _16308 + _1520[_12260];
+ _24675 = _17119 + (_632[_12260] * _16530);
+ _24676 = _17117 + (_632[_12260] * _16531);
+ _6296 = _17115 + (_632[_12260] * _8873);
_16975 = _17136 + _16530;
_13749 = _17118 + _16531;
_15003 = _17116 + _8873;
@@ -620,47 +618,45 @@ CS
_10862 = (_16107 > 1.0f) ? 1.0f : _16107;
}
uint _20406 = uint(_10862 * 31.0f);
- _9659 = (((_20401 + uint(_10857 > _1549[_20401])) << uint(11)) | ((_20402 + uint(_10858 > _1902[_20402])) << uint(5))) | (_20403 + uint(_10859 > _1549[_20403]));
- _6345 = (((_20404 + uint(_10860 > _1549[_20404])) << uint(11)) | ((_20405 + uint(_10861 > _1902[_20405])) << uint(5))) | (_20406 + uint(_10862 > _1549[_20406]));
+ _9659 = (((_20401 + uint(_10857 > _1958[_20401])) << uint(11)) | ((_20402 + uint(_10858 > _1872[_20402])) << uint(5))) | (_20403 + uint(_10859 > _1958[_20403]));
+ _6345 = (((_20404 + uint(_10860 > _1958[_20404])) << uint(11)) | ((_20405 + uint(_10861 > _1872[_20405])) << uint(5))) | (_20406 + uint(_10862 > _1958[_20406]));
}
_5908 = _6345;
_3314 = _9659;
- bool _24878;
+ bool _12885;
if (_16009 != _6345)
{
- _24878 = true;
+ _12885 = true;
}
else
{
- _24878 = _11762 != _9659;
+ _12885 = _11762 != _9659;
}
- if (int(_24878) != 0)
+ if (_12885)
{
if (_3314 != _5908)
{
- _3832[0] = _2487[int((_3314 & 63488u) >> uint(11))];
- _3832[1] = _1397[int((_3314 & 2016u) >> uint(5))];
- _3832[2] = _2487[int((_3314 & 31u))];
+ int _13780 = int((_3314 & 63488u) >> uint(11));
+ _3832[0] = _1528[_13780];
+ _3832[1] = _1376[int((_3314 & 2016u) >> uint(5))];
+ _3832[2] = _1528[int(_3314 & 31u)];
_3832[3] = 0u;
- _3832[4] = _2487[int((_5908 & 63488u) >> uint(11))];
- _3832[5] = _1397[int((_5908 & 2016u) >> uint(5))];
- _3832[6] = _2487[int((_5908 & 31u))];
+ int _13781 = int((_5908 & 63488u) >> uint(11));
+ _3832[4] = _1528[_13781];
+ _3832[5] = _1376[int((_5908 & 2016u) >> uint(5))];
+ _3832[6] = _1528[int(_5908 & 31u)];
_3832[7] = 0u;
- uint _11314 = _3832[0];
- uint _19084 = _3832[4];
- uint _11247 = uint(int(((2u * _11314) + _19084) / 3u));
- _3832[8] = _11247;
- _3832[9] = _11247;
- _3832[10] = _11247;
- uint _11315 = _3832[4];
- uint _19085 = _3832[0];
- uint _11248 = uint(int(((2u * _11315) + _19085) / 3u));
- _3832[12] = _11248;
- _3832[13] = _11248;
- _3832[14] = _11248;
- int _25207 = int(_3832[0] - _3832[4]);
- int _25208 = int(_3832[1] - _3832[5]);
- int _15306 = int(_3832[2] - _3832[6]);
+ uint _15606 = ((2u * _1528[_13780]) + _1528[_13781]) / 3u;
+ _3832[8] = _15606;
+ _3832[9] = _15606;
+ _3832[10] = _15606;
+ uint _15607 = ((2u * _1528[_13781]) + _1528[_13780]) / 3u;
+ _3832[12] = _15607;
+ _3832[13] = _15607;
+ _3832[14] = _15607;
+ uint _13801 = _3832[0] - _3832[4];
+ uint _13802 = _3832[1] - _3832[5];
+ uint _22971 = _3832[2] - _3832[6];
int _9807;
int _13047 = 0;
for (;;)
@@ -670,7 +666,7 @@ CS
break;
}
int _20631 = _13047 * 4;
- _20506[_13047] = int(((_3620[_20631] * uint(_25207)) + (_3620[_20631 + 1] * uint(_25208))) + (_3620[_20631 + 2] * uint(_15306)));
+ _20506[_13047] = int(((_3620[_20631] * _13801) + (_3620[_20631 + 1] * _13802)) + (_3620[_20631 + 2] * _22971));
_9807 = _13047 + 1;
_13047 = _9807;
continue;
@@ -684,7 +680,7 @@ CS
break;
}
int _20632 = _13048 * 4;
- _23854[_13048] = int(((_3832[_20632] * uint(_25207)) + (_3832[_20632 + 1] * uint(_25208))) + (_3832[_20632 + 2] * uint(_15306)));
+ _23854[_13048] = int(((_3832[_20632] * _13801) + (_3832[_20632 + 1] * _13802)) + (_3832[_20632 + 2] * _22971));
_9808 = _13048 + 1;
_13048 = _9808;
continue;
game/core/shaders_vulkan_dir/shaders/vfx/cs_mipgen.slang
modified • +19 / -19 • changes: 38
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -41,11 +41,11 @@ CS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (5172 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer MipConstantBuffer_t : register(b0, space0)
{
- float _Globals_1_m0 : packoffset(c0);
- float _Globals_1_m1 : packoffset(c0.y);
- float2 _Globals_1_m2 : packoffset(c0.z);
+ float MipConstantBuffer_t_1_m0 : packoffset(c0);
+ float MipConstantBuffer_t_1_m1 : packoffset(c0.y);
+ float2 MipConstantBuffer_t_1_m2 : packoffset(c0.z);
};
Texture2D<float4> g_tSrcMip : register(t30, space0);
@@ -72,8 +72,8 @@ CS
{
do
{
- uint _3962 = uint(_Globals_1_m1);
- float4 _3401 = g_tSrcMip.SampleLevel(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, (_Globals_1_m2 * (float2(gl_GlobalInvocationID.xy) + 0.5f.xx)).xy, float(uint(_Globals_1_m0)));
+ uint _3962 = uint(MipConstantBuffer_t_1_m1);
+ float4 _3401 = g_tSrcMip.SampleLevel(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, (MipConstantBuffer_t_1_m2 * (float2(gl_GlobalInvocationID.xy) + 0.5f.xx)).xy, float(uint(MipConstantBuffer_t_1_m0)));
_3764[gl_GlobalInvocationID.xy] = _3401;
if (_3962 == 1u)
{
@@ -87,11 +87,11 @@ CS
float4 _7078;
if ((gl_LocalInvocationIndex & 9u) == 0u)
{
- uint _14126 = gl_LocalInvocationIndex + 1u;
- float _17363 = _4128[_14126];
- float _24369 = _4117[_14126];
- float _24370 = _4112[_14126];
- float _23047 = _4111[_14126];
+ uint _11704 = gl_LocalInvocationIndex + 1u;
+ float _17363 = _4128[_11704];
+ float _24369 = _4117[_11704];
+ float _24370 = _4112[_11704];
+ float _23047 = _4111[_11704];
uint _18005 = gl_LocalInvocationIndex + 8u;
float _17364 = _4128[_18005];
float _24371 = _4117[_18005];
@@ -122,11 +122,11 @@ CS
float4 _7079;
if ((gl_LocalInvocationIndex & 27u) == 0u)
{
- uint _11704 = gl_LocalInvocationIndex + 2u;
- float _17366 = _4128[_11704];
- float _24375 = _4117[_11704];
- float _24376 = _4112[_11704];
- float _23049 = _4111[_11704];
+ uint _11705 = gl_LocalInvocationIndex + 2u;
+ float _17366 = _4128[_11705];
+ float _24375 = _4117[_11705];
+ float _24376 = _4112[_11705];
+ float _23049 = _4111[_11705];
uint _18007 = gl_LocalInvocationIndex + 16u;
float _17367 = _4128[_18007];
float _24377 = _4117[_18007];
@@ -156,10 +156,10 @@ CS
GroupMemoryBarrierWithGroupSync();
if (gl_LocalInvocationIndex == 0u)
{
- uint _11705 = gl_LocalInvocationIndex + 4u;
+ uint _11706 = gl_LocalInvocationIndex + 4u;
uint _18009 = gl_LocalInvocationIndex + 32u;
uint _18010 = gl_LocalInvocationIndex + 36u;
- _3767[gl_GlobalInvocationID.xy / uint2(8u, 8u)] = (((_7079 + float4(_4128[_11705], _4117[_11705], _4112[_11705], _4111[_11705])) + float4(_4128[_18009], _4117[_18009], _4112[_18009], _4111[_18009])) + float4(_4128[_18010], _4117[_18010], _4112[_18010], _4111[_18010])) * 0.25f;
+ _3767[gl_GlobalInvocationID.xy / uint2(8u, 8u)] = (((_7079 + float4(_4128[_11706], _4117[_11706], _4112[_11706], _4111[_11706])) + float4(_4128[_18009], _4117[_18009], _4112[_18009], _4111[_18009])) + float4(_4128[_18010], _4117[_18010], _4112[_18010], _4111[_18010])) * 0.25f;
}
break;
} while(false);
game/core/shaders_vulkan_dir/shaders/vfx/cs_parallel_sort.slang
modified • +39 / -19 • changes: 58
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -44,7 +44,7 @@ CS
RWStructuredBuffer SrcPayload < Attribute("SrcPayload"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3904 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3920 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1059
{
@@ -56,14 +56,24 @@ CS
uint _m5;
};
+ struct _1060
+ {
+ uint _m0;
+ int _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ };
+
RWByteAddressBuffer undetermined : register(u158, space0);
cbuffer _Globals_ : register(b0, space0)
{
uint _Globals_1_CShiftBit : packoffset(c0.z);
};
- RWByteAddressBuffer undetermined_1 : register(u163, space0);
- RWByteAddressBuffer undetermined_2 : register(u159, space0);
+ RWByteAddressBuffer undetermined_1 : register(u159, space0);
+ RWByteAddressBuffer undetermined_2 : register(u163, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_LocalInvocationID;
@@ -77,10 +87,20 @@ CS
void MainCs_inner()
{
- uint _8524 = undetermined.Load(0);
- int _24369 = int(undetermined.Load(4));
- uint _24370 = undetermined.Load(8);
- uint _24371 = undetermined.Load(12);
+ _1060 _22394;
+ _22394._m0 = undetermined.Load(0);
+ _22394._m1 = int(undetermined.Load(4));
+ _22394._m2 = undetermined.Load(8);
+ _22394._m3 = undetermined.Load(12);
+ _22394._m4 = undetermined.Load(16);
+ _22394._m5 = undetermined.Load(20);
+ _1059 _20228;
+ _20228._m0 = _22394._m0;
+ _20228._m1 = _22394._m1;
+ _20228._m2 = _22394._m2;
+ _20228._m3 = _22394._m3;
+ _20228._m4 = _22394._m4;
+ _20228._m5 = _22394._m5;
int _23262;
int _13039 = 0;
for (;;)
@@ -95,9 +115,9 @@ CS
continue;
}
GroupMemoryBarrierWithGroupSync();
- uint _11457 = uint(512 * _24369) * gl_WorkGroupID.x;
- uint _23756 = uint(_24369);
- uint _21416 = _24370 - _24371;
+ uint _11457 = uint(512 * _20228._m1) * gl_WorkGroupID.x;
+ uint _23756 = uint(_20228._m1);
+ uint _21416 = _20228._m2 - _20228._m3;
uint _10913;
uint _17551;
if (gl_WorkGroupID.x >= _21416)
@@ -113,7 +133,7 @@ CS
uint _8896 = _17551 + gl_LocalInvocationID.x;
uint _14392;
uint _23448;
- uint _20578[4];
+ uint _19506[4];
uint _13155 = _8896;
uint _16208 = 0u;
for (;;)
@@ -122,10 +142,10 @@ CS
{
break;
}
- _20578[0] = undetermined_2.Load(_13155 * 4 + 0);
- _20578[1] = undetermined_2.Load((_13155 + 128u) * 4 + 0);
- _20578[2] = undetermined_2.Load((_13155 + 256u) * 4 + 0);
- _20578[3] = undetermined_2.Load((_13155 + 384u) * 4 + 0);
+ _19506[0] = undetermined_1.Load(_13155 * 4 + 0);
+ _19506[1] = undetermined_1.Load((_13155 + 128u) * 4 + 0);
+ _19506[2] = undetermined_1.Load((_13155 + 256u) * 4 + 0);
+ _19506[3] = undetermined_1.Load((_13155 + 384u) * 4 + 0);
uint _8087;
uint _14382;
uint _13156 = _13155;
@@ -136,10 +156,10 @@ CS
{
break;
}
- if (_13156 < _8524)
+ if (_13156 < _20228._m0)
{
uint _10058;
- InterlockedAdd(_5770[(((_20578[_16209] >> _Globals_1_CShiftBit) & 15u) * 128u) + gl_LocalInvocationID.x], 1u, _10058);
+ InterlockedAdd(_5770[(((_19506[_16209] >> _Globals_1_CShiftBit) & 15u) * 128u) + gl_LocalInvocationID.x], 1u, _10058);
_14382 = _13156 + 128u;
}
else
@@ -177,7 +197,7 @@ CS
_16210 = _8559;
continue;
}
- undetermined_1.Store(((gl_LocalInvocationID.x * _24370) + gl_WorkGroupID.x) * 4 + 0, _13157);
+ undetermined_2.Store(((gl_LocalInvocationID.x * _20228._m2) + gl_WorkGroupID.x) * 4 + 0, _13157);
}
}
game/core/shaders_vulkan_dir/shaders/vfx/cs_parallel_sort_onesweep.slang
modified • +29 / -17 • changes: 46
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -39,7 +39,7 @@ CS
RWStructuredBuffer b_passHist < Attribute("PassHistBuffer"); >;
RWStructuredBuffer b_sort < Attribute("SortBuffer"); >;
RWStructuredBuffer b_sortPayload < Attribute("PayloadBuffer"); >;
- StructuredBuffer g_constantBuffer < Attribute("DispatchArgBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_constantBuffer < Attribute("DispatchArgBuffer"); >;
cbuffer g_consts < Source(ExternalDescSet); Attribute("g_consts"); >;
cbuffer g_consts < Source(ExternalDescSet); Attribute("g_consts"); >;
RWStructuredBuffer g_dispatchBuffer < Attribute("DispatchArgBuffer"); >;
@@ -51,17 +51,23 @@ CS
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1968 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2064 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _990
{
uint _m0;
uint _m1;
};
- struct _417
+ struct _991
{
- _990 _m0[4];
+ uint _m0;
+ uint _m1;
+ };
+
+ struct _1464
+ {
+ _991 _m0[4];
};
struct _1002
@@ -71,21 +77,21 @@ CS
uint _m2;
};
- struct _1281
+ struct _2304
{
_1002 _m0[4];
};
- struct _2601
+ struct _1742
{
- _417 _m0;
- _1281 _m1;
+ _1464 _m0;
+ _2304 _m1;
};
ByteAddressBuffer g_constantBuffer : register(t30, space0);
- RWByteAddressBuffer undetermined : register(u162, space0);
- globallycoherent RWByteAddressBuffer undetermined_1 : register(u164, space0);
- globallycoherent RWByteAddressBuffer undetermined_2 : register(u163, space0);
+ globallycoherent RWByteAddressBuffer undetermined : register(u163, space0);
+ RWByteAddressBuffer undetermined_1 : register(u162, space0);
+ globallycoherent RWByteAddressBuffer undetermined_2 : register(u164, space0);
cbuffer _981_4645
{
uint _4645_m0 : packoffset(c0);
@@ -100,27 +106,33 @@ CS
void MainCs_inner()
{
- uint _19822 = g_constantBuffer.Load(_4645_m0 * 8 + 4) * 1024u;
+ _991 _8162;
+ _8162._m0 = g_constantBuffer.Load(_4645_m0 * 8 + 0);
+ _8162._m1 = g_constantBuffer.Load(_4645_m0 * 8 + 4);
+ _990 _21197;
+ _21197._m0 = _8162._m0;
+ _21197._m1 = _8162._m1;
+ uint _17622 = _21197._m1 * 1024u;
uint _4283;
uint _13039 = gl_GlobalInvocationID.x;
for (;;)
{
- if (!(_13039 < _19822))
+ if (!(_13039 < _17622))
{
break;
}
- undetermined_2.Store(_13039 * 4 + 0, 0u);
+ undetermined.Store(_13039 * 4 + 0, 0u);
_4283 = _13039 + 65536u;
_13039 = _4283;
continue;
}
if (gl_GlobalInvocationID.x < 1024u)
{
- undetermined.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);
+ undetermined_1.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);
}
if (gl_GlobalInvocationID.x < 4u)
{
- undetermined_1.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);
+ undetermined_2.Store(gl_GlobalInvocationID.x * 4 + 0, 0u);
}
}
game/core/shaders_vulkan_dir/shaders/vfx/cstest.slang
modified • +25 / -7 • changes: 32
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: cs
}
@@ -37,8 +37,8 @@ CS
DynamicComboRule( Requires( D_INLINE_RTX_TEST, D_TEST_VARIANT=0 ) );
DynamicComboRule( Requires( D_INLINE_RTX_TEST_VARIANT, D_INLINE_RTX_TEST=1 ) );
- StructuredBuffer Buffer0 < Attribute("Buffer0"); SrgbRead(false); >;
- StructuredBuffer Buffer1 < Attribute("Buffer1"); SrgbRead(false); >;
+ StructuredBuffer Buffer0 < Attribute("Buffer0"); >;
+ StructuredBuffer Buffer1 < Attribute("Buffer1"); >;
Buffer Buffer2 < Attribute("Buffer2"); SrgbRead(false); >;
cbuffer Dimensions_t < Attribute("Dimensions_t"); >;
RWTexture2D<float4> OutputTexture < Attribute("OutputUAV"); >;
@@ -56,9 +56,15 @@ CS
float4 _m1;
};
- cbuffer _Globals_ : register(b0, space0)
+ struct _1081
{
- uint _Globals_1_m0 : packoffset(c0);
+ float4 _m0;
+ float4 _m1;
+ };
+
+ cbuffer Dimensions_t : register(b0, space0)
+ {
+ uint Dimensions_t_1_m0 : packoffset(c0);
};
ByteAddressBuffer Buffer0 : register(t30, space0);
@@ -74,8 +80,20 @@ CS
void MainCs_inner()
{
- uint _7595 = (gl_GlobalInvocationID.y * _Globals_1_m0) + gl_GlobalInvocationID.x;
- _3407[gl_GlobalInvocationID.xy] = ((asfloat(Buffer0.Load4(_7595 * 32 + 0)) + asfloat(Buffer0.Load4(_7595 * 32 + 16))) + (asfloat(Buffer1.Load4(_7595 * 32 + 0)) + asfloat(Buffer1.Load4(_7595 * 32 + 16)))) + undetermined_unexpectedTypeId410_1047.Load(int(_7595));
+ uint _7519 = (gl_GlobalInvocationID.y * Dimensions_t_1_m0) + gl_GlobalInvocationID.x;
+ _1081 _17001;
+ _17001._m0 = asfloat(Buffer0.Load4(_7519 * 32 + 0));
+ _17001._m1 = asfloat(Buffer0.Load4(_7519 * 32 + 16));
+ _1080 _20228;
+ _20228._m0 = _17001._m0;
+ _20228._m1 = _17001._m1;
+ _1081 _14579;
+ _14579._m0 = asfloat(Buffer1.Load4(_7519 * 32 + 0));
+ _14579._m1 = asfloat(Buffer1.Load4(_7519 * 32 + 16));
+ _1080 _20229;
+ _20229._m0 = _14579._m0;
+ _20229._m1 = _14579._m1;
+ _3407[gl_GlobalInvocationID.xy] = ((_20228._m0 + _20228._m1) + (_20229._m0 + _20229._m1)) + undetermined_unexpectedTypeId410_1047.Load(int(_7519));
}
[numthreads(32, 32, 1)]
game/core/shaders_vulkan_dir/shaders/vfx/cull_aggregate_fragments.slang
modified • +138 / -78 • changes: 216
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -30,45 +30,42 @@ CS
{
StaticCombo( S_SUBGROUP_WAVE_OPS, 0..1 );
StaticCombo( S_REVERSE_DEPTH_BUFFER, 0..1 );
- StaticCombo( S_SUPPORTS_DX_11_1, 0, Sys( 13 ) );
- DynamicCombo( D_PASS, 0..3 );
+ StaticCombo( S_SUPPORTS_DX_11_1, 0, Sys( 11 ) );
+ DynamicCombo( D_PASS, 0..2 );
DynamicCombo( D_OCCLUSION_CULLING, 0..1 );
DynamicCombo( D_VOLUME_CULLER, 0..1 );
- DynamicCombo( D_VIS_CULLING, 0..1 );
DynamicCombo( D_SUPPORTS_MESH_SHADER, 0..1 );
DynamicCombo( D_DEBUG_OUTPUT_STATS, 0..1 );
DynamicCombo( D_DEBUG_DRAW_MESHLETS, 0..1 );
+ DynamicComboRule( Requires( D_SUPPORTS_MESH_SHADER, S_SUBGROUP_WAVE_OPS ) );
cbuffer GpuVolumeCullerPlanes_t < Attribute("GpuVolumeCullerPlanes_t"); >;
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_CullRequests < Attribute("CullRequests"); SrgbRead(false); >;
RWStructuredBuffer g_CullStats < Attribute("FragmentStats"); >;
RWBuffer<float4> g_DebugMeshletDrawArgs < Attribute("DebugMeshletDrawArgs"); >;
RWBuffer<float4> g_DrawArgs < Attribute("FragmentDrawArgs"); >;
- StructuredBuffer g_FragmentData < Attribute("FragmentBounds"); SrgbRead(false); >;
- ByteAddressBuffer g_InputIndices < Attribute("InputIndices"); SrgbRead(false); >;
+ StructuredBuffer g_FragmentCullRequests < Attribute("FragmentCullRequests"); >;
+ StructuredBuffer g_FragmentData < Attribute("FragmentBounds"); >;
+ ByteAddressBuffer g_InputIndices < Attribute("InputIndices"); >;
RWStructuredBuffer g_MSIndirectDispatchArgs < Attribute("MSIndirectDispatchArgs"); >;
RWStructuredBuffer g_MSIndirectDispatchArgsRecull < Attribute("MSIndirectDispatchArgsRecull"); >;
- StructuredBuffer g_MeshletData < Attribute("MeshletData"); SrgbRead(false); >;
+ ByteAddressBuffer g_MeshletData < Attribute("MeshletData"); >;
RWByteAddressBuffer g_OutputIndices < Attribute("OutputIndices"); >;
RWStructuredBuffer g_RWMeshletBuffer < Source(ExternalDescSet); >;
RWBuffer<float4> g_RecullDispatchArgs < Attribute("RecullDispatchArgs"); >;
RWBuffer<float4> g_RecullDrawArgs < Attribute("FragmentRecullDrawArgs"); >;
- Buffer g_RecullRequestCount < Attribute("RecullRequestCount"); SrgbRead(false); >;
- RWBuffer<float4> g_RecullRequestCount < Attribute("RecullRequestCount"); >;
+ StructuredBuffer g_RecullRequests < Attribute("RecullRequests"); >;
RWStructuredBuffer g_RecullRequests < Attribute("RecullRequests"); >;
- Buffer g_VisBits < Attribute("VisBits"); SrgbRead(false); >;
bool g_bBackfaceCulling < Attribute("BackfaceCulling"); UiType(CheckBox); >;
bool g_bDrawAllMeshlets < Attribute("DebugDrawAllMeshlets"); UiType(CheckBox); >;
bool g_bOrthographicView < Attribute("OrthographicView"); UiType(CheckBox); >;
ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
float4x4 g_mDepthPyramidProjFromWorld < Attribute("DepthPyramidProjFromWorld"); >;
- int g_nCullRequests < Attribute("NumCullRequests"); UiType(Slider); >;
int g_nDepthPyramidHeight < Attribute("DepthPyramidHeight"); UiType(Slider); >;
int g_nDepthPyramidMaxMip < Attribute("DepthPyramidMaxMip"); UiType(Slider); >;
int g_nDepthPyramidWidth < Attribute("DepthPyramidWidth"); UiType(Slider); >;
- int g_nNumAggregates < Attribute("NumAggregates"); UiType(Slider); >;
- int g_nNumFragments < Attribute("NumFragments"); UiType(Slider); >;
+ int g_nFragmentCullRequests < Attribute("NumFragmentRequests"); UiType(Slider); >;
+ int g_nMeshletCullRequests < Attribute("NumMeshletCullRequests"); UiType(Slider); >;
Texture2D g_tDepthPyramid < Attribute("DepthPyramid"); SrgbRead(false); >;
float3 g_vCullCameraForwardWs < Attribute("CullCameraForwardWs"); UiType(VectorText); >;
float3 g_vCullCameraPositionWs < Attribute("CullCameraPositionWs"); UiType(VectorText); >;
@@ -82,17 +79,17 @@ CS
float4 g_vFrustumPlane5 < Attribute("FrustumPlane5"); UiType(VectorText); >;
#if (S_SUPPORTS_DX_11_1 == 0)
- Buffer g_RecullRequestCount < Attribute("RecullRequestCount"); SrgbRead(false); >;
- RWBuffer<float4> g_RecullRequestCount < Attribute("RecullRequestCount"); >;
+ StructuredBuffer g_RecullRequests < Attribute("RecullRequests"); >;
+ RWStructuredBuffer g_RecullRequests < Attribute("RecullRequests"); >;
#endif
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vCullCameraPositionWs) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (8960 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (9864 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_EXT_control_flow_attributes)
@@ -109,15 +106,27 @@ CS
#endif
layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in;
- struct _1017
+ struct _1107
{
uint _m0;
uint _m1;
uint _m2;
uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ uint _m7;
};
- struct _1107
+ struct _1098
+ {
+ vec3 _m0;
+ int _m1;
+ vec3 _m2;
+ uint _m3;
+ };
+
+ struct _1108
{
uint _m0;
uint _m1;
@@ -129,15 +138,15 @@ CS
uint _m7;
};
- struct _1095
+ struct _1099
{
vec3 _m0;
- uint _m1;
+ int _m1;
vec3 _m2;
uint _m3;
};
- struct _1996
+ struct _2037
{
vec3 g_vCullCameraForwardWs;
vec3 g_vCullCameraPositionWs;
@@ -147,34 +156,35 @@ CS
vec4 g_vFrustumPlane3;
vec4 g_vFrustumPlane4;
vec4 g_vFrustumPlane5;
- uint g_nCullRequests;
+ uint g_nFragmentCullRequests;
+ uint g_nMeshletCullRequests;
int g_bBackfaceCulling;
int g_bOrthographicView;
};
- layout(set = 0) uniform _1996 _Globals_;
+ layout(set = 0) uniform _2037 _Globals_;
- layout(set = 0, binding = 35, std430) readonly buffer g_CullRequests
+ layout(set = 0, binding = 33, std430) readonly buffer g_FragmentCullRequests
{
- _1017 _m0[];
- } g_CullRequests_1;
+ _1108 _m0[];
+ } g_FragmentCullRequests_1;
- layout(set = 0, binding = 34, std430) readonly buffer g_MeshletData
+ layout(set = 0, binding = 32, std430) readonly buffer g_MeshletData
{
- _1107 _m0[];
+ uint _m0[];
} g_MeshletData_1;
- layout(set = 0, binding = 33, std430) readonly buffer g_FragmentData
+ layout(set = 0, binding = 31, std430) readonly buffer g_FragmentData
{
- _1095 _m0[];
+ _1099 _m0[];
} g_FragmentData_1;
- layout(set = 0, binding = 36, std430) readonly buffer g_InputIndices
+ layout(set = 0, binding = 34, std430) readonly buffer g_InputIndices
{
uint _m0[];
} g_InputIndices_1;
- layout(set = 0, binding = 165, std430) buffer undetermined
+ layout(set = 0, binding = 164, std430) buffer undetermined
{
uint _m0[];
} undetermined_1;
@@ -183,76 +193,126 @@ CS
void main()
{
- if (gl_GlobalInvocationID.x < _Globals_.g_nCullRequests)
+ if (gl_GlobalInvocationID.x < _Globals_.g_nMeshletCullRequests)
{
- uint _8600 = g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m0;
- uint _23745 = g_MeshletData_1._m0[_8600]._m0;
- uint _4523 = (_23745 >> uint(7)) & 127u;
- uint _5882 = _4523 + (_4523 & 1u);
- uint _13328 = g_MeshletData_1._m0[_8600]._m7;
- uint _5395 = _13328 & 16777215u;
- vec3 _10538 = mix(g_FragmentData_1._m0[_5395]._m0.xyz, g_FragmentData_1._m0[_5395]._m2.xyz, vec3(float((g_MeshletData_1._m0[_8600]._m4) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m4 >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m4 >> uint(20)) & 1023u) * 0.000977517105638980865478515625));
- vec3 _23228 = mix(g_FragmentData_1._m0[_5395]._m0.xyz, g_FragmentData_1._m0[_5395]._m2.xyz, vec3(float((g_MeshletData_1._m0[_8600]._m5) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m5 >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_8600]._m5 >> uint(20)) & 1023u) * 0.000977517105638980865478515625));
- uint _24909 = g_MeshletData_1._m0[_8600]._m1;
- uint _13546 = g_FragmentData_1._m0[_5395]._m1;
- uint _17363 = g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m2;
+ uint _16208;
+ _16208 = 0u;
+ uint _18463;
+ uint _19349;
+ uint _13155 = _Globals_.g_nFragmentCullRequests;
+ for (;;)
+ {
+ if (!((_16208 + 1u) < _13155))
+ {
+ break;
+ }
+ uint _3189 = (_16208 + _13155) >> uint(1);
+ _1107 _22071;
+ _22071._m0 = g_FragmentCullRequests_1._m0[_3189]._m0;
+ _22071._m1 = g_FragmentCullRequests_1._m0[_3189]._m1;
+ _22071._m2 = g_FragmentCullRequests_1._m0[_3189]._m2;
+ _22071._m3 = g_FragmentCullRequests_1._m0[_3189]._m3;
+ _22071._m4 = g_FragmentCullRequests_1._m0[_3189]._m4;
+ _22071._m5 = g_FragmentCullRequests_1._m0[_3189]._m5;
+ _22071._m6 = g_FragmentCullRequests_1._m0[_3189]._m6;
+ _22071._m7 = g_FragmentCullRequests_1._m0[_3189]._m7;
+ bool _17766 = _22071._m3 <= gl_GlobalInvocationID.x;
+ _19349 = _17766 ? _13155 : _3189;
+ _18463 = _17766 ? _3189 : _16208;
+ _13155 = _19349;
+ _16208 = _18463;
+ continue;
+ }
+ _1107 _20228;
+ _20228._m0 = g_FragmentCullRequests_1._m0[_16208]._m0;
+ _20228._m1 = g_FragmentCullRequests_1._m0[_16208]._m1;
+ _20228._m2 = g_FragmentCullRequests_1._m0[_16208]._m2;
+ _20228._m3 = g_FragmentCullRequests_1._m0[_16208]._m3;
+ _20228._m4 = g_FragmentCullRequests_1._m0[_16208]._m4;
+ _20228._m5 = g_FragmentCullRequests_1._m0[_16208]._m5;
+ _20228._m6 = g_FragmentCullRequests_1._m0[_16208]._m6;
+ _20228._m7 = g_FragmentCullRequests_1._m0[_16208]._m7;
+ uint _5517 = gl_GlobalInvocationID.x - _20228._m3;
+ if (_5517 == 0u)
+ {
+ uint _8597 = _20228._m2 * 5u;
+ imageStore(_4767, int(_8597 + 1u), uvec4(1u));
+ imageStore(_4767, int(_8597 + 2u), uvec4(_20228._m4));
+ imageStore(_4767, int(_8597 + 3u), uvec4(_20228._m5));
+ imageStore(_4767, int(_8597 + 4u), uvec4(_20228._m6));
+ }
+ uint _17109 = (_20228._m0 + _5517) * 32u;
+ uint _6233 = g_MeshletData_1._m0[_17109 / 4u];
+ uint _6234 = g_MeshletData_1._m0[(_17109 + 4u) / 4u];
+ uint _6752 = (_17109 + 12u) / 4u;
+ uint _6753 = (_17109 + 16u) / 4u;
+ uint _6754 = (_17109 + 20u) / 4u;
+ uint _18023 = _6233 >> uint(7);
+ uint _5882 = (_18023 & 127u) + (_18023 & 1u);
+ _1098 _20229;
+ _20229._m0 = g_FragmentData_1._m0[_20228._m7]._m0;
+ _20229._m1 = g_FragmentData_1._m0[_20228._m7]._m1;
+ _20229._m2 = g_FragmentData_1._m0[_20228._m7]._m2;
+ _20229._m3 = g_FragmentData_1._m0[_20228._m7]._m3;
+ vec3 _11811 = mix(_20229._m0.xyz, _20229._m2.xyz, vec3(float(g_MeshletData_1._m0[_6753] & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6753] >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6753] >> uint(20)) & 1023u) * 0.000977517105638980865478515625));
+ vec3 _12834 = mix(_20229._m0.xyz, _20229._m2.xyz, vec3(float(g_MeshletData_1._m0[_6754] & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6754] >> uint(10)) & 1023u) * 0.000977517105638980865478515625, float((g_MeshletData_1._m0[_6754] >> uint(20)) & 1023u) * 0.000977517105638980865478515625));
vec4 _20578[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);
- float _13155;
- _13155 = 100000000.0;
+ float _13156;
+ _13156 = 100000000.0;
float _6414;
- int _8899;
- int _16208 = 0;
+ int _8900;
+ int _16209 = 0;
for (;;)
{
- if (!(_16208 < 6))
+ if (!(_16209 < 6))
{
break;
}
- _6414 = min(_13155, dot(mix(_10538, _23228, greaterThan(_20578[_16208].xyz, vec3(0.0))), _20578[_16208].xyz) + _20578[_16208].w);
- _8899 = _16208 + 1;
- _13155 = _6414;
- _16208 = _8899;
+ _6414 = min(_13156, dot(mix(_11811, _12834, greaterThan(_20578[_16209].xyz, vec3(0.0))), _20578[_16209].xyz) + _20578[_16209].w);
+ _8900 = _16209 + 1;
+ _13156 = _6414;
+ _16209 = _8900;
continue;
}
- bool _9364 = (_13155 < 0.0) ? false : true;
+ bool _10462 = !(_13156 < 0.0);
bool _12885;
if (_Globals_.g_bBackfaceCulling != 0)
{
bool _24742;
do
{
- vec3 _10254 = vec3(float(int(((g_MeshletData_1._m0[_8600]._m3) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(8)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(16)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625);
- float _15712 = float(int(((g_MeshletData_1._m0[_8600]._m3 >> uint(24)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625;
+ vec3 _10254 = vec3(float(int((g_MeshletData_1._m0[_6752] & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_6752] >> uint(8)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625, float(int(((g_MeshletData_1._m0[_6752] >> uint(16)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625);
+ float _15712 = float(int(((g_MeshletData_1._m0[_6752] >> uint(24)) & 255u) << uint(24)) >> 24) * 0.0078740157186985015869140625;
if (_Globals_.g_bOrthographicView != 0)
{
_24742 = dot(_Globals_.g_vCullCameraForwardWs.xyz, _10254) > _15712;
break;
}
else
{
- vec3 _16593 = ((_10538 + _23228) * 0.5) - _Globals_.g_vCullCameraPositionWs.xyz;
- _24742 = dot(_16593, _10254) > ((_15712 * length(_16593)) + (length(_23228 - _10538) * 0.5));
+ vec3 _16593 = ((_11811 + _12834) * 0.5) - _Globals_.g_vCullCameraPositionWs.xyz;
+ _24742 = dot(_16593, _10254) > ((_15712 * length(_16593)) + (length(_12834 - _11811) * 0.5));
break;
}
break; // unreachable workaround
} while(false);
- _12885 = _24742 ? false : _9364;
+ _12885 = _24742 ? false : _10462;
}
else
{
- _12885 = _9364;
+ _12885 = _10462;
}
if (_12885)
{
- uint _18763 = imageAtomicAdd(_4767, int(g_CullRequests_1._m0[gl_GlobalInvocationID.x]._m1 * 5u), _5882 * 3u);
+ uint _18763 = imageAtomicAdd(_4767, int(_20228._m2 * 5u), _5882 * 3u);
uint _14025 = _5882 * 6u;
uint _16134 = _14025 / 128u;
uint _10045 = (_14025 % 128u) / 16u;
uint _11906 = (_14025 % 16u) / 4u;
uint _13136;
uint _16324;
- _13136 = (_18763 + _17363) * 2u;
- _16324 = (_24909 + _13546) * 2u;
+ _13136 = (_18763 + _20228._m4) * 2u;
+ _16324 = ((_6234 * 3u) + uint(_20229._m1)) * 2u;
uint _14167;
uint _16273;
uint _21149;
@@ -275,14 +335,14 @@ CS
}
uint _9984 = _13039 * 16u;
uint _23357 = _16324 + _9984;
- uint _6234 = g_InputIndices_1._m0[(_23357 + 4u) / 4u];
- uint _6235 = g_InputIndices_1._m0[(_23357 + 8u) / 4u];
- uint _6236 = g_InputIndices_1._m0[(_23357 + 12u) / 4u];
- uint _20861 = _13136 + _9984;
- undetermined_1._m0[_20861 / 4u] = g_InputIndices_1._m0[_23357 / 4u];
- undetermined_1._m0[(_20861 + 4u) / 4u] = _6234;
- undetermined_1._m0[(_20861 + 8u) / 4u] = _6235;
- undetermined_1._m0[(_20861 + 12u) / 4u] = _6236;
+ uint _6238 = g_InputIndices_1._m0[(_23357 + 4u) / 4u];
+ uint _6239 = g_InputIndices_1._m0[(_23357 + 8u) / 4u];
+ uint _6240 = g_InputIndices_1._m0[(_23357 + 12u) / 4u];
+ uint _20865 = _13136 + _9984;
+ undetermined_1._m0[_20865 / 4u] = g_InputIndices_1._m0[_23357 / 4u];
+ undetermined_1._m0[(_20865 + 4u) / 4u] = _6238;
+ undetermined_1._m0[(_20865 + 8u) / 4u] = _6239;
+ undetermined_1._m0[(_20865 + 12u) / 4u] = _6240;
_23262 = _13039 + 1u;
_13039 = _23262;
continue;
@@ -310,12 +370,12 @@ CS
{
break;
}
- uint _6238 = g_InputIndices_1._m0[(_13137 + 4u) / 4u];
- uint _6239 = g_InputIndices_1._m0[(_13137 + 8u) / 4u];
+ uint _6242 = g_InputIndices_1._m0[(_13137 + 4u) / 4u];
+ uint _6243 = g_InputIndices_1._m0[(_13137 + 8u) / 4u];
uint _22955 = g_InputIndices_1._m0[(_13137 + 12u) / 4u];
undetermined_1._m0[_16325 / 4u] = g_InputIndices_1._m0[_13137 / 4u];
- undetermined_1._m0[(_16325 + 4u) / 4u] = _6238;
- undetermined_1._m0[(_16325 + 8u) / 4u] = _6239;
+ undetermined_1._m0[(_16325 + 4u) / 4u] = _6242;
+ undetermined_1._m0[(_16325 + 8u) / 4u] = _6243;
undetermined_1._m0[(_16325 + 12u) / 4u] = _22955;
_22844 = _13137 + 16u;
_8018 = _16325 + 16u;
@@ -338,7 +398,7 @@ CS
{
break;
}
- undetermined_1._m0[_13138 / 4u] = g_InputIndices_1._m0[uint(int(_16326)) / 4u];
+ undetermined_1._m0[_13138 / 4u] = g_InputIndices_1._m0[_16326 / 4u];
_22845 = _16326 + 4u;
_8019 = _13138 + 4u;
_14169 = _17019 + 1u;
game/core/shaders_vulkan_dir/shaders/vfx/cull_instanced_meshes.slang
modified • +96 / -86 • changes: 182
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -41,15 +41,15 @@ CS
cbuffer GpuVolumeCullerPlanes_t < Attribute("GpuVolumeCullerPlanes_t"); >;
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_CullRequests < Attribute("CullRequests"); SrgbRead(false); >;
+ StructuredBuffer g_CullRequests < Attribute("CullRequests"); >;
RWStructuredBuffer g_CullStats < Attribute("CullStats"); >;
- ByteAddressBuffer g_InstanceData < Attribute("InstanceData"); SrgbRead(false); >;
+ ByteAddressBuffer g_InstanceData < Attribute("InstanceData"); >;
RWBuffer<float4> g_InstancedDrawArgs < Attribute("IndirectDrawBuffer"); >;
- StructuredBuffer g_MeshData < Attribute("MeshData"); SrgbRead(false); >;
+ StructuredBuffer g_MeshData < Attribute("MeshData"); >;
RWStructuredBuffer g_RWInstanceBuffer < Attribute("InstanceBuffer"); >;
RWStructuredBuffer g_RWTransformBuffer < Attribute("TransformBuffer"); >;
Buffer g_VisBits < Attribute("VisBits"); SrgbRead(false); >;
- StructuredBuffer g_VisNodes < Attribute("VisNodes"); SrgbRead(false); >;
+ StructuredBuffer g_VisNodes < Attribute("VisNodes"); >;
bool g_bCullViewOrthographic < Attribute("CullViewIsOrthographic"); UiType(CheckBox); >;
bool g_bEnableDensityCulling < Attribute("g_bEnableDensityCulling"); UiType(CheckBox); >;
bool g_bEnableFrustumCulling < Attribute("g_bEnableFrustumCulling"); UiType(CheckBox); >;
@@ -70,7 +70,7 @@ CS
int g_nTreeTraversalSeed < Attribute("VisTreeTraversalSeed"); UiType(Slider); >;
int g_nVisInternalTreeExtent < Attribute("VisInternalTreeExtent"); UiType(Slider); >;
int g_nVisualizeSceneObjectsMode < Attribute("VisualizeSceneObjectsMode"); UiType(Slider); >;
- StructuredBuffer g_prevFrameTransformBuffer < Attribute("PrevFrameTransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_prevFrameTransformBuffer < Attribute("PrevFrameTransformBuffer"); >;
Texture2D g_tDepthPyramid < Attribute("DepthPyramid"); SrgbRead(false); >;
float3 g_vCullViewOrigin < Attribute("CullViewOrigin"); UiType(VectorText); >;
float3 g_vDepthPyramidCameraOffset < Attribute("DepthPyramidCameraOffset"); UiType(VectorText); >;
@@ -86,21 +86,34 @@ CS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vFrustumPlane0) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (13476 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (13372 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
+ #extension GL_EXT_scalar_block_layout : require
+ #if defined(GL_EXT_control_flow_attributes)
+ #extension GL_EXT_control_flow_attributes : require
+ #define SPIRV_CROSS_FLATTEN [[flatten]]
+ #define SPIRV_CROSS_BRANCH [[dont_flatten]]
+ #define SPIRV_CROSS_UNROLL [[unroll]]
+ #define SPIRV_CROSS_LOOP [[dont_unroll]]
+ #else
+ #define SPIRV_CROSS_FLATTEN
+ #define SPIRV_CROSS_BRANCH
+ #define SPIRV_CROSS_UNROLL
+ #define SPIRV_CROSS_LOOP
+ #endif
layout(local_size_x = 192, local_size_y = 1, local_size_z = 1) in;
- struct _2517
+ struct _2523
{
uint _m0[8];
};
- struct _2116
+ struct _2176
{
uint _m0;
uint _m1;
@@ -110,52 +123,46 @@ CS
int _m5;
uint _m6;
uint _m7;
- _2517 _m8;
+ _2523 _m8;
};
- struct _323
+ struct _71
{
vec4 _m0[2];
};
- struct _2086
+ struct _1906
{
uvec4 _m0[2];
};
- struct _1947
+ struct _2035
{
- _2517 _m0[8];
+ _2523 _m0[8];
};
- struct _2964
+ struct _1967
{
vec3 _m0;
uint _m1;
vec3 _m2;
uint _m3;
- _323 _m4;
- _2086 _m5;
+ _71 _m4;
+ _1906 _m5;
float _m6;
float _m7;
float _m8;
float _m9;
float _m10;
- uint _m11;
+ _2523 _m11;
uint _m12;
float _m13;
- uvec4 _m14;
- _1947 _m15;
+ _2035 _m14;
};
- struct _449
+ struct _1119
{
- vec4 _m0[3];
- };
-
- struct _1857
- {
- _449 _m0;
+ mat3x4 _m0;
};
struct _1125
@@ -194,24 +201,24 @@ CS
layout(set = 0, binding = 36, std430) readonly buffer g_CullRequests
{
- _2116 _m0[];
+ _2176 _m0[];
} g_CullRequests_1;
- layout(set = 0, binding = 35, std430) readonly buffer g_MeshData
+ layout(set = 0, binding = 35, scalar) readonly buffer g_MeshData
{
- _2964 _m0[];
+ _1967 _m0[];
} g_MeshData_1;
- layout(set = 4, binding = 167, std430) buffer undetermined
- {
- _1857 _m0[];
- } undetermined_1;
-
layout(set = 0, binding = 37, std430) readonly buffer g_InstanceData
{
uint _m0[];
} g_InstanceData_1;
+ layout(set = 4, binding = 167, std430) buffer undetermined
+ {
+ _1119 _m0[];
+ } undetermined_1;
+
layout(set = 4, binding = 163, std430) buffer undetermined_2
{
_1125 _m0[];
@@ -224,40 +231,41 @@ CS
if (gl_WorkGroupID.x < _Globals_.g_nCullRequests)
{
uint _13724 = gl_WorkGroupID.x + _Globals_.g_nFirstCullRequest;
- uint _24369 = g_CullRequests_1._m0[_13724]._m2;
- uint _24445 = g_CullRequests_1._m0[_13724]._m3;
+ uint _5056 = g_CullRequests_1._m0[_13724]._m2;
+ uint _5611 = g_CullRequests_1._m0[_13724]._m3;
uint _6493 = g_CullRequests_1._m0[_13724]._m0;
bool _3779 = (_6493 & 2147483648u) != 0u;
- uint _7126 = g_CullRequests_1._m0[_13724]._m1;
+ uint _5516 = g_CullRequests_1._m0[_13724]._m1;
uint _13546 = g_CullRequests_1._m0[_13724]._m4;
uint _5325 = _13546 + gl_LocalInvocationID.x;
- uint _13687;
+ uint _25111;
if (g_CullRequests_1._m0[_13724]._m5 == (-1))
{
- _13687 = 4294967295u;
+ _25111 = 4294967295u;
}
else
{
- _13687 = uint(g_CullRequests_1._m0[_13724]._m5) + gl_LocalInvocationID.x;
+ _25111 = uint(g_CullRequests_1._m0[_13724]._m5) + gl_LocalInvocationID.x;
}
bool _12888;
if (gl_LocalInvocationID.x < (_6493 & 1073741823u))
{
float _10932;
mat3x4 _15345;
+ SPIRV_CROSS_BRANCH
if (_3779)
{
- uint _23357 = _24445 + (gl_LocalInvocationID.x * 24u);
- vec4 _22004 = uintBitsToFloat(uvec4(g_InstanceData_1._m0[_23357 / 4u], g_InstanceData_1._m0[(_23357 + 4u) / 4u], g_InstanceData_1._m0[(_23357 + 8u) / 4u], g_InstanceData_1._m0[(_23357 + 12u) / 4u]));
- uint _23043 = uint(int(_23357 + 16u)) / 4u;
- float _5062 = _22004.w;
- float _9551 = (float((g_InstanceData_1._m0[_23043]) & 2047u) * 0.00097703956998884677886962890625) - 1.0;
- float _9552 = (float((g_InstanceData_1._m0[_23043] >> uint(11)) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _8154 = (float((g_InstanceData_1._m0[_23043] >> uint(21)) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ uint _23357 = _5611 + (gl_LocalInvocationID.x * 24u);
+ vec4 _22194 = uintBitsToFloat(uvec4(g_InstanceData_1._m0[_23357 / 4u], g_InstanceData_1._m0[(_23357 + 4u) / 4u], g_InstanceData_1._m0[(_23357 + 8u) / 4u], g_InstanceData_1._m0[(_23357 + 12u) / 4u]));
+ uint _15590 = (_23357 + 16u) / 4u;
+ float _5062 = _22194.w;
+ float _9551 = (float(g_InstanceData_1._m0[_15590] & 2047u) * 0.00097703956998884677886962890625) - 1.0;
+ float _9552 = (float((g_InstanceData_1._m0[_15590] >> uint(11)) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _8154 = (float((g_InstanceData_1._m0[_15590] >> uint(21)) & 1023u) * 0.00195503421127796173095703125) - 1.0;
float _23665 = _9551 * _9551;
float _7156 = _9552 * _9552;
float _9141 = _8154 * _8154;
- float _13552 = sqrt(1.0 - min(0.999998986721038818359375, (_23665 + _7156) + _9141)) * (((g_InstanceData_1._m0[_23043] & 2147483648u) != 0u) ? (-1.0) : 1.0);
+ float _13552 = sqrt(1.0 - min(0.999998986721038818359375, (_23665 + _7156) + _9141)) * (((g_InstanceData_1._m0[_15590] & 2147483648u) != 0u) ? (-1.0) : 1.0);
float _20691 = 2.0 * _7156;
float _10559 = 2.0 * _9141;
float _10213 = 2.0 * _9551;
@@ -270,16 +278,16 @@ CS
float _8562 = _20640 * _8154;
float _20055 = _10213 * _13552;
_10932 = _5062;
- _15345 = mat3x4(vec4(vec3((1.0 - _20691) - _10559, _20716 - _22675, _10214 + _22014) * _5062, _22004.x), vec4(vec3(_20716 + _22675, _23221 - _10559, _8562 - _20055) * _5062, _22004.y), vec4(vec3(_10214 - _22014, _8562 + _20055, _23221 - _20691) * _5062, _22004.z));
+ _15345 = mat3x4(vec4(vec3((1.0 - _20691) - _10559, _20716 - _22675, _10214 + _22014) * _5062, _22194.x), vec4(vec3(_20716 + _22675, _23221 - _10559, _8562 - _20055) * _5062, _22194.y), vec4(vec3(_10214 - _22014, _8562 + _20055, _23221 - _20691) * _5062, _22194.z));
}
else
{
- _10932 = sqrt(max(dot(undetermined_1._m0[_5325]._m0._m0[0].xyz, undetermined_1._m0[_5325]._m0._m0[0].xyz), max(dot(undetermined_1._m0[_5325]._m0._m0[1].xyz, undetermined_1._m0[_5325]._m0._m0[1].xyz), dot(undetermined_1._m0[_5325]._m0._m0[2].xyz, undetermined_1._m0[_5325]._m0._m0[2].xyz))));
- _15345 = mat3x4(undetermined_1._m0[_5325]._m0._m0[0], undetermined_1._m0[_5325]._m0._m0[1], undetermined_1._m0[_5325]._m0._m0[2]);
+ _10932 = sqrt(max(dot(undetermined_1._m0[_5325]._m0[0].xyz, undetermined_1._m0[_5325]._m0[0].xyz), max(dot(undetermined_1._m0[_5325]._m0[1].xyz, undetermined_1._m0[_5325]._m0[1].xyz), dot(undetermined_1._m0[_5325]._m0[2].xyz, undetermined_1._m0[_5325]._m0[2].xyz))));
+ _15345 = undetermined_1._m0[_5325]._m0;
}
- vec3 _6370 = (g_MeshData_1._m0[_24369]._m0 + g_MeshData_1._m0[_24369]._m2) * 0.5;
- vec3 _17098 = g_MeshData_1._m0[_24369]._m2 - _6370;
- vec3 _11242 = (vec4(_6370, 1.0) * _15345).xyz;
+ vec3 _6371 = (g_MeshData_1._m0[_5056]._m0 + g_MeshData_1._m0[_5056]._m2) * 0.5;
+ vec3 _17098 = g_MeshData_1._m0[_5056]._m2 - _6371;
+ vec3 _11242 = (vec4(_6371, 1.0) * _15345).xyz;
float _8996 = _17098.x;
float _15046 = _17098.y;
float _17230 = _17098.z;
@@ -289,7 +297,7 @@ CS
bool _12885;
if (_Globals_.g_bEnableFrustumCulling != 0)
{
- vec4 _20198[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);
+ vec4 _20578[6] = vec4[](_Globals_.g_vFrustumPlane0, _Globals_.g_vFrustumPlane1, _Globals_.g_vFrustumPlane2, _Globals_.g_vFrustumPlane3, _Globals_.g_vFrustumPlane4, _Globals_.g_vFrustumPlane5);
float _13155;
_13155 = 100000000.0;
float _6414;
@@ -301,7 +309,7 @@ CS
{
break;
}
- _6414 = min(_13155, dot(mix(_11144, _8008, greaterThan(_20198[_16208].xyz, vec3(0.0))), _20198[_16208].xyz) + _20198[_16208].w);
+ _6414 = min(_13155, dot(mix(_11144, _8008, greaterThan(_20578[_16208].xyz, vec3(0.0))), _20578[_16208].xyz) + _20578[_16208].w);
_8899 = _16208 + 1;
_13155 = _6414;
_16208 = _8899;
@@ -323,8 +331,8 @@ CS
bool _7462;
do
{
- vec3 _11387 = (_11144 + _8008) * 0.5;
- float _20801 = _10932 * g_MeshData_1._m0[_24369]._m7;
+ vec3 _23075 = (_11144 + _8008) * 0.5;
+ float _10825 = _10932 * g_MeshData_1._m0[_5056]._m7;
bool _12886;
if (_Globals_.g_bEnableSizeCulling != 0)
{
@@ -336,27 +344,27 @@ CS
{
if (_Globals_.g_bCullViewOrthographic != 0)
{
- _20091 = (2.0 * _20801) * _Globals_.g_fRootViewOrthoInvWidth;
+ _20091 = (2.0 * _10825) * _Globals_.g_fRootViewOrthoInvWidth;
break;
}
else
{
- float _23997 = length(_11387 - _Globals_.g_vCullViewOrigin);
- if (_23997 <= _20801)
+ float _23997 = length(_23075 - _Globals_.g_vCullViewOrigin);
+ if (_23997 <= _10825)
{
_20091 = 1.0;
break;
}
else
{
- _20091 = clamp(_20801 / (_23997 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);
+ _20091 = clamp(_10825 / (_23997 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);
break;
}
break; // unreachable workaround
}
break; // unreachable workaround
} while(false);
- if (_20091 < (_Globals_.g_fCullViewSizeThreshold * g_MeshData_1._m0[_24369]._m6))
+ if (_20091 < (_Globals_.g_fCullViewSizeThreshold * g_MeshData_1._m0[_5056]._m6))
{
_12501 = true;
break;
@@ -381,39 +389,40 @@ CS
bool _12502;
do
{
- if (g_MeshData_1._m0[_24369]._m8 > 0.0)
+ SPIRV_CROSS_BRANCH
+ if (g_MeshData_1._m0[_5056]._m8 > 0.0)
{
- float _17253;
+ float _20092;
do
{
if (_Globals_.g_bCullViewOrthographic != 0)
{
- _17253 = (2.0 * _20801) * _Globals_.g_fRootViewOrthoInvWidth;
+ _20092 = (2.0 * _10825) * _Globals_.g_fRootViewOrthoInvWidth;
break;
}
else
{
- float _23998 = length(_11387 - _Globals_.g_vCullViewOrigin);
- if (_23998 <= _20801)
+ float _23998 = length(_23075 - _Globals_.g_vCullViewOrigin);
+ if (_23998 <= _10825)
{
- _17253 = 1.0;
+ _20092 = 1.0;
break;
}
else
{
- _17253 = clamp(_20801 / (_23998 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);
+ _20092 = clamp(_10825 / (_23998 * _Globals_.g_fCullViewTanHalfFov), 0.0, 1.0);
break;
}
break; // unreachable workaround
}
break; // unreachable workaround
} while(false);
- uint _12240 = gl_LocalInvocationID.x + (g_CullRequests_1._m0[_13724]._m7 & 65535u);
- uint _7414 = _12240 + 374761393u;
+ uint _24669 = gl_LocalInvocationID.x + (g_CullRequests_1._m0[_13724]._m7 & 65535u);
+ uint _7414 = _24669 + 374761393u;
uint _17451 = 668265263u * ((_7414 << uint(17)) | (_7414 >> uint(15)));
uint _17202 = 2246822519u * (_17451 ^ (_17451 >> uint(15)));
uint _17204 = 3266489917u * (_17202 ^ (_17202 >> uint(13)));
- _12502 = (_17253 + (((float(_17204 ^ (_17204 >> uint(16))) * 2.3283064365386962890625e-10) * (float(_12240) / float(g_CullRequests_1._m0[_13724]._m7 >> uint(16)))) * g_MeshData_1._m0[_24369]._m10)) < g_MeshData_1._m0[_24369]._m9;
+ _12502 = (_20092 + (((float(_17204 ^ (_17204 >> uint(16))) * 2.3283064365386962890625e-10) * (float(_24669) / float(g_CullRequests_1._m0[_13724]._m7 >> uint(16)))) * g_MeshData_1._m0[_5056]._m10)) < g_MeshData_1._m0[_5056]._m9;
break;
}
_12502 = false;
@@ -435,9 +444,10 @@ CS
} while(false);
_7251 = !_7462;
}
+ SPIRV_CROSS_BRANCH
if (_3779 ? _7251 : false)
{
- undetermined_1._m0[_5325]._m0 = _449(vec4[](_15345[0], _15345[1], _15345[2]));
+ undetermined_1._m0[_5325]._m0 = _15345;
}
_12888 = _7251;
}
@@ -447,36 +457,36 @@ CS
}
if (_12888)
{
- uint _8369 = g_MeshData_1._m0[_24369]._m12;
- uint _6371 = _8369 & 15u;
- uint _3737 = imageAtomicAdd(_5506, int((_7126 * 5u) + 1u), 1u);
+ uint _8369 = g_MeshData_1._m0[_5056]._m12;
+ uint _6372 = _8369 & 15u;
+ uint _3737 = imageAtomicAdd(_5506, int((_5516 * 5u) + 1u), 1u);
uint _24498 = g_CullRequests_1._m0[_13724]._m6;
uint _3056 = _24498 + _3737;
uint _5186;
uint _13039 = 1u;
for (;;)
{
- if (!(_13039 < _6371))
+ if (!(_13039 < _6372))
{
break;
}
- uint _17760 = imageAtomicAdd(_5506, int(((_7126 + (_13039 * 2u)) * 5u) + 1u), 1u);
+ uint _17760 = imageAtomicAdd(_5506, int(((_5516 + (_13039 * 2u)) * 5u) + 1u), 1u);
_5186 = _13039 + 1u;
_13039 = _5186;
continue;
}
- uint _12699;
+ uint _9848;
if (_3779)
{
- _12699 = (_24445 + (gl_LocalInvocationID.x * 24u)) + 20u;
+ _9848 = (_5611 + (gl_LocalInvocationID.x * 24u)) + 20u;
}
else
{
- _12699 = _24445 + (gl_LocalInvocationID.x * 4u);
+ _9848 = _5611 + (gl_LocalInvocationID.x * 4u);
}
- undetermined_3._m0[_3056]._m0 = g_InstanceData_1._m0[uint(int(_12699)) / 4u];
+ undetermined_3._m0[_3056]._m0 = g_InstanceData_1._m0[_9848 / 4u];
undetermined_3._m0[_3056]._m1 = _5325;
- undetermined_3._m0[_3056]._m2 = uint(int(_13687));
+ undetermined_3._m0[_3056]._m2 = _25111;
undetermined_3._m0[_3056]._m3 = 4294967295u;
undetermined_3._m0[_3056]._m4 = 4294967295u;
undetermined_3._m0[_3056]._m5 = 0u;
game/core/shaders_vulkan_dir/shaders/vfx/debug_show_texture.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/debug_wireframe_2d.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/depth_only.slang
modified • +45 / -22 • changes: 67
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -62,9 +62,9 @@ VS
cbuffer FFDTransforms_t < Attribute("FFDTransforms_t"); >;
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Foliage Animation
float g_flBendScale < Default(0.1); UiType(Slider); UiGroup("Foliage Animation"); >;
@@ -76,7 +76,7 @@ VS
float g_flWindSpeed < Default(1); Range(0, 5); UiType(Slider); UiGroup("Foliage Animation"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2204 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -90,26 +90,33 @@ VS
float _m7;
};
- struct _1066
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _81
+ struct _1126
{
- _1066 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1192
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1192 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
@@ -134,16 +141,32 @@ VS
void MainVs_inner()
{
- _1066 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3 _19498 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
- float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
- _24787.y = -_24787.y;
- gl_Position = _24787;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _19498 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
+ _19149.y = -_19149.y;
+ gl_Position = _19149;
gl_ClipDistance[0] = dot(float4(_19498, 1.0f), PerViewConstantBuffer_t_1_m1);
}
game/core/shaders_vulkan_dir/shaders/vfx/depth_only_foliage.slang
modified • +45 / -22 • changes: 67
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -54,8 +54,8 @@ VS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Foliage Animation
float g_flBendScale < Default(0.1); UiType(Slider); UiGroup("Foliage Animation"); >;
@@ -67,7 +67,7 @@ VS
float g_flWindSpeed < Default(1); Range(0, 5); UiType(Slider); UiGroup("Foliage Animation"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2204 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -81,26 +81,33 @@ VS
float _m7;
};
- struct _940
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2839
+ struct _1126
{
- _940 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1066
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1066 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
@@ -125,16 +132,32 @@ VS
void MainVs_inner()
{
- _940 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3 _19498 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
- float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
- _24787.y = -_24787.y;
- gl_Position = _24787;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _19498 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19498.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
+ _19149.y = -_19149.y;
+ gl_Position = _19149;
gl_ClipDistance[0] = dot(float4(_19498, 1.0f), PerViewConstantBuffer_t_1_m1);
}
game/core/shaders_vulkan_dir/shaders/vfx/depth_pyramid_cs.slang
modified • +57 / -49 • changes: 106
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -39,7 +39,7 @@ CS
Texture2D g_tInputDepth < Attribute("Dummy"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (20072 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (19340 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _981
{
@@ -54,8 +54,8 @@ CS
};
Texture2D<float4> g_tInputDepth : register(t30, space3);
- RWTexture2D<float4> _5785[13] : register(u160, space3);
globallycoherent RWTexture2D<float4> _4300 : register(u159, space3);
+ RWTexture2D<float4> _5785[13] : register(u160, space3);
static uint3 gl_WorkGroupID;
static uint gl_LocalInvocationIndex;
@@ -80,8 +80,8 @@ CS
int2 _17277;
int _22460;
uint _17662 = gl_LocalInvocationIndex % 64u;
- uint _18055 = ((_17662 & 1u) | (((_17662 >> 2u) & 7u) & 4294967294u)) + (8u * ((gl_LocalInvocationIndex >> uint(6)) % 2u));
- uint _21604 = ((((_17662 >> 1u) & 3u) & 3u) | (((_17662 >> 3u) & 7u) & 4294967292u)) + (8u * (gl_LocalInvocationIndex >> uint(7)));
+ uint _18055 = ((_17662 & 1u) | ((_17662 >> 2u) & 6u)) + (8u * ((gl_LocalInvocationIndex >> uint(6)) % 2u));
+ uint _21604 = (((_17662 >> 1u) & 3u) | ((_17662 >> 3u) & 4u)) + (8u * (gl_LocalInvocationIndex >> uint(7)));
do
{
_6312 = gl_WorkGroupID.xy;
@@ -91,30 +91,34 @@ CS
_10507 = _21604 * 2u;
_12461 = int(_10507);
_17277 = int2(_22460, _12461);
+ int2 _16450 = _15224 + _17277;
int2 _20613 = int2(_6312 * uint2(32u, 32u));
int _18838 = int(_18055);
int _8296 = int(_21604);
_16009 = int2(_18838, _8296);
- float4 _20198[4];
- uint2 _19109 = uint2(_15224 + _17277);
- float4 _13482 = max(max(g_tInputDepth.Load(int3(int3(int2(_19109), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
- _20198[0] = _13482;
+ float4 _20274[4];
+ uint2 _19109 = uint2(_16450);
+ float4 _13482 = max(max(g_tInputDepth.Load(int3(int3(_16450, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19109 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
+ _20274[0] = _13482;
_5785[1u][uint2(_20613 + _16009)] = _13482.x.xxxx;
int _15894 = int(_11495 + 32u);
+ int2 _17142 = _15224 + int2(_15894, _12461);
int _16683 = int(_18055 + 16u);
- uint2 _19110 = uint2(_15224 + int2(_15894, _12461));
- float4 _14603 = max(max(g_tInputDepth.Load(int3(int3(int2(_19110), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
- _20198[1] = _14603;
+ uint2 _19110 = uint2(_17142);
+ float4 _14603 = max(max(g_tInputDepth.Load(int3(int3(_17142, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19110 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
+ _20274[1] = _14603;
_5785[1u][uint2(_20613 + int2(_16683, _8296))] = _14603.x.xxxx;
int _15895 = int(_10507 + 32u);
+ int2 _17143 = _15224 + int2(_22460, _15895);
int _16684 = int(_21604 + 16u);
- uint2 _19111 = uint2(_15224 + int2(_22460, _15895));
- float4 _14604 = max(max(g_tInputDepth.Load(int3(int3(int2(_19111), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
- _20198[2] = _14604;
+ uint2 _19111 = uint2(_17143);
+ float4 _14604 = max(max(g_tInputDepth.Load(int3(int3(_17143, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19111 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
+ _20274[2] = _14604;
_5785[1u][uint2(_20613 + int2(_18838, _16684))] = _14604.x.xxxx;
- uint2 _19112 = uint2(_15224 + int2(_15894, _15895));
- float4 _14605 = max(max(g_tInputDepth.Load(int3(int3(int2(_19112), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
- _20198[3] = _14605;
+ int2 _21502 = _15224 + int2(_15894, _15895);
+ uint2 _19112 = uint2(_21502);
+ float4 _14605 = max(max(g_tInputDepth.Load(int3(int3(_21502, 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(0u, 1u)), 0).xy, 0)).x.xxxx), max(g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 0u)), 0).xy, 0)).x.xxxx, g_tInputDepth.Load(int3(int3(int2(_19112 + uint2(1u, 1u)), 0).xy, 0)).x.xxxx));
+ _20274[3] = _14605;
_5785[1u][uint2(_20613 + int2(_16683, _16684))] = _14605.x.xxxx;
if (_5474_m0 <= 1u)
{
@@ -128,15 +132,15 @@ CS
{
break;
}
- _3286[_18055 + (16u * _21604)] = _20198[_13039].x;
+ _3286[_18055 + (16u * _21604)] = _20274[_13039].x;
GroupMemoryBarrierWithGroupSync();
if (gl_LocalInvocationIndex < 64u)
{
uint _21225 = _11495 + 1u;
uint _17922 = _21604 * 32u;
uint _12552 = 16u * (_10507 + 1u);
float4 _14755 = max(max(_3286[_11495 + _17922].xxxx, _3286[_21225 + _17922].xxxx), max(_3286[_11495 + _12552].xxxx, _3286[_21225 + _12552].xxxx));
- _20198[_13039] = _14755;
+ _20274[_13039] = _14755;
_5785[2u][uint2(int2(_6312 * uint2(16u, 16u)) + int2(int(_18055 + uint((_13039 - 2 * (_13039 / 2)) * 8)), int(_21604 + uint((_13039 / 2) * 8))))] = _14755.x.xxxx;
}
GroupMemoryBarrierWithGroupSync();
@@ -147,12 +151,12 @@ CS
if (gl_LocalInvocationIndex < 64u)
{
uint _17259 = 16u * _21604;
- _3286[_18055 + _17259] = _20198[0].x;
+ _3286[_18055 + _17259] = _20274[0].x;
uint _15354 = _18055 + 8u;
- _3286[_15354 + _17259] = _20198[1].x;
+ _3286[_15354 + _17259] = _20274[1].x;
uint _17034 = 16u * (_21604 + 8u);
- _3286[_18055 + _17034] = _20198[2].x;
- _3286[_15354 + _17034] = _20198[3].x;
+ _3286[_18055 + _17034] = _20274[2].x;
+ _3286[_15354 + _17034] = _20274[3].x;
}
break;
} while(false);
@@ -210,7 +214,7 @@ CS
GroupMemoryBarrierWithGroupSync();
if (gl_LocalInvocationIndex < 1u)
{
- _4300[uint2(int2(_6312))] = max(max(_3286[0u].xxxx, _3286[1u].xxxx), max(_3286[2u].xxxx, _3286[3u].xxxx)).x.xxxx;
+ _4300[_6312] = max(max(_3286[0u].xxxx, _3286[1u].xxxx), max(_3286[2u].xxxx, _3286[3u].xxxx)).x.xxxx;
}
break;
} while(false);
@@ -241,41 +245,45 @@ CS
int _19466 = int(_12251);
uint _10508 = _21604 * 4u;
int _12385 = int(_10508);
- uint2 _11848 = uint2(int2(_19466, _12385));
- float4 _21178 = _4300[int2(uint2(int2(_11848)))];
- float4 _21179 = _4300[int2(uint2(int2(_11848 + uint2(0u, 1u))))];
- float4 _21180 = _4300[int2(uint2(int2(_11848 + uint2(1u, 0u))))];
- float4 _21181 = _4300[int2(uint2(int2(_11848 + uint2(1u, 1u))))];
- float4 _14084 = max(max(_21178.x.xxxx, _21179.x.xxxx), max(_21180.x.xxxx, _21181.x.xxxx));
+ int2 _17893 = int2(_19466, _12385);
+ uint2 _11848 = uint2(_17893);
+ float4 _17947 = _4300[_17893];
+ float4 _21178 = _4300[int2(_11848 + uint2(0u, 1u))];
+ float4 _21179 = _4300[int2(_11848 + uint2(1u, 0u))];
+ float4 _21180 = _4300[int2(_11848 + uint2(1u, 1u))];
+ float4 _14084 = max(max(_17947.x.xxxx, _21178.x.xxxx), max(_21179.x.xxxx, _21180.x.xxxx));
_5785[7u][uint2(_17277)] = _14084.x.xxxx;
_21382 = _12251 + 2u;
int _15896 = int(_21382);
+ int2 _20356 = int2(_15896, _12385);
_16998 = _11495 + 1u;
int _10180 = int(_16998);
- uint2 _11849 = uint2(int2(_15896, _12385));
- float4 _21182 = _4300[int2(uint2(int2(_11849)))];
- float4 _21183 = _4300[int2(uint2(int2(_11849 + uint2(0u, 1u))))];
- float4 _21184 = _4300[int2(uint2(int2(_11849 + uint2(1u, 0u))))];
- float4 _21185 = _4300[int2(uint2(int2(_11849 + uint2(1u, 1u))))];
- float4 _22131 = max(max(_21182.x.xxxx, _21183.x.xxxx), max(_21184.x.xxxx, _21185.x.xxxx));
+ uint2 _11849 = uint2(_20356);
+ float4 _17948 = _4300[_20356];
+ float4 _21181 = _4300[int2(_11849 + uint2(0u, 1u))];
+ float4 _21182 = _4300[int2(_11849 + uint2(1u, 0u))];
+ float4 _21183 = _4300[int2(_11849 + uint2(1u, 1u))];
+ float4 _22131 = max(max(_17948.x.xxxx, _21181.x.xxxx), max(_21182.x.xxxx, _21183.x.xxxx));
_5785[7u][uint2(int2(_10180, _12461))] = _22131.x.xxxx;
_21383 = _10508 + 2u;
int _15897 = int(_21383);
+ int2 _20357 = int2(_19466, _15897);
_16999 = _10507 + 1u;
int _10181 = int(_16999);
- uint2 _11850 = uint2(int2(_19466, _15897));
- float4 _21186 = _4300[int2(uint2(int2(_11850)))];
- float4 _21187 = _4300[int2(uint2(int2(_11850 + uint2(0u, 1u))))];
- float4 _21188 = _4300[int2(uint2(int2(_11850 + uint2(1u, 0u))))];
- float4 _21189 = _4300[int2(uint2(int2(_11850 + uint2(1u, 1u))))];
- float4 _22132 = max(max(_21186.x.xxxx, _21187.x.xxxx), max(_21188.x.xxxx, _21189.x.xxxx));
+ uint2 _11850 = uint2(_20357);
+ float4 _17949 = _4300[_20357];
+ float4 _21184 = _4300[int2(_11850 + uint2(0u, 1u))];
+ float4 _21185 = _4300[int2(_11850 + uint2(1u, 0u))];
+ float4 _21186 = _4300[int2(_11850 + uint2(1u, 1u))];
+ float4 _22132 = max(max(_17949.x.xxxx, _21184.x.xxxx), max(_21185.x.xxxx, _21186.x.xxxx));
_5785[7u][uint2(int2(_22460, _10181))] = _22132.x.xxxx;
- uint2 _8647 = uint2(int2(_15896, _15897));
- float4 _21190 = _4300[int2(uint2(int2(_8647)))];
- float4 _21191 = _4300[int2(uint2(int2(_8647 + uint2(0u, 1u))))];
- float4 _21192 = _4300[int2(uint2(int2(_8647 + uint2(1u, 0u))))];
- float4 _21193 = _4300[int2(uint2(int2(_8647 + uint2(1u, 1u))))];
- float4 _22133 = max(max(_21190.x.xxxx, _21191.x.xxxx), max(_21192.x.xxxx, _21193.x.xxxx));
+ int2 _22601 = int2(_15896, _15897);
+ uint2 _8647 = uint2(_22601);
+ float4 _17950 = _4300[_22601];
+ float4 _21187 = _4300[int2(_8647 + uint2(0u, 1u))];
+ float4 _21188 = _4300[int2(_8647 + uint2(1u, 0u))];
+ float4 _21189 = _4300[int2(_8647 + uint2(1u, 1u))];
+ float4 _22133 = max(max(_17950.x.xxxx, _21187.x.xxxx), max(_21188.x.xxxx, _21189.x.xxxx));
_5785[7u][uint2(int2(_10180, _10181))] = _22133.x.xxxx;
if (_5474_m0 <= 7u)
{
game/core/shaders_vulkan_dir/shaders/vfx/downsample.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/downsample_bloomthreshold.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -94,7 +94,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vInvTexDim) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -88,15 +88,15 @@ PS
Texture2D g_tDepth < Attribute("DepthBuffer"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (932 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (924 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space1)
{
int _Globals_1_g_nDownsampleRatioW : packoffset(c0);
int _Globals_1_g_nDownsampleRatioH : packoffset(c0.y);
};
- Texture2DMS<float4> g_tDepth_unexpectedTypeId438_1075 : register(t30, space1);
+ Texture2DMS<float4> g_tDepth : register(t30, space1);
static float4 gl_FragCoord;
static float gl_FragDepth;
@@ -112,7 +112,7 @@ PS
void MainPs_inner()
{
- gl_FragDepth = g_tDepth_unexpectedTypeId438_1075.Load((int2(gl_FragCoord.xy).xy * int2(_Globals_1_g_nDownsampleRatioW, _Globals_1_g_nDownsampleRatioH)).xy, 0).x;
+ gl_FragDepth = g_tDepth.Load((int2(gl_FragCoord.xy).xy * int2(_Globals_1_g_nDownsampleRatioW, _Globals_1_g_nDownsampleRatioH)).xy, 0).x;
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth_cs.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
game/core/shaders_vulkan_dir/shaders/vfx/downsample_depth_singlepass_cs.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -50,7 +50,7 @@ CS
float2 g_vInvSrcSize < Attribute("InvSrcSize"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3132 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3116 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
@@ -71,7 +71,7 @@ CS
void MainCs_inner()
{
- int2 _5754 = (int2(uint2((((gl_LocalInvocationID.x) & 1u) | (((gl_LocalInvocationID.x >> uint(3)) & 3u) << uint(1))) | (((gl_LocalInvocationID.x >> uint(7)) & 1u) << uint(3)), ((gl_LocalInvocationID.x >> uint(1)) & 3u) | (((gl_LocalInvocationID.x >> uint(5)) & 3u) << uint(2)))) * int2(4, 4)) + int2(gl_WorkGroupID.xy * uint2(64u, 64u));
+ int2 _5754 = (int2(uint2(((gl_LocalInvocationID.x & 1u) | (((gl_LocalInvocationID.x >> uint(3)) & 3u) << uint(1))) | (((gl_LocalInvocationID.x >> uint(7)) & 1u) << uint(3)), ((gl_LocalInvocationID.x >> uint(1)) & 3u) | (((gl_LocalInvocationID.x >> uint(5)) & 3u) << uint(2)))) * int2(4, 4)) + int2(gl_WorkGroupID.xy * uint2(64u, 64u));
float2 _11517 = float2(_5754) * _Globals_1_g_vInvSrcSize;
float4 _24999 = g_tSrcDepth.GatherRed(AddressU_Clamp_AddressV_Clamp_AllowGlobalMipBiasOverride_0_Filter_MinMagMipPoint, _11517, int2(1, 1));
float4 _25000 = g_tSrcDepth.GatherRed(AddressU_Clamp_AddressV_Clamp_AllowGlobalMipBiasOverride_0_Filter_MinMagMipPoint, _11517, int2(3, 1));
game/core/shaders_vulkan_dir/shaders/vfx/error.slang
modified • +46 / -23 • changes: 69
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -39,11 +39,11 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2856 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2172 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -57,27 +57,34 @@ VS
float _m7;
};
- struct _856
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2671
+ struct _1126
{
- _856 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _982
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _982 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -100,16 +107,32 @@ VS
void MainVs_inner()
{
- _856 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _23913 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _18275 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = frac(((vPositionOs.x + vPositionOs.y) + vPositionOs.z) * 100.09999847412109375f);
- _23913.y = -_23913.y;
- gl_Position = _23913;
+ _18275.y = -_18275.y;
+ gl_Position = _18275;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/fsr2_compute_reactive_mask.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/fsr_upscale.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/fxaa_cs.slang
modified • +24 / -25 • changes: 49
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -43,7 +43,7 @@ CS
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (6448 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (6368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _6;
@@ -82,12 +82,11 @@ CS
uint2 _3873 = gl_GlobalInvocationID.xy + FxaaConstants_t_1_m2;
if (gl_LocalInvocationIndex < 50u)
{
- int2 _7300 = int2(((FxaaConstants_t_1_m2 + uint2(gl_LocalInvocationIndex % 10u, gl_LocalInvocationIndex / 10u)) + (gl_WorkGroupID.xy * uint2(8u, 8u))) - uint2(1u, 1u));
- uint2 _9338 = uint2(_7300);
- float _21479 = log2(1.0f + (dot(g_tColor.Load(int3(_9338, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;
- _4695[_9338] = _21479.x;
+ uint2 _19079 = ((FxaaConstants_t_1_m2 + uint2(gl_LocalInvocationIndex % 10u, gl_LocalInvocationIndex / 10u)) + (gl_WorkGroupID.xy * uint2(8u, 8u))) - uint2(1u, 1u);
+ float _21479 = log2(1.0f + (dot(g_tColor.Load(int3(_19079, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;
+ _4695[_19079] = _21479.x;
_5396[gl_LocalInvocationIndex] = _21479;
- uint2 _19343 = uint2(_7300 + int2(0, 5));
+ uint2 _19343 = uint2(int2(_19079) + int2(0, 5));
float _21480 = log2(1.0f + (dot(g_tColor.Load(int3(_19343, 0)).xyz, float3(0.21267099678516387939453125f, 0.71516001224517822265625f, 0.072168998420238494873046875f)) * 15.0f)) * 0.25f;
_4695[_19343] = _21480.x;
_5396[gl_LocalInvocationIndex + 50u] = _21480;
@@ -104,40 +103,40 @@ CS
{
break;
}
- uint _14389 = _4614 - 11u;
+ uint _16811 = _4614 - 11u;
uint _13650 = _4614 + 4294967287u;
uint _13651 = _4614 + 9u;
uint _13652 = _4614 + 11u;
float _4332 = _5396[_10215] + _5396[_13649];
float _4366 = _5396[_16333] + _5396[_13648];
- float _4079 = _5396[_14389] + _5396[_13651];
+ float _4079 = _5396[_16811] + _5396[_13651];
float _3549 = _5396[_13650] + _5396[_13652];
float _15085 = 2.0f * _4459;
- bool _17147 = ((abs(_4079 - (2.0f * _5396[_16333])) + (abs(_4332 - _15085) * 2.0f)) + abs(_3549 - (2.0f * _5396[_13648]))) >= ((abs((_5396[_13651] + _5396[_13652]) - (2.0f * _5396[_13649])) + (abs(_4366 - _15085) * 2.0f)) + abs((_5396[_14389] + _5396[_13650]) - (2.0f * _5396[_10215])));
+ bool _17147 = ((abs(_4079 - (2.0f * _5396[_16333])) + (abs(_4332 - _15085) * 2.0f)) + abs(_3549 - (2.0f * _5396[_13648]))) >= ((abs((_5396[_13651] + _5396[_13652]) - (2.0f * _5396[_13649])) + (abs(_4366 - _15085) * 2.0f)) + abs((_5396[_16811] + _5396[_13650]) - (2.0f * _5396[_10215])));
uint _5884 = uint(int(abs((_17147 ? _5396[_13649] : _5396[_13648]) - _4459) >= abs((_17147 ? _5396[_10215] : _5396[_16333]) - _4459)));
uint _4421 = (((_3873.y << uint(20)) | (_3873.x << uint(8))) | (uint(clamp((pow(smoothstep(0.0f, 1.0f, abs((((((_4332 + _4366) * 2.0f) + _4079) + _3549) * 0.083333335816860198974609375f) - _4459) / _4466), 2.0f) * FxaaConstants_t_1_m1) * 2.0f, 0.0f, 1.0f) * 254.0f) & 254u)) | _5884;
if (_17147)
{
- uint _4591;
- InterlockedAdd(_5959[0u], 1u, _4591);
- _3823[_4591] = _4421.x;
- float4 _17883 = g_tColor.Load(int3(uint2(int2(_3873 + uint2(0u, (2u * _5884) - 1u))), 0));
- uint _16573 = 3u * _4591;
- _5402[_16573] = _17883.x.x;
- _5402[_16573 + 1u] = _17883.y.x;
- _5402[_16573 + 2u] = _17883.z.x;
+ uint _7294;
+ InterlockedAdd(_5959[0u], 1u, _7294);
+ _3823[_7294] = _4421.x;
+ float4 _14651 = g_tColor.Load(int3(_3873 + uint2(0u, (2u * _5884) - 1u), 0));
+ uint _16572 = 3u * _7294;
+ _5402[_16572] = _14651.x.x;
+ _5402[_16572 + 1u] = _14651.y.x;
+ _5402[_16572 + 2u] = _14651.z.x;
}
else
{
uint _6241;
InterlockedAdd(_5959[1u], 1u, _6241);
- uint _17386 = FxaaConstants_t_1_m3 - _6241;
- _3823[_17386] = _4421.x;
- float4 _17882 = g_tColor.Load(int3(uint2(int2(_3873 + uint2((2u * _5884) - 1u, 0u))), 0));
- uint _16572 = 3u * _17386;
- _5402[_16572] = _17882.x.x;
- _5402[_16572 + 1u] = _17882.y.x;
- _5402[_16572 + 2u] = _17882.z.x;
+ uint _4591 = FxaaConstants_t_1_m3 - _6241;
+ _3823[_4591] = _4421.x;
+ float4 _14652 = g_tColor.Load(int3(_3873 + uint2((2u * _5884) - 1u, 0u), 0));
+ uint _16573 = 3u * _4591;
+ _5402[_16573] = _14652.x.x;
+ _5402[_16573 + 1u] = _14652.y.x;
+ _5402[_16573 + 2u] = _14652.z.x;
}
break;
} while(false);
game/core/shaders_vulkan_dir/shaders/vfx/gaussian_bloom_blur.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/general_filter.slang
modified • +8 / -13 • changes: 21
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -99,30 +99,25 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2236 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _226
- {
- float4 _m0[4];
- };
-
- struct _352
+ struct _268
{
float4 _m0[32];
};
cbuffer FilterTaps_t : register(b2, space1)
{
float4 FilterTaps_t_1_m0 : packoffset(c0);
- _226 FilterTaps_t_1_m1 : packoffset(c2);
- _352 FilterTaps_t_1_m2 : packoffset(c6);
+ column_major float4x4 FilterTaps_t_1_m1 : packoffset(c2);
+ _268 FilterTaps_t_1_m2 : packoffset(c6);
};
Texture2D<float4> g_tInputTexture : register(t30, space1);
SamplerState Filter_MinMagLinearMipPoint : register(s14, space1);
- static float4 output_0;
static float2 input_0;
+ static float4 output_0;
struct PS_INPUT
{
@@ -155,7 +150,7 @@ PS
_16208 = _18752;
continue;
}
- output_0 = mul(float4x4(float4(FilterTaps_t_1_m1._m0[0].x, FilterTaps_t_1_m1._m0[1].x, FilterTaps_t_1_m1._m0[2].x, FilterTaps_t_1_m1._m0[3].x), float4(FilterTaps_t_1_m1._m0[0].y, FilterTaps_t_1_m1._m0[1].y, FilterTaps_t_1_m1._m0[2].y, FilterTaps_t_1_m1._m0[3].y), float4(FilterTaps_t_1_m1._m0[0].z, FilterTaps_t_1_m1._m0[1].z, FilterTaps_t_1_m1._m0[2].z, FilterTaps_t_1_m1._m0[3].z), float4(FilterTaps_t_1_m1._m0[0].w, FilterTaps_t_1_m1._m0[1].w, FilterTaps_t_1_m1._m0[2].w, FilterTaps_t_1_m1._m0[3].w)), _13155);
+ output_0 = mul(FilterTaps_t_1_m1, _13155);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/generate_relaxed_cones.slang
modified • +13 / -13 • changes: 26
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -38,7 +38,7 @@ CS
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (6740 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (6708 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
@@ -47,10 +47,10 @@ CS
uint _Globals_1_g_nMipCount : packoffset(c1.y);
};
- RWTexture2D<uint> _5369 : register(u158, space0);
Texture2D<float4> g_tHeightmap : register(t30, space0);
SamplerState AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint : register(s14, space0);
SamplerState AddressU_Wrap_AddressV_Wrap_Filter_MinMagLinearMipPoint : register(s15, space0);
+ RWTexture2D<uint> _5369 : register(u158, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_LocalInvocationID;
@@ -72,7 +72,7 @@ CS
_4495 = 255u;
}
GroupMemoryBarrierWithGroupSync();
- int2 _9524 = int2(gl_WorkGroupID.xy);
+ int2 _10133 = int2(gl_WorkGroupID.xy);
uint _6475;
float _11901;
float _13155 = 1.0f;
@@ -83,11 +83,11 @@ CS
{
break;
}
- float2 _16123 = (float2(_9524) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;
+ float2 _16123 = (float2(_10133) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;
float4 _11160 = g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _16123, 0.0f);
float _17197 = _11160.x;
uint2 _13520 = _16208.xx;
- float _17362 = -length(float2(int2(2, 2) << int2(_13520)) * _Globals_1_g_vImageDimensions.zw);
+ float _24380 = length(float2(int2(2, 2) << int2(_13520)) * _Globals_1_g_vImageDimensions.zw);
int _12501;
if (_16208 != 0u)
{
@@ -121,16 +121,16 @@ CS
_14382 = _13156;
break;
}
- float2 _6348 = (float2((_9524 & int2(-4, -4)) + ((_9763 + int2(2, 2)) << int2(_13520))) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;
- float _15526 = _17197 - g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _6348, float(_16208 + 2u)).x;
+ float2 _6348 = (float2((_10133 & int2(-4, -4)) + ((_9763 + int2(2, 2)) << int2(_13520))) + 0.5f.xx) * _Globals_1_g_vImageDimensions.zw;
+ float _10682 = _17197 - g_tHeightmap.SampleLevel(AddressU_Wrap_AddressV_Wrap_Filter_MinMagMipPoint, _6348, float(_16208 + 2u)).x;
float _23727;
- if (_15526 <= 0.0f)
+ if (_10682 <= 0.0f)
{
_23727 = 1.0f;
}
else
{
- _23727 = (_Globals_1_g_fWidthScale * (length(_16123.xy - _6348.xy) + _17362)) / _15526;
+ _23727 = (_Globals_1_g_fWidthScale * (length(_16123.xy - _6348.xy) - _24380)) / _10682;
}
uint _12502;
if (_23727 < _13155)
@@ -187,11 +187,11 @@ CS
{
break;
}
- int2 _15209 = (_9524 & int2(-4, -4)) + ((_24144 + int2(_16212, _16211)) << int2(_13520));
+ int2 _15209 = (_10133 & int2(-4, -4)) + ((_24144 + int2(_16212, _16211)) << int2(_13520));
float _20773;
do
{
- if (all(bool2(_9524.x == _15209.x, _9524.y == _15209.y)))
+ if (all(bool2(_10133.x == _15209.x, _10133.y == _15209.y)))
{
_20773 = 1.0f;
break;
@@ -256,7 +256,7 @@ CS
}
if (_17840)
{
- _5369[uint2(_9524)] = _4495.x;
+ _5369[gl_WorkGroupID.xy] = _4495.x;
}
}
game/core/shaders_vulkan_dir/shaders/vfx/generic.slang
modified • +178 / -125 • changes: 303
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -81,9 +81,9 @@ VS
DynamicComboRule( Allow1( S_TRANSLUCENT, D_MORPH ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Normal Map
float2 g_vNormalTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup("Normal Map"); >;
@@ -93,7 +93,7 @@ VS
float2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup("Color/40"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5760 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (5068 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -107,26 +107,33 @@ VS
float _m7;
};
- struct _1444
+ struct _1126
{
- float4 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _836
+ struct _1119
{
- _1444 _m0;
+ float3x4 _m0;
};
- struct _1570
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1570 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
@@ -141,11 +148,11 @@ VS
static float4 gl_Position;
static float gl_ClipDistance[1];
- static float3 vPositionOs;
- static float2 vTexCoord;
- static float3 vNormalOs;
- static float4 vTangentUOs_flTangentVSign;
- static uint nInstanceIdx;
+ static uint vPositionOs;
+ static float3 vTexCoord;
+ static float2 vNormalOs;
+ static float3 vTangentUOs_flTangentVSign;
+ static float4 nInstanceIdx;
static float3 output_0;
static float4 output_1;
static float3 output_2;
@@ -154,11 +161,11 @@ VS
struct VS_INPUT
{
- float3 vPositionOs : TEXCOORD0;
- float2 vTexCoord : TEXCOORD1;
- float3 vNormalOs : TEXCOORD2;
- float4 vTangentUOs_flTangentVSign : TEXCOORD3;
- uint nInstanceIdx : TEXCOORD4;
+ float3 vTexCoord : TEXCOORD0;
+ float2 vNormalOs : TEXCOORD1;
+ float3 vTangentUOs_flTangentVSign : TEXCOORD2;
+ float4 nInstanceIdx : TEXCOORD3;
+ uint vPositionOs : TEXCOORD4;
};
struct PS_INPUT
@@ -174,7 +181,25 @@ VS
void MainVs_inner()
{
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(vPositionOs * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(vPositionOs * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(vPositionOs * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(vPositionOs * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(vPositionOs * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(vPositionOs * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(vPositionOs * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(vPositionOs * 32 + 28));
+ _1125 _22470;
+ _22470._m0 = _24007._m0;
+ _22470._m1 = _24007._m1;
+ _22470._m2 = _24007._m2;
+ _22470._m3 = _24007._m3;
+ _22470._m4 = _24007._m4;
+ _22470._m5 = _24007._m5;
+ _22470._m6 = _24007._m6;
+ _22470._m7 = _24007._m7;
+ float4 _23812 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -205,25 +230,22 @@ VS
{
_19302 = _7676.z;
}
- _1444 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _11198 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));
- float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_22470._m1 * 48 + 0), g_transformBuffer.Load4(_22470._m1 * 48 + 16), g_transformBuffer.Load4(_22470._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _11198 = normalize(mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)));
+ float3 _12861 = mul(_19848._m0, float4(nInstanceIdx.xyz, 0.0f)).xyz;
float3 _24912 = _11198.xyz;
- float3 _19938 = mul(_14817, float4(vPositionOs.xyz, 1.0f));
- float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
+ float3 _19938 = mul(_19848._m0, float4(vTexCoord.xyz, 1.0f));
+ float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
output_0 = _11198;
- output_1 = float4((vTexCoord.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy, ((vTexCoord.xy * _Globals_1_g_vNormalTexCoordScale.xy) * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy);
+ output_1 = float4((vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy, ((vNormalOs.xy * _Globals_1_g_vNormalTexCoordScale.xy) * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy);
output_2 = _19938;
output_3 = float4(_21354, _21355, _19302, _23812.w);
- output_4 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);
- _23894.y = -_23894.y;
- gl_Position = _23894;
+ output_4 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), nInstanceIdx.w);
+ _18256.y = -_18256.y;
+ gl_Position = _18256;
gl_ClipDistance[0] = dot(float4(_19938.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);
}
@@ -296,10 +318,13 @@ PS
RenderState(StencilPassOp, 2);
RenderState(StencilRef, 1);
RenderState(StencilWriteMask, 1);
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
+ float g_flCubeMapBlur < UiType(Slider); Expression((thisAmount*9)+1); >;
+ int g_nEnvMapIndex < Attribute("EnvMapIndex"); UiType(Slider); >;
Texture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, PreserveCoverage(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
+ TextureCubeArray g_tEnvLightProbes < Attribute("EnvMapArray"); SrgbRead(true); >;
Texture2D g_tMetalnessReflectanceFresnel < Channel(R, Box(TextureMetalness), Linear); Channel(G, Box(TextureReflectance), Linear); OutputFormat(DXT1); SrgbRead(false); >;
Texture2D g_tNormal < Channel(AG, MipNormal(TextureNormal), Linear); OutputFormat(DXT5); SrgbRead(false); >;
Texture2D g_tRoughness < Channel(RGBA, AnisoNormal(TextureNormal, TextureGlossiness), Linear); OutputFormat(DXT5); SrgbRead(false); >;
@@ -335,126 +360,137 @@ PS
float g_flAlphaTestReference < Default(0.5); Range(0.01, 0.99); UiType(Slider); UiGroup("Translucent"); >;
float g_flOpacityScale < Default(1); UiType(Slider); UiGroup("Translucent"); >;
- #if (S_RENDER_BACKFACES == 0)
- Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
- #endif
+ // Cube Map
+ float g_flCubeMapBlurAmount < Default(1); Range(0, 2); UiType(Slider); UiGroup("Cube Map,40/30"); >;
+
#if (S_TRANSLUCENT == 1)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
- #if (S_ALPHA_TEST == 0)
- Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
- #endif
- #if (S_MODE_TOOLS_WIREFRAME == 0)
+ #if (S_OVERLAY == 1)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
- #if (S_SPECULAR_CUBE_MAP == 0)
+ #if (S_ALPHA_TEST == 0)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
#if (S_UNLIT == 0)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
- #if (S_OVERLAY == 1)
+ #if (S_MODE_TOOLS_WIREFRAME == 0)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
#if (S_TOOLS_ENABLED == 0)
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
#endif
-
- // SPIR-V reflection failed for backend HLSL:
- // cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vColorTint) cannot be expressed with either HLSL packing layout or packoffset.
- //
- // Re-attempting reflection with the GLSL backend.
+ #if (S_RENDER_BACKFACES == 0)
+ Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
+ #endif
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5912 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
-
- #version 460
+ // SPIR-V source (5896 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- vec3 _2;
- vec4 _3;
+ static float3 _2;
+ static float4 _3;
- struct _1077
+ cbuffer _Globals_ : register(b0, space1)
{
- float g_flBumpStrength;
- vec3 g_vColorTint;
- vec2 g_vRoughnessScaleAndBias;
+ float _Globals_1_g_flBumpStrength : packoffset(c0.w);
+ float3 _Globals_1_g_vColorTint : packoffset(c1);
+ float2 _Globals_1_g_vRoughnessScaleAndBias : packoffset(c3.y);
};
- layout(set = 1) uniform _1077 _Globals_;
-
- struct _1017
+ cbuffer RoughnessLightingGlobalsCB_t : register(b3, space1)
{
- vec4 _m0;
+ float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);
};
- layout(set = 1) uniform _1017 RoughnessLightingGlobalsCB_t;
-
- struct _1227
+ cbuffer PerViewConstantBuffer_t : register(b1, space1)
{
- float _m0;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- float _m5;
- float _m6;
+ float PerViewConstantBuffer_t_1_m0 : packoffset(c18);
+ float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);
+ float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);
+ float PerViewConstantBuffer_t_1_m4 : packoffset(c32);
+ float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);
+ float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
- layout(set = 1) uniform _1227 PerViewConstantBuffer_t;
-
- struct _1065
+ cbuffer SunLightShaderParamsCB_t : register(b4, space1)
{
- vec4 _m0;
- vec3 _m1;
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
- layout(set = 1) uniform _1065 SunLightShaderParamsCB;
+ Texture2D<float4> g_tColor : register(t32, space1);
+ SamplerState DefaultSamplerState_0 : register(s16, space1);
+ Texture2D<float4> g_tNormal : register(t33, space1);
+ Texture2D<float4> g_tRoughness : register(t34, space1);
- layout(set = 1, binding = 31) uniform texture2D g_tColor;
- layout(set = 1, binding = 15) uniform sampler DefaultSamplerState_0;
- layout(set = 1, binding = 32) uniform texture2D g_tNormal;
- layout(set = 1, binding = 33) uniform texture2D g_tRoughness;
+ static float3 input_0;
+ static float4 input_1;
+ static float4 input_2;
+ static float4 input_3;
+ static float3 input_4;
+ static float4 output_0;
- layout(location = 0) in vec3 input_0;
- layout(location = 1) in vec4 input_1;
- layout(location = 3) in vec4 input_2;
- layout(location = 4) in vec4 input_3;
- layout(location = 2) in vec3 input_4;
- layout(location = 0) out vec4 output_0;
+ struct PS_INPUT
+ {
+ float3 input_0 : TEXCOORD0;
+ float4 input_1 : TEXCOORD1;
+ float3 input_4 : TEXCOORD2;
+ float4 input_2 : TEXCOORD3;
+ float4 input_3 : TEXCOORD4;
+ };
- void main()
+ struct PS_OUTPUT
{
- vec2 _7707 = (texture(sampler2D(g_tNormal, DefaultSamplerState_0), input_1.zw).wy * 2.0) - vec2(1.0);
+ float4 output_0 : SV_Target0;
+ };
+
+ void MainPs_inner()
+ {
+ float2 _7707 = (g_tNormal.Sample(DefaultSamplerState_0, input_1.zw).wy * 2.0f) - 1.0f.xx;
float _9481 = _7707.x;
- vec3 _22101;
+ float3 _22101;
_22101.x = _9481;
float _21775 = _7707.y;
_22101.y = _21775;
- vec3 _19739 = vec3(_9481, _21775, sqrt(clamp(1.0 - dot(_22101.xy, _22101.xy), 0.0, 1.0)));
+ float3 _19739 = float3(_9481, _21775, sqrt(clamp(1.0f - dot(_22101.xy, _22101.xy), 0.0f, 1.0f)));
_19739.y = -_21775;
- vec3 _24157 = _19739.xyz;
- vec2 _11003 = _19739.xy * _Globals_.g_flBumpStrength;
+ float3 _24157 = _19739.xyz;
+ float2 _11003 = _19739.xy * _Globals_1_g_flBumpStrength;
_24157.x = _11003.x;
_24157.y = _11003.y;
- vec3 _23712 = normalize(_24157.xyz);
- vec4 _3401 = texture(sampler2D(g_tRoughness, DefaultSamplerState_0), input_1.xy);
- vec3 _14744 = normalize((((normalize(input_3.xyz).xyz * _23712.x).xyz + ((normalize(cross(normalize(input_0.xyz).xyz, input_3.xyz)) * input_3.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;
- vec3 _23378 = saturate(_14744);
- vec3 _23904 = saturate(-_14744);
- float _7186 = (1.0 - min(1.0, ((((_3401.z + _3401.w) * 0.5) * _Globals_.g_vRoughnessScaleAndBias.x) + _Globals_.g_vRoughnessScaleAndBias.y) + ((_3401.x + _3401.y) * 0.5))) * 0.800000011920928955078125;
- vec3 _21103 = ((RoughnessLightingGlobalsCB_t._m0.xyz * (dot(vec3(0.60000002384185791015625, 0.4000000059604644775390625, 1.0), _23378 * _23378) + dot(vec3(0.60000002384185791015625, 0.4000000059604644775390625, 0.20000000298023223876953125), _23904 * _23904))).xyz + ((SunLightShaderParamsCB._m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB._m1.xyz), 0.0, 1.0), _7186 + 0.60000002384185791015625) * ((_7186 + 1.60000002384185791015625) * 0.5))) * 1.0)).xyz * ((texture(sampler2D(g_tColor, DefaultSamplerState_0), input_1.xy).xyz * _Globals_.g_vColorTint.xyz) * input_2.xyz).xyz;
- vec4 _13888;
+ float3 _23712 = normalize(_24157.xyz);
+ float4 _3401 = g_tRoughness.Sample(DefaultSamplerState_0, input_1.xy);
+ float3 _14744 = normalize((((normalize(input_3.xyz).xyz * _23712.x).xyz + ((normalize(cross(normalize(input_0.xyz).xyz, input_3.xyz)) * input_3.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;
+ float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
+ float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
+ float _7186 = (1.0f - min(1.0f, ((((_3401.z + _3401.w) * 0.5f) * _Globals_1_g_vRoughnessScaleAndBias.x) + _Globals_1_g_vRoughnessScaleAndBias.y) + ((_3401.x + _3401.y) * 0.5f))) * 0.800000011920928955078125f;
+ float3 _21103 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), _7186 + 0.60000002384185791015625f) * ((_7186 + 1.60000002384185791015625f) * 0.5f))) * 1.0f)).xyz * ((g_tColor.Sample(DefaultSamplerState_0, input_1.xy).xyz * _Globals_1_g_vColorTint.xyz) * input_2.xyz).xyz;
+ float4 _13888;
_13888.x = _21103.x;
_13888.y = _21103.y;
_13888.z = _21103.z;
- vec3 _19800 = mix(_13888.xyz, PerViewConstantBuffer_t._m2.xyz, vec3(clamp(min(PerViewConstantBuffer_t._m5, pow(clamp((distance(input_4.xyz, PerViewConstantBuffer_t._m1.xyz) * PerViewConstantBuffer_t._m4) + PerViewConstantBuffer_t._m3, 0.0, 1.0), PerViewConstantBuffer_t._m6)), 0.0, 1.0)));
- vec4 _17842;
+ float3 _19800 = lerp(_13888.xyz, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_4.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);
+ float4 _17842;
_17842.x = _19800.x;
_17842.y = _19800.y;
_17842.z = _19800.z;
- output_0 = vec4(_17842.xyz * PerViewConstantBuffer_t._m0, 1.0);
+ output_0 = float4(_17842.xyz * PerViewConstantBuffer_t_1_m0, 1.0f);
}
+ PS_OUTPUT MainPs(PS_INPUT stage_input)
+ {
+ input_0 = stage_input.input_0;
+ input_1 = stage_input.input_1;
+ input_2 = stage_input.input_2;
+ input_3 = stage_input.input_3;
+ input_4 = stage_input.input_4;
+ MainPs_inner();
+ PS_OUTPUT stage_output;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
// --------- SPIRV -> HLSL end ---------
@@ -483,56 +519,73 @@ PS
#if (S_TRANSLUCENT == 1)
BoolAttribute(translucent, true);
#endif
- #if (S_UNLIT == 0)
+ #if (S_SPECULAR_CUBE_MAP == 1)
+ BoolAttribute(environmentmapped, true);
+ #endif
+ #if (S_SPECULAR_CUBE_MAP == 0)
BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
- #if (S_TRANSLUCENT == 0)
- TextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);
- Float3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);
- FloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);
- BoolAttribute(ForwardLayerOnly, true);
- BoolAttribute(mapbuilder_donotcollapse, true);
+ #if (S_OVERLAY == 1)
+ BoolAttribute(translucent, true);
+ BoolAttribute(overlay, true);
#endif
#if (S_SELF_ILLUM == 0)
BoolAttribute(translucent, true);
+ BoolAttribute(overlay, true);
+ #endif
+ #if (S_UNLIT == 0)
+ BoolAttribute(translucent, true);
+ BoolAttribute(overlay, true);
#endif
- #if (S_SPECULAR_CUBE_MAP == 0)
+ #if (S_TOOLS_ENABLED == 0)
+ BoolAttribute(translucent, true);
+ BoolAttribute(overlay, true);
+ #endif
+ #if (S_SPECULAR == 1)
BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
#if (S_MODE_TOOLS_WIREFRAME == 0)
BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
+ #if (S_RENDER_BACKFACES == 1)
+ TextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);
+ Float3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);
+ FloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);
+ BoolAttribute(ForwardLayerOnly, true);
+ BoolAttribute(mapbuilder_donotcollapse, true);
+ #endif
#if (S_OVERLAY == 0)
TextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);
Float3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);
FloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);
BoolAttribute(ForwardLayerOnly, true);
BoolAttribute(mapbuilder_donotcollapse, true);
#endif
- #if (S_OVERLAY == 1)
- BoolAttribute(translucent, true);
- BoolAttribute(overlay, true);
+ #if (S_TRANSLUCENT == 0)
+ TextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);
+ Float3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);
+ FloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);
+ BoolAttribute(ForwardLayerOnly, true);
+ BoolAttribute(mapbuilder_donotcollapse, true);
#endif
#if (S_RENDER_BACKFACES == 0)
BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
- #if (S_TOOLS_ENABLED == 0)
+ #if (S_ALPHA_TEST == 0)
BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
- #if (S_RENDER_BACKFACES == 1)
+ #if (S_SPECULAR == 0)
TextureAttribute(LightSim_SelfIllumMaskTexture, g_tSelfIllumMask);
Float3Attribute(LightSim_SelfIllumTint, g_vSelfIllumTint);
FloatAttribute(LightSim_SelfIllumScale, g_flSelfIllumScale);
+ BoolAttribute(translucent, true);
BoolAttribute(ForwardLayerOnly, true);
BoolAttribute(mapbuilder_donotcollapse, true);
- #endif
- #if (S_ALPHA_TEST == 0)
- BoolAttribute(translucent, true);
BoolAttribute(overlay, true);
#endif
}
game/core/shaders_vulkan_dir/shaders/vfx/gpu_debug_draw2d.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/gpu_debug_draw3d.slang
modified • +9 / -14 • changes: 23
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -38,17 +38,12 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1592 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (988 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _394
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- float4 _m0[4];
- };
-
- cbuffer _Globals_ : register(b0, space0)
- {
- _394 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -71,10 +66,10 @@ VS
void MainVs_inner()
{
- float4 _7941 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(vPosition.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
+ float4 _21374 = mul(PerViewConstantBuffer_t_1_m0, (float4(vPosition.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = vColor;
- _7941.y = -_7941.y;
- gl_Position = _7941;
+ _21374.y = -_21374.y;
+ gl_Position = _21374;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/gpu_vis_update_node_visibility.slang
modified • +17 / -8 • changes: 25
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -30,16 +30,21 @@ CS
{
RWBuffer<float4> g_RWVisBits < Attribute("VisBits"); >;
- StructuredBuffer g_VisRegions < Attribute("VisRegions"); SrgbRead(false); >;
+ StructuredBuffer g_VisRegions < Attribute("VisRegions"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1612 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1640 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _981
{
uint _m0;
};
+ struct _982
+ {
+ uint _m0;
+ };
+
ByteAddressBuffer g_VisRegions : register(t33, space0);
RWBuffer<uint> _3898 : register(u158, space0);
@@ -53,21 +58,25 @@ CS
void MainCs_inner()
{
- uint _17382 = (gl_WorkGroupID.x * 128u) + gl_LocalInvocationID.x;
+ uint _8548 = (gl_WorkGroupID.x * 128u) + gl_LocalInvocationID.x;
uint _4283;
uint _4901;
- uint _13155 = _17382;
+ uint _13155 = _8548;
uint _16208 = 0u;
for (;;)
{
if (!(_16208 < 2u))
{
break;
}
- uint _25020 = g_VisRegions.Load(_13155 * 4 + 0) & 4095u;
- if ((_3898[int(_25020 / 32u)].xxxx.x & (1u << (_25020 % 32u))) != 0u)
+ _982 _10769;
+ _10769._m0 = g_VisRegions.Load(_13155 * 4 + 0);
+ _981 _22470;
+ _22470._m0 = _10769._m0;
+ uint _22552 = _22470._m0 & 4095u;
+ if ((_3898[int(_22552 / 32u)].xxxx.x & (1u << (_22552 % 32u))) != 0u)
{
- uint _13532 = g_VisRegions.Load(_13155 * 4 + 0) >> uint(12);
+ uint _13532 = _22470._m0 >> uint(12);
uint _6313;
InterlockedOr(_3898[_13532 / 32u], 1u << (_13532 % 32u), _6313);
}
game/core/shaders_vulkan_dir/shaders/vfx/grasstile.slang
modified • +64 / -45 • changes: 109
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_41
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -48,25 +48,25 @@ VS
cbuffer GrassParamsPerQuadSlice_t < Attribute("GrassParamsPerQuadSlice_t"); >;
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tDensityArray < Attribute("DensityArray"); SrgbRead(false); >;
Texture2D g_tHeightArray < Attribute("HeightArray"); SrgbRead(false); >;
Texture2D g_tSkewBrightness < Attribute("SkewBrightness"); SrgbRead(false); >;
Texture2D g_tTintArray < Attribute("TintArray"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
float3 g_vFadeParams < Default3(1000, 1500, 1); Attribute("FadeParams"); UiType(VectorText); >;
float3 g_vWindDir < Default2(0.707, 0.707); Attribute("WindDir"); UiType(VectorText); >;
float3 g_vWindOffset < Default3(0.25, 0.2, 0.21); Attribute("WindOffset"); UiType(VectorText); >;
float4 g_vWindStrengthFreqMulHighStrength < Default4(0.25, 0.03, 0.003, 0.25); Attribute("WindStrengthFreq"); UiType(VectorText); >;
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vWindDir) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (9776 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (9200 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
@@ -82,24 +82,31 @@ VS
float _m7;
};
- struct _1654
+ struct _1119
{
- vec4 _m0[3];
+ mat3x4 _m0;
};
- struct _1256
+ struct _1126
{
- _1654 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _533
+ struct _1120
{
- vec4 _m0[8];
+ mat3x4 _m0;
};
- struct _1780
+ struct _113
{
- vec4 _m0[4];
+ vec4 _m0[8];
};
vec3 _3;
@@ -108,24 +115,24 @@ VS
layout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer
{
- _1125 _m0[];
+ _1126 _m0[];
} g_instanceBuffer_1;
layout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer
{
- _1256 _m0[];
+ _1120 _m0[];
} g_transformBuffer_1;
- struct _2442
+ struct _64
{
- _533 _m0;
- _533 _m1;
- _533 _m2;
- _533 _m3;
- _533 _m4;
+ _113 _m0;
+ _113 _m1;
+ _113 _m2;
+ _113 _m3;
+ _113 _m4;
};
- layout(set = 0) uniform _2442 GrassParamsPerQuadSlice_t;
+ layout(set = 0) uniform _64 GrassParamsPerQuadSlice_t;
struct _1209
{
@@ -137,14 +144,14 @@ VS
layout(set = 0) uniform _1209 _Globals_;
- struct _1635
+ struct _1288
{
- _1780 _m0;
+ mat4 _m0;
vec4 _m1;
vec3 _m2;
};
- layout(set = 0) uniform _1635 PerViewConstantBuffer_t;
+ layout(set = 0) uniform _1288 PerViewConstantBuffer_t;
layout(set = 0, binding = 35) uniform texture2D g_tDensityArray;
layout(set = 0, binding = 14) uniform sampler AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear;
@@ -168,7 +175,18 @@ VS
void main()
{
- vec4 _10881 = fract(vSide_Top_Right.xyzw + (saturate(vSide_Top_Right.xyzw * 1000000.0) * ((g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0].w * 0.013698630034923553466796875) + (g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1].w * 0.005181347019970417022705078125))));
+ _1125 _19924;
+ _19924._m0 = g_instanceBuffer_1._m0[vDensityMask]._m0;
+ _19924._m1 = g_instanceBuffer_1._m0[vDensityMask]._m1;
+ _19924._m2 = g_instanceBuffer_1._m0[vDensityMask]._m2;
+ _19924._m3 = g_instanceBuffer_1._m0[vDensityMask]._m3;
+ _19924._m4 = g_instanceBuffer_1._m0[vDensityMask]._m4;
+ _19924._m5 = g_instanceBuffer_1._m0[vDensityMask]._m5;
+ _19924._m6 = g_instanceBuffer_1._m0[vDensityMask]._m6;
+ _19924._m7 = g_instanceBuffer_1._m0[vDensityMask]._m7;
+ _1119 _20228;
+ _20228._m0 = g_transformBuffer_1._m0[_19924._m1]._m0;
+ vec4 _10881 = fract(vSide_Top_Right.xyzw + (saturate(vSide_Top_Right.xyzw * 1000000.0) * ((_20228._m0[0].w * 0.013698630034923553466796875) + (_20228._m0[1].w * 0.005181347019970417022705078125))));
float _21853 = abs(nInstanceIdx.x);
vec2 _10547 = (vUStart_VStart_UVScale_GrassQuadU.xy + (vec2(_21853, nInstanceIdx.y) * vUStart_VStart_UVScale_GrassQuadU.z)).xy;
vec4 _10799 = textureLod(sampler2D(g_tHeightArray, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_1), _10547, 0.0);
@@ -186,25 +204,26 @@ VS
int _18779 = int(vUStart_VStart_UVScale_GrassQuadU.w);
vec4 _7832 = saturate(_13292);
float _15699 = dot(mix(GrassParamsPerQuadSlice_t._m1._m0[_18779], GrassParamsPerQuadSlice_t._m2._m0[_18779], vec4(vPositionOs.y)), _7832) * _14802;
- vec3 _13005 = ((vec3(_22101.xy, 0.0) * mat3(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0].xyz, g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1].xyz, g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[2].xyz)).xyz * _Globals_.g_vFadeParams.z).xyz;
+ vec3 _13005 = ((vec3(_22101.xy, 0.0) * mat3(_20228._m0[0].xyz, _20228._m0[1].xyz, _20228._m0[2].xyz)).xyz * _Globals_.g_vFadeParams.z).xyz;
float _11300 = length(_13005);
vec3 _18636 = vec3(_11300);
+ vec2 _13842 = vec3(256.0 * (_21853 - 0.5), 256.0 * (nInstanceIdx.y - 0.5), _17919).xy + ((_24823.xy * (0.5 * _24664.x)) * (dot(GrassParamsPerQuadSlice_t._m0._m0[_18779], _7832) * _14802));
float _6967 = dot(vec4(0.0, 1.0, 2.0, 3.0), _7832);
float _23131 = vUStart_VStart_UVScale_GrassQuadU.w * 0.125;
vec2 _10633;
if ((float(int(sign(nInstanceIdx.x))) * (dot(GrassParamsPerQuadSlice_t._m4._m0[_18779], _7832) * _14802)) > 0.0)
{
- vec2 _10181;
- _10181.x = _23131 + (((1.0 - vPositionOs.x) + _6967) * 0.03125);
- _10633 = _10181;
+ vec2 _10180;
+ _10180.x = _23131 + (((1.0 - vPositionOs.x) + _6967) * 0.03125);
+ _10633 = _10180;
}
else
{
- vec2 _10180;
- _10180.x = _23131 + ((vPositionOs.x + _6967) * 0.03125);
- _10633 = _10180;
+ vec2 _10181;
+ _10181.x = _23131 + ((vPositionOs.x + _6967) * 0.03125);
+ _10633 = _10181;
}
- vec3 _13631 = (vec4(vec3(vec3(256.0 * (_21853 - 0.5), 256.0 * (nInstanceIdx.y - 0.5), _17919).xy + ((_24823.xy * (0.5 * _24664.x)) * (dot(GrassParamsPerQuadSlice_t._m0._m0[_18779], _7832) * _14802)), _17919 + ((_18203 * _15699) * (1.0 - _11300))).xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[vDensityMask]._m1]._m0._m0[2])).xyz;
+ vec3 _13631 = (vec4(vec3(_13842, _17919 + ((_18203 * _15699) * (1.0 - _11300))).xyz, 1.0) * _20228._m0).xyz;
vec3 _6344 = _13631;
_6344.z = 0.0;
vec3 _7692 = (_6344.xyz * _Globals_.g_vWindStrengthFreqMulHighStrength.yyy) + _Globals_.g_vWindOffset.xyz;
@@ -216,14 +235,14 @@ VS
vec4 _21368 = abs((fract((fract(vec4(_20211, _7692.yz, dot(_20488.xyz, vec3(1.0))).xyzw * vec4(0.5, 1.0, 0.5, 1.5)) * 2.0) + vec4(-0.5)) * 2.0) - vec4(1.0));
vec3 _9428 = mix((_Globals_.g_vWindDir * (dot((((_21368 * _21368) * (vec4(3.0) - (_21368 * 2.0))) * vec4(1.0, 0.5, 0.25, 0.0500000007450580596923828125)).xyzw, vec4(1.0)) * _Globals_.g_vWindStrengthFreqMulHighStrength.x)) * (dot(GrassParamsPerQuadSlice_t._m3._m0[_18779], _7832) * _14802), (_13005 / _18636).xyz, _18636) * _18203;
vec3 _15100 = _13631 + (_9428 * _15699);
- vec4 _23552 = (vec4(_15100.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
+ vec4 _17914 = (vec4(_15100.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
output_0 = _15100;
output_1 = mix(cross(vec3(0.0, 0.0, 1.0), _24823).xyz, (vec3(0.0, 0.0, 1.0) + _9428.xyz).xyz, vec3(0.800000011920928955078125));
output_2 = vec2(_10633.x, 1.0 - _18203);
output_3 = vec3(textureLod(sampler2D(g_tTintArray, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_3), _10547, 0.0).xyz);
output_4 = vec3(_12684.z, 1.0 - clamp((length((_13631 - PerViewConstantBuffer_t._m2).xyz) - _Globals_.g_vFadeParams.x) / _Globals_.g_vFadeParams.y, 0.0, 1.0), 0.0);
- _23552.y = -_23552.y;
- gl_Position = _23552;
+ _17914.y = -_17914.y;
+ gl_Position = _17914;
}
@@ -244,22 +263,22 @@ PS
RenderState(DepthEnable, exists(ATTRIBUTE[e75c960c]) ? ATTRIBUTE[e75c960c] : True);
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
float g_flAlphaTestThreshold < Default(0.3); UiType(Slider); >;
Texture2D g_tGrassQuadArray < Attribute("GrassQuadArray"); SrgbRead(true); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2736 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2752 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer RoughnessLightingGlobalsCB_t : register(b3, space1)
{
float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);
};
- cbuffer SunLightShaderParamsCB : register(b4, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b4, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
Texture2D<float4> g_tGrassQuadArray : register(t31, space1);
@@ -291,7 +310,7 @@ PS
float3 _14744 = normalize(input_0.xyz).xyz;
float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
- output_0 = float4(float4(((_19372.xyz * input_2.xyz) * lerp(0.0f.xxx, 1.0f.xxx, (clamp(input_3.x, 0.0f, 0.699999988079071044921875f) * 1.4285714626312255859375f).xxx).xyz) * input_3.x, _14493).xyz * ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _14493);
+ output_0 = float4(float4(((_19372.xyz * input_2.xyz) * lerp(0.0f.xxx, 1.0f.xxx, (clamp(input_3.x, 0.0f, 0.699999988079071044921875f) * 1.4285714626312255859375f).xxx).xyz) * input_3.x, _14493).xyz * ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _14493);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/grasstile_preview.slang
modified • +54 / -32 • changes: 86
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_41
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -46,11 +46,11 @@ VS
DynamicCombo( D_BAKE_GRASS, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2372 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -64,27 +64,34 @@ VS
float _m7;
};
- struct _1570
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _1088
+ struct _1126
{
- _1570 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1696
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1696 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -115,20 +122,35 @@ VS
void MainVs_inner()
{
- _1570 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _11684 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _19956 = mul(_11684, float4(vPositionOs.xyz, 1.0f));
- float4 _23552 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- output_0 = normalize(mul(_11684, float4(vNormalOs.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _20190;
+ _20190._m0 = _8152._m0;
+ float3 _19956 = mul(_20190._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _17914 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = normalize(mul(_20190._m0, float4(vNormalOs.xyz, 0.0f)));
output_1 = vTexCoord;
output_2 = _19956;
- _23552.y = -_23552.y;
- gl_Position = _23552;
+ _17914.y = -_17914.y;
+ gl_Position = _17914;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -158,7 +180,7 @@ PS
DynamicCombo( D_BAKE_GRASS, 0..1 );
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
Texture2D g_tColor < Channel(RGB, AlphaWeighted(TextureColor, TextureTranslucency), Srgb); Channel(A, Box(TextureTranslucency), Linear); OutputFormat(DXT5); SrgbRead(true); >;
// Color
@@ -174,7 +196,7 @@ PS
float g_flGrassHeightMax < Default(55); Range(1, 256); UiType(Slider); UiGroup("GrassSize/30"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2672 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _3;
@@ -188,10 +210,10 @@ PS
float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);
};
- cbuffer SunLightShaderParamsCB : register(b3, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b3, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
Texture2D<float4> g_tColor : register(t30, space1);
@@ -225,7 +247,7 @@ PS
float3 _14744 = normalize((input_0.xyz * (gl_FrontFacing ? 1.0f : (-1.0f))).xyz).xyz;
float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
- output_0 = float4(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * _23714.xyz, _3401.w);
+ output_0 = float4(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * _23714.xyz, _3401.w);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/imageformat_test.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/imgui.slang
modified • +8 / -8 • changes: 16
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -117,12 +117,12 @@ PS
int _Globals_1_g_ArrayArrayIndex : packoffset(c1.z);
};
- Texture2DArray<float4> g_texArray_unexpectedTypeId470_1107 : register(t32, space1);
- SamplerState Filter_MinMagMipLinear : register(s16, space1);
+ Texture2D<float4> g_tex2D : register(t30, space1);
+ SamplerState Filter_MinMagMipLinear : register(s14, space1);
Texture3D<float4> g_tex3D : register(t31, space1);
SamplerState Filter_MinMagMipLinear_1 : register(s15, space1);
- Texture2D<float4> g_tex2D : register(t30, space1);
- SamplerState Filter_MinMagMipLinear_2 : register(s14, space1);
+ Texture2DArray<float4> g_texArray : register(t32, space1);
+ SamplerState Filter_MinMagMipLinear_2 : register(s16, space1);
static float2 input_0;
static float4 input_1;
@@ -144,7 +144,7 @@ PS
float4 _21709;
if (_Globals_1_g_nTexType == 0)
{
- _21709 = g_tex2D.Sample(Filter_MinMagMipLinear_2, input_0.xy);
+ _21709 = g_tex2D.Sample(Filter_MinMagMipLinear, input_0.xy);
}
else
{
@@ -158,7 +158,7 @@ PS
float4 _12501;
if (_Globals_1_g_nTexType == 2)
{
- _12501 = g_texArray_unexpectedTypeId470_1107.Sample(Filter_MinMagMipLinear, float3(input_0.xy, float(_Globals_1_g_ArrayArrayIndex)).xyz);
+ _12501 = g_texArray.Sample(Filter_MinMagMipLinear_2, float3(input_0.xy, float(_Globals_1_g_ArrayArrayIndex)).xyz);
}
else
{
game/core/shaders_vulkan_dir/shaders/vfx/imgui_srgb.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -114,7 +114,7 @@ PS
Texture2D<float4> g_texture : register(t30, space1);
SamplerState Filter_MinMagMipLinear : register(s14, space1);
- Texture2DArray<float4> g_textureArray_unexpectedTypeId470_1107 : register(t31, space1);
+ Texture2DArray<float4> g_textureArray : register(t31, space1);
SamplerState Filter_MinMagMipLinear_1 : register(s15, space1);
static float2 input_0;
@@ -138,7 +138,7 @@ PS
float4 _20655;
if (_Globals_1_g_ArrayIndex != (-1))
{
- _20655 = g_textureArray_unexpectedTypeId470_1107.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);
+ _20655 = g_textureArray.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);
}
else
{
game/core/shaders_vulkan_dir/shaders/vfx/implicit_surface.slang
modified • +117 / -86 • changes: 203
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -33,11 +33,11 @@ CS
DynamicCombo( D_FIELD_MODE, 0..1 );
DynamicCombo( D_PER_PARTICLE_RADIUS, 0..1 );
- StructuredBuffer g_DispatchBuffer < Attribute("DispatchBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_DispatchBuffer < Attribute("DispatchBuffer"); >;
RWByteAddressBuffer g_IndexBuffer < Attribute("IndexBuffer"); >;
RWBuffer<float4> g_IndirectDrawArgs < Attribute("IndirectDrawArgs"); >;
Buffer g_LookupTables < Attribute("LookupTables"); SrgbRead(false); >;
- StructuredBuffer g_Particles < Attribute("ParticleBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_Particles < Attribute("ParticleBuffer"); >;
RWByteAddressBuffer g_VertexBuffer < Attribute("VertexBuffer"); >;
float g_fIsosurfaceThreshold < Attribute("IsosurfaceThreshold"); UiType(Slider); >;
int g_nBrickHeight < Attribute("BrickHeight"); UiType(Slider); >;
@@ -53,11 +53,11 @@ CS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 5 (name: g_vBlobulatorConstants) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (17228 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (17084 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;
@@ -80,11 +80,23 @@ CS
uint _m1;
};
+ struct _1023
+ {
+ vec3 _m0;
+ float _m1;
+ };
+
+ struct _992
+ {
+ uint _m0;
+ uint _m1;
+ };
+
uint _4;
layout(set = 0, binding = 31, std430) readonly buffer g_DispatchBuffer
{
- _990 _m0[];
+ _991 _m0[];
} g_DispatchBuffer_1;
struct _1529
@@ -105,7 +117,7 @@ CS
layout(set = 0, binding = 32, std430) readonly buffer g_Particles
{
- _1022 _m0[];
+ _1023 _m0[];
} g_Particles_1;
layout(set = 0, binding = 159, std430) buffer undetermined
@@ -118,23 +130,25 @@ CS
uint _m0[];
} undetermined_3;
- layout(set = 0, binding = 30) uniform usamplerBuffer undetermined_4;
+ layout(set = 0, binding = 30) uniform usamplerBuffer undetermined_unexpectedTypeId408_1045;
layout(set = 0, binding = 158, r32ui) uniform uimageBuffer _4008;
shared uint _5696;
shared uint _5501;
shared float _3739[64][2];
- shared _991 _3560[49];
+ shared _992 _3560[49];
shared uint _4676[49];
void main()
{
- uint _10312 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m1;
- uint _15781 = _10312 >> uint(16);
- uint _7912 = _10312 & 65535u;
+ _990 _20228;
+ _20228._m0 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0;
+ _20228._m1 = g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m1;
+ uint _15978 = _20228._m1 >> uint(16);
+ uint _9584 = _20228._m1 & 65535u;
uint _5563 = (gl_LocalInvocationID.y * 8u) + gl_LocalInvocationID.x;
- vec3 _23073 = _Globals_.g_vSystemOrigin + (_Globals_.g_vSystemStepSize * vec3(uvec3(((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0) & 1023u) * 7u, ((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0 >> uint(10)) & 1023u) * 7u, ((g_DispatchBuffer_1._m0[gl_WorkGroupID.x]._m0 >> uint(20)) & 4095u) * 4u)));
- vec3 _6302 = _23073 + vec3(_Globals_.g_vSystemStepSize.xy * vec2(gl_LocalInvocationID.xy), 0.0);
+ vec3 _22446 = _Globals_.g_vSystemOrigin + (_Globals_.g_vSystemStepSize * vec3(uvec3((_20228._m0 & 1023u) * 7u, ((_20228._m0 >> uint(10)) & 1023u) * 7u, ((_20228._m0 >> uint(20)) & 4095u) * 4u)));
+ vec3 _6302 = _22446 + vec3(_Globals_.g_vSystemStepSize.xy * vec2(gl_LocalInvocationID.xy), 0.0);
bool _8412 = all(equal(gl_LocalInvocationID.xy, uvec2(0u)));
if (_8412)
{
@@ -145,42 +159,45 @@ CS
_13155 = 0.0;
uint _14722;
float _20258;
- uint _16208 = _15781;
+ uint _16208 = _15978;
for (;;)
{
- if (!(_16208 < _7912))
+ if (!(_16208 < _9584))
{
break;
}
- vec3 _12928 = _6302 - g_Particles_1._m0[_16208]._m0;
- float _18342 = dot(_12928, _12928);
+ _1022 _20229;
+ _20229._m0 = g_Particles_1._m0[_16208]._m0;
+ _20229._m1 = g_Particles_1._m0[_16208]._m1;
+ vec3 _20252 = _6302 - _20229._m0;
+ float _21558 = dot(_20252, _20252);
float _11237;
- if (_18342 <= _Globals_.g_vBlobulatorConstants.x)
+ if (_21558 <= _Globals_.g_vBlobulatorConstants.x)
{
- float _19902 = _18342 * _Globals_.g_vBlobulatorConstants.y;
+ float _19902 = _21558 * _Globals_.g_vBlobulatorConstants.y;
_11237 = (0.25 + (_19902 * _19902)) - _19902;
}
else
{
_11237 = 0.0;
}
- _20258 = _13155 + (_11237 * g_Particles_1._m0[_16208]._m1);
+ _20258 = _13155 + (_11237 * _20229._m1);
_14722 = _16208 + 1u;
_13155 = _20258;
_16208 = _14722;
continue;
}
_3739[_5563][0] = (_13155 - _Globals_.g_fIsosurfaceThreshold) * (-1.0);
- vec3 _13136;
+ vec3 _13137;
vec3 _16305;
- _13136 = _23073;
+ _13137 = _22446;
_16305 = _6302;
uint _4300;
vec3 _14716;
vec3 _19764;
uint _13039;
uint _17017 = 1u;
- uint _17133 = _15781;
+ uint _17133 = _15978;
for (;;)
{
if (!(_17017 <= _Globals_.g_nBrickHeight))
@@ -192,9 +209,12 @@ CS
for (;;)
{
bool _12885;
- if (_13039 < _7912)
+ if (_13039 < _9584)
{
- _12885 = (g_Particles_1._m0[_13039]._m0.z + _Globals_.g_vBlobulatorConstants.w) < _16305.z;
+ _1022 _20230;
+ _20230._m0 = g_Particles_1._m0[_13039]._m0;
+ _20230._m1 = g_Particles_1._m0[_13039]._m1;
+ _12885 = (_20230._m0.z + _Globals_.g_vBlobulatorConstants.w) < _16305.z;
}
else
{
@@ -208,8 +228,8 @@ CS
_13039 = _23989;
continue;
}
- _14716 = _13136;
- _14716.z = _13136.z + _Globals_.g_vSystemStepSize.z;
+ _14716 = _13137;
+ _14716.z = _13137.z + _Globals_.g_vSystemStepSize.z;
_19764 = _16305;
_19764.z = _16305.z + _Globals_.g_vSystemStepSize.z;
float _13156;
@@ -219,23 +239,26 @@ CS
uint _16209 = _13039;
for (;;)
{
- if (!(_16209 < _7912))
+ if (!(_16209 < _9584))
{
break;
}
- vec3 _12929 = _19764 - g_Particles_1._m0[_16209]._m0;
- float _18343 = dot(_12929, _12929);
+ _1022 _20231;
+ _20231._m0 = g_Particles_1._m0[_16209]._m0;
+ _20231._m1 = g_Particles_1._m0[_16209]._m1;
+ vec3 _20253 = _19764 - _20231._m0;
+ float _21559 = dot(_20253, _20253);
float _11238;
- if (_18343 <= _Globals_.g_vBlobulatorConstants.x)
+ if (_21559 <= _Globals_.g_vBlobulatorConstants.x)
{
- float _19903 = _18343 * _Globals_.g_vBlobulatorConstants.y;
+ float _19903 = _21559 * _Globals_.g_vBlobulatorConstants.y;
_11238 = (0.25 + (_19903 * _19903)) - _19903;
}
else
{
_11238 = 0.0;
}
- _20259 = _13156 + (_11238 * g_Particles_1._m0[_16209]._m1);
+ _20259 = _13156 + (_11238 * _20231._m1);
_14723 = _16209 + 1u;
_13156 = _20259;
_16209 = _14723;
@@ -251,7 +274,7 @@ CS
uint _7596 = (_11305.y * 8u) + _11305.x;
uvec2 _11306 = gl_LocalInvocationID.xy + uvec2(1u);
uint _7597 = (_11306.y * 8u) + _11306.x;
- uvec4 _9781 = texelFetch(undetermined_4, int(_Globals_.g_nClassDataOffset + (((((((((floatBitsToUint(_3739[_5563][0u]) & 2147483648u) >> uint(31)) | ((floatBitsToUint(_3739[_7595][0u]) & 2147483648u) >> uint(30))) | ((floatBitsToUint(_3739[_7596][0u]) & 2147483648u) >> uint(29))) | ((floatBitsToUint(_3739[_7597][0u]) & 2147483648u) >> uint(28))) | ((floatBitsToUint(_3739[_5563][1u]) & 2147483648u) >> uint(27))) | ((floatBitsToUint(_3739[_7595][1u]) & 2147483648u) >> uint(26))) | ((floatBitsToUint(_3739[_7596][1u]) & 2147483648u) >> uint(25))) | ((floatBitsToUint(_3739[_7597][1u]) & 2147483648u) >> uint(24)))));
+ uvec4 _9781 = texelFetch(undetermined_unexpectedTypeId408_1045, int(_Globals_.g_nClassDataOffset + (((((((((floatBitsToUint(_3739[_5563][0u]) & 2147483648u) >> uint(31)) | ((floatBitsToUint(_3739[_7595][0u]) & 2147483648u) >> uint(30))) | ((floatBitsToUint(_3739[_7596][0u]) & 2147483648u) >> uint(29))) | ((floatBitsToUint(_3739[_7597][0u]) & 2147483648u) >> uint(28))) | ((floatBitsToUint(_3739[_5563][1u]) & 2147483648u) >> uint(27))) | ((floatBitsToUint(_3739[_7595][1u]) & 2147483648u) >> uint(26))) | ((floatBitsToUint(_3739[_7596][1u]) & 2147483648u) >> uint(25))) | ((floatBitsToUint(_3739[_7597][1u]) & 2147483648u) >> uint(24)))));
uint _16997 = _9781.x;
uint _24537 = (_16997 >> uint(4)) & 15u;
uint _23149 = (_16997 >> uint(8)) & 15u;
@@ -281,9 +304,8 @@ CS
}
}
barrier();
- uint _18165 = (8u * gl_LocalInvocationID.y) + gl_LocalInvocationID.x;
- uint _24510 = _5501 - 1u;
- uint _13205 = _24510 | (_24510 >> uint(1));
+ uint _18293 = _5501 - 1u;
+ uint _13205 = _18293 | (_18293 >> uint(1));
uint _25270 = _13205 | (_13205 >> uint(2));
uint _25271 = _25270 | (_25270 >> uint(4));
uint _25272 = _25271 | (_25271 >> uint(8));
@@ -298,8 +320,8 @@ CS
{
break;
}
- uint _4009 = _13040 + (_18165 >> _7125);
- uint _3354 = _18165 & _14175;
+ uint _4009 = _13040 + (_5563 >> _7125);
+ uint _3354 = _5563 & _14175;
if (_4009 >= _5696)
{
break;
@@ -311,16 +333,19 @@ CS
if (_3354 < ((_3560[_4009]._m0 >> uint(4)) & 15u))
{
vec3 _4278 = _14716 + vec3(vec2(_5072) * _Globals_.g_vSystemStepSize.xy, 0.0);
- uvec4 _8451 = texelFetch(undetermined_4, int((_Globals_.g_nVertexDataOffset + (_4688 * 12u)) + _3354));
- uint _10036 = _8451.x;
- uint _4758 = (_10036) & 15u;
- uint _4759 = (_10036 >> uint(4)) & 15u;
- uvec2 _7087 = _5072 + uvec3((_4758) & 1u, (_4758 >> uint(1)) & 1u, _4).xy;
- uvec2 _7088 = _5072 + uvec3((_4759) & 1u, (_4759 >> uint(1)) & 1u, _4).xy;
+ uvec4 _9876 = texelFetch(undetermined_unexpectedTypeId408_1045, int((_Globals_.g_nVertexDataOffset + (_4688 * 12u)) + _3354));
+ uint _16037 = _9876.x;
+ uint _4758 = _16037 & 15u;
+ uint _18698 = _16037 >> uint(4);
+ uint _4759 = _18698 & 15u;
+ uint _14643 = _16037 & 1u;
+ uvec2 _7087 = _5072 + uvec3(_14643, (_4758 >> uint(1)) & 1u, _4).xy;
+ uint _16065 = _18698 & 1u;
+ uvec2 _7088 = _5072 + uvec3(_16065, (_4759 >> uint(1)) & 1u, _4).xy;
uint _16749 = uint(int(_4759 >= 4u));
uint _7599 = (_7088.y * 8u) + _7088.x;
vec3 _19688;
- if ((_4758 & 1u) != 0u)
+ if (_14643 != 0u)
{
vec3 _6984 = _4278;
_6984.x = _4278.x + _Globals_.g_vSystemStepSize.x;
@@ -331,7 +356,7 @@ CS
_19688 = _4278;
}
vec3 _19689;
- if ((_4758 & 2u) != 0u)
+ if ((_16037 & 2u) != 0u)
{
vec3 _6985 = _19688;
_6985.y = _19688.y + _Globals_.g_vSystemStepSize.y;
@@ -341,51 +366,51 @@ CS
{
_19689 = _19688;
}
- vec3 _19690;
- if ((_4758 & 4u) != 0u)
+ vec3 _6905;
+ if ((_16037 & 4u) != 0u)
{
vec3 _6986 = _19689;
_6986.z = _19689.z + _Globals_.g_vSystemStepSize.z;
- _19690 = _6986;
+ _6905 = _6986;
}
else
{
- _19690 = _19689;
+ _6905 = _19689;
}
- vec3 _19691;
- if ((_4759 & 1u) != 0u)
+ vec3 _19690;
+ if (_16065 != 0u)
{
vec3 _6987 = _4278;
_6987.x = _4278.x + _Globals_.g_vSystemStepSize.x;
- _19691 = _6987;
+ _19690 = _6987;
}
else
{
- _19691 = _4278;
+ _19690 = _4278;
}
- vec3 _19692;
- if ((_4759 & 2u) != 0u)
+ vec3 _19691;
+ if ((_18698 & 2u) != 0u)
{
- vec3 _6988 = _19691;
- _6988.y = _19691.y + _Globals_.g_vSystemStepSize.y;
- _19692 = _6988;
+ vec3 _6988 = _19690;
+ _6988.y = _19690.y + _Globals_.g_vSystemStepSize.y;
+ _19691 = _6988;
}
else
{
- _19692 = _19691;
+ _19691 = _19690;
}
vec3 _18229;
- if ((_4759 & 4u) != 0u)
+ if ((_18698 & 4u) != 0u)
{
- vec3 _6989 = _19692;
- _6989.z = _19692.z + _Globals_.g_vSystemStepSize.z;
+ vec3 _6989 = _19691;
+ _6989.z = _19691.z + _Globals_.g_vSystemStepSize.z;
_18229 = _6989;
}
else
{
- _18229 = _19692;
+ _18229 = _19691;
}
- vec3 _12090 = mix(_18229, _19690, vec3(_3739[_7599][_16749] / (_3739[_7599][_16749] - _3739[(_7087.y * 8u) + _7087.x][uint(int(_4758 >= 4u))])));
+ vec3 _12090 = mix(_18229, _6905, vec3(_3739[_7599][_16749] / (_3739[_7599][_16749] - _3739[(_7087.y * 8u) + _7087.x][uint(int(_4758 >= 4u))])));
_12090.z = _12090.z - _Globals_.g_vSystemStepSize.z;
vec3 _13157;
_13157 = vec3(0.0);
@@ -394,23 +419,26 @@ CS
uint _16210 = _13039;
for (;;)
{
- if (!(_16210 < _7912))
+ if (!(_16210 < _9584))
{
break;
}
- vec3 _12930 = _12090 - g_Particles_1._m0[_16210]._m0;
- float _18344 = dot(_12930, _12930);
+ _1022 _20232;
+ _20232._m0 = g_Particles_1._m0[_16210]._m0;
+ _20232._m1 = g_Particles_1._m0[_16210]._m1;
+ vec3 _20254 = _12090 - _20232._m0;
+ float _21560 = dot(_20254, _20254);
float _11484;
- if (_18344 <= _Globals_.g_vBlobulatorConstants.x)
+ if (_21560 <= _Globals_.g_vBlobulatorConstants.x)
{
- float _19904 = _18344 * _Globals_.g_vBlobulatorConstants.y;
+ float _19904 = _21560 * _Globals_.g_vBlobulatorConstants.y;
_11484 = (0.25 + (_19904 * _19904)) - _19904;
}
else
{
_11484 = 0.0;
}
- _23944 = _13157 + (_12930 * (_11484 * g_Particles_1._m0[_16210]._m1));
+ _23944 = _13157 + (_20254 * (_11484 * _20232._m1));
_18752 = _16210 + 1u;
_13157 = _23944;
_16210 = _18752;
@@ -427,7 +455,7 @@ CS
{
_19321 = (vec2(1.0) - abs(_19000.yx)) * mix(vec2(-1.0), vec2(1.0), greaterThanEqual(_19000.xy, vec2(0.0)));
}
- uint _13526 = (_4676[(_22527 * 7u) + _23151] + ((_10036 >> uint(12)) & 15u)) * 16u;
+ uint _13526 = (_4676[(_22527 * 7u) + _23151] + ((_16037 >> uint(12)) & 15u)) * 16u;
uvec3 _9171 = floatBitsToUint(_12090);
undetermined_1._m0[_13526 / 4u] = _9171.x;
undetermined_1._m0[(_13526 + 4u) / 4u] = _9171.y;
@@ -436,11 +464,14 @@ CS
}
if (_3354 < ((_3560[_4009]._m0 >> uint(8)) & 15u))
{
- uvec4 _3401 = texelFetch(undetermined_4, int((_Globals_.g_nTriangleDataOffset + (_4688 * 5u)) + _3354));
- uint _10037 = _3401.x;
- uint _5913 = (_10037 >> uint(24)) & 3u;
- uint _5914 = (_10037 >> uint(26)) & 3u;
- uint _5915 = (_10037 >> uint(28)) & 3u;
+ uvec4 _3401 = texelFetch(undetermined_unexpectedTypeId408_1045, int((_Globals_.g_nTriangleDataOffset + (_4688 * 5u)) + _3354));
+ uint _16038 = _3401.x;
+ uint _16517 = _16038 >> uint(24);
+ uint _5913 = _16517 & 3u;
+ uint _16518 = _16038 >> uint(26);
+ uint _5914 = _16518 & 3u;
+ uint _16088 = _16038 >> uint(28);
+ uint _5915 = _16088 & 3u;
uint _7601 = uint(int(_23151 > 0u) | ((_22527 > 0u) ? 2 : 0));
bool _12887;
if (_5913 != 0u)
@@ -454,7 +485,7 @@ CS
uvec2 _23168;
if (_12887)
{
- _23168 = uvec2(_23151 - ((_5913) & 1u), _22527 - ((_5913 >> uint(1)) & 1u));
+ _23168 = uvec2(_23151 - (_16517 & 1u), _22527 - ((_5913 >> uint(1)) & 1u));
}
else
{
@@ -472,7 +503,7 @@ CS
uvec2 _23169;
if (_12888)
{
- _23169 = uvec2(_23151 - ((_5914) & 1u), _22527 - ((_5914 >> uint(1)) & 1u));
+ _23169 = uvec2(_23151 - (_16518 & 1u), _22527 - ((_5914 >> uint(1)) & 1u));
}
else
{
@@ -490,16 +521,16 @@ CS
uvec2 _23170;
if (_12889)
{
- _23170 = uvec2(_23151 - ((_5915) & 1u), _22527 - ((_5915 >> uint(1)) & 1u));
+ _23170 = uvec2(_23151 - (_16088 & 1u), _22527 - ((_5915 >> uint(1)) & 1u));
}
else
{
_23170 = _5072;
}
uint _20110 = (_3560[_4009]._m1 + (_3354 * 3u)) * 4u;
- undetermined_3._m0[_20110 / 4u] = (_12887 ? ((_10037 >> uint(12)) & 15u) : ((_10037) & 15u)) + _4676[(_23168.y * 7u) + _23168.x];
- undetermined_3._m0[(_20110 + 4u) / 4u] = (_12888 ? ((_10037 >> uint(16)) & 15u) : ((_10037 >> uint(4)) & 15u)) + _4676[(_23169.y * 7u) + _23169.x];
- undetermined_3._m0[(_20110 + 8u) / 4u] = (_12889 ? ((_10037 >> uint(20)) & 15u) : ((_10037 >> uint(8)) & 15u)) + _4676[(_23170.y * 7u) + _23170.x];
+ undetermined_3._m0[_20110 / 4u] = (_12887 ? ((_16038 >> uint(12)) & 15u) : (_16038 & 15u)) + _4676[(_23168.y * 7u) + _23168.x];
+ undetermined_3._m0[(_20110 + 4u) / 4u] = (_12888 ? ((_16038 >> uint(16)) & 15u) : ((_16038 >> uint(4)) & 15u)) + _4676[(_23169.y * 7u) + _23169.x];
+ undetermined_3._m0[(_20110 + 8u) / 4u] = (_12889 ? ((_16038 >> uint(20)) & 15u) : ((_16038 >> uint(8)) & 15u)) + _4676[(_23170.y * 7u) + _23170.x];
}
_3750 = _13040 + _4097;
_13040 = _3750;
@@ -513,7 +544,7 @@ CS
_5501 = 0u;
}
_4300 = _17017 + 1u;
- _13136 = _14716;
+ _13137 = _14716;
_16305 = _19764;
_17133 = _13039;
_17017 = _4300;
game/core/shaders_vulkan_dir/shaders/vfx/lightmap_generate_small_chart_samples.slang
modified • +32 / -20 • changes: 52
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: cs
}
@@ -29,12 +29,12 @@ COMMON
CS
{
- StructuredBuffer g_ChartInfo < Attribute("g_ChartInfo"); SrgbRead(false); >;
+ StructuredBuffer g_ChartInfo < Attribute("g_ChartInfo"); >;
RWStructuredBuffer g_LightmapSamples < Attribute("g_LightmapSamples"); >;
Texture2D g_LuxelChartIDs < Attribute("g_LuxelChartIDs"); SrgbRead(false); >;
- StructuredBuffer g_TriangleArea < Attribute("g_TriangleArea"); SrgbRead(false); >;
- StructuredBuffer g_TriangleListForThreadGroup < Attribute("g_TriangleListForThreadGroup"); SrgbRead(false); >;
- ByteAddressBuffer g_Vertices < Attribute("g_Vertices"); SrgbRead(false); >;
+ StructuredBuffer g_TriangleArea < Attribute("g_TriangleArea"); >;
+ StructuredBuffer g_TriangleListForThreadGroup < Attribute("g_TriangleListForThreadGroup"); >;
+ ByteAddressBuffer g_Vertices < Attribute("g_Vertices"); >;
int g_nLightmapBlockRectWidth < Attribute("g_nLightmapBlockRectWidth"); UiType(Slider); >;
int g_nLightmapBlockRectX < Attribute("g_nLightmapBlockRectX"); UiType(Slider); >;
int g_nLightmapBlockRectY < Attribute("g_nLightmapBlockRectY"); UiType(Slider); >;
@@ -47,7 +47,7 @@ CS
int g_nVertexStride < Attribute("g_nVertexStride"); UiType(Slider); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (18500 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (18644 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1531
{
@@ -61,6 +61,12 @@ CS
uint _m7;
};
+ struct _990
+ {
+ uint _m0;
+ uint _m1;
+ };
+
struct _1532
{
float4 _m0;
@@ -73,7 +79,7 @@ CS
uint _m7;
};
- struct _990
+ struct _991
{
uint _m0;
uint _m1;
@@ -98,11 +104,11 @@ CS
ByteAddressBuffer g_TriangleListForThreadGroup : register(t31, space0);
RWByteAddressBuffer undetermined : register(u158, space0);
- ByteAddressBuffer g_ChartInfo : register(t33, space0);
+ ByteAddressBuffer g_TriangleArea : register(t32, space0);
ByteAddressBuffer g_Vertices : register(t30, space0);
ByteAddressBuffer g_Vertices_1 : register(t30, space0);
- ByteAddressBuffer g_TriangleArea : register(t32, space0);
- Texture2D<uint4> g_LuxelChartIDs_unexpectedTypeId404_1041 : register(t34, space0);
+ ByteAddressBuffer g_ChartInfo : register(t33, space0);
+ Texture2D<uint4> g_LuxelChartIDs : register(t34, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_GlobalInvocationID;
@@ -124,7 +130,7 @@ CS
uint _5156 = gl_WorkGroupID.x + (gl_WorkGroupID.y * uint(_Globals_1_g_nLightmapBlockRectWidth / 8));
int _6540 = int(g_TriangleListForThreadGroup.Load(_5156 * 4 + 0));
uint _13648 = _5156 + 1u;
- int _15017 = int(g_TriangleListForThreadGroup.Load(_13648 * 4 + 0));
+ int _18397 = int(g_TriangleListForThreadGroup.Load(_13648 * 4 + 0));
uint _5963 = (gl_GlobalInvocationID.y * uint(_Globals_1_g_nLightmapBlockRectWidth)) + gl_GlobalInvocationID.x;
undetermined.Store4(_5963 * 96 + 0, asuint(0.0f.xxxx));
undetermined.Store4(_5963 * 96 + 16, asuint(0.0f.xxxx));
@@ -134,7 +140,8 @@ CS
undetermined.Store2(_5963 * 96 + 80, asuint((-1.0f).xx));
undetermined.Store(_5963 * 96 + 88, uint(0));
undetermined.Store(_5963 * 96 + 92, 0u);
- if (_6540 >= _15017)
+ [branch]
+ if (_6540 >= _18397)
{
break;
}
@@ -227,7 +234,7 @@ CS
int _17020 = _6540;
for (;;)
{
- if (!(_17020 < _15017))
+ if (!(_17020 < _18397))
{
break;
}
@@ -378,10 +385,10 @@ CS
_16886.x = _22590.x;
_16886.y = _22590.y;
_16886.z = _22590.z;
- float2 _15794 = ((float2(asfloat(g_Vertices.Load((_19607 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_19607 + 4u) / 4u) * 4 + 0))) * _15062) + (float2(asfloat(g_Vertices.Load((_18788 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18788 + 4u) / 4u) * 4 + 0))) * _11861)) + (float2(asfloat(g_Vertices.Load((_18790 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18790 + 4u) / 4u) * 4 + 0))) * _16310);
- _1531 _12437 = { _20493, 0.0f.xxxx, _20494, _16886, ((float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_Vertices_1.Load(_19813 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _15062) + (float4((_23177 * cos(_23967)) + (cross(_21002, _23177) * sin(_23967)), ((g_Vertices_1.Load(_19815 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _11861)) + (float4((_23178 * cos(_23968)) + (cross(_21003, _23178) * sin(_23968)), ((g_Vertices_1.Load(_19817 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _16310), _15794, 0, 0u };
- _5633[gl_LocalInvocationIndex] = _12437;
- _5704[gl_LocalInvocationIndex] = int2(_15794.xy * float2(int2(_Globals_1_g_nLightmapWidth, _Globals_1_g_nLightmapHeight)));
+ float2 _16199 = ((float2(asfloat(g_Vertices.Load((_19607 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_19607 + 4u) / 4u) * 4 + 0))) * _15062) + (float2(asfloat(g_Vertices.Load((_18788 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18788 + 4u) / 4u) * 4 + 0))) * _11861)) + (float2(asfloat(g_Vertices.Load((_18790 / 4u) * 4 + 0)), asfloat(g_Vertices.Load(((_18790 + 4u) / 4u) * 4 + 0))) * _16310);
+ _1531 _21868 = { _20493, 0.0f.xxxx, _20494, _16886, ((float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_Vertices_1.Load(_19813 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _15062) + (float4((_23177 * cos(_23967)) + (cross(_21002, _23177) * sin(_23967)), ((g_Vertices_1.Load(_19815 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _11861)) + (float4((_23178 * cos(_23968)) + (cross(_21003, _23178) * sin(_23968)), ((g_Vertices_1.Load(_19817 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f) * _16310), _16199, 0, 0u };
+ _5633[gl_LocalInvocationIndex] = _21868;
+ _5704[gl_LocalInvocationIndex] = int2(_16199.xy * float2(int2(_Globals_1_g_nLightmapWidth, _Globals_1_g_nLightmapHeight)));
}
GroupMemoryBarrierWithGroupSync();
uint2 _16326;
@@ -597,7 +604,7 @@ CS
_17017 = _13142;
continue;
}
- uint4 _3401 = g_LuxelChartIDs_unexpectedTypeId404_1041.Load(int3(gl_GlobalInvocationID.xy, 0));
+ uint4 _3401 = g_LuxelChartIDs.Load(int3(gl_GlobalInvocationID.xy, 0));
uint _17171 = _3401.x;
bool _12885;
if (_17119.w != 0.0f)
@@ -622,15 +629,20 @@ CS
_13639.x = _24205;
_13639.y = _21816;
_13639.z = _21832;
- uint _9062 = g_ChartInfo.Load(_17171 * 8 + 4);
+ _991 _10574;
+ _10574._m0 = g_ChartInfo.Load(_17171 * 8 + 0);
+ _10574._m1 = g_ChartInfo.Load(_17171 * 8 + 4);
+ _990 _19867;
+ _19867._m0 = _10574._m0;
+ _19867._m1 = _10574._m1;
undetermined.Store4(_5963 * 96 + 0, asuint(_17119));
undetermined.Store4(_5963 * 96 + 16, asuint(_13639));
undetermined.Store4(_5963 * 96 + 32, asuint(_16887));
undetermined.Store4(_5963 * 96 + 48, asuint(_16305));
undetermined.Store4(_5963 * 96 + 64, asuint(float4(normalize(_17116.xyz), float(int(sign(_17116.w))))));
undetermined.Store2(_5963 * 96 + 80, asuint(_17114));
undetermined.Store(_5963 * 96 + 88, uint(_17115));
- undetermined.Store(_5963 * 96 + 92, _9062);
+ undetermined.Store(_5963 * 96 + 92, _19867._m1);
}
break;
} while(false);
game/core/shaders_vulkan_dir/shaders/vfx/lightmap_rasterize.slang
modified • +23 / -23 • changes: 46
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -135,15 +135,15 @@ VS
GS
{
- StructuredBuffer g_ChartIDs < Attribute("g_ChartIDs"); SrgbRead(false); >;
+ StructuredBuffer g_ChartIDs < Attribute("g_ChartIDs"); >;
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3388 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3404 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
layout(triangles) in;
@@ -167,9 +167,6 @@ GS
void main()
{
- vec4 _12827 = gl_in[0].gl_Position;
- vec4 _12828 = gl_in[1].gl_Position;
- vec4 _21734 = gl_in[2].gl_Position;
vec3 _7777 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));
uint _11093 = uint(gl_PrimitiveIDIn);
uvec2 _16324;
@@ -193,39 +190,42 @@ GS
_17017 = _6352;
continue;
}
- float _18134 = float(_16324.x & 1048575u) * 9.5367431640625e-07;
- vec4 _11679 = _12827;
- _11679.z = _18134;
+ float _21748 = float(_16324.x & 1048575u) * 9.5367431640625e-07;
+ vec4 _9829 = gl_in[0].gl_Position;
+ vec4 _12875 = _9829;
+ _12875.z = _21748;
output_0 = input_0[0];
output_1 = input_1[0];
output_2 = _7777;
output_3 = input_2[0];
output_4 = input_3[0];
output_5 = g_ChartIDs_1._m0[_11093];
- _11679.y = -_12827.y;
- gl_Position = _11679;
+ _12875.y = -_9829.y;
+ gl_Position = _12875;
EmitVertex();
- vec4 _18816 = _12828;
- _18816.z = _18134;
+ vec4 _9830 = gl_in[1].gl_Position;
+ vec4 _12876 = _9830;
+ _12876.z = _21748;
output_0 = input_0[1];
output_1 = input_1[1];
output_2 = _7777;
output_3 = input_2[1];
output_4 = input_3[1];
output_5 = g_ChartIDs_1._m0[_11093];
- _18816.y = -_12828.y;
- gl_Position = _18816;
+ _12876.y = -_9830.y;
+ gl_Position = _12876;
EmitVertex();
- vec4 _18817 = _21734;
- _18817.z = _18134;
+ vec4 _9831 = gl_in[2].gl_Position;
+ vec4 _12877 = _9831;
+ _12877.z = _21748;
output_0 = input_0[2];
output_1 = input_1[2];
output_2 = _7777;
output_3 = input_2[2];
output_4 = input_3[2];
output_5 = g_ChartIDs_1._m0[_11093];
- _18817.y = -_21734.y;
- gl_Position = _18817;
+ _12877.y = -_9831.y;
+ gl_Position = _12877;
EmitVertex();
EndPrimitive();
}
@@ -242,15 +242,15 @@ PS
DynamicCombo( D_REVERSE_DEPTH, 0..1 );
DynamicComboRule( Requires( D_REVERSE_DEPTH, D_PASS=0 ) );
- StructuredBuffer g_ChartInfo < Attribute("g_ChartInfo"); SrgbRead(false); >;
+ StructuredBuffer g_ChartInfo < Attribute("g_ChartInfo"); >;
RWStructuredBuffer g_LightmapSamples < Attribute("g_LightmapSamples"); >;
Texture2D g_LuxelChartIDs < Attribute("g_LuxelChartIDs"); SrgbRead(false); >;
int g_nSampleStride < Attribute("g_nSampleStride"); UiType(Slider); >;
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (768 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- Texture2D<uint4> g_LuxelChartIDs_unexpectedTypeId404_1041 : register(t30, space1);
+ Texture2D<uint4> g_LuxelChartIDs : register(t30, space1);
static float4 gl_FragCoord;
static uint input_0;
@@ -269,7 +269,7 @@ PS
void MainPs_inner()
{
- if (input_0 != g_LuxelChartIDs_unexpectedTypeId404_1041.Load(int3(uint2(gl_FragCoord.xy), 0)).x)
+ if (input_0 != g_LuxelChartIDs.Load(int3(uint2(gl_FragCoord.xy), 0)).x)
{
discard;
}
game/core/shaders_vulkan_dir/shaders/vfx/lightmap_test_converged.slang
modified • +11 / -11 • changes: 22
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: cs
}
@@ -33,15 +33,15 @@ CS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
RWTexture3D<float4> g_BlockConverged < Attribute("g_BlockConverged"); >;
- StructuredBuffer g_LpvLuxels < Attribute("g_LpvLuxels"); SrgbRead(false); >;
- StructuredBuffer g_Luxels < Attribute("g_Luxels"); SrgbRead(false); >;
- StructuredBuffer g_VertexLightSamples < Attribute("g_VertexLightSamples"); SrgbRead(false); >;
+ StructuredBuffer g_LpvLuxels < Attribute("g_LpvLuxels"); >;
+ StructuredBuffer g_Luxels < Attribute("g_Luxels"); >;
+ StructuredBuffer g_VertexLightSamples < Attribute("g_VertexLightSamples"); >;
float g_flErrorTolerance < Attribute("g_flErrorTolerance"); UiType(Slider); >;
int g_nBlockHeight < Attribute("g_nBlockHeight"); UiType(Slider); >;
int g_nBlockWidth < Attribute("g_nBlockWidth"); UiType(Slider); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2992 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _427
{
@@ -81,12 +81,12 @@ CS
void MainCs_inner()
{
- bool _7078;
+ bool _24472;
do
{
if (_Globals_1_g_flErrorTolerance <= 0.0f)
{
- _7078 = false;
+ _24472 = false;
break;
}
uint _15834 = uint(_Globals_1_g_nBlockWidth);
@@ -95,14 +95,14 @@ CS
int _12919 = WaveActiveSum(int(_6817));
if (_12919 == 0)
{
- _7078 = true;
+ _24472 = true;
break;
}
else
{
if (_12919 <= 2)
{
- _7078 = false;
+ _24472 = false;
break;
}
}
@@ -118,12 +118,12 @@ CS
float _22462 = dot(_20940.xyz, float3(0.2125000059604644775390625f, 0.7153999805450439453125f, 0.07209999859333038330078125f));
float _18595 = float(_12919);
float _12151 = WaveActiveSum(_22462) / _18595;
- _7078 = !(sqrt(abs((WaveActiveSum(_22462 * _22462) / _18595) - (_12151 * _12151))) > (_12151 * _Globals_1_g_flErrorTolerance));
+ _24472 = !(sqrt(abs((WaveActiveSum(_22462 * _22462) / _18595) - (_12151 * _12151))) > (_12151 * _Globals_1_g_flErrorTolerance));
break;
} while(false);
if (gl_LocalInvocationIndex == 0u)
{
- _3474[gl_GlobalInvocationID / uint3(4u, 4u, 1u)] = uint(int(_7078)).x;
+ _3474[gl_GlobalInvocationID / uint3(4u, 4u, 1u)] = uint(int(_24472)).x;
}
}
game/core/shaders_vulkan_dir/shaders/vfx/lightmap_vertexlight_reduce.slang
modified • +23 / -10 • changes: 33
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: cs
}
@@ -32,26 +32,31 @@ CS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
RWStructuredBuffer g_Result < Attribute("g_Result"); >;
- StructuredBuffer g_VertexLightSamples < Attribute("g_VertexLightSamples"); SrgbRead(false); >;
+ StructuredBuffer g_VertexLightSamples < Attribute("g_VertexLightSamples"); >;
int g_nBlockWidth < Attribute("g_nBlockWidth"); UiType(Slider); >;
int g_nVertexCount < Attribute("g_nVertexCount"); UiType(Slider); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4132 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4192 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1017
{
float4 _m0;
};
+ struct _1018
+ {
+ float4 _m0;
+ };
+
cbuffer _Globals_ : register(b0, space0)
{
uint _Globals_1_g_nVertexCount : packoffset(c0);
int _Globals_1_g_nBlockWidth : packoffset(c0.y);
};
- RWByteAddressBuffer undetermined : register(u158, space0);
ByteAddressBuffer g_VertexLightSamples : register(t30, space0);
+ RWByteAddressBuffer undetermined : register(u158, space0);
static uint3 gl_GlobalInvocationID;
struct SPIRV_Cross_Input
@@ -94,8 +99,12 @@ CS
{
break;
}
- uint2 _5745 = (_9668.xy * uint2(4u, 4u)) + uint2(_16209, _16208);
- _3273 = _13156 + asfloat(g_VertexLightSamples.Load4(((_5745.y * _16799) + _5745.x) * 16 + 0)).xyz;
+ uint2 _6349 = (_9668.xy * uint2(4u, 4u)) + uint2(_16209, _16208);
+ _1018 _17001;
+ _17001._m0 = asfloat(g_VertexLightSamples.Load4(((_6349.y * _16799) + _6349.x) * 16 + 0));
+ _1017 _20190;
+ _20190._m0 = _17001._m0;
+ _3273 = _13156 + _20190._m0.xyz;
_9913 = _16209 + 1u;
_13156 = _3273;
_16209 = _9913;
@@ -132,10 +141,14 @@ CS
_7956_ladder_break = true;
break;
}
- uint2 _6349 = (_9668.xy * uint2(4u, 4u)) + uint2(_16211, _16210);
- float3 _20166 = max(0.0f.xxx, asfloat(g_VertexLightSamples.Load4(((_6349.y * _16799) + _6349.x) * 16 + 0)).xyz);
+ uint2 _5745 = (_9668.xy * uint2(4u, 4u)) + uint2(_16211, _16210);
+ _1018 _17002;
+ _17002._m0 = asfloat(g_VertexLightSamples.Load4(((_5745.y * _16799) + _5745.x) * 16 + 0));
+ _1017 _20191;
+ _20191._m0 = _17002._m0;
+ float3 _23379 = max(0.0f.xxx, _20191._m0.xyz);
float3 _9380 = _13088 * 8.0f;
- if (any(bool3(_20166.x > _9380.x, _20166.y > _9380.y, _20166.z > _9380.z)))
+ if (any(bool3(_23379.x > _9380.x, _23379.y > _9380.y, _23379.z > _9380.z)))
{
_14382 = _13158;
break;
@@ -144,7 +157,7 @@ CS
float _17497 = sqrt(_21157.x);
float _15049 = _21157.y;
float3 _10701 = float3(1.0f - _17497, _17497 * (1.0f - _15049), _17497 * _15049);
- _14382 = _13158 + (float4(_20166, 1.0f) * _10701[_23446]);
+ _14382 = _13158 + (float4(_23379, 1.0f) * _10701[_23446]);
break;
} while(false);
if (_7956_ladder_break)
game/core/shaders_vulkan_dir/shaders/vfx/lpv_debug_grid.slang
modified • +54 / -32 • changes: 86
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = false;
Version = 1;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -42,11 +42,11 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1512 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1432 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -60,14 +60,26 @@ VS
float _m7;
};
- struct _1150
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _248
+ struct _1126
{
- _1150 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
+ };
+
+ struct _1120
+ {
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
@@ -90,13 +102,29 @@ VS
void MainVs_inner()
{
- _1150 _25207;
- [unroll]
- for (int _0ident = 0; _0ident < 3; _0ident++)
- {
- _25207._m0[_0ident] = asfloat(g_transformBuffer.Load4(_0ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- output_0 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _20190;
+ _20190._m0 = _8152._m0;
+ output_0 = mul(_20190._m0, float4(vPositionOs.xyz, 1.0f));
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -130,30 +158,25 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3480 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2876 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
layout(points) in;
layout(max_vertices = 4, triangle_strip) out;
- struct _394
- {
- vec4 _m0[4];
- };
-
- struct _1954
+ struct _1368
{
- _394 _m0;
+ mat4 _m0;
vec4 _m1;
vec3 _m2;
vec3 _m3;
};
- layout(set = 2) uniform _1954 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1368 PerViewConstantBuffer_t;
struct _1032
{
@@ -179,31 +202,30 @@ GS
vec3 _8702 = PerViewConstantBuffer_t._m3 * _13108;
vec3 _7336 = (_21046 + _8702).xyz;
vec4 _21447 = PerViewConstantBuffer_t._m1 * 1.0;
- mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec4 _7230 = (vec4(_7336, 1.0) + _21447).xyzw * _15571;
+ vec4 _20663 = (vec4(_7336, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = _7336 - undetermined._m0.xyz;
output_1 = _9918;
- _7230.y = -_7230.y;
- gl_Position = _7230;
+ _20663.y = -_20663.y;
+ gl_Position = _20663;
EmitVertex();
vec3 _24428 = PerViewConstantBuffer_t._m3 * _25224;
vec3 _8552 = (_21046 + _24428).xyz;
- vec4 _18907 = (vec4(_8552, 1.0) + _21447).xyzw * _15571;
+ vec4 _18907 = (vec4(_8552, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = _8552 - undetermined._m0.xyz;
output_1 = _9918;
_18907.y = -_18907.y;
gl_Position = _18907;
EmitVertex();
vec3 _15138 = _16500 + (_11686 * _13108);
vec3 _7753 = (_15138 + _8702).xyz;
- vec4 _18908 = (vec4(_7753, 1.0) + _21447).xyzw * _15571;
+ vec4 _18908 = (vec4(_7753, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = _7753 - undetermined._m0.xyz;
output_1 = _9918;
_18908.y = -_18908.y;
gl_Position = _18908;
EmitVertex();
vec3 _18190 = (_15138 + _24428).xyz;
- vec4 _18909 = (vec4(_18190, 1.0) + _21447).xyzw * _15571;
+ vec4 _18909 = (vec4(_18190, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = _18190 - undetermined._m0.xyz;
output_1 = _9918;
_18909.y = -_18909.y;
game/core/shaders_vulkan_dir/shaders/vfx/minimap_fow.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/morph_composite.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/msaa_resolve.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 2;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -92,7 +92,7 @@ PS
float2 g_vSourceOffset < Attribute("SourceOffset"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1732 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _3;
@@ -101,7 +101,7 @@ PS
float2 _Globals_1_g_vSourceOffset : packoffset(c7.z);
};
- Texture2DMS<float4> g_tSourceMsaa_unexpectedTypeId438_1075 : register(t31, space1);
+ Texture2DMS<float4> g_tSourceMsaa : register(t31, space1);
static float4 gl_FragCoord;
static float4 output_0;
@@ -129,7 +129,7 @@ PS
{
break;
}
- float4 _3401 = g_tSourceMsaa_unexpectedTypeId438_1075.Load(int2((gl_FragCoord.xy - _Globals_1_g_vSourceOffset.xy).xy), _16208);
+ float4 _3401 = g_tSourceMsaa.Load(int2((gl_FragCoord.xy - _Globals_1_g_vSourceOffset.xy).xy), _16208);
float3 _12039 = clamp(_3401.xyz, 0.0f.xxx, 65504.0f.xxx);
float4 _13514;
_13514.x = _12039.x;
game/core/shaders_vulkan_dir/shaders/vfx/msaa_resolve_cs.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -36,10 +36,10 @@ CS
Texture2D g_tSourceMsaa < Attribute("InputTexture"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1668 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1676 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ Texture2DMS<float4> g_tSourceMsaa : register(t30, space0);
RWTexture2D<float4> _3407 : register(u158, space0);
- Texture2DMS<float4> g_tSourceMsaa_unexpectedTypeId438_1075 : register(t30, space0);
static uint3 gl_GlobalInvocationID;
struct SPIRV_Cross_Input
@@ -60,7 +60,7 @@ CS
{
break;
}
- float4 _3401 = g_tSourceMsaa_unexpectedTypeId438_1075.Load(int2(gl_GlobalInvocationID.xy), int(_16208));
+ float4 _3401 = g_tSourceMsaa.Load(int2(gl_GlobalInvocationID.xy), int(_16208));
_10794 = _13155.xyz + (_3401.xyz * (0.5f / (max(_3401.x, max(_3401.y, _3401.z)) + 1.0f))).xyz;
_9913 = _16208 + 1u;
_13155 = _10794;
game/core/shaders_vulkan_dir/shaders/vfx/nonmsaa_resolve.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 2;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/occlusion.slang
modified • +9 / -14 • changes: 23
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -39,17 +39,12 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1488 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (884 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _436
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- float4 _m0[4];
- };
-
- cbuffer _Globals_ : register(b0, space0)
- {
- _436 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -68,9 +63,9 @@ VS
void MainVs_inner()
{
- float4 _24787 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(m_vPositionWs.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- _24787.y = -_24787.y;
- gl_Position = _24787;
+ float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(m_vPositionWs.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _19149.y = -_19149.y;
+ gl_Position = _19149;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/panorama.slang
modified • +11 / -1 • changes: 12
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -35,6 +35,9 @@ struct VS_INPUT
VS
{
+ DynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );
+
+ float2 g_vTexture4Scale < Default2(1, 1); Attribute("Texture4Scale"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (576 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
@@ -91,9 +94,15 @@ VS
PS
{
+ DynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );
DynamicCombo( D_TEXTURETYPE, 0..7 );
DynamicCombo( D_FAST_BLUR_SAMPLES, 0..8 );
+ DynamicCombo( D_RESOLVE_DESTINATION, 0..2 );
+ DynamicCombo( D_MSAA_SAMPLES, 0..3 );
DynamicComboRule( Requires( D_FAST_BLUR_SAMPLES, D_TEXTURETYPE=6 ) );
+ DynamicComboRule( Requires( D_MSAA_SAMPLES, D_RESOLVE_DESTINATION=2 ) );
+ DynamicComboRule( Allow1( D_RESOLVE_DESTINATION, D_TEXTURETYPE ) );
+ DynamicComboRule( Allow1( D_RESOLVE_DESTINATION, D_DSTCOLOR_BLENDMODE ) );
cbuffer FastBlurFilterParams_t < Attribute("FastBlurFilterParams_t"); >;
float g_flBlurSigma < Attribute("BlurSigma"); UiType(Slider); >;
@@ -102,6 +111,7 @@ PS
Texture2D g_tTexture1 < Attribute("Texture1"); SrgbRead(false); >;
Texture2D g_tTexture2 < Attribute("Texture2"); SrgbRead(false); >;
Texture2D g_tTexture3 < Attribute("Texture3"); SrgbRead(false); >;
+ Texture2D g_tTexture4 < Attribute("Texture4"); SrgbRead(false); >;
float2 g_vBlurMultiplyVec < Default(0); Attribute("BlurMultiplyVec"); UiType(VectorText); >;
game/core/shaders_vulkan_dir/shaders/vfx/panorama_fancyquad.slang
modified • +31 / -26 • changes: 57
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -41,6 +41,9 @@ struct VS_INPUT
VS
{
+ DynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );
+
+ float2 g_vTexture4Scale < Default2(1, 1); Attribute("Texture4Scale"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (1176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
@@ -139,6 +142,7 @@ VS
PS
{
+ DynamicCombo( D_DSTCOLOR_BLENDMODE, 0..8 );
DynamicCombo( D_USERADIALGRADIENT, 0..1 );
DynamicCombo( D_USEOUTERCORNER, 0..1 );
DynamicCombo( D_USEINNERCORNER, 0..1 );
@@ -153,24 +157,25 @@ PS
Texture2D g_tTexture0 < Attribute("Texture0"); SrgbRead(true); >;
Texture2D g_tTexture1 < Attribute("Texture1"); SrgbRead(true); >;
Texture2D g_tTexture3 < Attribute("Texture3"); SrgbRead(true); >;
+ Texture2D g_tTexture4 < Attribute("Texture4"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (5928 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer FancyQuadCoreConstants_t : register(b0, space1)
{
- float _Globals_1_m0 : packoffset(c6.z);
- int _Globals_1_m1 : packoffset(c7.y);
- int _Globals_1_m2 : packoffset(c7.z);
- int _Globals_1_m3 : packoffset(c7.w);
- float _Globals_1_m4 : packoffset(c9.y);
- float _Globals_1_m5 : packoffset(c9.z);
- int _Globals_1_m6 : packoffset(c9.w);
+ float FancyQuadCoreConstants_t_1_m0 : packoffset(c6.z);
+ int FancyQuadCoreConstants_t_1_m1 : packoffset(c7.y);
+ int FancyQuadCoreConstants_t_1_m2 : packoffset(c7.z);
+ int FancyQuadCoreConstants_t_1_m3 : packoffset(c7.w);
+ float FancyQuadCoreConstants_t_1_m4 : packoffset(c9.y);
+ float FancyQuadCoreConstants_t_1_m5 : packoffset(c9.z);
+ int FancyQuadCoreConstants_t_1_m6 : packoffset(c9.w);
};
SamplerState DefaultSamplerState_0 : register(s14, space1);
- Texture2D<float4> g_tLinearTexture0 : register(t34, space1);
Texture2D<float4> g_tTexture0 : register(t30, space1);
+ Texture2D<float4> g_tLinearTexture0 : register(t34, space1);
Texture2D<float4> g_tTexture3 : register(t33, space1);
Texture2D<float4> g_tTexture1 : register(t31, space1);
@@ -198,13 +203,13 @@ PS
float2 _13829 = ddx(input_0.xy);
float2 _9944 = ddy(input_0.xy);
bool _12885;
- if (_Globals_1_m3 == 1)
+ if (FancyQuadCoreConstants_t_1_m3 == 1)
{
_12885 = true;
}
else
{
- _12885 = _Globals_1_m3 == 2;
+ _12885 = FancyQuadCoreConstants_t_1_m3 == 2;
}
float4 _7078;
if (_12885)
@@ -214,7 +219,7 @@ PS
else
{
float4 _12502;
- if (_Globals_1_m3 == 3)
+ if (FancyQuadCoreConstants_t_1_m3 == 3)
{
float4 _11198 = g_tTexture0.SampleGrad(DefaultSamplerState_0, input_0.xy, _13829, _9944);
float _14685 = _11198.w;
@@ -226,15 +231,15 @@ PS
}
else
{
- bool _21124 = _Globals_1_m3 == 4;
+ bool _23546 = FancyQuadCoreConstants_t_1_m3 == 4;
bool _12886;
- if (_21124)
+ if (_23546)
{
_12886 = true;
}
else
{
- _12886 = _21124;
+ _12886 = _23546;
}
float4 _12501;
if (_12886)
@@ -292,7 +297,7 @@ PS
_7078 = _12502;
}
float4 _19017;
- if (_Globals_1_m3 == 2)
+ if (FancyQuadCoreConstants_t_1_m3 == 2)
{
float3 _16714 = _7078.xyz * _7078.w;
float4 _8673 = _7078;
@@ -306,14 +311,14 @@ PS
_19017 = _7078;
}
float4 _21709;
- if (_Globals_1_m1 == 2)
+ if (FancyQuadCoreConstants_t_1_m1 == 2)
{
_21709 = _19017 * g_tTexture3.SampleLevel(DefaultSamplerState_0, float2((clamp(input_0.z, 0.0f, 1.0f) * 0.9990234375f) + 0.00048828125f, 0.0f), 0.0f);
}
else
{
float4 _12503;
- if (_Globals_1_m1 == 1)
+ if (FancyQuadCoreConstants_t_1_m1 == 1)
{
_12503 = _19017 * lerp(input_1, input_2, clamp(input_0.z, 0.0f, 1.0f).xxxx);
}
@@ -324,12 +329,12 @@ PS
_21709 = _12503;
}
float4 _19306;
- if (_Globals_1_m2 != 0)
+ if (FancyQuadCoreConstants_t_1_m2 != 0)
{
float4 _19068 = g_tTexture1.Sample(DefaultSamplerState_0, input_3.xy);
float _17476 = _19068.w;
float _21710;
- if (_Globals_1_m6 != 0)
+ if (FancyQuadCoreConstants_t_1_m6 != 0)
{
_21710 = _17476 * dot(g_tTexture1.Sample(DefaultSamplerState_0, input_3.xy).xyz, float3(0.2125000059604644775390625f, 0.7153999805450439453125f, 0.07209999859333038330078125f));
}
@@ -338,26 +343,26 @@ PS
_21710 = _17476;
}
float _21711;
- if (_21710 < _Globals_1_m4)
+ if (_21710 < FancyQuadCoreConstants_t_1_m4)
{
_21711 = 0.0f;
}
else
{
float _12504;
- if (_21710 < _Globals_1_m5)
+ if (_21710 < FancyQuadCoreConstants_t_1_m5)
{
- _12504 = (_21710 - _Globals_1_m4) / (_Globals_1_m5 - _Globals_1_m4);
+ _12504 = (_21710 - FancyQuadCoreConstants_t_1_m4) / (FancyQuadCoreConstants_t_1_m5 - FancyQuadCoreConstants_t_1_m4);
}
else
{
_12504 = 1.0f;
}
_21711 = _12504;
}
- float _6837 = abs(_Globals_1_m0);
+ float _6837 = abs(FancyQuadCoreConstants_t_1_m0);
float _11659;
- if (_Globals_1_m0 > 0.0f)
+ if (FancyQuadCoreConstants_t_1_m0 > 0.0f)
{
_11659 = _21711;
}
game/core/shaders_vulkan_dir/shaders/vfx/physics_wireframe.slang
modified • +47 / -24 • changes: 71
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -48,11 +48,11 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2912 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2228 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -66,27 +66,34 @@ VS
float _m7;
};
- struct _1150
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _248
+ struct _1126
{
- _1150 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1276
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1276 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -117,19 +124,35 @@ VS
void MainVs_inner()
{
- _1150 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3 _19956 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
- float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _19956 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = vColor;
output_1 = vNormalOs;
output_2 = _19956;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/post_process.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -136,7 +136,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vViewFadeColor) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/refract.slang
modified • +48 / -26 • changes: 74
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -55,15 +55,15 @@ VS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Texture Transform
float2 g_vSecondaryTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup("Texture Transform"); >;
float2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup("Texture Transform"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3844 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3160 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -77,26 +77,33 @@ VS
float _m7;
};
- struct _1402
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _752
+ struct _1126
{
- _1402 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1528
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1528 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -137,25 +144,40 @@ VS
void MainVs_inner()
{
- _1402 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _14293 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));
- float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _14293 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));
+ float3 _12861 = mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;
float3 _24912 = _14293.xyz;
- float3 _19956 = mul(_14817, float4(vPositionOs.xyz, 1.0f));
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ float3 _19956 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19956.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
float4 _12868 = float4(vTexCoord, 0.0f, 1.0f);
output_0 = _14293;
output_1 = float2(dot(_12868, float4(_Globals_1_g_vTexCoordScale.x, 0.0f, 0.0f, 0.0f)), dot(_12868, float4(0.0f, _Globals_1_g_vTexCoordScale.y, 0.0f, 0.0f)));
output_2 = _19956;
output_3 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -207,7 +229,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vFBCopyTextureRect) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/rendergraph_test.slang
added • +84 / -0 • changes: 84
Show patch
@@ -0,0 +1,84 @@
+//=================================================================================================
+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io
+//=================================================================================================
+HEADER
+{
+ Description = "Rendergraph test";
+ DevShader = true;
+ Version = 0;
+
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
+ // Programs: cs
+}
+
+MODES
+{
+ Default();
+}
+
+FEATURES
+{
+}
+
+COMMON
+{
+ #include "system.fxc"
+}
+
+CS
+{
+ DynamicCombo( D_PASS, 0..1 );
+
+ StructuredBuffer g_ForkBuffer_0 < Attribute("ForkBuffer_0"); >;
+ StructuredBuffer g_ForkBuffer_1 < Attribute("ForkBuffer_1"); >;
+ StructuredBuffer g_ForkBuffer_2 < Attribute("ForkBuffer_2"); >;
+ StructuredBuffer g_ForkBuffer_3 < Attribute("ForkBuffer_3"); >;
+ StructuredBuffer g_InputBuffer < Attribute("InputBuffer"); >;
+ RWStructuredBuffer g_OutputBuffer < Attribute("OutputBuffer"); >;
+ int g_nBranchCount < Attribute("BranchCount"); UiType(Slider); >;
+ int g_nBranchOffset < Attribute("BranchOffset"); UiType(Slider); >;
+ int g_nElementCount < Attribute("ElementCount"); UiType(Slider); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (1144 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ cbuffer _Globals_ : register(b0, space0)
+ {
+ int _Globals_1_g_nElementCount : packoffset(c0);
+ int _Globals_1_g_nBranchOffset : packoffset(c0.y);
+ };
+
+ RWByteAddressBuffer undetermined : register(u158, space0);
+ ByteAddressBuffer g_InputBuffer : register(t30, space0);
+
+ static uint3 gl_GlobalInvocationID;
+ struct SPIRV_Cross_Input
+ {
+ uint3 gl_GlobalInvocationID : SV_DispatchThreadID;
+ };
+
+ void MainCs_inner()
+ {
+ do
+ {
+ if (gl_GlobalInvocationID.x >= uint(_Globals_1_g_nElementCount))
+ {
+ break;
+ }
+ undetermined.Store(gl_GlobalInvocationID.x * 4 + 0, g_InputBuffer.Load(gl_GlobalInvocationID.x * 4 + 0) + uint(_Globals_1_g_nBranchOffset));
+ break;
+ } while(false);
+ }
+
+ [numthreads(64, 1, 1)]
+ void MainCs(SPIRV_Cross_Input stage_input)
+ {
+ gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;
+ MainCs_inner();
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
game/core/shaders_vulkan_dir/shaders/vfx/rendermicrobenchmark.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/reset_draw_params_cs.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_binlights.slang
modified • +2200 / -2061 • changes: 4261
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_vulkan_dir/shaders/vfx/rtx_debug_visualization.slang
modified • +174 / -173 • changes: 347
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: rtx
}
@@ -32,11 +32,11 @@ RTX
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL: 5319
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (16184 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (15512 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_AMD_gpu_shader_half_float)
@@ -52,36 +52,31 @@ RTX
struct MaterialDataMinimal_t
{
- f16vec3 vMaterialBits;
- float16_t _m1;
- f16vec3 _m2;
- float16_t _m3;
- f16vec3 _m4;
- float16_t _m5;
- uint _m6;
- f16vec4 _m7;
+ f16vec3 vNormalWs;
+ float16_t flMetalness;
+ f16vec3 vAlbedo;
+ float16_t flRoughness;
+ f16vec3 vEmissive;
+ float16_t flReflectance;
+ uint nMaterialTypeAndFlags;
+ f16vec4 vMaterialBits;
};
struct Payload_t
{
- vec3 material;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- int _m5;
- bool _m6;
- MaterialDataMinimal_t _m7;
+ vec3 vSmoothPositionWs;
+ vec3 vFaceNormalWs;
+ vec3 vInterpolatedNormalWs;
+ float flHitT;
+ float flOpacityRng;
+ int nInstance;
+ bool bFlippedNormal;
+ MaterialDataMinimal_t material;
};
- struct _MatrixStorage_float4x4_ColMajornatural
- {
- vec4 data[4];
- };
-
- struct _MatrixStorage_float4x3_ColMajornatural
+ struct PayloadShadow_t
{
- vec4 data[3];
+ float m_flVisibility;
};
struct SceneGlobalInfoGPU_t_natural
@@ -92,27 +87,22 @@ RTX
vec4 m_vLocalLightMinBounds;
vec4 m_vLocalLightMaxBounds;
ivec4 m_vLightBinCellCount_nLightCount;
- _MatrixStorage_float4x3_ColMajornatural m_mIBLTransformI;
+ mat4x3 m_mIBLTransformI;
vec4 m_vIBLCubeMapScale;
ivec4 m_vIBLParams;
ivec4 m_vBrdfLUTs;
};
- struct PayloadShadow_t
- {
- float m_flVisibility;
- };
-
- vec4 _133;
+ vec4 _128;
layout(set = 3, binding = 37, std430) readonly buffer StructuredBuffer
{
- SceneGlobalInfoGPU_t_natural _m0[];
+ layout(row_major) SceneGlobalInfoGPU_t_natural _member0[];
} g_SceneGlobalInfo;
layout(push_constant, std430) uniform PushConstants_t_t_natural
{
- _MatrixStorage_float4x4_ColMajornatural m_mInvViewProj;
+ layout(row_major) mat4 m_mInvViewProj;
vec4 m_vCameraOrigin;
vec4 m_vRandomOffsets;
ivec4 m_nIntParams;
@@ -122,22 +112,22 @@ RTX
layout(set = 6, binding = 161) uniform readonly image3D g_RandomSamples;
layout(location = 0) rayPayloadEXT Payload_t p;
layout(set = 3, binding = 30) uniform accelerationStructureEXT g_AccelStruct;
+ layout(location = 1) rayPayloadEXT PayloadShadow_t p_1;
layout(set = 4, binding = 46) uniform textureCube g_bindless_TextureCube[65536];
layout(set = 3, binding = 14) uniform sampler g_Sampler;
- layout(location = 1) rayPayloadEXT PayloadShadow_t p_1;
layout(set = 6, binding = 159) uniform image2D g_VarianceImage;
void main()
{
- vec2 _219 = (((vec2(gl_LaunchIDEXT.xy) + PushConstants_t.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);
- _219.y = -_219.y;
- vec4 _225 = mat4(vec4(PushConstants_t.m_mInvViewProj.data[0].x, PushConstants_t.m_mInvViewProj.data[1].x, PushConstants_t.m_mInvViewProj.data[2].x, PushConstants_t.m_mInvViewProj.data[3].x), vec4(PushConstants_t.m_mInvViewProj.data[0].y, PushConstants_t.m_mInvViewProj.data[1].y, PushConstants_t.m_mInvViewProj.data[2].y, PushConstants_t.m_mInvViewProj.data[3].y), vec4(PushConstants_t.m_mInvViewProj.data[0].z, PushConstants_t.m_mInvViewProj.data[1].z, PushConstants_t.m_mInvViewProj.data[2].z, PushConstants_t.m_mInvViewProj.data[3].z), vec4(PushConstants_t.m_mInvViewProj.data[0].w, PushConstants_t.m_mInvViewProj.data[1].w, PushConstants_t.m_mInvViewProj.data[2].w, PushConstants_t.m_mInvViewProj.data[3].w)) * vec4(_219.xy, 0.0, 1.0);
- vec3 _229 = _225.xyz / vec3(_225.w);
- vec4 _231;
- _231.x = _229.x;
- _231.y = _229.y;
- _231.z = _229.z;
- vec3 _240 = normalize(_231.xyz - PushConstants_t.m_vCameraOrigin.xyz);
+ vec2 _199 = (((vec2(gl_LaunchIDEXT.xy) + PushConstants_t.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);
+ _199.y = -_199.y;
+ vec4 _205 = PushConstants_t.m_mInvViewProj * vec4(_199.xy, 0.0, 1.0);
+ vec3 _209 = _205.xyz / vec3(_205.w);
+ vec4 _211;
+ _211.x = _209.x;
+ _211.y = _209.y;
+ _211.z = _209.z;
+ vec3 _220 = normalize(_211.xyz - PushConstants_t.m_vCameraOrigin.xyz);
vec4 vCurrentSample;
if (PushConstants_t.m_nIntParams.y > 0)
{
@@ -147,95 +137,101 @@ RTX
{
vCurrentSample = vec4(0.0);
}
- uvec3 _255 = uvec3(imageSize(g_RandomSamples));
- ivec3 _175;
- ivec3 _258 = _175;
- _258.x = int(_255.x);
- _258.y = int(_255.y);
- _258.z = int(_255.z);
- _175 = _258;
- ivec2 _267 = ivec2(gl_LaunchIDEXT.xy) - _258.xy * (ivec2(gl_LaunchIDEXT.xy) / _258.xy);
- f16vec3 _276 = f16vec3(vec3(0.0));
- vec3 _154;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _154, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_267.xy, 1)))).xy.y, -1, false, MaterialDataMinimal_t(_276, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _276, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PushConstants_t.m_vCameraOrigin.xyz, 0.0, _240, 56755.83984375, 0);
- vec3 _153 = p.material;
- vec3 _152 = p._m1;
- float _151 = p._m3;
- f16vec3 _142 = p._m7.vMaterialBits;
- float16_t _141 = p._m7._m1;
- f16vec3 _140 = p._m7._m2;
- float16_t _139 = p._m7._m3;
- f16vec3 _138 = p._m7._m4;
- float16_t _137 = p._m7._m5;
- uint _136 = p._m7._m6;
- f16vec4 _135 = p._m7._m7;
+ uvec3 _235 = uvec3(imageSize(g_RandomSamples));
+ ivec3 _181;
+ ivec3 _238 = _181;
+ _238.x = int(_235.x);
+ _238.y = int(_235.y);
+ _238.z = int(_235.z);
+ _181 = _238;
+ ivec2 _247 = ivec2(gl_LaunchIDEXT.xy) - _238.xy * (ivec2(gl_LaunchIDEXT.xy) / _238.xy);
+ f16vec3 _254 = f16vec3(vec3(0.0));
+ vec3 _157;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _157, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(_247.xy, 1)).xy.y, -1, false, MaterialDataMinimal_t(_254, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _254, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PushConstants_t.m_vCameraOrigin.xyz, 0.0, _220, 56755.83984375, 0);
+ vec3 _156 = p.vSmoothPositionWs;
+ vec3 _155 = p.vFaceNormalWs;
+ float _154 = p.flHitT;
+ f16vec3 _137 = p.material.vNormalWs;
+ float16_t _136 = p.material.flMetalness;
+ f16vec3 _135 = p.material.vAlbedo;
+ float16_t _134 = p.material.flRoughness;
+ f16vec3 _133 = p.material.vEmissive;
+ float16_t _132 = p.material.flReflectance;
+ uint _131 = p.material.nMaterialTypeAndFlags;
+ f16vec4 _130 = p.material.vMaterialBits;
vec3 vNewSample;
- if (p._m5 != (-1))
+ if (p.nInstance != (-1))
{
+ vec3 _153 = PushConstants_t.m_vCameraOrigin.xyz;
+ vec3 _152 = _220;
do
{
- vec3 _156 = (PushConstants_t.m_vCameraOrigin.xyz + (_240 * _151)) + (_152 * ((abs(PushConstants_t.m_vCameraOrigin.xyz) + vec3(abs(_151))) * 9.9999997473787516355514526367188e-05));
- vec3 _155 = _152;
- bool _168;
+ vec3 _160 = _156;
+ vec3 _159 = _155;
+ float _158 = _154;
+ f16vec3 _146 = _137;
+ vec3 _162 = (_153 + (_152 * _158)) + (_159 * ((abs(_153) + vec3(abs(_158))) * 9.9999997473787516355514526367188e-05));
+ vec3 _161 = _159;
+ bool _180;
if (false)
{
- _168 = any(notEqual(_153, vec3(3.4028234663852885981170418348452e+38)));
+ _180 = any(notEqual(_160, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _168 = false;
+ _180 = false;
}
- vec3 _474 = _153 - _156;
- float _475 = length(_474);
- vec3 _159 = _156;
- float _158 = 0.0;
- vec3 _157 = vec4(_474 / vec3(_475), _475).xyz;
- float _167;
- if (_168)
+ vec3 _313 = _160 - _162;
+ float _314 = length(_313);
+ vec3 _165 = _162;
+ float _164 = 0.0;
+ vec3 _163 = vec4(_313 / vec3(_314), _314).xyz;
+ float _179;
+ if (_180)
{
- _167 = _475;
+ _179 = _314;
}
else
{
- _167 = 0.0;
+ _179 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _159, _158, _157, _167, 1);
- if (_168)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _165, _164, _163, _179, 1);
+ if (_180)
{
- _167 = p_1.m_flVisibility;
+ _179 = p_1.m_flVisibility;
}
else
{
- _167 = 0.0;
+ _179 = 0.0;
}
- if (_167 == 1.0)
+ if (_179 == 1.0)
{
- _156 = _153;
- _155 = vec3(_142);
+ _162 = _160;
+ _161 = vec3(_146);
}
- vec3 _160;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _160, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_142, _141, _140, _139, _138, _137, _136, _135));
- traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _156 - ((_155 * 0.5) * 0.5), 0.0, _155, 0.5, 0);
- f16vec3 _150 = p._m7.vMaterialBits;
- float16_t _149 = p._m7._m1;
- f16vec3 _148 = p._m7._m2;
- float16_t _147 = p._m7._m3;
- f16vec3 _146 = p._m7._m4;
- float16_t _145 = p._m7._m5;
- uint _144 = p._m7._m6;
- f16vec4 _143 = p._m7._m7;
- if (p._m5 != (-1))
+ vec3 _166;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _166, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_137, _136, _135, _134, _133, _132, _131, _130));
+ traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _162 - ((_161 * 0.5) * 0.5), 0.0, _161, 0.5, 0);
+ f16vec3 _145 = p.material.vNormalWs;
+ float16_t _144 = p.material.flMetalness;
+ f16vec3 _143 = p.material.vAlbedo;
+ float16_t _142 = p.material.flRoughness;
+ f16vec3 _141 = p.material.vEmissive;
+ float16_t _140 = p.material.flReflectance;
+ uint _139 = p.material.nMaterialTypeAndFlags;
+ f16vec4 _138 = p.material.vMaterialBits;
+ if (p.nInstance != (-1))
{
- _142 = _150;
- _141 = _149;
- _140 = _148;
- _139 = _147;
- _138 = _146;
_137 = _145;
_136 = _144;
_135 = _143;
+ _134 = _142;
+ _133 = _141;
+ _132 = _140;
+ _131 = _139;
+ _130 = _138;
break;
}
else
@@ -244,136 +240,141 @@ RTX
}
break;
} while(false);
- vec3 _161 = (PushConstants_t.m_vCameraOrigin.xyz + (_240 * _151)) + (_152 * ((abs(PushConstants_t.m_vCameraOrigin.xyz) + vec3(abs(_151))) * 9.9999997473787516355514526367188e-05));
- bool _166;
+ vec3 _151 = PushConstants_t.m_vCameraOrigin.xyz;
+ vec3 _150 = _220;
+ vec3 _149 = _156;
+ vec3 _148 = _155;
+ float _147 = _154;
+ vec3 _167 = (_151 + (_150 * _147)) + (_148 * ((abs(_151) + vec3(abs(_147))) * 9.9999997473787516355514526367188e-05));
+ bool _178;
if (true)
{
- _166 = any(notEqual(_153, vec3(3.4028234663852885981170418348452e+38)));
+ _178 = any(notEqual(_149, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _166 = false;
+ _178 = false;
}
- vec3 _564 = _153 - _161;
- float _565 = length(_564);
- vec3 _164 = _161;
- float _163 = 0.0;
- vec3 _162 = vec4(_564 / vec3(_565), _565).xyz;
- float _165;
- if (_166)
+ vec3 _410 = _149 - _167;
+ float _411 = length(_410);
+ vec3 _170 = _167;
+ float _169 = 0.0;
+ vec3 _168 = vec4(_410 / vec3(_411), _411).xyz;
+ float _177;
+ if (_178)
{
- _165 = _565;
+ _177 = _411;
}
else
{
- _165 = 0.0;
+ _177 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _164, _163, _162, _165, 1);
- if (_166)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _170, _169, _168, _177, 1);
+ if (_178)
{
- _165 = p_1.m_flVisibility;
+ _177 = p_1.m_flVisibility;
}
else
{
- _165 = 0.0;
+ _177 = 0.0;
}
- if (_165 == 1.0)
+ if (_177 == 1.0)
{
- _161 = _153;
+ _167 = _149;
}
- vNewSample = vec3(_140);
+ vNewSample = vec3(_135);
}
else
{
- vec2 _170 = imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_267.xy, 2)))).xy;
- bool _171;
- if (_240.z < 0.0)
+ vec2 _172 = imageLoad(g_RandomSamples, ivec3(_247.xy, 2)).xy;
+ bool _173;
+ if (_220.z < 0.0)
{
- float _172 = _170.y;
- bool _169;
+ float _174 = _172.y;
+ bool _171;
do
{
- if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w <= 0.0)
+ if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w <= 0.0)
{
- _169 = false;
+ _171 = false;
break;
}
- if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w >= 1.0)
+ if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w >= 1.0)
{
- _169 = true;
+ _171 = true;
break;
}
- if (_172 < g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w)
+ if (_174 < g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w)
{
- _172 = min(_172 / g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);
- _169 = true;
+ _174 = min(_174 / g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);
+ _171 = true;
break;
}
- _172 = min((_172 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);
- _169 = false;
+ _174 = min((_174 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);
+ _171 = false;
break;
} while(false);
- vec2 _341 = _170;
- _341.y = _172;
- _170 = _341;
- _171 = _169;
+ vec2 _474 = _172;
+ _474.y = _174;
+ _172 = _474;
+ _173 = _171;
}
else
{
- _171 = false;
+ _173 = false;
}
- vec3 _173;
- vec3 _174;
- if (_171)
+ vec3 _175;
+ vec3 _176;
+ if (_173)
{
- float _349 = sqrt(_170.y);
- float _351 = 6.283185482025146484375 * _170.x;
- _173 = vec3(cos(_351) * _349, sin(_351) * _349, sqrt(max(0.0, 1.0 - _170.y)));
- _174 = g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.xyz;
+ float _482 = sqrt(_172.y);
+ float _484 = 6.283185482025146484375 * _172.x;
+ _175 = vec3(cos(_484) * _482, sin(_484) * _482, sqrt(max(0.0, 1.0 - _172.y)));
+ _176 = g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.xyz;
}
else
{
- _173 = _240;
- _174 = vec3(0.0);
+ _175 = _220;
+ _176 = vec3(0.0);
}
- if (g_SceneGlobalInfo._m0[0].m_vIBLParams.y >= 0)
+ if (g_SceneGlobalInfo._member0[0].m_vIBLParams.y >= 0)
{
- vec4 _418 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._m0[0].m_vIBLParams.y], g_Sampler), normalize(mat4x3(vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].x), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].y), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].z), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].w)) * vec4(_173, 0.0)), 0.0);
- if (dot(_418.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.w)
+ vec4 _524 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._member0[0].m_vIBLParams.y], g_Sampler), normalize(g_SceneGlobalInfo._member0[0].m_mIBLTransformI * vec4(_175, 0.0)), 0.0);
+ if (dot(_524.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.w)
{
- _174 += (g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.xyz * _418.xyz);
+ _176 += (g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.xyz * _524.xyz);
}
}
else
{
- _174 += g_SceneGlobalInfo._m0[0].m_vSkyColor.xyz;
+ _176 += g_SceneGlobalInfo._member0[0].m_vSkyColor.xyz;
}
if (false)
{
- _174 *= g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.w;
+ _176 *= g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.w;
}
- if (_171)
+ if (_173)
{
- _174 *= g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.xyz;
+ _176 *= g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.xyz;
}
- vNewSample = _174;
+ vNewSample = _176;
}
- vec4 _599 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);
- imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _599);
- vec2 _176;
+ vec4 _567 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);
+ imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _567);
+ vec2 _182;
if (PushConstants_t.m_nIntParams.y == 0)
{
- _176 = vec2(0.0);
+ _182 = vec2(0.0);
}
else
{
- _176 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;
+ _182 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;
}
- float _616 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));
- float _621 = _616 - _176.x;
- float _623 = _176.x + (_621 / _599.w);
- imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_623, _176.y + (_621 * (_616 - _623))), 0.0, 0.0));
+ float _584 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));
+ float _589 = _584 - _182.x;
+ float _591 = _182.x + (_589 / _567.w);
+ imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_591, _182.y + (_589 * (_584 - _591))), 0.0, 0.0));
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_default_hitgroup.slang
modified • +343 / -309 • changes: 652
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: rtx
}
@@ -33,11 +33,11 @@ RTX
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL: 5326
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (27728 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (29288 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require
@@ -52,9 +52,16 @@ RTX
#extension GL_EXT_ray_tracing : require
#extension GL_EXT_nonuniform_qualifier : require
- struct BuiltInTriangleIntersectionAttributes
+ struct PackedRtxInstanceData_t_natural_logical
{
- vec2 barycentrics;
+ uint nSrgbColor;
+ uint nTriangleGeometry;
+ uint nMaterialData;
+ uint nMaterialFlags_nInstanceFlags;
+ float fEmissiveBoost;
+ uint nInstanceFlags;
+ uint _pad1;
+ uint _pad2;
};
struct PackedRtxInstanceData_t_natural
@@ -85,31 +92,36 @@ RTX
_Array_natural_vector_int_4_8 m_vColorFieldInfo;
};
+ struct BuiltInTriangleIntersectionAttributes
+ {
+ vec2 barycentrics;
+ };
+
struct MaterialDataMinimal_t
{
- f16vec3 vMaterialBits;
- float16_t _m1;
- f16vec3 _m2;
- float16_t _m3;
- f16vec3 _m4;
- float16_t _m5;
- uint _m6;
- f16vec4 _m7;
+ f16vec3 vNormalWs;
+ float16_t flMetalness;
+ f16vec3 vAlbedo;
+ float16_t flRoughness;
+ f16vec3 vEmissive;
+ float16_t flReflectance;
+ uint nMaterialTypeAndFlags;
+ f16vec4 vMaterialBits;
};
struct Payload_t
{
- vec3 material;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- int _m5;
- bool _m6;
- MaterialDataMinimal_t _m7;
+ vec3 vSmoothPositionWs;
+ vec3 vFaceNormalWs;
+ vec3 vInterpolatedNormalWs;
+ float flHitT;
+ float flOpacityRng;
+ int nInstance;
+ bool bFlippedNormal;
+ MaterialDataMinimal_t material;
};
- uint _193;
+ uint _199;
struct PayloadShadow_t
{
@@ -118,459 +130,481 @@ RTX
layout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer
{
- PackedRtxInstanceData_t_natural _m0[];
+ PackedRtxInstanceData_t_natural _member0[];
} g_instanceBuffer;
layout(set = 3, binding = 34, std430) readonly buffer g_MaterialData
{
- float _m0[];
+ float _member0[];
} g_MaterialData_1;
layout(set = 3, binding = 34, std430) readonly buffer g_MaterialData_2
{
- int _m0[];
+ int _member0[];
} g_MaterialData_3;
layout(set = 3, binding = 31, std430) readonly buffer g_Geometries
{
- GeometryInfo_t_natural _m0[];
+ GeometryInfo_t_natural _member0[];
} g_Geometries_1;
layout(set = 3, binding = 33, std430) readonly buffer g_Indices
{
- uint _m0[];
+ uint _member0[];
} g_Indices_1[];
layout(set = 3, binding = 32, std430) readonly buffer g_Vertices
{
- float _m0[];
+ float _member0[];
} g_Vertices_1[];
layout(set = 3, binding = 32, std430) readonly buffer g_Vertices_2
{
- uint _m0[];
+ uint _member0[];
} g_Vertices_3[];
- hitAttributeEXT BuiltInTriangleIntersectionAttributes _20;
- layout(location = 0) rayPayloadInEXT Payload_t _19;
+ hitAttributeEXT BuiltInTriangleIntersectionAttributes attrs;
+ layout(location = 0) rayPayloadInEXT Payload_t payload;
layout(set = 4, binding = 46) uniform texture2D g_bindless_Texture2D[65536];
layout(set = 3, binding = 14) uniform sampler g_Sampler;
void main()
{
- vec3 _211 = vec3(g_MaterialData_1._m0[g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData / 4u], g_MaterialData_1._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 4u) / 4u], g_MaterialData_1._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 8u) / 4u]);
- int _210 = g_MaterialData_3._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 16u) / 4u];
- int _209 = g_MaterialData_3._m0[(g_instanceBuffer._m0[uint(gl_InstanceID)].nMaterialData + 24u) / 4u];
- uvec3 _245;
+ PackedRtxInstanceData_t_natural_logical _260;
+ _260.nSrgbColor = g_instanceBuffer._member0[uint(gl_InstanceID)].nSrgbColor;
+ _260.nTriangleGeometry = g_instanceBuffer._member0[uint(gl_InstanceID)].nTriangleGeometry;
+ _260.nMaterialData = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialData;
+ _260.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialFlags_nInstanceFlags;
+ _260.fEmissiveBoost = g_instanceBuffer._member0[uint(gl_InstanceID)].fEmissiveBoost;
+ _260.nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nInstanceFlags;
+ _260._pad1 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad1;
+ _260._pad2 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad2;
+ uint _218 = _260.nMaterialData;
+ vec3 _221 = vec3(g_MaterialData_1._member0[_218 / 4u], g_MaterialData_1._member0[(_218 + 4u) / 4u], g_MaterialData_1._member0[(_218 + 8u) / 4u]);
+ int _220 = g_MaterialData_3._member0[(_218 + 16u) / 4u];
+ int _219 = g_MaterialData_3._member0[(_218 + 24u) / 4u];
+ uvec3 _253;
do
{
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.w == 4)
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.w == 4)
{
- uint _321 = (12u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);
- _245 = uvec3(g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_321 / 4u], g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[(_321 + 4u) / 4u], g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[(_321 + 8u) / 4u]);
+ uint _333 = (12u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);
+ _253 = uvec3(g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_333 / 4u], g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[(_333 + 4u) / 4u], g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[(_333 + 8u) / 4u]);
break;
}
else
{
- uint _296 = (6u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);
- uint _297 = _296 & 4294967292u;
- uint _298 = _297 / 4u;
- uint _302 = (_297 + 4u) / 4u;
- uint _307 = (g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_298] & 4294901760u) >> uint(16);
- uint _308 = g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_302] & 65535u;
- uvec3 _246;
- if (_296 == _297)
+ uint _306 = (6u * uint(gl_PrimitiveID)) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.w);
+ uint _307 = _306 & 4294967292u;
+ uint _308 = _307 / 4u;
+ uint _312 = (_307 + 4u) / 4u;
+ uint _317 = (g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_308] & 4294901760u) >> uint(16);
+ uint _318 = g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_312] & 65535u;
+ uvec3 _254;
+ if (_306 == _307)
{
- _246 = uvec3(g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_298] & 65535u, _307, _308);
+ _254 = uvec3(g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_308] & 65535u, _317, _318);
}
else
{
- _246 = uvec3(_307, _308, (g_Indices_1[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._m0[_302] & 4294901760u) >> uint(16));
+ _254 = uvec3(_317, _318, (g_Indices_1[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.w]._member0[_312] & 4294901760u) >> uint(16));
}
- _245 = _246;
+ _253 = _254;
break;
}
break;
} while(false);
- uint _336 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.x);
- uvec3 _344 = (uvec3(uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.x)) * _245) + uvec3(uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.x));
- uint _345 = _344.x;
- vec3 _208 = vec3(g_Vertices_1[_336]._m0[_345 / 4u], g_Vertices_1[_336]._m0[(_345 + 4u) / 4u], g_Vertices_1[_336]._m0[(_345 + 8u) / 4u]);
- uint _358 = _344.y;
- vec3 _207 = vec3(g_Vertices_1[_336]._m0[_358 / 4u], g_Vertices_1[_336]._m0[(_358 + 4u) / 4u], g_Vertices_1[_336]._m0[(_358 + 8u) / 4u]);
- uint _371 = _344.z;
- vec3 _206 = vec3(g_Vertices_1[_336]._m0[_371 / 4u], g_Vertices_1[_336]._m0[(_371 + 4u) / 4u], g_Vertices_1[_336]._m0[(_371 + 8u) / 4u]);
- vec3 _203;
- vec3 _204;
- vec3 _205;
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y != 0)
+ uint _59 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers.x);
+ uvec3 _363 = (uvec3(uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes.x)) * _253) + uvec3(uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes.x));
+ uint _364 = _363.x;
+ vec3 _217 = vec3(g_Vertices_1[_59]._member0[_364 / 4u], g_Vertices_1[_59]._member0[(_364 + 4u) / 4u], g_Vertices_1[_59]._member0[(_364 + 8u) / 4u]);
+ uint _377 = _363.y;
+ vec3 _216 = vec3(g_Vertices_1[_59]._member0[_377 / 4u], g_Vertices_1[_59]._member0[(_377 + 4u) / 4u], g_Vertices_1[_59]._member0[(_377 + 8u) / 4u]);
+ uint _390 = _363.z;
+ vec3 _215 = vec3(g_Vertices_1[_59]._member0[_390 / 4u], g_Vertices_1[_59]._member0[(_390 + 4u) / 4u], g_Vertices_1[_59]._member0[(_390 + 8u) / 4u]);
+ vec3 _212;
+ vec3 _213;
+ vec3 _214;
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y != 0)
{
- ivec4 _238 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;
- uint _395 = uint(_238[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z]);
- uint _397 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z);
- ivec4 _236 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;
- ivec4 _237 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;
- uvec3 _408 = (uvec3(uint(_236[_397])) * _245) + uvec3(uint(_237[_397]) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.x));
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 6)
+ ivec4 _246 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;
+ uint _61 = uint(_246[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z]);
+ uint _418 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.z);
+ ivec4 _244 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;
+ ivec4 _245 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;
+ uvec3 _434 = (uvec3(uint(_244[_418])) * _253) + uvec3(uint(_245[_418]) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.x));
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 6)
{
- uint _652 = _408.x;
- _205 = vec3(g_Vertices_1[_395]._m0[_652 / 4u], g_Vertices_1[_395]._m0[(_652 + 4u) / 4u], g_Vertices_1[_395]._m0[(_652 + 8u) / 4u]);
- uint _665 = _408.y;
- _204 = vec3(g_Vertices_1[_395]._m0[_665 / 4u], g_Vertices_1[_395]._m0[(_665 + 4u) / 4u], g_Vertices_1[_395]._m0[(_665 + 8u) / 4u]);
- uint _678 = _408.z;
- _203 = vec3(g_Vertices_1[_395]._m0[_678 / 4u], g_Vertices_1[_395]._m0[(_678 + 4u) / 4u], g_Vertices_1[_395]._m0[(_678 + 8u) / 4u]);
+ uint _675 = _434.x;
+ _214 = vec3(g_Vertices_1[_61]._member0[_675 / 4u], g_Vertices_1[_61]._member0[(_675 + 4u) / 4u], g_Vertices_1[_61]._member0[(_675 + 8u) / 4u]);
+ uint _688 = _434.y;
+ _213 = vec3(g_Vertices_1[_61]._member0[_688 / 4u], g_Vertices_1[_61]._member0[(_688 + 4u) / 4u], g_Vertices_1[_61]._member0[(_688 + 8u) / 4u]);
+ uint _701 = _434.z;
+ _212 = vec3(g_Vertices_1[_61]._member0[_701 / 4u], g_Vertices_1[_61]._member0[(_701 + 4u) / 4u], g_Vertices_1[_61]._member0[(_701 + 8u) / 4u]);
}
else
{
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 17)
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vNormalFieldInfo.y == 17)
{
- uint _525 = _408.x;
- uvec2 _532 = uvec2(g_Vertices_3[_395]._m0[_525 / 4u], _193);
- uint _533 = _408.y;
- uvec2 _199 = uvec2(g_Vertices_3[_395]._m0[_533 / 4u], g_Vertices_3[_395]._m0[(_533 + 4u) / 4u]);
- uint _542 = _408.z;
- uvec2 _198 = uvec2(g_Vertices_3[_395]._m0[_542 / 4u], g_Vertices_3[_395]._m0[(_542 + 4u) / 4u]);
- uint _551 = _532.x;
- vec2 _561 = ((vec2(float((_551) & 65535u), float((_551 >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
- float _562 = _561.x;
- float _567 = (1.0 - abs(_562)) - abs(_561.y);
- vec3 _568 = vec3(_562, _561.y, _567);
- float _570 = saturate(-_567);
- vec2 _576 = _561 + mix(vec2(_570), vec2(-_570), greaterThanEqual(_561, vec2(0.0)));
- _568.x = _576.x;
- _568.y = _576.y;
- vec3 _242 = normalize(_568);
- _205 = _242;
- vec2 _595 = ((vec2(float((_199.x) & 65535u), float((_199.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
- float _596 = _595.x;
- float _601 = (1.0 - abs(_596)) - abs(_595.y);
- vec3 _602 = vec3(_596, _595.y, _601);
- float _604 = saturate(-_601);
- vec2 _610 = _595 + mix(vec2(_604), vec2(-_604), greaterThanEqual(_595, vec2(0.0)));
- _602.x = _610.x;
- _602.y = _610.y;
- vec3 _243 = normalize(_602);
- _204 = _243;
- vec2 _629 = ((vec2(float((_198.x) & 65535u), float((_198.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
- float _630 = _629.x;
- float _635 = (1.0 - abs(_630)) - abs(_629.y);
- vec3 _636 = vec3(_630, _629.y, _635);
- float _638 = saturate(-_635);
- vec2 _644 = _629 + mix(vec2(_638), vec2(-_638), greaterThanEqual(_629, vec2(0.0)));
- _636.x = _644.x;
- _636.y = _644.y;
- vec3 _244 = normalize(_636);
- _203 = _244;
+ uint _551 = _434.x;
+ uvec2 _558 = uvec2(g_Vertices_3[_61]._member0[_551 / 4u], _199);
+ uint _559 = _434.y;
+ uvec2 _205 = uvec2(g_Vertices_3[_61]._member0[_559 / 4u], g_Vertices_3[_61]._member0[(_559 + 4u) / 4u]);
+ uint _568 = _434.z;
+ uvec2 _204 = uvec2(g_Vertices_3[_61]._member0[_568 / 4u], g_Vertices_3[_61]._member0[(_568 + 4u) / 4u]);
+ uint _577 = _558.x;
+ vec2 _586 = ((vec2(float(_577 & 65535u), float((_577 >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
+ float _587 = _586.x;
+ float _592 = (1.0 - abs(_587)) - abs(_586.y);
+ vec3 _593 = vec3(_587, _586.y, _592);
+ float _595 = saturate(-_592);
+ vec2 _601 = _586 + mix(vec2(_595), vec2(-_595), greaterThanEqual(_586, vec2(0.0)));
+ _593.x = _601.x;
+ _593.y = _601.y;
+ vec3 _247 = normalize(_593);
+ _214 = _247;
+ vec2 _619 = ((vec2(float(_205.x & 65535u), float((_205.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
+ float _620 = _619.x;
+ float _625 = (1.0 - abs(_620)) - abs(_619.y);
+ vec3 _626 = vec3(_620, _619.y, _625);
+ float _628 = saturate(-_625);
+ vec2 _634 = _619 + mix(vec2(_628), vec2(-_628), greaterThanEqual(_619, vec2(0.0)));
+ _626.x = _634.x;
+ _626.y = _634.y;
+ vec3 _248 = normalize(_626);
+ _213 = _248;
+ vec2 _652 = ((vec2(float(_204.x & 65535u), float((_204.x >> 16u) & 65535u)) * vec2(1.525902189314365386962890625e-05)) * 2.0) - vec2(1.0);
+ float _653 = _652.x;
+ float _658 = (1.0 - abs(_653)) - abs(_652.y);
+ vec3 _659 = vec3(_653, _652.y, _658);
+ float _661 = saturate(-_658);
+ vec2 _667 = _652 + mix(vec2(_661), vec2(-_661), greaterThanEqual(_652, vec2(0.0)));
+ _659.x = _667.x;
+ _659.y = _667.y;
+ vec3 _249 = normalize(_659);
+ _212 = _249;
}
else
{
- uint _418 = _408.x / 4u;
- float _427 = (float((g_Vertices_3[_395]._m0[_418] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _430 = (float((g_Vertices_3[_395]._m0[_418] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _434 = (1.0 - abs(_427)) - abs(_430);
- vec3 _435 = vec3(_427, _430, _434);
- float _437 = saturate(-_434);
- vec2 _438 = vec2(_427, _430);
- vec2 _444 = _438 + mix(vec2(_437), vec2(-_437), greaterThanEqual(_438, vec2(0.0)));
- _435.x = _444.x;
- _435.y = _444.y;
- vec3 _239 = normalize(_435);
- _205 = _239;
- uint _454 = _408.y / 4u;
- float _463 = (float((g_Vertices_3[_395]._m0[_454] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _466 = (float((g_Vertices_3[_395]._m0[_454] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _470 = (1.0 - abs(_463)) - abs(_466);
- vec3 _471 = vec3(_463, _466, _470);
- float _473 = saturate(-_470);
- vec2 _474 = vec2(_463, _466);
- vec2 _480 = _474 + mix(vec2(_473), vec2(-_473), greaterThanEqual(_474, vec2(0.0)));
- _471.x = _480.x;
- _471.y = _480.y;
- vec3 _240 = normalize(_471);
- _204 = _240;
- uint _490 = _408.z / 4u;
- float _499 = (float((g_Vertices_3[_395]._m0[_490] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _502 = (float((g_Vertices_3[_395]._m0[_490] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
- float _506 = (1.0 - abs(_499)) - abs(_502);
- vec3 _507 = vec3(_499, _502, _506);
- float _509 = saturate(-_506);
- vec2 _510 = vec2(_499, _502);
- vec2 _516 = _510 + mix(vec2(_509), vec2(-_509), greaterThanEqual(_510, vec2(0.0)));
- _507.x = _516.x;
- _507.y = _516.y;
- vec3 _241 = normalize(_507);
- _203 = _241;
+ uint _444 = _434.x / 4u;
+ float _453 = (float((g_Vertices_3[_61]._member0[_444] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _456 = (float((g_Vertices_3[_61]._member0[_444] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _460 = (1.0 - abs(_453)) - abs(_456);
+ vec3 _461 = vec3(_453, _456, _460);
+ float _463 = saturate(-_460);
+ vec2 _464 = vec2(_453, _456);
+ vec2 _470 = _464 + mix(vec2(_463), vec2(-_463), greaterThanEqual(_464, vec2(0.0)));
+ _461.x = _470.x;
+ _461.y = _470.y;
+ vec3 _250 = normalize(_461);
+ _214 = _250;
+ uint _480 = _434.y / 4u;
+ float _489 = (float((g_Vertices_3[_61]._member0[_480] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _492 = (float((g_Vertices_3[_61]._member0[_480] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _496 = (1.0 - abs(_489)) - abs(_492);
+ vec3 _497 = vec3(_489, _492, _496);
+ float _499 = saturate(-_496);
+ vec2 _500 = vec2(_489, _492);
+ vec2 _506 = _500 + mix(vec2(_499), vec2(-_499), greaterThanEqual(_500, vec2(0.0)));
+ _497.x = _506.x;
+ _497.y = _506.y;
+ vec3 _251 = normalize(_497);
+ _213 = _251;
+ uint _516 = _434.z / 4u;
+ float _525 = (float((g_Vertices_3[_61]._member0[_516] >> 12u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _528 = (float((g_Vertices_3[_61]._member0[_516] >> 22u) & 1023u) * 0.00195503421127796173095703125) - 1.0;
+ float _532 = (1.0 - abs(_525)) - abs(_528);
+ vec3 _533 = vec3(_525, _528, _532);
+ float _535 = saturate(-_532);
+ vec2 _536 = vec2(_525, _528);
+ vec2 _542 = _536 + mix(vec2(_535), vec2(-_535), greaterThanEqual(_536, vec2(0.0)));
+ _533.x = _542.x;
+ _533.y = _542.y;
+ vec3 _252 = normalize(_533);
+ _212 = _252;
}
}
}
else
{
- _205 = vec3(0.0);
- _204 = vec3(0.0);
- _203 = vec3(0.0);
+ _214 = vec3(0.0);
+ _213 = vec3(0.0);
+ _212 = vec3(0.0);
}
- vec2 _202 = vec2(0.0);
- vec2 _201 = vec2(0.0);
- vec2 _200 = vec2(0.0);
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y != 0)
+ vec2 _211 = vec2(0.0);
+ vec2 _210 = vec2(0.0);
+ vec2 _209 = vec2(0.0);
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y != 0)
{
- ivec4 _235 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;
- uint _703 = uint(_235[g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z]);
- uint _705 = uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z);
- ivec4 _233 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;
- ivec4 _234 = g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;
- uvec3 _716 = (uvec3(uint(_233[_705])) * _245) + uvec3(uint(_234[_705]) + uint(g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].x));
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 16)
+ ivec4 _243 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nVertexAndIndexBuffers;
+ uint _65 = uint(_243[g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z]);
+ uint _730 = uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].z);
+ ivec4 _241 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferStrideInBytes;
+ ivec4 _242 = g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_nBufferBindOffsetBytes;
+ uvec3 _746 = (uvec3(uint(_241[_730])) * _253) + uvec3(uint(_242[_730]) + uint(g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].x));
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 16)
{
- uint _851 = _716.x;
- _202 = vec2(g_Vertices_1[_703]._m0[_851 / 4u], g_Vertices_1[_703]._m0[(_851 + 4u) / 4u]);
- uint _860 = _716.y;
- _201 = vec2(g_Vertices_1[_703]._m0[_860 / 4u], g_Vertices_1[_703]._m0[(_860 + 4u) / 4u]);
- uint _869 = _716.z;
- _200 = vec2(g_Vertices_1[_703]._m0[_869 / 4u], g_Vertices_1[_703]._m0[(_869 + 4u) / 4u]);
+ uint _878 = _746.x;
+ _211 = vec2(g_Vertices_1[_65]._member0[_878 / 4u], g_Vertices_1[_65]._member0[(_878 + 4u) / 4u]);
+ uint _887 = _746.y;
+ _210 = vec2(g_Vertices_1[_65]._member0[_887 / 4u], g_Vertices_1[_65]._member0[(_887 + 4u) / 4u]);
+ uint _896 = _746.z;
+ _209 = vec2(g_Vertices_1[_65]._member0[_896 / 4u], g_Vertices_1[_65]._member0[(_896 + 4u) / 4u]);
}
else
{
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 34)
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 34)
{
- uint _822 = _716.x / 4u;
- _202 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_822], g_Vertices_3[_703]._m0[_822] >> uint(16)) & uvec2(65535u))));
- uint _832 = _716.y / 4u;
- _201 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_832], g_Vertices_3[_703]._m0[_832] >> uint(16)) & uvec2(65535u))));
- uint _842 = _716.z / 4u;
- _200 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_703]._m0[_842], g_Vertices_3[_703]._m0[_842] >> uint(16)) & uvec2(65535u))));
+ uint _849 = _746.x / 4u;
+ _211 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_849], g_Vertices_3[_65]._member0[_849] >> uint(16)) & uvec2(65535u))));
+ uint _859 = _746.y / 4u;
+ _210 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_859], g_Vertices_3[_65]._member0[_859] >> uint(16)) & uvec2(65535u))));
+ uint _869 = _746.z / 4u;
+ _209 = vec2(uint16BitsToFloat16(u16vec2(uvec2(g_Vertices_3[_65]._member0[_869], g_Vertices_3[_65]._member0[_869] >> uint(16)) & uvec2(65535u))));
}
else
{
- if (g_Geometries_1._m0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 37)
+ if (g_Geometries_1._member0[uint(gl_InstanceCustomIndexEXT)].m_vTexCoordFieldInfo.data[0].y == 37)
{
- uint _729 = _716.x / 4u;
- uint _733 = (g_Vertices_3[_703]._m0[_729] & 65535u);
- int _232;
- if (_733 > 32767u)
+ uint _759 = _746.x / 4u;
+ uint _762 = g_Vertices_3[_65]._member0[_759] & 65535u;
+ int _240;
+ if (_762 > 32767u)
{
- _232 = int(4294901760u | _733);
+ _240 = int(4294901760u | _762);
}
else
{
- _232 = int(_733);
+ _240 = int(_762);
}
- uint _746 = (g_Vertices_3[_703]._m0[_729] & 4294901760u) >> uint(16);
- int _231;
- if (_746 > 32767u)
+ uint _775 = (g_Vertices_3[_65]._member0[_759] & 4294901760u) >> uint(16);
+ int _239;
+ if (_775 > 32767u)
{
- _231 = int(4294901760u | _746);
+ _239 = int(4294901760u | _775);
}
else
{
- _231 = int(_746);
+ _239 = int(_775);
}
- _202 = vec2(max(float(_232) * 3.0518509447574615478515625e-05, -1.0), max(float(_231) * 3.0518509447574615478515625e-05, -1.0));
- uint _760 = _716.y / 4u;
- uint _764 = (g_Vertices_3[_703]._m0[_760] & 65535u);
- int _230;
- if (_764 > 32767u)
+ _211 = vec2(max(float(_240) * 3.0518509447574615478515625e-05, -1.0), max(float(_239) * 3.0518509447574615478515625e-05, -1.0));
+ uint _789 = _746.y / 4u;
+ uint _792 = g_Vertices_3[_65]._member0[_789] & 65535u;
+ int _238;
+ if (_792 > 32767u)
{
- _230 = int(4294901760u | _764);
+ _238 = int(4294901760u | _792);
}
else
{
- _230 = int(_764);
+ _238 = int(_792);
}
- uint _777 = (g_Vertices_3[_703]._m0[_760] & 4294901760u) >> uint(16);
- int _229;
- if (_777 > 32767u)
+ uint _805 = (g_Vertices_3[_65]._member0[_789] & 4294901760u) >> uint(16);
+ int _237;
+ if (_805 > 32767u)
{
- _229 = int(4294901760u | _777);
+ _237 = int(4294901760u | _805);
}
else
{
- _229 = int(_777);
+ _237 = int(_805);
}
- _201 = vec2(max(float(_230) * 3.0518509447574615478515625e-05, -1.0), max(float(_229) * 3.0518509447574615478515625e-05, -1.0));
- uint _791 = _716.z / 4u;
- uint _795 = (g_Vertices_3[_703]._m0[_791] & 65535u);
- int _228;
- if (_795 > 32767u)
+ _210 = vec2(max(float(_238) * 3.0518509447574615478515625e-05, -1.0), max(float(_237) * 3.0518509447574615478515625e-05, -1.0));
+ uint _819 = _746.z / 4u;
+ uint _822 = g_Vertices_3[_65]._member0[_819] & 65535u;
+ int _236;
+ if (_822 > 32767u)
{
- _228 = int(4294901760u | _795);
+ _236 = int(4294901760u | _822);
}
else
{
- _228 = int(_795);
+ _236 = int(_822);
}
- uint _808 = (g_Vertices_3[_703]._m0[_791] & 4294901760u) >> uint(16);
- int _227;
- if (_808 > 32767u)
+ uint _835 = (g_Vertices_3[_65]._member0[_819] & 4294901760u) >> uint(16);
+ int _235;
+ if (_835 > 32767u)
{
- _227 = int(4294901760u | _808);
+ _235 = int(4294901760u | _835);
}
else
{
- _227 = int(_808);
+ _235 = int(_835);
}
- _200 = vec2(max(float(_228) * 3.0518509447574615478515625e-05, -1.0), max(float(_227) * 3.0518509447574615478515625e-05, -1.0));
+ _209 = vec2(max(float(_236) * 3.0518509447574615478515625e-05, -1.0), max(float(_235) * 3.0518509447574615478515625e-05, -1.0));
}
}
}
}
- vec4 _905 = vec4(uvec4((g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 255u), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 65280u) >> uint(8), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 16711680u) >> uint(16), (g_instanceBuffer._m0[uint(gl_InstanceID)].nSrgbColor & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
- vec4 _226 = _905;
- vec3 _906 = _905.xyz;
- vec3 _907 = _906 * vec3(0.077399380505084991455078125);
- vec3 _910 = pow((_906 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));
- float _223;
- if (_905.x <= 0.040449999272823333740234375)
+ PackedRtxInstanceData_t_natural_logical _922;
+ _922.nSrgbColor = g_instanceBuffer._member0[uint(gl_InstanceID)].nSrgbColor;
+ _922.nTriangleGeometry = g_instanceBuffer._member0[uint(gl_InstanceID)].nTriangleGeometry;
+ _922.nMaterialData = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialData;
+ _922.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nMaterialFlags_nInstanceFlags;
+ _922.fEmissiveBoost = g_instanceBuffer._member0[uint(gl_InstanceID)].fEmissiveBoost;
+ _922.nInstanceFlags = g_instanceBuffer._member0[uint(gl_InstanceID)].nInstanceFlags;
+ _922._pad1 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad1;
+ _922._pad2 = g_instanceBuffer._member0[uint(gl_InstanceID)]._pad2;
+ vec4 _933 = vec4(uvec4(_922.nSrgbColor & 255u, (_922.nSrgbColor & 65280u) >> uint(8), (_922.nSrgbColor & 16711680u) >> uint(16), (_922.nSrgbColor & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
+ vec4 _234 = _933;
+ vec3 _934 = _933.xyz;
+ vec3 _935 = _934 * vec3(0.077399380505084991455078125);
+ vec3 _938 = pow((_934 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));
+ float _231;
+ if (_933.x <= 0.040449999272823333740234375)
{
- _223 = _907.x;
+ _231 = _935.x;
}
else
{
- _223 = _910.x;
+ _231 = _938.x;
}
- float _224;
- if (_905.y <= 0.040449999272823333740234375)
+ float _232;
+ if (_933.y <= 0.040449999272823333740234375)
{
- _224 = _907.y;
+ _232 = _935.y;
}
else
{
- _224 = _910.y;
+ _232 = _938.y;
}
- float _225;
- if (_905.z <= 0.040449999272823333740234375)
+ float _233;
+ if (_933.z <= 0.040449999272823333740234375)
{
- _225 = _907.z;
+ _233 = _935.z;
}
else
{
- _225 = _910.z;
+ _233 = _938.z;
}
- vec3 _935 = vec3(_223, _224, _225);
- vec4 _937 = _226;
- _937.x = _935.x;
- _937.y = _935.y;
- _937.z = _935.z;
- _226 = _937;
- f16vec3 _944 = f16vec3(vec3(0.0));
- _19._m7 = MaterialDataMinimal_t(_944, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _944, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0)));
- _19._m3 = gl_RayTmaxEXT;
- vec3 _222;
+ vec3 _963 = vec3(_231, _232, _233);
+ vec4 _965 = _234;
+ _965.x = _963.x;
+ _965.y = _963.y;
+ _965.z = _963.z;
+ _234 = _965;
+ f16vec3 _972 = f16vec3(vec3(0.0));
+ payload.material = MaterialDataMinimal_t(_972, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _972, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0)));
+ payload.flHitT = gl_RayTmaxEXT;
+ vec3 _208 = _214;
+ vec3 _207 = _213;
+ vec3 _206 = _212;
+ vec3 _230;
do
{
- vec3 _964 = ((_205 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_204 * _20.barycentrics.x)) + (_203 * _20.barycentrics.y);
- if (all(equal(_964, vec3(0.0))))
+ vec3 _996 = ((_208 * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_207 * attrs.barycentrics.x)) + (_206 * attrs.barycentrics.y);
+ if (all(equal(_996, vec3(0.0))))
{
- _222 = vec3(0.0);
+ _230 = vec3(0.0);
break;
}
- mat3x4 _970 = transpose(gl_WorldToObjectEXT);
- mat3 _221;
- mat3 _973 = _221;
- _973[0] = _970[0].xyz;
- _973[1] = _970[1].xyz;
- _973[2] = _970[2].xyz;
- _221 = _973;
- _222 = normalize(_973 * _964);
+ mat3x4 _1002 = transpose(gl_WorldToObjectEXT);
+ mat3 _229;
+ mat3 _1005 = _229;
+ _1005[0] = _1002[0].xyz;
+ _1005[1] = _1002[1].xyz;
+ _1005[2] = _1002[2].xyz;
+ _229 = _1005;
+ _230 = normalize(_1005 * _996);
break;
} while(false);
- f16vec3 _984 = f16vec3(_222);
- _19._m7.vMaterialBits = _984;
- _19._m2 = vec3(_984);
- mat3x4 _995 = transpose(gl_WorldToObjectEXT);
- mat3 _220;
- mat3 _998 = _220;
- _998[0] = _995[0].xyz;
- _998[1] = _995[1].xyz;
- _998[2] = _995[2].xyz;
- _220 = _998;
- _19._m1 = normalize(_998 * cross(_207 - _208, _206 - _208));
- if ((_209 & 1) != 0)
+ f16vec3 _1016 = f16vec3(_230);
+ payload.material.vNormalWs = _1016;
+ payload.vInterpolatedNormalWs = vec3(_1016);
+ mat3x4 _1027 = transpose(gl_WorldToObjectEXT);
+ mat3 _228;
+ mat3 _1030 = _228;
+ _1030[0] = _1027[0].xyz;
+ _1030[1] = _1027[1].xyz;
+ _1030[2] = _1027[2].xyz;
+ _228 = _1030;
+ payload.vFaceNormalWs = normalize(_1030 * cross(_216 - _217, _215 - _217));
+ if ((_219 & 1) != 0)
{
if (gl_HitKindEXT == 255u)
{
- _19._m1 = -_19._m1;
- _19._m2 = -_19._m2;
- _19._m7.vMaterialBits = -_19._m7.vMaterialBits;
- _19._m6 = true;
+ payload.vFaceNormalWs = -payload.vFaceNormalWs;
+ payload.vInterpolatedNormalWs = -payload.vInterpolatedNormalWs;
+ payload.material.vNormalWs = -payload.material.vNormalWs;
+ payload.bFlippedNormal = true;
}
}
- vec3 _1036 = normalize(cross(_207 - _208, _206 - _208));
- vec3 _212[3] = vec3[](_205, _204, _203);
- vec3 _213[3] = vec3[](_208, _207, _206);
- vec3 _1045 = ((_208 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_207 * _20.barycentrics.x)) + (_206 * _20.barycentrics.y);
- vec3 _214[3];
- _214[0] = _1045 - (_205 * dot(_1045 - _208, _205));
- _214[1] = _1045 - (_204 * dot(_1045 - _207, _204));
- _214[2] = _1045 - (_203 * dot(_1045 - _206, _203));
- vec3 _1073 = ((_214[0] * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_214[1] * _20.barycentrics.x)) + (_214[2] * _20.barycentrics.y);
- vec3 _215[3];
- _215[0] = cross(_208 - _207, _1036);
- _215[1] = cross(_207 - _206, _1036);
- _215[2] = cross(_206 - _208, _1036);
- float _216 = dot(_1073 - _1045, _1036);
- vec3 _217 = _1073;
- int _218 = 0;
+ vec3 _1068 = normalize(cross(_216 - _217, _215 - _217));
+ vec3 _255[3] = vec3[](_217, _216, _215);
+ vec3 _256[3] = vec3[](_214, _213, _212);
+ vec3 _1084 = ((_255[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_255[1] * attrs.barycentrics.x)) + (_255[2] * attrs.barycentrics.y);
+ vec3 _222[3];
+ _222[0] = _1084 - (_256[0] * dot(_1084 - _255[0], _256[0]));
+ _222[1] = _1084 - (_256[1] * dot(_1084 - _255[1], _256[1]));
+ _222[2] = _1084 - (_256[2] * dot(_1084 - _255[2], _256[2]));
+ vec3 _1124 = ((_222[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_222[1] * attrs.barycentrics.x)) + (_222[2] * attrs.barycentrics.y);
+ vec3 _223[3];
+ _223[0] = cross(_255[0] - _255[1], _1068);
+ _223[1] = cross(_255[1] - _255[2], _1068);
+ _223[2] = cross(_255[2] - _255[0], _1068);
+ float _224 = dot(_1124 - _1084, _1068);
+ vec3 _225 = _1124;
+ int _226 = 0;
for (;;)
{
- bool _1089_ladder_break = false;
+ bool _1140_ladder_break = false;
do
{
- if (!(_218 < 3))
+ if (!(_226 < 3))
{
- _1089_ladder_break = true;
+ _1140_ladder_break = true;
break;
}
- if (_216 > 0.00999999977648258209228515625)
+ if (_224 > 0.00999999977648258209228515625)
{
- _1089_ladder_break = true;
+ _1140_ladder_break = true;
break;
}
- if (dot(_215[_218], _215[_218]) == 0.0)
+ if (dot(_223[_226], _223[_226]) == 0.0)
{
break;
}
- _215[_218] = normalize(_215[_218]);
- int _219 = 0;
+ _223[_226] = normalize(_223[_226]);
+ int _227 = 0;
for (;;)
{
- if (!(_219 < 3))
+ if (!(_227 < 3))
{
break;
}
- vec3 _1127 = _212[_219] - (_215[_218] * dot(_215[_218], _212[_219]));
- _214[_219] = _1045 - (_1127 * dot(_1045 - _213[_219], _1127));
- _219++;
+ vec3 _1178 = _256[_227] - (_223[_226] * dot(_223[_226], _256[_227]));
+ _222[_227] = _1084 - (_1178 * dot(_1084 - _255[_227], _1178));
+ _227++;
continue;
}
- vec3 _1151 = ((_214[0] * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_214[1] * _20.barycentrics.x)) + (_214[2] * _20.barycentrics.y);
- _216 = dot(_1151 - _1045, _1036);
- _217 = _1151;
+ vec3 _1202 = ((_222[0] * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_222[1] * attrs.barycentrics.x)) + (_222[2] * attrs.barycentrics.y);
+ _224 = dot(_1202 - _1084, _1068);
+ _225 = _1202;
break;
} while(false);
- if (_1089_ladder_break)
+ if (_1140_ladder_break)
{
break;
}
- _218++;
+ _226++;
continue;
}
- if (!(_216 > 0.00999999977648258209228515625))
+ if (!(_224 > 0.00999999977648258209228515625))
{
- _217 = vec3(3.4028234663852885981170418348452e+38);
+ _225 = vec3(3.4028234663852885981170418348452e+38);
}
- _19.material = _217;
- if (any(notEqual(_217, vec3(3.4028234663852885981170418348452e+38))))
+ payload.vSmoothPositionWs = _225;
+ if (any(notEqual(_225, vec3(3.4028234663852885981170418348452e+38))))
{
- _19.material = gl_ObjectToWorldEXT * vec4(_19.material.xyz, 1.0);
+ payload.vSmoothPositionWs = gl_ObjectToWorldEXT * vec4(payload.vSmoothPositionWs.xyz, 1.0);
}
- _19._m7._m2 = f16vec3(_211);
- if (_210 >= 0)
+ payload.material.vAlbedo = f16vec3(_221);
+ if (_220 >= 0)
{
- _19._m7._m2 = f16vec3(textureLod(sampler2D(g_bindless_Texture2D[uint(_210)], g_Sampler), ((_202 * ((1.0 - _20.barycentrics.x) - _20.barycentrics.y)) + (_201 * _20.barycentrics.x)) + (_200 * _20.barycentrics.y), 0.0).xyz);
+ payload.material.vAlbedo = f16vec3(textureLod(sampler2D(g_bindless_Texture2D[uint(_220)], g_Sampler), ((_211 * ((1.0 - attrs.barycentrics.x) - attrs.barycentrics.y)) + (_210 * attrs.barycentrics.x)) + (_209 * attrs.barycentrics.y), 0.0).xyz);
}
- _19._m7._m2 *= f16vec3(_937.xyz);
- _19._m5 = int(uint(gl_InstanceID));
+ payload.material.vAlbedo *= f16vec3(_965.xyz);
+ payload.nInstance = int(uint(gl_InstanceID));
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_generate_scrambled_halton_samples.slang
modified • +5555 / -5555 • changes: 11110
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_vulkan_dir/shaders/vfx/rtx_pathtracer.slang
modified • +174 / -173 • changes: 347
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: rtx
}
@@ -39,11 +39,11 @@ RTX
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL: 5319
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (16572 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (15900 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_AMD_gpu_shader_half_float)
@@ -59,36 +59,31 @@ RTX
struct MaterialDataMinimal_t
{
- f16vec3 vMaterialBits;
- float16_t _m1;
- f16vec3 _m2;
- float16_t _m3;
- f16vec3 _m4;
- float16_t _m5;
- uint _m6;
- f16vec4 _m7;
+ f16vec3 vNormalWs;
+ float16_t flMetalness;
+ f16vec3 vAlbedo;
+ float16_t flRoughness;
+ f16vec3 vEmissive;
+ float16_t flReflectance;
+ uint nMaterialTypeAndFlags;
+ f16vec4 vMaterialBits;
};
struct Payload_t
{
- vec3 material;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- int _m5;
- bool _m6;
- MaterialDataMinimal_t _m7;
+ vec3 vSmoothPositionWs;
+ vec3 vFaceNormalWs;
+ vec3 vInterpolatedNormalWs;
+ float flHitT;
+ float flOpacityRng;
+ int nInstance;
+ bool bFlippedNormal;
+ MaterialDataMinimal_t material;
};
- struct _MatrixStorage_float4x4_ColMajornatural
- {
- vec4 data[4];
- };
-
- struct _MatrixStorage_float4x3_ColMajornatural
+ struct PayloadShadow_t
{
- vec4 data[3];
+ float m_flVisibility;
};
struct SceneGlobalInfoGPU_t_natural
@@ -99,27 +94,22 @@ RTX
vec4 m_vLocalLightMinBounds;
vec4 m_vLocalLightMaxBounds;
ivec4 m_vLightBinCellCount_nLightCount;
- _MatrixStorage_float4x3_ColMajornatural m_mIBLTransformI;
+ mat4x3 m_mIBLTransformI;
vec4 m_vIBLCubeMapScale;
ivec4 m_vIBLParams;
ivec4 m_vBrdfLUTs;
};
- struct PayloadShadow_t
- {
- float m_flVisibility;
- };
-
- vec4 _134;
+ vec4 _129;
layout(set = 3, binding = 37, std430) readonly buffer StructuredBuffer
{
- SceneGlobalInfoGPU_t_natural _m0[];
+ layout(row_major) SceneGlobalInfoGPU_t_natural _member0[];
} g_SceneGlobalInfo;
layout(push_constant, std430) uniform PathTracePushConstants_t_natural
{
- _MatrixStorage_float4x4_ColMajornatural m_mInvViewProj;
+ layout(row_major) mat4 m_mInvViewProj;
vec4 m_vCameraOrigin;
vec4 m_vRandomOffsets;
uint m_nSamplerDimensionCount;
@@ -132,22 +122,22 @@ RTX
layout(set = 6, binding = 161) uniform readonly image3D g_RandomSamples;
layout(location = 0) rayPayloadEXT Payload_t p;
layout(set = 3, binding = 30) uniform accelerationStructureEXT g_AccelStruct;
+ layout(location = 1) rayPayloadEXT PayloadShadow_t p_1;
layout(set = 4, binding = 46) uniform textureCube g_bindless_TextureCube[65536];
layout(set = 3, binding = 14) uniform sampler g_Sampler;
- layout(location = 1) rayPayloadEXT PayloadShadow_t p_1;
layout(set = 6, binding = 159) uniform image2D g_VarianceImage;
void main()
{
- vec2 _220 = (((vec2(gl_LaunchIDEXT.xy) + PathTracePushConstants.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);
- _220.y = -_220.y;
- vec4 _226 = mat4(vec4(PathTracePushConstants.m_mInvViewProj.data[0].x, PathTracePushConstants.m_mInvViewProj.data[1].x, PathTracePushConstants.m_mInvViewProj.data[2].x, PathTracePushConstants.m_mInvViewProj.data[3].x), vec4(PathTracePushConstants.m_mInvViewProj.data[0].y, PathTracePushConstants.m_mInvViewProj.data[1].y, PathTracePushConstants.m_mInvViewProj.data[2].y, PathTracePushConstants.m_mInvViewProj.data[3].y), vec4(PathTracePushConstants.m_mInvViewProj.data[0].z, PathTracePushConstants.m_mInvViewProj.data[1].z, PathTracePushConstants.m_mInvViewProj.data[2].z, PathTracePushConstants.m_mInvViewProj.data[3].z), vec4(PathTracePushConstants.m_mInvViewProj.data[0].w, PathTracePushConstants.m_mInvViewProj.data[1].w, PathTracePushConstants.m_mInvViewProj.data[2].w, PathTracePushConstants.m_mInvViewProj.data[3].w)) * vec4(_220.xy, 0.0, 1.0);
- vec3 _230 = _226.xyz / vec3(_226.w);
- vec4 _232;
- _232.x = _230.x;
- _232.y = _230.y;
- _232.z = _230.z;
- vec3 _241 = normalize(_232.xyz - PathTracePushConstants.m_vCameraOrigin.xyz);
+ vec2 _200 = (((vec2(gl_LaunchIDEXT.xy) + PathTracePushConstants.m_vRandomOffsets.xy) / vec2(gl_LaunchSizeEXT.xy)) * 2.0) - vec2(1.0);
+ _200.y = -_200.y;
+ vec4 _206 = PathTracePushConstants.m_mInvViewProj * vec4(_200.xy, 0.0, 1.0);
+ vec3 _210 = _206.xyz / vec3(_206.w);
+ vec4 _212;
+ _212.x = _210.x;
+ _212.y = _210.y;
+ _212.z = _210.z;
+ vec3 _221 = normalize(_212.xyz - PathTracePushConstants.m_vCameraOrigin.xyz);
int nSampleCount = int(PathTracePushConstants.m_nSampleCount);
vec4 vCurrentSample;
if (nSampleCount > 0)
@@ -158,95 +148,101 @@ RTX
{
vCurrentSample = vec4(0.0);
}
- uvec3 _258 = uvec3(imageSize(g_RandomSamples));
- ivec3 _176;
- ivec3 _261 = _176;
- _261.x = int(_258.x);
- _261.y = int(_258.y);
- _261.z = int(_258.z);
- _176 = _261;
- ivec2 _270 = ivec2(gl_LaunchIDEXT.xy) - _261.xy * (ivec2(gl_LaunchIDEXT.xy) / _261.xy);
- f16vec3 _279 = f16vec3(vec3(0.0));
- vec3 _155;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _155, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_270.xy, 1)))).xy.y, -1, false, MaterialDataMinimal_t(_279, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _279, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PathTracePushConstants.m_vCameraOrigin.xyz, 0.0, _241, 56755.83984375, 0);
- vec3 _154 = p.material;
- vec3 _153 = p._m1;
- float _152 = p._m3;
- f16vec3 _143 = p._m7.vMaterialBits;
- float16_t _142 = p._m7._m1;
- f16vec3 _141 = p._m7._m2;
- float16_t _140 = p._m7._m3;
- f16vec3 _139 = p._m7._m4;
- float16_t _138 = p._m7._m5;
- uint _137 = p._m7._m6;
- f16vec4 _136 = p._m7._m7;
+ uvec3 _238 = uvec3(imageSize(g_RandomSamples));
+ ivec3 _182;
+ ivec3 _241 = _182;
+ _241.x = int(_238.x);
+ _241.y = int(_238.y);
+ _241.z = int(_238.z);
+ _182 = _241;
+ ivec2 _250 = ivec2(gl_LaunchIDEXT.xy) - _241.xy * (ivec2(gl_LaunchIDEXT.xy) / _241.xy);
+ f16vec3 _257 = f16vec3(vec3(0.0));
+ vec3 _158;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _158, 3.4028234663852885981170418348452e+38, imageLoad(g_RandomSamples, ivec3(_250.xy, 1)).xy.y, -1, false, MaterialDataMinimal_t(_257, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _257, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 16u, 1u, 0u, 2u, 0u, PathTracePushConstants.m_vCameraOrigin.xyz, 0.0, _221, 56755.83984375, 0);
+ vec3 _157 = p.vSmoothPositionWs;
+ vec3 _156 = p.vFaceNormalWs;
+ float _155 = p.flHitT;
+ f16vec3 _138 = p.material.vNormalWs;
+ float16_t _137 = p.material.flMetalness;
+ f16vec3 _136 = p.material.vAlbedo;
+ float16_t _135 = p.material.flRoughness;
+ f16vec3 _134 = p.material.vEmissive;
+ float16_t _133 = p.material.flReflectance;
+ uint _132 = p.material.nMaterialTypeAndFlags;
+ f16vec4 _131 = p.material.vMaterialBits;
vec3 vNewSample;
- if (p._m5 != (-1))
+ if (p.nInstance != (-1))
{
+ vec3 _154 = PathTracePushConstants.m_vCameraOrigin.xyz;
+ vec3 _153 = _221;
do
{
- vec3 _157 = (PathTracePushConstants.m_vCameraOrigin.xyz + (_241 * _152)) + (_153 * ((abs(PathTracePushConstants.m_vCameraOrigin.xyz) + vec3(abs(_152))) * 9.9999997473787516355514526367188e-05));
- vec3 _156 = _153;
- bool _169;
+ vec3 _161 = _157;
+ vec3 _160 = _156;
+ float _159 = _155;
+ f16vec3 _147 = _138;
+ vec3 _163 = (_154 + (_153 * _159)) + (_160 * ((abs(_154) + vec3(abs(_159))) * 9.9999997473787516355514526367188e-05));
+ vec3 _162 = _160;
+ bool _181;
if (false)
{
- _169 = any(notEqual(_154, vec3(3.4028234663852885981170418348452e+38)));
+ _181 = any(notEqual(_161, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _169 = false;
+ _181 = false;
}
- vec3 _477 = _154 - _157;
- float _478 = length(_477);
- vec3 _160 = _157;
- float _159 = 0.0;
- vec3 _158 = vec4(_477 / vec3(_478), _478).xyz;
- float _168;
- if (_169)
+ vec3 _316 = _161 - _163;
+ float _317 = length(_316);
+ vec3 _166 = _163;
+ float _165 = 0.0;
+ vec3 _164 = vec4(_316 / vec3(_317), _317).xyz;
+ float _180;
+ if (_181)
{
- _168 = _478;
+ _180 = _317;
}
else
{
- _168 = 0.0;
+ _180 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _160, _159, _158, _168, 1);
- if (_169)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _166, _165, _164, _180, 1);
+ if (_181)
{
- _168 = p_1.m_flVisibility;
+ _180 = p_1.m_flVisibility;
}
else
{
- _168 = 0.0;
+ _180 = 0.0;
}
- if (_168 == 1.0)
+ if (_180 == 1.0)
{
- _157 = _154;
- _156 = vec3(_143);
+ _163 = _161;
+ _162 = vec3(_147);
}
- vec3 _161;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _161, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_143, _142, _141, _140, _139, _138, _137, _136));
- traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _157 - ((_156 * 0.5) * 0.5), 0.0, _156, 0.5, 0);
- f16vec3 _151 = p._m7.vMaterialBits;
- float16_t _150 = p._m7._m1;
- f16vec3 _149 = p._m7._m2;
- float16_t _148 = p._m7._m3;
- f16vec3 _147 = p._m7._m4;
- float16_t _146 = p._m7._m5;
- uint _145 = p._m7._m6;
- f16vec4 _144 = p._m7._m7;
- if (p._m5 != (-1))
+ vec3 _167;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _167, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_138, _137, _136, _135, _134, _133, _132, _131));
+ traceRayEXT(g_AccelStruct, 32u, 32u, 0u, 2u, 0u, _163 - ((_162 * 0.5) * 0.5), 0.0, _162, 0.5, 0);
+ f16vec3 _146 = p.material.vNormalWs;
+ float16_t _145 = p.material.flMetalness;
+ f16vec3 _144 = p.material.vAlbedo;
+ float16_t _143 = p.material.flRoughness;
+ f16vec3 _142 = p.material.vEmissive;
+ float16_t _141 = p.material.flReflectance;
+ uint _140 = p.material.nMaterialTypeAndFlags;
+ f16vec4 _139 = p.material.vMaterialBits;
+ if (p.nInstance != (-1))
{
- _143 = _151;
- _142 = _150;
- _141 = _149;
- _140 = _148;
- _139 = _147;
_138 = _146;
_137 = _145;
_136 = _144;
+ _135 = _143;
+ _134 = _142;
+ _133 = _141;
+ _132 = _140;
+ _131 = _139;
break;
}
else
@@ -255,47 +251,52 @@ RTX
}
break;
} while(false);
- vec3 _162 = (PathTracePushConstants.m_vCameraOrigin.xyz + (_241 * _152)) + (_153 * ((abs(PathTracePushConstants.m_vCameraOrigin.xyz) + vec3(abs(_152))) * 9.9999997473787516355514526367188e-05));
- bool _167;
+ vec3 _152 = PathTracePushConstants.m_vCameraOrigin.xyz;
+ vec3 _151 = _221;
+ vec3 _150 = _157;
+ vec3 _149 = _156;
+ float _148 = _155;
+ vec3 _168 = (_152 + (_151 * _148)) + (_149 * ((abs(_152) + vec3(abs(_148))) * 9.9999997473787516355514526367188e-05));
+ bool _179;
if (true)
{
- _167 = any(notEqual(_154, vec3(3.4028234663852885981170418348452e+38)));
+ _179 = any(notEqual(_150, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _167 = false;
+ _179 = false;
}
- vec3 _567 = _154 - _162;
- float _568 = length(_567);
- vec3 _165 = _162;
- float _164 = 0.0;
- vec3 _163 = vec4(_567 / vec3(_568), _568).xyz;
- float _166;
- if (_167)
+ vec3 _413 = _150 - _168;
+ float _414 = length(_413);
+ vec3 _171 = _168;
+ float _170 = 0.0;
+ vec3 _169 = vec4(_413 / vec3(_414), _414).xyz;
+ float _178;
+ if (_179)
{
- _166 = _568;
+ _178 = _414;
}
else
{
- _166 = 0.0;
+ _178 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _165, _164, _163, _166, 1);
- if (_167)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _171, _170, _169, _178, 1);
+ if (_179)
{
- _166 = p_1.m_flVisibility;
+ _178 = p_1.m_flVisibility;
}
else
{
- _166 = 0.0;
+ _178 = 0.0;
}
- if (_166 == 1.0)
+ if (_178 == 1.0)
{
- _162 = _154;
+ _168 = _150;
}
if (int(PathTracePushConstants.m_nBounceToShow) < 1)
{
- vNewSample = vec3(_139);
+ vNewSample = vec3(_134);
}
else
{
@@ -304,94 +305,94 @@ RTX
}
else
{
- vec2 _171 = imageLoad(g_RandomSamples, ivec3(uvec3(ivec3(_270.xy, 2)))).xy;
- bool _172;
- if (_241.z < 0.0)
+ vec2 _173 = imageLoad(g_RandomSamples, ivec3(_250.xy, 2)).xy;
+ bool _174;
+ if (_221.z < 0.0)
{
- float _173 = _171.y;
- bool _170;
+ float _175 = _173.y;
+ bool _172;
do
{
- if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w <= 0.0)
+ if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w <= 0.0)
{
- _170 = false;
+ _172 = false;
break;
}
- if (g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w >= 1.0)
+ if (g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w >= 1.0)
{
- _170 = true;
+ _172 = true;
break;
}
- if (_173 < g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w)
+ if (_175 < g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w)
{
- _173 = min(_173 / g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);
- _170 = true;
+ _175 = min(_175 / g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w, 0.99999988079071044921875);
+ _172 = true;
break;
}
- _173 = min((_173 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);
- _170 = false;
+ _175 = min((_175 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w) / (1.0 - g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.w), 0.99999988079071044921875);
+ _172 = false;
break;
} while(false);
- vec2 _344 = _171;
- _344.y = _173;
- _171 = _344;
- _172 = _170;
+ vec2 _481 = _173;
+ _481.y = _175;
+ _173 = _481;
+ _174 = _172;
}
else
{
- _172 = false;
+ _174 = false;
}
- vec3 _174;
- vec3 _175;
- if (_172)
+ vec3 _176;
+ vec3 _177;
+ if (_174)
{
- float _352 = sqrt(_171.y);
- float _354 = 6.283185482025146484375 * _171.x;
- _174 = vec3(cos(_354) * _352, sin(_354) * _352, sqrt(max(0.0, 1.0 - _171.y)));
- _175 = g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.xyz;
+ float _489 = sqrt(_173.y);
+ float _491 = 6.283185482025146484375 * _173.x;
+ _176 = vec3(cos(_491) * _489, sin(_491) * _489, sqrt(max(0.0, 1.0 - _173.y)));
+ _177 = g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.xyz;
}
else
{
- _174 = _241;
- _175 = vec3(0.0);
+ _176 = _221;
+ _177 = vec3(0.0);
}
- if (g_SceneGlobalInfo._m0[0].m_vIBLParams.y >= 0)
+ if (g_SceneGlobalInfo._member0[0].m_vIBLParams.y >= 0)
{
- vec4 _421 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._m0[0].m_vIBLParams.y], g_Sampler), normalize(mat4x3(vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].x, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].x), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].y, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].y), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].z, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].z), vec3(g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[0].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[1].w, g_SceneGlobalInfo._m0[0].m_mIBLTransformI.data[2].w)) * vec4(_174, 0.0)), 0.0);
- if (dot(_421.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._m0[0].m_vSunLightIrradiance.w)
+ vec4 _531 = textureLod(samplerCube(g_bindless_TextureCube[g_SceneGlobalInfo._member0[0].m_vIBLParams.y], g_Sampler), normalize(g_SceneGlobalInfo._member0[0].m_mIBLTransformI * vec4(_176, 0.0)), 0.0);
+ if (dot(_531.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125)) < g_SceneGlobalInfo._member0[0].m_vSunLightIrradiance.w)
{
- _175 += (g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.xyz * _421.xyz);
+ _177 += (g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.xyz * _531.xyz);
}
}
else
{
- _175 += g_SceneGlobalInfo._m0[0].m_vSkyColor.xyz;
+ _177 += g_SceneGlobalInfo._member0[0].m_vSkyColor.xyz;
}
if (false)
{
- _175 *= g_SceneGlobalInfo._m0[0].m_vIBLCubeMapScale.w;
+ _177 *= g_SceneGlobalInfo._member0[0].m_vIBLCubeMapScale.w;
}
- if (_172)
+ if (_174)
{
- _175 *= g_SceneGlobalInfo._m0[0].m_vSkyAmbientBounce.xyz;
+ _177 *= g_SceneGlobalInfo._member0[0].m_vSkyAmbientBounce.xyz;
}
- vNewSample = _175;
+ vNewSample = _177;
}
- vec4 _606 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);
- imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _606);
- vec2 _177;
+ vec4 _574 = vec4(mix(vCurrentSample.xyz, vNewSample, vec3(1.0 / (1.0 + vCurrentSample.w))), 1.0 + vCurrentSample.w);
+ imageStore(g_OutputImage, ivec2(gl_LaunchIDEXT.xy), _574);
+ vec2 _183;
if (nSampleCount == 0)
{
- _177 = vec2(0.0);
+ _183 = vec2(0.0);
}
else
{
- _177 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;
+ _183 = imageLoad(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy)).xy;
}
- float _623 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));
- float _628 = _623 - _177.x;
- float _630 = _177.x + (_628 / _606.w);
- imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_630, _177.y + (_628 * (_623 - _630))), 0.0, 0.0));
+ float _591 = dot(vNewSample.xyz, vec3(0.2125000059604644775390625, 0.7153999805450439453125, 0.07209999859333038330078125));
+ float _596 = _591 - _183.x;
+ float _598 = _183.x + (_596 / _574.w);
+ imageStore(g_VarianceImage, ivec2(gl_LaunchIDEXT.xy), vec4(vec2(_598, _183.y + (_596 * (_591 - _598))), 0.0, 0.0));
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lightmap.slang
modified • +3222 / -2997 • changes: 6219
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lightmap_sample_validation.slang
modified • +385 / -285 • changes: 670
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: rtx
}
@@ -31,11 +31,11 @@ RTX
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL: 5319
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (19628 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (21784 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_AMD_gpu_shader_half_float)
@@ -48,7 +48,7 @@ RTX
#extension GL_EXT_shader_16bit_storage : require
#extension GL_EXT_ray_tracing : require
- struct LightmapSample_t_natural
+ struct LightmapSample_t_natural_logical
{
vec4 m_vPositionWs;
vec4 m_vShadingNormalWs_vTransmissiveR;
@@ -62,26 +62,50 @@ RTX
struct MaterialDataMinimal_t
{
- f16vec3 vMaterialBits;
- float16_t _m1;
- f16vec3 _m2;
- float16_t _m3;
- f16vec3 _m4;
- float16_t _m5;
- uint _m6;
- f16vec4 _m7;
+ f16vec3 vNormalWs;
+ float16_t flMetalness;
+ f16vec3 vAlbedo;
+ float16_t flRoughness;
+ f16vec3 vEmissive;
+ float16_t flReflectance;
+ uint nMaterialTypeAndFlags;
+ f16vec4 vMaterialBits;
};
struct Payload_t
{
- vec3 material;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- int _m5;
- bool _m6;
- MaterialDataMinimal_t _m7;
+ vec3 vSmoothPositionWs;
+ vec3 vFaceNormalWs;
+ vec3 vInterpolatedNormalWs;
+ float flHitT;
+ float flOpacityRng;
+ int nInstance;
+ bool bFlippedNormal;
+ MaterialDataMinimal_t material;
+ };
+
+ struct LightmapSample_t_natural
+ {
+ vec4 m_vPositionWs;
+ vec4 m_vShadingNormalWs_vTransmissiveR;
+ vec4 m_vInterpolatedNormalWs_vTransmissiveG;
+ vec4 m_vFaceNormalWs_vTransmissiveB;
+ vec4 m_vTangentWs;
+ vec2 m_vLightmapUv;
+ int m_nInstanceFlags;
+ uint m_nSampleFlags;
+ };
+
+ struct PackedRtxInstanceData_t_natural_logical
+ {
+ uint nSrgbColor;
+ uint nTriangleGeometry;
+ uint nMaterialData;
+ uint nMaterialFlags_nInstanceFlags;
+ float fEmissiveBoost;
+ uint nInstanceFlags;
+ uint _pad1;
+ uint _pad2;
};
struct PackedRtxInstanceData_t_natural
@@ -103,12 +127,12 @@ RTX
layout(set = 6, binding = 158, std430) buffer RWStructuredBuffer
{
- LightmapSample_t_natural _m0[];
+ LightmapSample_t_natural _member0[];
} g_LightmapSamples;
layout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer
{
- PackedRtxInstanceData_t_natural _m0[];
+ PackedRtxInstanceData_t_natural _member0[];
} g_instanceBuffer;
layout(location = 0) rayPayloadEXT Payload_t p;
@@ -118,403 +142,479 @@ RTX
void main()
{
uint nSample = (gl_LaunchIDEXT.y * gl_LaunchSizeEXT.x) + gl_LaunchIDEXT.x;
- vec4 _132 = g_LightmapSamples._m0[nSample].m_vPositionWs;
- vec4 _131 = g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR;
- vec4 _130 = g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;
- vec4 _129 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB;
- vec4 _128 = g_LightmapSamples._m0[nSample].m_vTangentWs;
- vec2 _127 = g_LightmapSamples._m0[nSample].m_vLightmapUv;
- int _126 = g_LightmapSamples._m0[nSample].m_nInstanceFlags;
- uint _125 = g_LightmapSamples._m0[nSample].m_nSampleFlags;
- float _167;
- if (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.z >= 0.0)
+ LightmapSample_t_natural_logical _204;
+ _204.m_vPositionWs = g_LightmapSamples._member0[nSample].m_vPositionWs;
+ _204.m_vShadingNormalWs_vTransmissiveR = g_LightmapSamples._member0[nSample].m_vShadingNormalWs_vTransmissiveR;
+ _204.m_vInterpolatedNormalWs_vTransmissiveG = g_LightmapSamples._member0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;
+ _204.m_vFaceNormalWs_vTransmissiveB = g_LightmapSamples._member0[nSample].m_vFaceNormalWs_vTransmissiveB;
+ _204.m_vTangentWs = g_LightmapSamples._member0[nSample].m_vTangentWs;
+ _204.m_vLightmapUv = g_LightmapSamples._member0[nSample].m_vLightmapUv;
+ _204.m_nInstanceFlags = g_LightmapSamples._member0[nSample].m_nInstanceFlags;
+ _204.m_nSampleFlags = g_LightmapSamples._member0[nSample].m_nSampleFlags;
+ vec4 _144 = _204.m_vPositionWs;
+ vec4 _143 = _204.m_vShadingNormalWs_vTransmissiveR;
+ vec4 _142 = _204.m_vInterpolatedNormalWs_vTransmissiveG;
+ vec4 _141 = _204.m_vFaceNormalWs_vTransmissiveB;
+ vec4 _140 = _204.m_vTangentWs;
+ vec2 _139 = _204.m_vLightmapUv;
+ int _138 = _204.m_nInstanceFlags;
+ uint _137 = _204.m_nSampleFlags;
+ vec4 _152 = _204.m_vPositionWs;
+ vec4 _151 = _204.m_vShadingNormalWs_vTransmissiveR;
+ vec4 _150 = _204.m_vInterpolatedNormalWs_vTransmissiveG;
+ vec4 _149 = _204.m_vFaceNormalWs_vTransmissiveB;
+ vec4 _148 = _204.m_vTangentWs;
+ vec2 _147 = _204.m_vLightmapUv;
+ int _146 = _204.m_nInstanceFlags;
+ uint _145 = _204.m_nSampleFlags;
+ float _193;
+ if (_204.m_vFaceNormalWs_vTransmissiveB.z >= 0.0)
{
- _167 = 1.0;
+ _193 = 1.0;
}
else
{
- _167 = -1.0;
+ _193 = -1.0;
}
- float _200 = (-1.0) / (_167 + g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.z);
- float _204 = (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y) * _200;
+ float _220 = (-1.0) / (_193 + _204.m_vFaceNormalWs_vTransmissiveB.z);
+ float _224 = (_204.m_vFaceNormalWs_vTransmissiveB.x * _204.m_vFaceNormalWs_vTransmissiveB.y) * _220;
vec3 vTangent1Ws;
- vec3 _209 = vTangent1Ws;
- _209.x = 1.0 + (((_167 * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x) * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x) * _200);
- _209.y = _167 * _204;
- _209.z = (-_167) * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.x;
- vTangent1Ws = _209;
+ vec3 _229 = vTangent1Ws;
+ _229.x = 1.0 + (((_193 * _204.m_vFaceNormalWs_vTransmissiveB.x) * _204.m_vFaceNormalWs_vTransmissiveB.x) * _220);
+ _229.y = _193 * _224;
+ _229.z = (-_193) * _204.m_vFaceNormalWs_vTransmissiveB.x;
+ vTangent1Ws = _229;
vec3 vTangent2Ws;
- vec3 _216 = vTangent2Ws;
- _216.x = _204;
- _216.y = _167 + ((g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y * g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y) * _200);
- _216.z = -g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.y;
- vTangent2Ws = _216;
- vec4 _224 = _132;
- bool bValidSample_2 = _224.w != 0.0;
- float _168;
+ vec3 _236 = vTangent2Ws;
+ _236.x = _224;
+ _236.y = _193 + ((_204.m_vFaceNormalWs_vTransmissiveB.y * _204.m_vFaceNormalWs_vTransmissiveB.y) * _220);
+ _236.z = -_204.m_vFaceNormalWs_vTransmissiveB.y;
+ vTangent2Ws = _236;
+ vec4 _244 = _152;
+ bool bValidSample_2 = _244.w != 0.0;
+ float _194;
if (bValidSample_2)
{
- _168 = 12.0;
+ _194 = 12.0;
}
else
{
- _168 = 0.0;
+ _194 = 0.0;
}
- float _166 = _168;
- vec4 _140 = g_LightmapSamples._m0[nSample].m_vPositionWs;
- vec4 _139 = g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR;
- vec4 _138 = g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG;
- vec4 _137 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB;
- vec4 _136 = g_LightmapSamples._m0[nSample].m_vTangentWs;
- vec2 _135 = g_LightmapSamples._m0[nSample].m_vLightmapUv;
- int _134 = g_LightmapSamples._m0[nSample].m_nInstanceFlags;
- uint _133 = g_LightmapSamples._m0[nSample].m_nSampleFlags;
- vec3 _232 = g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz * 0.0078125;
- vec3 _233 = g_LightmapSamples._m0[nSample].m_vPositionWs.xyz - _232;
+ float _192 = _194;
+ vec4 _160 = _144;
+ vec4 _159 = _143;
+ vec4 _158 = _142;
+ vec4 _157 = _141;
+ vec4 _156 = _140;
+ vec2 _155 = _139;
+ int _154 = _138;
+ uint _153 = _137;
+ vec3 _260 = _141.xyz * 0.0078125;
+ vec3 _261 = _144.xyz - _260;
do
{
- f16vec3 _237 = f16vec3(vec3(0.0));
- vec3 _141;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _141, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_237, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _237, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _233, 0.0, g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _166, 0);
- if (!(p._m5 != (-1)))
+ f16vec3 _265 = f16vec3(vec3(0.0));
+ vec3 _162;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _162, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_265, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _265, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _261, 0.0, _141.xyz, _192, 0);
+ if (!(p.nInstance != (-1)))
{
break;
}
- vec3 _162;
- if (p._m6)
+ vec3 _188;
+ if (p.bFlippedNormal)
{
- _162 = -p._m1;
+ _188 = -p.vFaceNormalWs;
}
else
{
- _162 = p._m1;
+ _188 = p.vFaceNormalWs;
}
- if (!(dot(g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _162) > 0.0))
+ if (!(dot(_141.xyz, _188) > 0.0))
{
break;
}
- float _163;
- if (p._m6)
+ float _189;
+ if (p.bFlippedNormal)
{
- _163 = -1.0;
+ _189 = -1.0;
}
else
{
- _163 = 1.0;
+ _189 = 1.0;
}
- vec3 _277 = (_233 + (g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz * p._m3)) + (p._m1 * ((abs(_233) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));
- float _280 = length(_277 - g_LightmapSamples._m0[nSample].m_vPositionWs.xyz);
- if (_280 < _166)
+ vec3 _306 = (_261 + (_141.xyz * p.flHitT)) + (p.vFaceNormalWs * ((abs(_261) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));
+ float _310 = length(_306 - _144.xyz);
+ if (_310 < _192)
{
- vec4 _286 = _140;
- _286.x = _277.x;
- _286.y = _277.y;
- _286.z = _277.z;
- _140 = _286;
- vec3 _296 = vec3(p._m7.vMaterialBits) * _163;
- vec4 _298 = _139;
- _298.x = _296.x;
- _298.y = _296.y;
- _298.z = _296.z;
- _139 = _298;
- vec3 _306 = p._m2.xyz * _163;
- vec4 _308 = _138;
- _308.x = _306.x;
- _308.y = _306.y;
- _308.z = _306.z;
- _138 = _308;
- vec3 _314 = p._m1 * _163;
- vec4 _316 = _137;
- _316.x = _314.x;
- _316.y = _314.y;
- _316.z = _314.z;
- _137 = _316;
- uint _164;
- if (p._m5 >= 0)
+ vec4 _316 = _160;
+ _316.x = _306.x;
+ _316.y = _306.y;
+ _316.z = _306.z;
+ _160 = _316;
+ vec3 _326 = vec3(p.material.vNormalWs) * _189;
+ vec4 _328 = _159;
+ _328.x = _326.x;
+ _328.y = _326.y;
+ _328.z = _326.z;
+ _159 = _328;
+ vec3 _336 = p.vInterpolatedNormalWs.xyz * _189;
+ vec4 _338 = _158;
+ _338.x = _336.x;
+ _338.y = _336.y;
+ _338.z = _336.z;
+ _158 = _338;
+ vec3 _344 = p.vFaceNormalWs * _189;
+ vec4 _346 = _157;
+ _346.x = _344.x;
+ _346.y = _344.y;
+ _346.z = _344.z;
+ _157 = _346;
+ uint _190;
+ if (p.nInstance >= 0)
{
- _164 = (g_instanceBuffer._m0[uint(p._m5)].nMaterialFlags_nInstanceFlags) & 65535u;
+ uint _357 = uint(p.nInstance);
+ PackedRtxInstanceData_t_natural_logical _360;
+ _360.nSrgbColor = g_instanceBuffer._member0[_357].nSrgbColor;
+ _360.nTriangleGeometry = g_instanceBuffer._member0[_357].nTriangleGeometry;
+ _360.nMaterialData = g_instanceBuffer._member0[_357].nMaterialData;
+ _360.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_357].nMaterialFlags_nInstanceFlags;
+ _360.fEmissiveBoost = g_instanceBuffer._member0[_357].fEmissiveBoost;
+ _360.nInstanceFlags = g_instanceBuffer._member0[_357].nInstanceFlags;
+ _360._pad1 = g_instanceBuffer._member0[_357]._pad1;
+ _360._pad2 = g_instanceBuffer._member0[_357]._pad2;
+ uint _163 = _360.nMaterialFlags_nInstanceFlags;
+ _190 = _163 & 65535u;
}
else
{
- _164 = 0u;
+ _190 = 0u;
}
- _134 = int(_164);
- _166 = _280;
- bool _161;
- if ((p._m7._m6 & 65535u) == 1u)
+ _154 = int(_190);
+ _192 = _310;
+ f16vec4 _161 = p.material.vMaterialBits;
+ bool _187;
+ if ((p.material.nMaterialTypeAndFlags & 65535u) == 1u)
{
- _161 = any(greaterThan(vec3(p._m7._m7.xyz), vec3(0.0)));
+ _187 = any(greaterThan(vec3(_161.xyz), vec3(0.0)));
}
else
{
- _161 = false;
+ _187 = false;
}
- vec3 _165;
- if (_161)
+ vec3 _191;
+ if (_187)
{
- _165 = vec3(p._m7._m7.xyz) / max(vec3(p._m7._m2), vec3(0.100000001490116119384765625));
+ _191 = vec3(p.material.vMaterialBits.xyz) / max(vec3(p.material.vAlbedo), vec3(0.100000001490116119384765625));
}
else
{
- _165 = vec3(0.0);
+ _191 = vec3(0.0);
}
- vec4 _362 = _139;
- _362.w = _165.x;
- _139 = _362;
- vec4 _365 = _138;
- _365.w = _165.y;
- _138 = _365;
- vec4 _368 = _137;
- _368.w = _165.z;
- _137 = _368;
+ vec4 _394 = _159;
+ _394.w = _191.x;
+ _159 = _394;
+ vec4 _397 = _158;
+ _397.w = _191.y;
+ _158 = _397;
+ vec4 _400 = _157;
+ _400.w = _191.z;
+ _157 = _400;
}
break;
} while(false);
- vec3 _370 = g_LightmapSamples._m0[nSample].m_vPositionWs.xyz + _232;
- vec3 _371 = -g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz;
+ vec3 _402 = _144.xyz + _260;
+ vec3 _403 = -_141.xyz;
do
{
- f16vec3 _375 = f16vec3(vec3(0.0));
- vec3 _142;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _142, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_375, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _375, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _370, 0.0, _371, _166, 0);
- if (!(p._m5 != (-1)))
+ f16vec3 _407 = f16vec3(vec3(0.0));
+ vec3 _165;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _165, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_407, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _407, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _402, 0.0, _403, _192, 0);
+ if (!(p.nInstance != (-1)))
{
break;
}
- vec3 _157;
- if (p._m6)
+ vec3 _183;
+ if (p.bFlippedNormal)
{
- _157 = -p._m1;
+ _183 = -p.vFaceNormalWs;
}
else
{
- _157 = p._m1;
+ _183 = p.vFaceNormalWs;
}
- if (!(dot(g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB.xyz, _157) > 0.0))
+ if (!(dot(_141.xyz, _183) > 0.0))
{
break;
}
- float _158;
- if (p._m6)
+ float _184;
+ if (p.bFlippedNormal)
{
- _158 = -1.0;
+ _184 = -1.0;
}
else
{
- _158 = 1.0;
+ _184 = 1.0;
}
- vec3 _415 = (_370 + (_371 * p._m3)) + (p._m1 * ((abs(_370) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));
- float _418 = length(_415 - g_LightmapSamples._m0[nSample].m_vPositionWs.xyz);
- if (_418 < _166)
+ vec3 _448 = (_402 + (_403 * p.flHitT)) + (p.vFaceNormalWs * ((abs(_402) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));
+ float _452 = length(_448 - _144.xyz);
+ if (_452 < _192)
{
- vec4 _424 = _140;
- _424.x = _415.x;
- _424.y = _415.y;
- _424.z = _415.z;
- _140 = _424;
- vec3 _434 = vec3(p._m7.vMaterialBits) * _158;
- vec4 _436 = _139;
- _436.x = _434.x;
- _436.y = _434.y;
- _436.z = _434.z;
- _139 = _436;
- vec3 _444 = p._m2.xyz * _158;
- vec4 _446 = _138;
- _446.x = _444.x;
- _446.y = _444.y;
- _446.z = _444.z;
- _138 = _446;
- vec3 _452 = p._m1 * _158;
- vec4 _454 = _137;
- _454.x = _452.x;
- _454.y = _452.y;
- _454.z = _452.z;
- _137 = _454;
- uint _159;
- if (p._m5 >= 0)
+ vec4 _458 = _160;
+ _458.x = _448.x;
+ _458.y = _448.y;
+ _458.z = _448.z;
+ _160 = _458;
+ vec3 _468 = vec3(p.material.vNormalWs) * _184;
+ vec4 _470 = _159;
+ _470.x = _468.x;
+ _470.y = _468.y;
+ _470.z = _468.z;
+ _159 = _470;
+ vec3 _478 = p.vInterpolatedNormalWs.xyz * _184;
+ vec4 _480 = _158;
+ _480.x = _478.x;
+ _480.y = _478.y;
+ _480.z = _478.z;
+ _158 = _480;
+ vec3 _486 = p.vFaceNormalWs * _184;
+ vec4 _488 = _157;
+ _488.x = _486.x;
+ _488.y = _486.y;
+ _488.z = _486.z;
+ _157 = _488;
+ uint _185;
+ if (p.nInstance >= 0)
{
- _159 = (g_instanceBuffer._m0[uint(p._m5)].nMaterialFlags_nInstanceFlags) & 65535u;
+ uint _499 = uint(p.nInstance);
+ PackedRtxInstanceData_t_natural_logical _502;
+ _502.nSrgbColor = g_instanceBuffer._member0[_499].nSrgbColor;
+ _502.nTriangleGeometry = g_instanceBuffer._member0[_499].nTriangleGeometry;
+ _502.nMaterialData = g_instanceBuffer._member0[_499].nMaterialData;
+ _502.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_499].nMaterialFlags_nInstanceFlags;
+ _502.fEmissiveBoost = g_instanceBuffer._member0[_499].fEmissiveBoost;
+ _502.nInstanceFlags = g_instanceBuffer._member0[_499].nInstanceFlags;
+ _502._pad1 = g_instanceBuffer._member0[_499]._pad1;
+ _502._pad2 = g_instanceBuffer._member0[_499]._pad2;
+ uint _166 = _502.nMaterialFlags_nInstanceFlags;
+ _185 = _166 & 65535u;
}
else
{
- _159 = 0u;
+ _185 = 0u;
}
- _134 = int(_159);
- _166 = _418;
- bool _156;
- if ((p._m7._m6 & 65535u) == 1u)
+ _154 = int(_185);
+ _192 = _452;
+ f16vec4 _164 = p.material.vMaterialBits;
+ bool _182;
+ if ((p.material.nMaterialTypeAndFlags & 65535u) == 1u)
{
- _156 = any(greaterThan(vec3(p._m7._m7.xyz), vec3(0.0)));
+ _182 = any(greaterThan(vec3(_164.xyz), vec3(0.0)));
}
else
{
- _156 = false;
+ _182 = false;
}
- vec3 _160;
- if (_156)
+ vec3 _186;
+ if (_182)
{
- _160 = vec3(p._m7._m7.xyz) / max(vec3(p._m7._m2), vec3(0.100000001490116119384765625));
+ _186 = vec3(p.material.vMaterialBits.xyz) / max(vec3(p.material.vAlbedo), vec3(0.100000001490116119384765625));
}
else
{
- _160 = vec3(0.0);
+ _186 = vec3(0.0);
}
- vec4 _500 = _139;
- _500.w = _160.x;
- _139 = _500;
- vec4 _503 = _138;
- _503.w = _160.y;
- _138 = _503;
- vec4 _506 = _137;
- _506.w = _160.z;
- _137 = _506;
+ vec4 _536 = _159;
+ _536.w = _186.x;
+ _159 = _536;
+ vec4 _539 = _158;
+ _539.w = _186.y;
+ _158 = _539;
+ vec4 _542 = _157;
+ _542.w = _186.z;
+ _157 = _542;
}
break;
} while(false);
- _132 = _140;
- _131 = _139;
- _130 = _138;
- _129 = _137;
- _128 = _136;
- _127 = _135;
- _126 = _134;
- _125 = _133;
+ _152 = _160;
+ _151 = _159;
+ _150 = _158;
+ _149 = _157;
+ _148 = _156;
+ _147 = _155;
+ _146 = _154;
+ _145 = _153;
do
{
- vec3 _144 = _132.xyz;
- vec3 _143 = _129.xyz;
- f16vec3 _522 = f16vec3(vec3(0.0));
- vec3 _145;
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _145, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_522, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _522, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _132.xyz, 0.0, _129.xyz, 1.0, 0);
- if (!(p._m5 != (-1)))
+ vec3 _168 = _152.xyz;
+ vec3 _167 = _149.xyz;
+ f16vec3 _558 = f16vec3(vec3(0.0));
+ vec3 _169;
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _169, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_558, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _558, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 0u, 1u, 0u, 2u, 0u, _152.xyz, 0.0, _149.xyz, 1.0, 0);
+ if (!(p.nInstance != (-1)))
{
break;
}
- vec3 _548 = (_144 + (_143 * p._m3)) + (_129.xyz * ((abs(_144) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));
- vec4 _550 = _132;
- _550.x = _548.x;
- _550.y = _548.y;
- _550.z = _548.z;
- _132 = _550;
+ vec3 _584 = (_168 + (_167 * p.flHitT)) + (_149.xyz * ((abs(_168) + vec3(abs(p.flHitT))) * 9.9999997473787516355514526367188e-05));
+ vec4 _586 = _152;
+ _586.x = _584.x;
+ _586.y = _584.y;
+ _586.z = _584.z;
+ _152 = _586;
break;
} while(false);
bool bValidSample = bValidSample_2;
int i = 0;
int nBackfacesSeen = 0;
bool bValidSample_1;
- vec3 _146;
- vec3 _152;
- float _153;
- bool _154;
- bool _155;
+ vec3 _170;
+ vec3 _178;
+ float _179;
+ bool _180;
+ bool _181;
for (;;)
{
- bool _560_ladder_break = false;
+ bool _596_ladder_break = false;
do
{
if (!(i < 8))
{
- _560_ladder_break = true;
+ _596_ladder_break = true;
break;
}
if (!bValidSample)
{
- _560_ladder_break = true;
+ _596_ladder_break = true;
break;
}
if ((nBackfacesSeen + (8 - i)) <= 2)
{
- _560_ladder_break = true;
+ _596_ladder_break = true;
break;
}
- uint _577 = uint(i);
- uint _582 = (_577 << 16u) | (_577 >> 16u);
- uint _587 = ((_582 & 1431655765u) << 1u) | ((_582 & 2863311530u) >> 1u);
- uint _592 = ((_587 & 858993459u) << 2u) | ((_587 & 3435973836u) >> 2u);
- uint _597 = ((_592 & 252645135u) << 4u) | ((_592 & 4042322160u) >> 4u);
- vec2 _605 = vec2(float(_577) * 0.125, float(((_597 & 16711935u) << 8u) | ((_597 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);
- float _606 = _605.y;
- float _607 = sqrt(_606);
- float _609 = 6.283185482025146484375 * _605.x;
- vec3 _623 = mat3(vTangent1Ws, vTangent2Ws, _129.xyz) * vec3(cos(_609) * _607, sin(_609) * _607, sqrt(max(0.0, 1.0 - _606)));
- vec3 _124 = _132.xyz;
- vec3 _123 = _623;
- f16vec3 _626 = f16vec3(vec3(0.0));
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _146, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_626, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _626, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _132.xyz, 0.0, _623, 56755.83984375, 0);
+ uint _613 = uint(i);
+ uint _618 = (_613 << 16u) | (_613 >> 16u);
+ uint _623 = ((_618 & 1431655765u) << 1u) | ((_618 & 2863311530u) >> 1u);
+ uint _628 = ((_623 & 858993459u) << 2u) | ((_623 & 3435973836u) >> 2u);
+ uint _633 = ((_628 & 252645135u) << 4u) | ((_628 & 4042322160u) >> 4u);
+ vec2 _641 = vec2(float(_613) * 0.125, float(((_633 & 16711935u) << 8u) | ((_633 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);
+ float _642 = _641.y;
+ float _643 = sqrt(_642);
+ float _645 = 6.283185482025146484375 * _641.x;
+ vec3 _659 = mat3(vTangent1Ws, vTangent2Ws, _149.xyz) * vec3(cos(_645) * _643, sin(_645) * _643, sqrt(max(0.0, 1.0 - _642)));
+ vec3 _136 = _152.xyz;
+ vec3 _135 = _659;
+ f16vec3 _662 = f16vec3(vec3(0.0));
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _170, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_662, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _662, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _152.xyz, 0.0, _659, 56755.83984375, 0);
Payload_t payload = p;
- float flRng = payload._m4;
+ float flRng = payload.flOpacityRng;
+ vec3 _134 = _152.xyz;
+ vec3 _133 = _659;
+ vec3 _132 = payload.vSmoothPositionWs;
+ vec3 _131 = payload.vFaceNormalWs;
+ float _130 = payload.flHitT;
+ int _129 = payload.nInstance;
+ f16vec3 _128 = payload.material.vNormalWs;
do
{
- if (!(payload._m5 != (-1)))
+ if (!(_129 != (-1)))
{
- _155 = false;
+ _181 = false;
break;
}
- vec3 _148 = (_132.xyz + (_623 * payload._m3)) + (payload._m1 * ((abs(_132.xyz) + vec3(abs(payload._m3))) * 9.9999997473787516355514526367188e-05));
- vec3 _147 = payload._m1;
+ vec3 _172 = (_134 + (_133 * _130)) + (_131 * ((abs(_134) + vec3(abs(_130))) * 9.9999997473787516355514526367188e-05));
+ vec3 _171 = _131;
if (bValidSample)
{
- _154 = any(notEqual(payload.material, vec3(3.4028234663852885981170418348452e+38)));
+ _180 = any(notEqual(_132, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _154 = false;
+ _180 = false;
}
- vec3 _669 = payload.material - _148;
- float _670 = length(_669);
- vec3 _151 = _148;
- float _150 = 0.0;
- vec3 _149 = vec4(_669 / vec3(_670), _670).xyz;
- if (_154)
+ vec3 _712 = _132 - _172;
+ float _713 = length(_712);
+ vec3 _175 = _172;
+ float _174 = 0.0;
+ vec3 _173 = vec4(_712 / vec3(_713), _713).xyz;
+ if (_180)
{
- _153 = _670;
+ _179 = _713;
}
else
{
- _153 = 0.0;
+ _179 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _151, _150, _149, _153, 1);
- if (_154)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _175, _174, _173, _179, 1);
+ if (_180)
{
- _153 = p_1.m_flVisibility;
+ _179 = p_1.m_flVisibility;
}
else
{
- _153 = 0.0;
+ _179 = 0.0;
}
- if (_153 == 1.0)
+ if (_179 == 1.0)
{
- _148 = payload.material;
- _147 = vec3(payload._m7.vMaterialBits);
+ _172 = _132;
+ _171 = vec3(_128);
}
- uint _697 = uint(payload._m5);
- if ((int((g_instanceBuffer._m0[_697].nMaterialFlags_nInstanceFlags >> uint(16)) & 65535u) & 1) != 0)
+ uint _740 = uint(_129);
+ PackedRtxInstanceData_t_natural_logical _743;
+ _743.nSrgbColor = g_instanceBuffer._member0[_740].nSrgbColor;
+ _743.nTriangleGeometry = g_instanceBuffer._member0[_740].nTriangleGeometry;
+ _743.nMaterialData = g_instanceBuffer._member0[_740].nMaterialData;
+ _743.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_740].nMaterialFlags_nInstanceFlags;
+ _743.fEmissiveBoost = g_instanceBuffer._member0[_740].fEmissiveBoost;
+ _743.nInstanceFlags = g_instanceBuffer._member0[_740].nInstanceFlags;
+ _743._pad1 = g_instanceBuffer._member0[_740]._pad1;
+ _743._pad2 = g_instanceBuffer._member0[_740]._pad2;
+ uint _176 = _743.nMaterialFlags_nInstanceFlags;
+ if ((int((_176 >> uint(16)) & 65535u) & 1) != 0)
{
- _155 = false;
+ _181 = false;
break;
}
- if ((int((g_instanceBuffer._m0[_697].nMaterialFlags_nInstanceFlags) & 65535u) & 2048) != 0)
+ if ((int(_176 & 65535u) & 2048) != 0)
{
- _155 = false;
+ _181 = false;
break;
}
- _155 = dot(_623, _147) > 0.0;
+ _181 = dot(_659, _171) > 0.0;
break;
} while(false);
- if (!_155)
+ if (!_181)
{
break;
}
- f16vec3 _728 = f16vec3(vec3(0.0));
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _152, 3.4028234663852885981170418348452e+38, flRng, -1, false, MaterialDataMinimal_t(_728, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _728, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 16u, 16u, 0u, 2u, 0u, _124, payload._m3 * 0.99989998340606689453125, _123, payload._m3 * 1.00010001659393310546875, 0);
- flRng = p._m4;
- if (p._m5 != (-1))
+ if (payload.nInstance != (-1))
+ {
+ uint _773 = uint(payload.nInstance);
+ PackedRtxInstanceData_t_natural_logical _776;
+ _776.nSrgbColor = g_instanceBuffer._member0[_773].nSrgbColor;
+ _776.nTriangleGeometry = g_instanceBuffer._member0[_773].nTriangleGeometry;
+ _776.nMaterialData = g_instanceBuffer._member0[_773].nMaterialData;
+ _776.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_773].nMaterialFlags_nInstanceFlags;
+ _776.fEmissiveBoost = g_instanceBuffer._member0[_773].fEmissiveBoost;
+ _776.nInstanceFlags = g_instanceBuffer._member0[_773].nInstanceFlags;
+ _776._pad1 = g_instanceBuffer._member0[_773]._pad1;
+ _776._pad2 = g_instanceBuffer._member0[_773]._pad2;
+ uint _177 = _776.nMaterialFlags_nInstanceFlags;
+ if (!((int(_177 & 65535u) & 6) != 0))
+ {
+ break;
+ }
+ }
+ f16vec3 _793 = f16vec3(vec3(0.0));
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _178, 3.4028234663852885981170418348452e+38, flRng, -1, false, MaterialDataMinimal_t(_793, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _793, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 16u, 16u, 0u, 2u, 0u, _136, payload.flHitT * 0.99989998340606689453125, _135, payload.flHitT * 1.00010001659393310546875, 0);
+ flRng = p.flOpacityRng;
+ if (p.nInstance != (-1))
{
break;
}
@@ -531,7 +631,7 @@ RTX
nBackfacesSeen = nBackfacesSeen_1;
break;
} while(false);
- if (_560_ladder_break)
+ if (_596_ladder_break)
{
break;
}
@@ -540,22 +640,22 @@ RTX
}
if (!bValidSample)
{
- _132 = vec4(0.0);
- _131 = vec4(0.0);
- _130 = vec4(0.0);
- _129 = vec4(0.0);
- _128 = vec4(0.0);
- _126 = 0;
- _125 = 0u;
+ _152 = vec4(0.0);
+ _151 = vec4(0.0);
+ _150 = vec4(0.0);
+ _149 = vec4(0.0);
+ _148 = vec4(0.0);
+ _146 = 0;
+ _145 = 0u;
}
- g_LightmapSamples._m0[nSample].m_vPositionWs = _132;
- g_LightmapSamples._m0[nSample].m_vShadingNormalWs_vTransmissiveR = _131;
- g_LightmapSamples._m0[nSample].m_vInterpolatedNormalWs_vTransmissiveG = _130;
- g_LightmapSamples._m0[nSample].m_vFaceNormalWs_vTransmissiveB = _129;
- g_LightmapSamples._m0[nSample].m_vTangentWs = _128;
- g_LightmapSamples._m0[nSample].m_vLightmapUv = _127;
- g_LightmapSamples._m0[nSample].m_nInstanceFlags = _126;
- g_LightmapSamples._m0[nSample].m_nSampleFlags = _125;
+ g_LightmapSamples._member0[nSample].m_vPositionWs = _152;
+ g_LightmapSamples._member0[nSample].m_vShadingNormalWs_vTransmissiveR = _151;
+ g_LightmapSamples._member0[nSample].m_vInterpolatedNormalWs_vTransmissiveG = _150;
+ g_LightmapSamples._member0[nSample].m_vFaceNormalWs_vTransmissiveB = _149;
+ g_LightmapSamples._member0[nSample].m_vTangentWs = _148;
+ g_LightmapSamples._member0[nSample].m_vLightmapUv = _147;
+ g_LightmapSamples._member0[nSample].m_nInstanceFlags = _146;
+ g_LightmapSamples._member0[nSample].m_nSampleFlags = _145;
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_lpv.slang
modified • +105 / -83 • changes: 188
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: rtx
}
@@ -33,11 +33,11 @@ RTX
// SPIR-V reflection failed for backend HLSL:
// Unsupported builtin in HLSL: 5319
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (10448 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (10644 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_AMD_gpu_shader_half_float)
@@ -63,33 +63,40 @@ RTX
#define SPIRV_CROSS_LOOP
#endif
- struct _MatrixStorage_float4x3_ColMajornatural
+ struct MaterialDataMinimal_t
{
- vec4 data[3];
+ f16vec3 vNormalWs;
+ float16_t flMetalness;
+ f16vec3 vAlbedo;
+ float16_t flRoughness;
+ f16vec3 vEmissive;
+ float16_t flReflectance;
+ uint nMaterialTypeAndFlags;
+ f16vec4 vMaterialBits;
};
- struct MaterialDataMinimal_t
+ struct Payload_t
{
- f16vec3 vMaterialBits;
- float16_t _m1;
- f16vec3 _m2;
- float16_t _m3;
- f16vec3 _m4;
- float16_t _m5;
- uint _m6;
- f16vec4 _m7;
+ vec3 vSmoothPositionWs;
+ vec3 vFaceNormalWs;
+ vec3 vInterpolatedNormalWs;
+ float flHitT;
+ float flOpacityRng;
+ int nInstance;
+ bool bFlippedNormal;
+ MaterialDataMinimal_t material;
};
- struct Payload_t
+ struct PackedRtxInstanceData_t_natural_logical
{
- vec3 material;
- vec3 _m1;
- vec3 _m2;
- float _m3;
- float _m4;
- int _m5;
- bool _m6;
- MaterialDataMinimal_t _m7;
+ uint nSrgbColor;
+ uint nTriangleGeometry;
+ uint nMaterialData;
+ uint nMaterialFlags_nInstanceFlags;
+ float fEmissiveBoost;
+ uint nInstanceFlags;
+ uint _pad1;
+ uint _pad2;
};
struct PackedRtxInstanceData_t_natural
@@ -111,12 +118,12 @@ RTX
layout(set = 6, binding = 159, std430) buffer RWStructuredBuffer
{
- uint _m0[];
+ uint _member0[];
} g_SolidMask;
layout(set = 3, binding = 35, std430) readonly buffer StructuredBuffer
{
- PackedRtxInstanceData_t_natural _m0[];
+ PackedRtxInstanceData_t_natural _member0[];
} g_instanceBuffer;
layout(push_constant, std430) uniform LpvPushConstants_t_natural
@@ -129,7 +136,7 @@ RTX
vec4 m_vOffset;
vec4 m_vLpvMinBounds;
vec4 m_vLpvMaxBounds;
- _MatrixStorage_float4x3_ColMajornatural m_mLpvLocalToWorld;
+ layout(row_major) mat4x3 m_mLpvLocalToWorld;
} g_PushConstants;
layout(location = 0) rayPayloadEXT Payload_t p;
@@ -140,14 +147,12 @@ RTX
{
do
{
- ivec3 _134 = ivec3(gl_LaunchIDEXT);
- uvec3 _145 = uvec3(_134);
- int nIdx = int((gl_LaunchSizeEXT.x * ((_145.z * gl_LaunchSizeEXT.y) + _145.y)) + _145.x);
- vec3 _188 = mat4x3(vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].x, g_PushConstants.m_mLpvLocalToWorld.data[1].x, g_PushConstants.m_mLpvLocalToWorld.data[2].x), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].y, g_PushConstants.m_mLpvLocalToWorld.data[1].y, g_PushConstants.m_mLpvLocalToWorld.data[2].y), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].z, g_PushConstants.m_mLpvLocalToWorld.data[1].z, g_PushConstants.m_mLpvLocalToWorld.data[2].z), vec3(g_PushConstants.m_mLpvLocalToWorld.data[0].w, g_PushConstants.m_mLpvLocalToWorld.data[1].w, g_PushConstants.m_mLpvLocalToWorld.data[2].w)) * vec4((((g_PushConstants.m_vLpvMaxBounds.xyz - g_PushConstants.m_vLpvMinBounds.xyz) / vec3(gl_LaunchSizeEXT)) * (vec3(_134) + g_PushConstants.m_vOffset.xyz)) + g_PushConstants.m_vLpvMinBounds.xyz, 1.0);
+ int nIdx = int((gl_LaunchSizeEXT.x * ((gl_LaunchIDEXT.z * gl_LaunchSizeEXT.y) + gl_LaunchIDEXT.y)) + gl_LaunchIDEXT.x);
+ vec3 _174 = g_PushConstants.m_mLpvLocalToWorld * vec4((((g_PushConstants.m_vLpvMaxBounds.xyz - g_PushConstants.m_vLpvMinBounds.xyz) / vec3(gl_LaunchSizeEXT)) * (vec3(ivec3(gl_LaunchIDEXT)) + g_PushConstants.m_vOffset.xyz)) + g_PushConstants.m_vLpvMinBounds.xyz, 1.0);
uint nFlags;
if (g_PushConstants.m_nEstimate > 0)
{
- nFlags = g_SolidMask._m0[nIdx];
+ nFlags = g_SolidMask._member0[nIdx];
}
else
{
@@ -162,102 +167,119 @@ RTX
int i = 0;
int nBackfacesSeen = 0;
bool bValidSample_1;
- vec3 _121;
- float _127;
- bool _128;
- bool _129;
- float _130;
+ vec3 _128;
+ float _135;
+ bool _136;
+ bool _137;
+ float _138;
SPIRV_CROSS_UNROLL
for (;;)
{
if (!(i < 32))
{
break;
}
- uint _214 = uint(i);
- uint _219 = (_214 << 16u) | (_214 >> 16u);
- uint _224 = ((_219 & 1431655765u) << 1u) | ((_219 & 2863311530u) >> 1u);
- uint _229 = ((_224 & 858993459u) << 2u) | ((_224 & 3435973836u) >> 2u);
- uint _234 = ((_229 & 252645135u) << 4u) | ((_229 & 4042322160u) >> 4u);
- vec2 _242 = vec2(float(_214) * 0.03125, float(((_234 & 16711935u) << 8u) | ((_234 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);
- float _243 = _242.y;
- float _248 = 2.0 * sqrt(max(0.0, _243 - (_243 * _243)));
- float _250 = 6.283185482025146484375 * _242.x;
- vec3 _257 = vec3(cos(_250) * _248, sin(_250) * _248, 1.0 - (2.0 * _243));
- vec3 _120 = _188.xyz;
- float _119 = 0.0;
- vec3 _118 = _257;
+ uint _200 = uint(i);
+ uint _205 = (_200 << 16u) | (_200 >> 16u);
+ uint _210 = ((_205 & 1431655765u) << 1u) | ((_205 & 2863311530u) >> 1u);
+ uint _215 = ((_210 & 858993459u) << 2u) | ((_210 & 3435973836u) >> 2u);
+ uint _220 = ((_215 & 252645135u) << 4u) | ((_215 & 4042322160u) >> 4u);
+ vec2 _228 = vec2(float(_200) * 0.03125, float(((_220 & 16711935u) << 8u) | ((_220 & 4278255360u) >> 8u)) * 2.3283064365386962890625e-10);
+ float _229 = _228.y;
+ float _234 = 2.0 * sqrt(max(0.0, _229 - (_229 * _229)));
+ float _236 = 6.283185482025146484375 * _228.x;
+ vec3 _243 = vec3(cos(_236) * _234, sin(_236) * _234, 1.0 - (2.0 * _229));
+ vec3 _127 = _174.xyz;
+ float _126 = 0.0;
+ vec3 _125 = _243;
if (bValidSample)
{
- _130 = 56755.83984375;
+ _138 = 56755.83984375;
}
else
{
- _130 = 0.0;
+ _138 = 0.0;
}
- f16vec3 _264 = f16vec3(vec3(0.0));
- p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _121, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_264, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _264, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
- traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _120, _119, _118, _130, 0);
+ f16vec3 _250 = f16vec3(vec3(0.0));
+ p = Payload_t(vec3(3.4028234663852885981170418348452e+38), vec3(0.0), _128, 3.4028234663852885981170418348452e+38, 0.0, -1, false, MaterialDataMinimal_t(_250, float16_t(0.0), f16vec3(vec3(1.0, 0.0, 1.0)), float16_t(1.0), _250, float16_t(0.040008544921875), 0u, f16vec4(ivec4(0))));
+ traceRayEXT(g_AccelStruct, 0u, 16u, 0u, 2u, 0u, _127, _126, _125, _138, 0);
+ vec3 _124 = _127;
+ vec3 _123 = _125;
+ vec3 _122 = p.vSmoothPositionWs;
+ vec3 _121 = p.vFaceNormalWs;
+ float _120 = p.flHitT;
+ int _119 = p.nInstance;
+ f16vec3 _118 = p.material.vNormalWs;
do
{
- if (!(p._m5 != (-1)))
+ if (!(_119 != (-1)))
{
- _129 = false;
+ _137 = false;
break;
}
- vec3 _123 = (_120 + (_118 * p._m3)) + (p._m1 * ((abs(_120) + vec3(abs(p._m3))) * 9.9999997473787516355514526367188e-05));
- vec3 _122 = p._m1;
+ vec3 _130 = (_124 + (_123 * _120)) + (_121 * ((abs(_124) + vec3(abs(_120))) * 9.9999997473787516355514526367188e-05));
+ vec3 _129 = _121;
if (bValidSample)
{
- _128 = any(notEqual(p.material, vec3(3.4028234663852885981170418348452e+38)));
+ _136 = any(notEqual(_122, vec3(3.4028234663852885981170418348452e+38)));
}
else
{
- _128 = false;
+ _136 = false;
}
- vec3 _310 = p.material - _123;
- float _311 = length(_310);
- vec3 _126 = _123;
- float _125 = 0.0;
- vec3 _124 = vec4(_310 / vec3(_311), _311).xyz;
- if (_128)
+ vec3 _302 = _122 - _130;
+ float _303 = length(_302);
+ vec3 _133 = _130;
+ float _132 = 0.0;
+ vec3 _131 = vec4(_302 / vec3(_303), _303).xyz;
+ if (_136)
{
- _127 = _311;
+ _135 = _303;
}
else
{
- _127 = 0.0;
+ _135 = 0.0;
}
p_1 = PayloadShadow_t(1.0);
- traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _126, _125, _124, _127, 1);
- if (_128)
+ traceRayEXT(g_AccelStruct, 0u, 255u, 1u, 2u, 1u, _133, _132, _131, _135, 1);
+ if (_136)
{
- _127 = p_1.m_flVisibility;
+ _135 = p_1.m_flVisibility;
}
else
{
- _127 = 0.0;
+ _135 = 0.0;
}
- if (_127 == 1.0)
+ if (_135 == 1.0)
{
- _123 = p.material;
- _122 = vec3(p._m7.vMaterialBits);
+ _130 = _122;
+ _129 = vec3(_118);
}
- uint _338 = uint(p._m5);
- if ((int((g_instanceBuffer._m0[_338].nMaterialFlags_nInstanceFlags >> uint(16)) & 65535u) & 1) != 0)
+ uint _330 = uint(_119);
+ PackedRtxInstanceData_t_natural_logical _333;
+ _333.nSrgbColor = g_instanceBuffer._member0[_330].nSrgbColor;
+ _333.nTriangleGeometry = g_instanceBuffer._member0[_330].nTriangleGeometry;
+ _333.nMaterialData = g_instanceBuffer._member0[_330].nMaterialData;
+ _333.nMaterialFlags_nInstanceFlags = g_instanceBuffer._member0[_330].nMaterialFlags_nInstanceFlags;
+ _333.fEmissiveBoost = g_instanceBuffer._member0[_330].fEmissiveBoost;
+ _333.nInstanceFlags = g_instanceBuffer._member0[_330].nInstanceFlags;
+ _333._pad1 = g_instanceBuffer._member0[_330]._pad1;
+ _333._pad2 = g_instanceBuffer._member0[_330]._pad2;
+ uint _134 = _333.nMaterialFlags_nInstanceFlags;
+ if ((int((_134 >> uint(16)) & 65535u) & 1) != 0)
{
- _129 = false;
+ _137 = false;
break;
}
- if ((int((g_instanceBuffer._m0[_338].nMaterialFlags_nInstanceFlags) & 65535u) & 2048) != 0)
+ if ((int(_134 & 65535u) & 2048) != 0)
{
- _129 = false;
+ _137 = false;
break;
}
- _129 = dot(_257, _122) > 0.0;
+ _137 = dot(_243, _129) > 0.0;
break;
} while(false);
- if (_129)
+ if (_137)
{
int nBackfacesSeen_1 = nBackfacesSeen + 1;
if (float(nBackfacesSeen_1) > 12.80000019073486328125)
@@ -278,7 +300,7 @@ RTX
{
nFlags |= 1u;
}
- g_SolidMask._m0[nIdx] = nFlags;
+ g_SolidMask._member0[nIdx] = nFlags;
break;
} while(false);
}
game/core/shaders_vulkan_dir/shaders/vfx/rtx_vrad3_vertexlight.slang
modified • +2119 / -1954 • changes: 4073
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_vulkan_dir/shaders/vfx/sampletexture_bicubic.slang
modified • +8 / -8 • changes: 16
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -132,11 +132,11 @@ PS
void MainPs_inner()
{
- uint _16185_dummy_parameter;
- uint2 _16185 = spvTextureSize(g_tInputTexture, uint(0), _16185_dummy_parameter);
- float2 _14249 = float2(int2(int(_16185.x), int(_16185.y)));
- float2 _10728 = 1.0f.xx / _14249;
- float2 _13560 = (input_0 * _14249) - 0.5f.xx;
+ uint _10352_dummy_parameter;
+ uint2 _10352 = spvTextureSize(g_tInputTexture, 0u, _10352_dummy_parameter);
+ float2 _15674 = float2(int2(int(_10352.x), int(_10352.y)));
+ float2 _18768 = 1.0f.xx / _15674;
+ float2 _13560 = (input_0 * _15674) - 0.5f.xx;
float2 _11204 = floor(_13560);
float2 _24976 = _13560 - _11204;
float _9202 = _24976.x;
@@ -151,7 +151,7 @@ PS
float2 _15076 = (_11358 / _22452) - 1.0f.xx;
float2 _14303 = (_23036 / (float2(_23690.z, _22702.z) + _23036)) + 1.0f.xx;
float4 _17001 = _22452.y.xxxx;
- output_0 = lerp(lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _14303) + 0.5f.xx) * _10728).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_14303.x, _15076.y)) + 0.5f.xx) * _10728).xy, 0.0f), _17001), lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_15076.x, _14303.y)) + 0.5f.xx) * _10728).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _15076) + 0.5f.xx) * _10728).xy, 0.0f), _17001), _22452.x.xxxx);
+ output_0 = lerp(lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _14303) + 0.5f.xx) * _18768).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_14303.x, _15076.y)) + 0.5f.xx) * _18768).xy, 0.0f), _17001), lerp(g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + float2(_15076.x, _14303.y)) + 0.5f.xx) * _18768).xy, 0.0f), g_tInputTexture.SampleLevel(Filter_MinMagLinearMipPoint, (((_11204 + _15076) + 0.5f.xx) * _18768).xy, 0.0f), _17001), _22452.x.xxxx);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/screen_texture_with_depth.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/sfm_accumulation.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/sfm_hsl_grain.slang
modified • +5 / -5 • changes: 10
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -178,10 +178,10 @@ PS
float3 _22743;
if (_Globals_1_g_flSatNoiseScale != 0.0f)
{
- float _14703 = _Globals_1_g_flHueNoiseScale * 6.0f;
- float _23729 = floor(_14703);
+ float _12281 = _Globals_1_g_flHueNoiseScale * 6.0f;
+ float _23729 = floor(_12281);
float _15688 = _8572 * (1.0f - _Globals_1_g_flSatNoiseScale);
- float _17993 = _14703 - _23729;
+ float _17993 = _12281 - _23729;
float _10560 = _8572 * (1.0f - (_Globals_1_g_flSatNoiseScale * _17993));
float _23319 = _8572 * (1.0f - (_Globals_1_g_flSatNoiseScale * (1.0f - _17993)));
float3 _12505;
game/core/shaders_vulkan_dir/shaders/vfx/sfm_volumetrics_frustum.slang
modified • +12 / -17 • changes: 29
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -36,19 +36,14 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2196 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1592 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _16
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- float4 _m0[4];
- };
-
- cbuffer _Globals_ : register(b0, space0)
- {
- _16 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
- float3 _Globals_1_m2 : packoffset(c26);
- float3 _Globals_1_m3 : packoffset(c28);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m3 : packoffset(c28);
};
@@ -81,10 +76,10 @@ VS
void MainVs_inner()
{
- float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(input_0.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- _23533.y = -_23533.y;
- gl_Position = _23533;
- output_0 = float4(input_0, dot(_Globals_1_m3, input_0.xyz - _Globals_1_m2.xyz));
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(input_0.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
+ output_0 = float4(input_0, dot(PerViewConstantBuffer_t_1_m3, input_0.xyz - PerViewConstantBuffer_t_1_m2.xyz));
output_1 = input_1;
output_2 = input_2;
output_3 = input_3;
game/core/shaders_vulkan_dir/shaders/vfx/simple_water.slang
modified • +50 / -33 • changes: 83
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -49,9 +49,9 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
ExternalDescriptorSet g_lightBinnerCpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerCpuSet"); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Texture Scrolling
float g_flNormalTexCoordRotation0 < Range(0, 6.29); UiType(Slider); UiGroup("Texture Scrolling"); >;
@@ -72,7 +72,7 @@ VS
float g_flNormalTexCoordScrollSpeedY3 < Range(-100, 100); UiType(Slider); UiGroup("Texture Scrolling"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (7004 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (6376 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -86,26 +86,33 @@ VS
float _m7;
};
- struct _1402
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _752
+ struct _1126
{
- _1402 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1528
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1528 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float PerViewConstantBuffer_t_1_m2 : packoffset(c18.w);
float4 PerViewConstantBuffer_t_1_m3 : packoffset(c24);
@@ -167,18 +174,33 @@ VS
void MainVs_inner()
{
- _1402 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14817 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _14293 = normalize(mul(_14817, float4(vNormalOs.xyz, 0.0f)));
- float3 _12861 = mul(_14817, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _14293 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));
+ float3 _12861 = mul(_19848._m0, float4(vTangentUOs_flTangentVSign.xyz, 0.0f)).xyz;
float3 _24912 = _14293.xyz;
- float3 _19938 = mul(_14817, float4(vPositionOs.xyz, 1.0f));
- float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);
+ float3 _19938 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19938.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);
float2 _5599 = _19938.xy * 0.004999999888241291046142578125f;
float2 _16550 = _5599.xy;
float2 _24040 = _16550 + (float2(_Globals_1_g_flNormalTexCoordScrollSpeedX0, _Globals_1_g_flNormalTexCoordScrollSpeedY0) * PerViewConstantBuffer_t_1_m2);
@@ -207,8 +229,8 @@ VS
output_3 = float4(float2((_11444 * _7954) + (_6462 * _12146), (_6462 * _7954) - (_11444 * _12146)).xy * _Globals_1_g_flNormalTexCoordScale2.xx.xy, float2((_11445 * _7955) + (_6463 * _12147), (_6463 * _7955) - (_11445 * _12147)).xy * _Globals_1_g_flNormalTexCoordScale3.xx.xy);
output_4 = _19938;
output_5 = float4(normalize(_12861 - (_24912 * dot(_12861, _24912))), vTangentUOs_flTangentVSign.w);
- _23894.y = -_23894.y;
- gl_Position = _23894;
+ _18256.y = -_18256.y;
+ gl_Position = _18256;
gl_ClipDistance[0] = dot(float4(_19938.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);
}
@@ -266,12 +288,7 @@ PS
float g_flNormalMapStrength < Default(1); Range(0.001, 100); UiType(Slider); UiGroup("Reflection"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (6324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
-
- struct _226
- {
- float4 _m0[4];
- };
+ // SPIR-V source (5720 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float3 _2;
static float4 _3;
@@ -295,7 +312,7 @@ PS
cbuffer ReflectionMapDescriptor_t : register(b4, space1)
{
- _226 ReflectionMapDescriptor_t_1_m0 : packoffset(c0);
+ column_major float4x4 ReflectionMapDescriptor_t_1_m0 : packoffset(c0);
float4 ReflectionMapDescriptor_t_1_m1 : packoffset(c4);
float4 ReflectionMapDescriptor_t_1_m2 : packoffset(c5);
};
@@ -342,7 +359,7 @@ PS
_24157.y = _11003.y;
float3 _23712 = normalize(_24157.xyz);
float3 _6606 = normalize((((float3(input_1.xyz).xyz * _23712.x).xyz + ((cross(normalize(input_0.xyz).xyz, input_1.xyz) * input_1.w).xyz * _23712.y)).xyz + (input_0.xyz * _23712.z)).xyz).xyz;
- float4 _19975 = mul(float4x4(float4(ReflectionMapDescriptor_t_1_m0._m0[0].x, ReflectionMapDescriptor_t_1_m0._m0[1].x, ReflectionMapDescriptor_t_1_m0._m0[2].x, ReflectionMapDescriptor_t_1_m0._m0[3].x), float4(ReflectionMapDescriptor_t_1_m0._m0[0].y, ReflectionMapDescriptor_t_1_m0._m0[1].y, ReflectionMapDescriptor_t_1_m0._m0[2].y, ReflectionMapDescriptor_t_1_m0._m0[3].y), float4(ReflectionMapDescriptor_t_1_m0._m0[0].z, ReflectionMapDescriptor_t_1_m0._m0[1].z, ReflectionMapDescriptor_t_1_m0._m0[2].z, ReflectionMapDescriptor_t_1_m0._m0[3].z), float4(ReflectionMapDescriptor_t_1_m0._m0[0].w, ReflectionMapDescriptor_t_1_m0._m0[1].w, ReflectionMapDescriptor_t_1_m0._m0[2].w, ReflectionMapDescriptor_t_1_m0._m0[3].w)), float4((input_4.xyz + ((_6606 - (_6606 * dot(ReflectionMapDescriptor_t_1_m1.xyz, _6606))) * _Globals_1_g_flNormalMapStrength)).xyz, 1.0f));
+ float4 _19975 = mul(ReflectionMapDescriptor_t_1_m0, float4((input_4.xyz + ((_6606 - (_6606 * dot(ReflectionMapDescriptor_t_1_m1.xyz, _6606))) * _Globals_1_g_flNormalMapStrength)).xyz, 1.0f));
float2 _22180 = _19975.xy * (1.0f / _19975.w);
float4 _19391 = g_tReflection.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, float2((clamp((_22180.x - (-1.0f)) * 0.5f, 0.0f, 1.0f) * (ReflectionMapDescriptor_t_1_m2.z - ReflectionMapDescriptor_t_1_m2.x)) + ReflectionMapDescriptor_t_1_m2.x, (clamp((_22180.y - 1.0f) * (-0.5f), 0.0f, 1.0f) * (ReflectionMapDescriptor_t_1_m2.w - ReflectionMapDescriptor_t_1_m2.y)) + ReflectionMapDescriptor_t_1_m2.y).xy);
float4 _18900;
game/core/shaders_vulkan_dir/shaders/vfx/skinning_cs.slang
modified • +90 / -65 • changes: 155
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -31,21 +31,23 @@ CS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
DynamicCombo( D_MORPH, 0..1 );
- DynamicCombo( D_EIGHT_BONE_SKINNING, 0..1 );
+ DynamicCombo( D_EIGHT_BONE_SKINNING, 0..2 );
DynamicCombo( D_TOOLS_VIS, 0..1 );
DynamicCombo( D_LATTICE_DEFORMER, 0..1 );
DynamicComboRule( Allow1( D_MORPH, D_LATTICE_DEFORMER ) );
cbuffer VertexCachePushConstants < Source(ExternalDescSet); Attribute("VertexCachePushConstants"); >;
- ByteAddressBuffer g_inputVB < Attribute("InputVB"); SrgbRead(false); >;
- StructuredBuffer g_instances < Attribute("Instances"); SrgbRead(false); >;
+ cbuffer VertexCachePushConstants < Source(ExternalDescSet); Attribute("VertexCachePushConstants"); >;
+ ByteAddressBuffer g_inputVB < Attribute("InputVB"); >;
+ StructuredBuffer g_instances < Attribute("Instances"); >;
int g_nMorphTextureAtlasWidth < Attribute("MorphTextureAtlasWidth"); UiType(Slider); >;
RWByteAddressBuffer g_outputVB < Attribute("OutputVB"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
+
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (11880 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (12332 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1017
{
@@ -55,14 +57,22 @@ CS
uint _m3;
};
- struct _1949
+ struct _1018
+ {
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ };
+
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _1844
+ struct _1120
{
- _1949 _m0;
+ row_major float3x4 _m0;
};
static float4 _3;
@@ -71,7 +81,7 @@ CS
ByteAddressBuffer g_inputVB : register(t36, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
RWByteAddressBuffer undetermined : register(u158, space0);
- cbuffer _1170_3444
+ cbuffer _1206_3444
{
uint _3444_m0 : packoffset(c0);
uint _3444_m1 : packoffset(c0.y);
@@ -83,6 +93,7 @@ CS
uint _3444_m7 : packoffset(c1.w);
uint _3444_m8 : packoffset(c2);
uint _3444_m9 : packoffset(c2.y);
+ uint _3444_m10 : packoffset(c2.z);
};
@@ -104,29 +115,38 @@ CS
{
break;
}
- uint _13724 = _3444_m8 + gl_GlobalInvocationID.y;
- uint _3973 = g_instances.Load(_13724 * 16 + 0) + (gl_GlobalInvocationID.x * _3444_m3);
+ _1018 _17001;
+ _17001._m0 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 0);
+ _17001._m1 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 4);
+ _17001._m2 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 8);
+ _17001._m3 = g_instances.Load((_3444_m8 + gl_GlobalInvocationID.y) * 16 + 12);
+ _1017 _20228;
+ _20228._m0 = _17001._m0;
+ _20228._m1 = _17001._m1;
+ _20228._m2 = _17001._m2;
+ _20228._m3 = _17001._m3;
+ uint _3973 = _20228._m0 + (gl_GlobalInvocationID.x * _3444_m3);
uint _20858 = _3973 + _3444_m1;
uint _6233 = g_inputVB.Load((_20858 / 4u) * 4 + 0);
uint _6234 = g_inputVB.Load(((_20858 + 4u) / 4u) * 4 + 0);
uint _14347 = g_inputVB.Load(((_20858 + 8u) / 4u) * 4 + 0);
- float4 _9716;
- float3 _24878;
+ float4 _12167;
+ float3 _24254;
do
{
if (_3444_m6 == 4294967295u)
{
- _9716 = float4(0.0f, 0.0f, 1.0f, 1.0f);
- _24878 = float3(0.0f, 1.0f, 0.0f);
+ _12167 = float4(0.0f, 0.0f, 1.0f, 1.0f);
+ _24254 = float3(0.0f, 1.0f, 0.0f);
break;
}
float4 _13212;
float3 _15670;
if (_3444_m7 == 4294967295u)
{
- uint _23043 = uint(int(_3973 + _3444_m6)) / 4u;
- float _22483 = (float((g_inputVB.Load(_23043 * 4 + 0) >> 12u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;
- float _7589 = (float((g_inputVB.Load(_23043 * 4 + 0) >> 22u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;
+ uint _12586 = (_3973 + _3444_m6) / 4u;
+ float _22483 = (float((g_inputVB.Load(_12586 * 4 + 0) >> 12u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;
+ float _7589 = (float((g_inputVB.Load(_12586 * 4 + 0) >> 22u) & 1023u) * 0.00195503421127796173095703125f) - 1.0f;
float _23404 = (1.0f - abs(_22483)) - abs(_7589);
float3 _8254 = float3(_22483, _7589, _23404);
float _24228 = clamp(-_23404, 0.0f, 1.0f);
@@ -143,8 +163,8 @@ CS
float _16417 = (-1.0f) / (_8220 + _6384);
float _14755 = _21001.x;
float3 _23176 = float3(1.0f + (((_8220 * _14755) * _14755) * _16417), _8220 * ((_14755 * _21001.y) * _16417), (-_8220) * _14755);
- float _23966 = float((g_inputVB.Load(_23043 * 4 + 0) >> uint(1)) & 2047u) * 0.003069460391998291015625f;
- _13212 = float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_inputVB.Load(_23043 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f);
+ float _23966 = float((g_inputVB.Load(_12586 * 4 + 0) >> uint(1)) & 2047u) * 0.003069460391998291015625f;
+ _13212 = float4((_23176 * cos(_23966)) + (cross(_21001, _23176) * sin(_23966)), ((g_inputVB.Load(_12586 * 4 + 0) & 1u) == 0u) ? (-1.0f) : 1.0f);
_15670 = _21001;
}
else
@@ -163,38 +183,38 @@ CS
_13212 = _12501;
_15670 = asfloat(uint3(g_inputVB.Load((_18914 / 4u) * 4 + 0), g_inputVB.Load(((_18914 + 4u) / 4u) * 4 + 0), g_inputVB.Load(((_18914 + 8u) / 4u) * 4 + 0)));
}
- _9716 = _13212;
- _24878 = _15670;
+ _12167 = _13212;
+ _24254 = _15670;
break;
} while(false);
- uint _3718 = g_instances.Load(_13724 * 16 + 8) & 15u;
+ uint _3718 = _20228._m2 & 15u;
uint4 _18844;
if (_3444_m2 < 4294967295u)
{
uint4 _12503;
if (_3444_m4 == 16u)
{
- uint _21337 = _3973 + _3444_m2;
- uint _12586 = _21337 / 4u;
- uint _6759 = (_21337 + 4u) / 4u;
- _12503 = uint4(g_inputVB.Load(_12586 * 4 + 0) & 65535u, g_inputVB.Load(_12586 * 4 + 0) >> uint(16), g_inputVB.Load(_6759 * 4 + 0) & 65535u, g_inputVB.Load(_6759 * 4 + 0) >> uint(16));
+ uint _21339 = _3973 + _3444_m2;
+ uint _12589 = _21339 / 4u;
+ uint _6759 = (_21339 + 4u) / 4u;
+ _12503 = uint4(g_inputVB.Load(_12589 * 4 + 0) & 65535u, g_inputVB.Load(_12589 * 4 + 0) >> uint(16), g_inputVB.Load(_6759 * 4 + 0) & 65535u, g_inputVB.Load(_6759 * 4 + 0) >> uint(16));
}
else
{
uint4 _12502;
if (_3444_m4 == 10u)
{
- uint _23045 = uint(int(_3973 + _3444_m2)) / 4u;
+ uint _12588 = (_3973 + _3444_m2) / 4u;
uint4 _25107 = uint4(4294967295u, 4294967295u, 4294967295u, 4294967295u);
- _25107.x = g_inputVB.Load(_23045 * 4 + 0) & 1023u;
- _25107.y = (g_inputVB.Load(_23045 * 4 + 0) >> uint(10)) & 1023u;
- _25107.z = (g_inputVB.Load(_23045 * 4 + 0) >> uint(20)) & 1023u;
+ _25107.x = g_inputVB.Load(_12588 * 4 + 0) & 1023u;
+ _25107.y = (g_inputVB.Load(_12588 * 4 + 0) >> uint(10)) & 1023u;
+ _25107.z = (g_inputVB.Load(_12588 * 4 + 0) >> uint(20)) & 1023u;
_12502 = _25107;
}
else
{
- uint _23044 = uint(int(_3973 + _3444_m2)) / 4u;
- _12502 = uint4(g_inputVB.Load(_23044 * 4 + 0) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(8)) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(16)) & 255u, (g_inputVB.Load(_23044 * 4 + 0) >> uint(24)) & 255u);
+ uint _12587 = (_3973 + _3444_m2) / 4u;
+ _12502 = uint4(g_inputVB.Load(_12587 * 4 + 0) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(8)) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(16)) & 255u, (g_inputVB.Load(_12587 * 4 + 0) >> uint(24)) & 255u);
}
_12503 = _12502;
}
@@ -209,28 +229,38 @@ CS
float4 _11521;
if (_3444_m5 < 4294967295u)
{
- uint _23046 = uint(int(_3973 + _3444_m5)) / 4u;
- _11521 = float4(float(g_inputVB.Load(_23046 * 4 + 0) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(8)) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(16)) & 255u), float((g_inputVB.Load(_23046 * 4 + 0) >> uint(24)) & 255u)) * 0.0039215688593685626983642578125f;
+ float4 _12504;
+ if (_3444_m10 != 0u)
+ {
+ uint _21340 = _3973 + _3444_m5;
+ uint _12591 = _21340 / 4u;
+ uint _12369 = (_21340 + 4u) / 4u;
+ _12504 = float4(float(g_inputVB.Load(_12591 * 4 + 0) & 65535u), float((g_inputVB.Load(_12591 * 4 + 0) >> uint(16)) & 65535u), float(g_inputVB.Load(_12369 * 4 + 0) & 65535u), float((g_inputVB.Load(_12369 * 4 + 0) >> uint(16)) & 65535u)) * 1.525902189314365386962890625e-05f;
+ }
+ else
+ {
+ uint _12590 = (_3973 + _3444_m5) / 4u;
+ _12504 = float4(float(g_inputVB.Load(_12590 * 4 + 0) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(8)) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(16)) & 255u), float((g_inputVB.Load(_12590 * 4 + 0) >> uint(24)) & 255u)) * 0.0039215688593685626983642578125f;
+ }
+ _11521 = _12504;
}
else
{
_11521 = _19210;
}
- int _12463 = int(g_instances.Load(_13724 * 16 + 8) >> uint(4));
+ int _12463 = int(_20228._m2 >> uint(4));
uint4 _24078 = _18844;
float4 _14049 = _11521;
float3x4 _20691;
if (_18844.x < 4294967295u)
{
uint _13628 = uint(_12463 + 2);
- _1949 _25208;
- [unroll]
- for (int _3ident = 0; _3ident < 3; _3ident++)
- {
- _25208._m0[_3ident] = asfloat(g_transformBuffer.Load4(_3ident * 16 + (_13628 + _18844.x) * 48 + 0));
- }
+ _1120 _17002;
+ _17002._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 0), g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 16), g_transformBuffer.Load4((_13628 + _18844.x) * 48 + 32)));
+ _1119 _20230;
+ _20230._m0 = _17002._m0;
float3x4 _13155;
- _13155 = float3x4(_25208._m0[0] * _11521.x, _25208._m0[1] * _11521.x, _25208._m0[2] * _11521.x);
+ _13155 = float3x4(_20230._m0[0] * _11521.x, _20230._m0[1] * _11521.x, _20230._m0[2] * _11521.x);
uint _18440;
float3x4 _25251;
uint _16208 = 1u;
@@ -240,13 +270,11 @@ CS
{
break;
}
- _1949 _25209;
- [unroll]
- for (int _4ident = 0; _4ident < 3; _4ident++)
- {
- _25209._m0[_4ident] = asfloat(g_transformBuffer.Load4(_4ident * 16 + (_13628 + _24078[_16208]) * 48 + 0));
- }
- _25251 = float3x4(_13155[0] + (_25209._m0[0] * _14049[_16208]), _13155[1] + (_25209._m0[1] * _14049[_16208]), _13155[2] + (_25209._m0[2] * _14049[_16208]));
+ _1120 _17003;
+ _17003._m0 = asfloat(uint3x4(g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 0), g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 16), g_transformBuffer.Load4((_13628 + _24078[_16208]) * 48 + 32)));
+ _1119 _20231;
+ _20231._m0 = _17003._m0;
+ _25251 = float3x4(_13155[0] + (_20231._m0[0] * _14049[_16208]), _13155[1] + (_20231._m0[1] * _14049[_16208]), _13155[2] + (_20231._m0[2] * _14049[_16208]));
_18440 = _16208 + 1u;
_13155 = _25251;
_16208 = _18440;
@@ -256,16 +284,14 @@ CS
}
else
{
- _1949 _25207;
- [unroll]
- for (int _5ident = 0; _5ident < 3; _5ident++)
- {
- _25207._m0[_5ident] = asfloat(g_transformBuffer.Load4(_5ident * 16 + _12463 * 48 + 0));
- }
- _20691 = float3x4(_25207._m0[0] * _11521.x, _25207._m0[1] * _11521.x, _25207._m0[2] * _11521.x);
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_12463 * 48 + 0), g_transformBuffer.Load4(_12463 * 48 + 16), g_transformBuffer.Load4(_12463 * 48 + 32)));
+ _1119 _20229;
+ _20229._m0 = _8152._m0;
+ _20691 = float3x4(_20229._m0[0] * _11521.x, _20229._m0[1] * _11521.x, _20229._m0[2] * _11521.x);
}
- float3 _11198 = normalize(mul(_20691, float4(_24878.xyz, 0.0f)));
- float3 _19629 = mul(_20691, float4(_9716.xyz, 0.0f));
+ float3 _11198 = normalize(mul(_20691, float4(_24254.xyz, 0.0f)));
+ float3 _19629 = mul(_20691, float4(_12167.xyz, 0.0f));
float3 _19000 = _11198 / ((abs(_11198.x) + abs(_11198.y)) + abs(_11198.z)).xxx;
float2 _19321;
if (_19000.z >= 0.0f)
@@ -290,14 +316,13 @@ CS
bool2 _19838 = bool2(_8489.x >= 0.0f.xx.x, _8489.y >= 0.0f.xx.y);
_19322 = (1.0f.xx - abs(_19001.yx)) * float2(_19838.x ? 1.0f.xx.x : (-1.0f).xx.x, _19838.y ? 1.0f.xx.y : (-1.0f).xx.y);
}
- uint _15034 = g_instances.Load(_13724 * 16 + 4);
- uint _5273 = 24u * (gl_GlobalInvocationID.x + _15034);
+ uint _5273 = 24u * (gl_GlobalInvocationID.x + _20228._m1);
uint3 _9171 = asuint(mul(_20691, float4(asfloat(uint3(_6233, _6234, _14347)), 1.0f)));
undetermined.Store((_5273 / 4u) * 4 + 0, _9171.x);
undetermined.Store(((_5273 + 4u) / 4u) * 4 + 0, _9171.y);
undetermined.Store(((_5273 + 8u) / 4u) * 4 + 0, _9171.z);
- undetermined.Store(((_5273 + 12u) / 4u) * 4 + 0, (uint((clamp(clamp((_19321.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f)) | (uint((clamp(clamp((_19321.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) << uint(16)));
- undetermined.Store(((_5273 + 16u) / 4u) * 4 + 0, (uint((_9716.w < 0.0f) ? 0 : 1) | (uint((clamp(clamp((_19322.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(1))) | (uint((clamp(clamp((_19322.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(16)));
+ undetermined.Store(((_5273 + 12u) / 4u) * 4 + 0, uint((clamp(clamp((_19321.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) | (uint((clamp(clamp((_19321.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 65535.0f) + 0.5f) << uint(16)));
+ undetermined.Store(((_5273 + 16u) / 4u) * 4 + 0, (uint((_12167.w < 0.0f) ? 0 : 1) | (uint((clamp(clamp((_19322.x * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(1))) | (uint((clamp(clamp((_19322.y * 0.5f) + 0.5f, 0.0f, 1.0f), 0.0f, 1.0f) * 32767.0f) + 0.5f) << uint(16)));
undetermined.Store(((_5273 + 20u) / 4u) * 4 + 0, 0u);
break;
} while(false);
game/core/shaders_vulkan_dir/shaders/vfx/sky.slang
modified • +37 / -31 • changes: 68
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = false;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -42,50 +42,56 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
float4x4 g_matSkyWsToOs < Attribute("SkyWsToOs"); >;
- // SPIR-V reflection failed for backend HLSL:
- // cbuffer ID 4459 (name: PerViewConstantBuffer_t), member index 1 (name: _m1) cannot be expressed with either HLSL packing layout or packoffset.
- //
- // Re-attempting reflection with the GLSL backend.
-
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2812 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1684 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- #version 460
-
- struct anon_g_matSkyWsToOs
+ cbuffer _Globals_ : register(b0, space0)
{
- vec4 _m0[4];
+ column_major float4x4 _Globals_1_g_matSkyWsToOs : packoffset(c0);
};
- struct _1915
+ cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- anon_g_matSkyWsToOs g_matSkyWsToOs;
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float PerViewConstantBuffer_t_1_m1 : packoffset(c23.z);
+ float PerViewConstantBuffer_t_1_m2 : packoffset(c23.w);
+ float4 PerViewConstantBuffer_t_1_m3 : packoffset(c24);
+ float3 PerViewConstantBuffer_t_1_m4 : packoffset(c26);
};
- layout(set = 0) uniform _1915 _Globals_;
- struct _2151
+ static float4 gl_Position;
+ static float4 vPositionOs;
+ static float3 output_0;
+
+ struct VS_INPUT
{
- anon_g_matSkyWsToOs _m0;
- float _m1;
- float _m2;
- vec4 _m3;
- vec3 _m4;
+ float4 vPositionOs : TEXCOORD0;
};
- layout(set = 0) uniform _2151 PerViewConstantBuffer_t;
-
- layout(location = 0) in vec4 vPositionOs;
- layout(location = 0) out vec3 output_0;
+ struct PS_INPUT
+ {
+ float3 output_0 : TEXCOORD0;
+ float4 gl_Position : SV_Position;
+ };
- void main()
+ void MainVs_inner()
{
- vec4 _23552 = (vec4((PerViewConstantBuffer_t._m4.xyz + (vPositionOs.xyz * (PerViewConstantBuffer_t._m1 + PerViewConstantBuffer_t._m2))).xyz, 1.0) + (PerViewConstantBuffer_t._m3 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- output_0 = normalize((mat4(vec4(_Globals_.g_matSkyWsToOs._m0[0].x, _Globals_.g_matSkyWsToOs._m0[1].x, _Globals_.g_matSkyWsToOs._m0[2].x, _Globals_.g_matSkyWsToOs._m0[3].x), vec4(_Globals_.g_matSkyWsToOs._m0[0].y, _Globals_.g_matSkyWsToOs._m0[1].y, _Globals_.g_matSkyWsToOs._m0[2].y, _Globals_.g_matSkyWsToOs._m0[3].y), vec4(_Globals_.g_matSkyWsToOs._m0[0].z, _Globals_.g_matSkyWsToOs._m0[1].z, _Globals_.g_matSkyWsToOs._m0[2].z, _Globals_.g_matSkyWsToOs._m0[3].z), vec4(_Globals_.g_matSkyWsToOs._m0[0].w, _Globals_.g_matSkyWsToOs._m0[1].w, _Globals_.g_matSkyWsToOs._m0[2].w, _Globals_.g_matSkyWsToOs._m0[3].w)) * vec4(vPositionOs.xyz, 0.0)).xyz);
- _23552.y = -_23552.y;
- gl_Position = _23552;
+ float4 _17914 = mul(PerViewConstantBuffer_t_1_m0, (float4((PerViewConstantBuffer_t_1_m4.xyz + (vPositionOs.xyz * (PerViewConstantBuffer_t_1_m1 + PerViewConstantBuffer_t_1_m2))).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m3 * 1.0f)).xyzw);
+ output_0 = normalize(mul(float4(vPositionOs.xyz, 0.0f), _Globals_1_g_matSkyWsToOs).xyz);
+ _17914.y = -_17914.y;
+ gl_Position = _17914;
}
+ PS_INPUT MainVs(VS_INPUT stage_input)
+ {
+ vPositionOs = stage_input.vPositionOs;
+ MainVs_inner();
+ PS_INPUT stage_output;
+ stage_output.gl_Position = gl_Position;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
// --------- SPIRV -> HLSL end ---------
@@ -140,7 +146,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 2 (name: g_vTint) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/slang_syntax_test.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/solidcolor.slang
modified • +50 / -27 • changes: 77
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -56,12 +56,12 @@ VS
DynamicComboRule( Requires( D_MORPH, S_MORPH_SUPPORTED ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4352 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3660 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -75,42 +75,49 @@ VS
float _m7;
};
- struct _1360
+ struct _1126
{
- float4 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _668
+ struct _1119
{
- _1360 _m0;
+ float3x4 _m0;
};
- struct _1486
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1486 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
};
static float4 gl_Position;
static float gl_ClipDistance[1];
- static float3 vPositionOs;
- static uint nInstanceIdx;
+ static uint vPositionOs;
+ static float3 nInstanceIdx;
static float3 output_0;
static float4 output_1;
struct VS_INPUT
{
- float3 vPositionOs : TEXCOORD0;
- uint nInstanceIdx : TEXCOORD4;
+ float3 nInstanceIdx : TEXCOORD0;
+ uint vPositionOs : TEXCOORD4;
};
struct PS_INPUT
@@ -123,7 +130,25 @@ VS
void MainVs_inner()
{
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(vPositionOs * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(vPositionOs * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(vPositionOs * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(vPositionOs * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(vPositionOs * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(vPositionOs * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(vPositionOs * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(vPositionOs * 32 + 28));
+ _1125 _22470;
+ _22470._m0 = _24007._m0;
+ _22470._m1 = _24007._m1;
+ _22470._m2 = _24007._m2;
+ _22470._m3 = _24007._m3;
+ _22470._m4 = _24007._m4;
+ _22470._m5 = _24007._m5;
+ _22470._m6 = _24007._m6;
+ _22470._m7 = _24007._m7;
+ float4 _23812 = float4(uint4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -154,18 +179,16 @@ VS
{
_19302 = _7676.z;
}
- _1360 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3 _19937 = mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f));
- float4 _23894 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_22470._m1 * 48 + 0), g_transformBuffer.Load4(_22470._m1 * 48 + 16), g_transformBuffer.Load4(_22470._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _19937 = mul(_19848._m0, float4(nInstanceIdx.xyz, 1.0f));
+ float4 _18256 = mul(PerViewConstantBuffer_t_1_m0, (float4(_19937.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m2 * 1.0f)).xyzw);
output_0 = _19937;
output_1 = float4(_21354, _21355, _19302, _23812.w);
- _23894.y = -_23894.y;
- gl_Position = _23894;
+ _18256.y = -_18256.y;
+ gl_Position = _18256;
gl_ClipDistance[0] = dot(float4(_19937.xyz, 1.0f), PerViewConstantBuffer_t_1_m1.xyzw);
}
game/core/shaders_vulkan_dir/shaders/vfx/spritecard.slang
modified • +85 / -93 • changes: 178
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_41
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -55,41 +55,35 @@ VS
StaticCombo( S_TEXTURE_LAYERS, F_TEXTURE_LAYERS );
StaticComboRule( Requires( S_ADDRESS_V_CLAMP, S_DRAW_AS_TRAIL ) );
StaticComboRule( Requires( S_ADDRESS_V_CLAMP, S_DRAW_AS_TRAIL ) );
- DynamicCombo( D_FORCE_LEGACY_SHADER_MODEL, 0, Sys( 0 ) );
DynamicCombo( D_SUPPORT_FRAME_CROP, 0..1 );
DynamicComboRule( Requires( D_SUPPORT_FRAME_CROP, S_NUM_SEQUENCES_PER_PARTICLE ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
cbuffer SpriteCardPixelControls_t < Attribute("SpriteCardPixelControls_t"); >;
cbuffer SpritecardVertexControls_t < Attribute("SpritecardVertexControls_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
Texture2D g_tParticleSheetTexture < Attribute("SheetTexture"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (32080 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
-
- struct _1822
- {
- float4 _m0[4];
- };
+ // SPIR-V source (31368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float _4;
static float4 _5;
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1822 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c17);
- float4 _Globals_1_m2 : packoffset(c24);
- float3 _Globals_1_m3 : packoffset(c26);
- float3 _Globals_1_m4 : packoffset(c27);
- float3 _Globals_1_m5 : packoffset(c28);
- float3 _Globals_1_m6 : packoffset(c31);
- float _Globals_1_m7 : packoffset(c31.w);
- float _Globals_1_m8 : packoffset(c32);
- float _Globals_1_m9 : packoffset(c32.y);
- float _Globals_1_m10 : packoffset(c32.z);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c17);
+ float4 PerViewConstantBuffer_t_1_m2 : packoffset(c24);
+ float3 PerViewConstantBuffer_t_1_m3 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m4 : packoffset(c27);
+ float3 PerViewConstantBuffer_t_1_m5 : packoffset(c28);
+ float3 PerViewConstantBuffer_t_1_m6 : packoffset(c31);
+ float PerViewConstantBuffer_t_1_m7 : packoffset(c31.w);
+ float PerViewConstantBuffer_t_1_m8 : packoffset(c32);
+ float PerViewConstantBuffer_t_1_m9 : packoffset(c32.y);
+ float PerViewConstantBuffer_t_1_m10 : packoffset(c32.z);
};
cbuffer SpritecardVertexControls_t : register(b4, space0)
@@ -113,10 +107,10 @@ VS
float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);
};
- cbuffer SunLightShaderParamsCB : register(b2, space0)
+ cbuffer SunLightShaderParamsCB_t : register(b2, space0)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
@@ -161,12 +155,13 @@ VS
float _21640 = (input_0.y * (-0.5f)) + 0.5f;
float2 _11357 = float2(SpritecardVertexControls_t_1_m4.xy);
float2 _13745 = float2(SpritecardVertexControls_t_1_m4.zw);
- int _15395 = int(SpritecardVertexControls_t_1_m3.x) & 31;
- float _15588 = float((_15395 >> 4) & 1);
- int _9492 = int(SpritecardVertexControls_t_1_m5.x) & 65535;
- uint _23817 = uint(_9492 & 15);
- uint _12834 = uint(_15395 & 15);
- uint _15498 = uint(int(SpritecardVertexControls_t_1_m3.y) & 15);
+ int _14313 = int(SpritecardVertexControls_t_1_m3.x);
+ float _15588 = float(((_14313 & 31) >> 4) & 1);
+ int _9472 = int(SpritecardVertexControls_t_1_m5.x);
+ uint _11757 = uint(_9472 & 15);
+ uint _12834 = uint(_14313 & 15);
+ uint _14729 = uint(int(SpritecardVertexControls_t_1_m3.y) & 15);
+ int _10221 = _9472 & 65535;
int _20704 = int(SpritecardVertexControls_t_1_m3.z);
uint _23505 = uint((_20704 >> 12) & 15);
uint _14700 = uint((int(SpriteCardPixelControls_t_1_m1.y) >> 16) & 15);
@@ -180,7 +175,7 @@ VS
{
float _13181;
bool _16061;
- switch (_23817)
+ switch (_11757)
{
case 1u:
{
@@ -383,7 +378,7 @@ VS
{
float _13183;
bool _16063;
- switch (_15498)
+ switch (_14729)
{
case 1u:
{
@@ -591,7 +586,7 @@ VS
{
float _13174;
bool _16054;
- switch (_23817)
+ switch (_11757)
{
case 1u:
{
@@ -793,7 +788,7 @@ VS
{
float _13176;
bool _16056;
- switch (_15498)
+ switch (_14729)
{
case 1u:
{
@@ -894,7 +889,7 @@ VS
{
float _13177;
bool _16057;
- switch (uint((_9492 >> 4) & 15))
+ switch (uint((_10221 >> 4) & 15))
{
case 1u:
{
@@ -1004,7 +999,7 @@ VS
{
float _13178;
bool _16058;
- switch (uint((_9492 >> 8) & 15))
+ switch (uint((_10221 >> 8) & 15))
{
case 1u:
{
@@ -1109,7 +1104,7 @@ VS
{
float _13179;
bool _16059;
- switch (uint((_9492 >> 12) & 15))
+ switch (uint((_10221 >> 12) & 15))
{
case 1u:
{
@@ -1565,10 +1560,10 @@ VS
_19494 = _7676.z;
}
float4 _25152 = lerp(input_2, float4(float3(_21354, _21355, _19494), input_2.w), float((_20704 >> 8) & 15).xxxx);
- float3 _17858 = cross(_Globals_1_m5, _Globals_1_m4);
- float _8663 = cos(input_4.x);
+ float3 _17858 = cross(PerViewConstantBuffer_t_1_m5, PerViewConstantBuffer_t_1_m4);
+ float _8664 = cos(input_4.x);
float _23279 = sin(input_4.x);
- float3 _18015 = (_Globals_1_m4 * _8663) - (_17858 * _23279);
+ float3 _18015 = (PerViewConstantBuffer_t_1_m4 * _8664) - (_17858 * _23279);
float _19825 = sin(input_4.y);
float _8898 = cos(input_4.y);
float _9794 = _18015.x;
@@ -1577,14 +1572,14 @@ VS
float _7331 = _24619 * _24619;
float _6498 = _18015.z;
float _17752 = _6498 * _6498;
- float _22876 = 1.0f - _8898;
- float _10185 = (_9794 * _24619) * _22876;
+ float _22875 = 1.0f - _8898;
+ float _10185 = (_9794 * _24619) * _22875;
float _21408 = _6498 * _19825;
- float _6451 = (_6498 * _9794) * _22876;
+ float _6451 = (_6498 * _9794) * _22875;
float _22637 = _24619 * _19825;
- float _6426 = (_24619 * _6498) * _22876;
+ float _6426 = (_24619 * _6498) * _22875;
float _22945 = _9794 * _19825;
- float _20054 = length(_Globals_1_m3.xyz - input_3.xyz);
+ float _20054 = length(PerViewConstantBuffer_t_1_m3.xyz - input_3.xyz);
float _10020;
float4 _24447;
if (SpritecardVertexControls_t_1_m2.z > 0.0f)
@@ -1616,39 +1611,35 @@ VS
_10020 = input_4.w;
_24447 = _25152;
}
- float _13915 = (_24447.w < 0.0039215688593685626983642578125f) ? 0.0f : _10020;
- float4 _13105 = _24447;
- _13105.w = _24447.w * lerp(1.0f, input_4.w / _13915, SpritecardVertexControls_t_1_m2.w);
- float3 _23592 = input_3.xyz + (((mul(float3x3(float3(_21121 + ((1.0f - _21121) * _8898), _10185 - _21408, _6451 + _22637), float3(_10185 + _21408, _7331 + ((1.0f - _7331) * _8898), _6426 - _22945), float3(_6451 - _22637, _6426 + _22945, _17752 + ((1.0f - _17752) * _8898))), (_17858 * _8663) + (_Globals_1_m4 * _23279)) * (input_0.x + SpritecardVertexControls_t_1_m1.y)) + (_18015 * (input_0.y + SpritecardVertexControls_t_1_m1.z))) * _13915);
- float3 _7336 = _23592.xyz;
+ float3 _19802 = input_3.xyz + (((mul(float3x3(float3(_21121 + ((1.0f - _21121) * _8898), _10185 - _21408, _6451 + _22637), float3(_10185 + _21408, _7331 + ((1.0f - _7331) * _8898), _6426 - _22945), float3(_6451 - _22637, _6426 + _22945, _17752 + ((1.0f - _17752) * _8898))), (_17858 * _8664) + (PerViewConstantBuffer_t_1_m4 * _23279)) * (input_0.x + SpritecardVertexControls_t_1_m1.y)) + (_18015 * (input_0.y + SpritecardVertexControls_t_1_m1.z))) * ((_24447.w < 0.0039215688593685626983642578125f) ? 0.0f : _10020));
+ float3 _7336 = _19802.xyz;
float4 _8056 = float4(_7336, 1.0f);
- float4 _21447 = _Globals_1_m2 * 1.0f;
- float4x4 _15571 = float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w));
- float4 _23913 = mul(_15571, (_8056 + _21447).xyzw);
- float4 _8847 = mul(_15571, (float4((_23592 + (_Globals_1_m5 * SpritecardVertexControls_t_1_m1.x)).xyz, 1.0f) + _21447).xyzw);
- float4 _15598 = _23913;
- _15598.z = max(_23913.w * (_8847.z / _8847.w), min(0.001000000047497451305389404296875f, _23913.z));
+ float4 _21447 = PerViewConstantBuffer_t_1_m2 * 1.0f;
+ float4 _18275 = mul(PerViewConstantBuffer_t_1_m0, (_8056 + _21447).xyzw);
+ float4 _8847 = mul(PerViewConstantBuffer_t_1_m0, (float4((_19802 + (PerViewConstantBuffer_t_1_m5 * SpritecardVertexControls_t_1_m1.x)).xyz, 1.0f) + _21447).xyzw);
+ float4 _15598 = _18275;
+ _15598.z = max(_18275.w * (_8847.z / _8847.w), min(0.001000000047497451305389404296875f, _18275.z));
float3 _21709;
- if (!(SpriteCardPixelControls_t_1_m0.w == (-1.0f)))
+ if (SpriteCardPixelControls_t_1_m0.w != (-1.0f))
{
- float3 _14744 = normalize(-(_7336 - _Globals_1_m3.xyz).xyz).xyz;
+ float3 _14744 = normalize(-(_7336 - PerViewConstantBuffer_t_1_m3.xyz).xyz).xyz;
float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
- _21709 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _Globals_1_m6.xyz, clamp(min(_Globals_1_m9, pow(clamp((distance(_23592.xyz, _Globals_1_m3.xyz) * _Globals_1_m8) + _Globals_1_m7, 0.0f, 1.0f), _Globals_1_m10)), 0.0f, 1.0f).xxx);
+ _21709 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, PerViewConstantBuffer_t_1_m6.xyz, clamp(min(PerViewConstantBuffer_t_1_m9, pow(clamp((distance(_19802.xyz, PerViewConstantBuffer_t_1_m3.xyz) * PerViewConstantBuffer_t_1_m8) + PerViewConstantBuffer_t_1_m7, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m10)), 0.0f, 1.0f).xxx);
}
else
{
_21709 = 0.0f.xxx;
}
output_0 = _20091;
- output_1 = _13105;
+ output_1 = _24447;
output_2 = _21709;
- output_3 = _23592;
+ output_3 = _19802;
output_4 = 0.0f.xxx;
output_5 = _20655;
- _15598.y = -_23913.y;
+ _15598.y = -_18275.y;
gl_Position = _15598;
- gl_ClipDistance[0] = dot(_8056, _Globals_1_m1.xyzw);
+ gl_ClipDistance[0] = dot(_8056, PerViewConstantBuffer_t_1_m1.xyzw);
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -1691,7 +1682,6 @@ PS
StaticCombo( S_TEXTURE_LAYERS, F_TEXTURE_LAYERS );
StaticComboRule( Allow1( S_MODE_DEPTH, S_OPAQUE ) );
StaticComboRule( Allow1( S_REFRACT, S_TEXTURE_LAYERS ) );
- DynamicCombo( D_FORCE_LEGACY_SHADER_MODEL, 0, Sys( 0 ) );
DynamicCombo( D_DEPTH_FEATHERING, 0..1 );
DynamicCombo( D_FASTPATH, 0..1 );
DynamicComboRule( Allow1( S_MODE_DEPTH, D_DEPTH_FEATHERING ) );
@@ -1709,7 +1699,7 @@ PS
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
cbuffer SpriteCardPixelControls_t < Attribute("SpriteCardPixelControls_t"); >;
RenderState(SrcBlend, F_MOD2X ? DestColor : One);
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
Texture2D g_tBaseTexture < Attribute("BaseTexture"); SrgbRead(true); >;
Texture2D g_tBaseTextureNoSRGB < Attribute("BaseTexture"); SrgbRead(false); >;
Texture2D g_tDepthTexture < Attribute("SceneDepth"); SrgbRead(false); >;
@@ -1719,14 +1709,14 @@ PS
Texture2D g_tTextureLayer3 < Attribute("TextureLayer3"); SrgbRead(true); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (21764 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (21716 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float _2;
static float4 _3;
static float4 _4;
- static const float2 _2136[15] = { float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, 0.0f.xx, 0.0f.xx };
- static const float3 _797[15] = { 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), float3(1.0f, 0.0f, 0.0f), float3(1.0f, 0.0f, 1.0f), 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx };
+ static const float3 _941[15] = { 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), float3(1.0f, 0.0f, 0.0f), float3(1.0f, 0.0f, 1.0f), 0.0f.xxx, 0.0f.xxx, float3(0.0f, 1.0f, 0.0f), 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx, 0.0f.xxx };
+ static const float2 _2235[15] = { float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, float2(0.0f, 1.0f), 0.0f.xx, float2(1.0f, 0.0f), float2(1.0f, 0.0f), float2(1.0f, 0.0f), 0.0f.xx, 0.0f.xx, 0.0f.xx };
cbuffer SpriteCardPixelControls_t : register(b3, space1)
{
@@ -1746,26 +1736,26 @@ PS
float4 RoughnessLightingGlobalsCB_t_1_m0 : packoffset(c0);
};
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float _Globals_1_m0 : packoffset(c18);
- float3 _Globals_1_m1 : packoffset(c26);
- float3 _Globals_1_m2 : packoffset(c31);
- float _Globals_1_m3 : packoffset(c31.w);
- float _Globals_1_m4 : packoffset(c32);
- float _Globals_1_m5 : packoffset(c32.y);
- float _Globals_1_m6 : packoffset(c32.z);
+ float PerViewConstantBuffer_t_1_m0 : packoffset(c18);
+ float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c31);
+ float PerViewConstantBuffer_t_1_m3 : packoffset(c31.w);
+ float PerViewConstantBuffer_t_1_m4 : packoffset(c32);
+ float PerViewConstantBuffer_t_1_m5 : packoffset(c32.y);
+ float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
- cbuffer SunLightShaderParamsCB : register(b2, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b2, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
- SamplerState Filter_MinMagMipLinear_MaxAniso_1 : register(s15, space1);
- SamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_MaxAniso_1 : register(s17, space1);
Texture2D<float4> g_tBaseTexture : register(t32, space1);
+ SamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear_MaxAniso_1 : register(s17, space1);
+ SamplerState Filter_MinMagMipLinear_MaxAniso_1 : register(s15, space1);
static float4 input_0;
static float4 input_1;
@@ -1805,14 +1795,15 @@ PS
{
_21709 = g_tBaseTexture.Sample(Filter_MinMagMipLinear_MaxAniso_1, _15476.xy);
}
- int _9492 = int(SpriteCardPixelControls_t_1_m8.x) & 255;
- uint _6863 = uint(_9492 & 15);
- uint _23505 = uint((_9492 >> 4) & 15);
+ int _18311 = int(SpriteCardPixelControls_t_1_m8.x);
+ int _23893 = _18311 & 15;
+ uint _23505 = uint(((_18311 & 255) >> 4) & 15);
float4 _12885;
do
{
float4 _13174;
bool _16054;
+ [branch]
switch (uint((int(SpriteCardPixelControls_t_1_m8.y) >> 16) & 15))
{
case 0u:
@@ -1853,7 +1844,7 @@ PS
break;
} while(false);
float4 _10911 = lerp(_19630.xyzw, _12905.xyzw, (_16439 * _16439).xxxx);
- _10911.w = lerp(_21709.w, _10911.w, float(_797[int(_6863)].y != 1.0f));
+ _10911.w = lerp(_21709.w, _10911.w, float(_941[_23893].y != 1.0f));
_13174 = _10911;
_16054 = true;
break;
@@ -1949,7 +1940,7 @@ PS
{
_19457 = _9166.y;
}
- float2 _20342 = _15476.xy - (((float3(_23035, _19457, _2).xy - 0.5f.xx) * 2.0f) * (((SpriteCardPixelControls_t_1_m6.w * input_0.w) * 0.125f) * lerp(_21709.w, _10910.w, float(_797[int(_6863)].y != 1.0f))));
+ float2 _20342 = _15476.xy - (((float3(_23035, _19457, _2).xy - 0.5f.xx) * 2.0f) * (((SpriteCardPixelControls_t_1_m6.w * input_0.w) * 0.125f) * lerp(_21709.w, _10910.w, float(_941[_23893].y != 1.0f))));
float4 _12501;
do
{
@@ -1967,9 +1958,8 @@ PS
}
case 2u:
{
- int _8289 = int(_6863);
- float4 _20655 = _2136[_8289].y.xxxx;
- float4 _9219 = lerp(lerp(float4(_21709.xyz * _21709.www, 1.0f), _21709, _2136[_8289].x.xxxx), _21709.wwww, _20655);
+ float4 _20655 = _2235[_23893].y.xxxx;
+ float4 _9219 = lerp(lerp(float4(_21709.xyz * _21709.www, 1.0f), _21709, _2235[_23893].x.xxxx), _21709.wwww, _20655);
float3 _25122 = _9219.xyz;
float3 _17379 = _25122 * 12.9200000762939453125f;
float3 _7485 = (pow(_25122, 0.4166666567325592041015625f.xxx) * 1.05499994754791259765625f) - 0.054999999701976776123046875f.xxx;
@@ -2045,7 +2035,7 @@ PS
_12906 = SpriteCardPixelControls_t_1_m6.y;
}
float4 _12907;
- switch (_6863)
+ switch (uint(_23893))
{
case 0u:
{
@@ -2234,6 +2224,7 @@ PS
if (_10282 == 0)
{
float4 _21710;
+ [branch]
if (SpriteCardPixelControls_t_1_m0.w < SpriteCardPixelControls_t_1_m0.z)
{
_21710 = float4(_12758, _21122.yz, smoothstep(SpriteCardPixelControls_t_1_m0.w, SpriteCardPixelControls_t_1_m0.z, _23577));
@@ -2252,6 +2243,7 @@ PS
_12886 = false;
}
float4 _12503;
+ [branch]
if (_12886)
{
float _21711;
@@ -2315,7 +2307,7 @@ PS
{
float3 _23378 = clamp(input_4.xyz, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-input_4.xyz, 0.0f.xxx, 1.0f.xxx);
- _9057 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(input_4.xyz, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, _Globals_1_m2.xyz, clamp(min(_Globals_1_m5, pow(clamp((distance(input_3.xyz, _Globals_1_m1.xyz) * _Globals_1_m4) + _Globals_1_m3, 0.0f, 1.0f), _Globals_1_m6)), 0.0f, 1.0f).xxx);
+ _9057 = lerp(((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(input_4.xyz, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz, PerViewConstantBuffer_t_1_m2.xyz, clamp(min(PerViewConstantBuffer_t_1_m5, pow(clamp((distance(input_3.xyz, PerViewConstantBuffer_t_1_m1.xyz) * PerViewConstantBuffer_t_1_m4) + PerViewConstantBuffer_t_1_m3, 0.0f, 1.0f), PerViewConstantBuffer_t_1_m6)), 0.0f, 1.0f).xxx);
}
else
{
@@ -2327,7 +2319,7 @@ PS
_23715.x = _11507.x;
_23715.y = _11507.y;
_23715.z = _11507.z;
- float3 _11003 = _23715.xyz * _Globals_1_m0;
+ float3 _11003 = _23715.xyz * PerViewConstantBuffer_t_1_m0;
float4 _8674;
_8674.x = _11003.x;
_8674.y = _11003.y;
game/core/shaders_vulkan_dir/shaders/vfx/ssao.slang
modified • +14 / -19 • changes: 33
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -101,20 +101,15 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 3 (name: g_vInvRenderTargetDim) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (7220 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (6632 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
- struct _2116
- {
- vec4 _m0[4];
- };
-
- const vec3 _1277[9] = vec3[](vec3(0.13390399515628814697265625, 0.0365430004894733428955078125, 0.049350000917911529541015625), vec3(-0.12978200614452362060546875, -0.0326079986989498138427734375, 0.098058998584747314453125), vec3(-0.1944600045680999755859375, -0.4137530028820037841796875, 0.8764560222625732421875), vec3(-0.0387840010225772857666015625, 0.43998301029205322265625, 0.0596049986779689788818359375), vec3(-0.118508003652095794677734375, 0.001674000057391822338104248046875, -0.011568999849259853363037109375), vec3(0.0038580000400543212890625, -0.00258699990808963775634765625, -0.00047200001426972448825836181640625), vec3(0.007021999917924404144287109375, 0.000399000011384487152099609375, -0.0054720002226531505584716796875), vec3(-0.16810800135135650634765625, -0.2530579864978790283203125, -0.224711000919342041015625), vec3(0.0112229995429515838623046875, -0.254115998744964599609375, -0.4668669998645782470703125));
+ const vec3 _1213[9] = vec3[](vec3(0.13390399515628814697265625, 0.0365430004894733428955078125, 0.049350000917911529541015625), vec3(-0.12978200614452362060546875, -0.0326079986989498138427734375, 0.098058998584747314453125), vec3(-0.1944600045680999755859375, -0.4137530028820037841796875, 0.8764560222625732421875), vec3(-0.0387840010225772857666015625, 0.43998301029205322265625, 0.0596049986779689788818359375), vec3(-0.118508003652095794677734375, 0.001674000057391822338104248046875, -0.011568999849259853363037109375), vec3(0.0038580000400543212890625, -0.00258699990808963775634765625, -0.00047200001426972448825836181640625), vec3(0.007021999917924404144287109375, 0.000399000011384487152099609375, -0.0054720002226531505584716796875), vec3(-0.16810800135135650634765625, -0.2530579864978790283203125, -0.224711000919342041015625), vec3(0.0112229995429515838623046875, -0.254115998744964599609375, -0.4668669998645782470703125));
struct _1283
{
@@ -127,14 +122,14 @@ PS
layout(set = 1) uniform _1283 _Globals_;
- struct _2307
+ struct _1288
{
- _2116 _m0;
+ mat4 _m0;
vec4 _m1;
vec3 _m2;
};
- layout(set = 1) uniform _2307 PerViewConstantBuffer_t;
+ layout(set = 1) uniform _1288 PerViewConstantBuffer_t;
layout(set = 1, binding = 31) uniform texture2D g_tGBufferLinearDepth;
layout(set = 1, binding = 15) uniform sampler AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint;
@@ -165,7 +160,7 @@ PS
float _20688 = _Globals_.g_flSampleRadius * _Globals_.g_flSampleRadius;
float _13155;
_13155 = 0.0;
- float _3304;
+ float _9828;
int _14722;
int _16208 = 0;
for (;;)
@@ -174,7 +169,7 @@ PS
{
break;
}
- vec3 _13945 = reflect((_1277[_16208] * _Globals_.g_flSampleRadius).xyz, _15145.xyz);
+ vec3 _13945 = reflect((_1213[_16208] * _Globals_.g_flSampleRadius).xyz, _15145.xyz);
vec3 _22410 = _13945.xyz;
vec3 _19629;
if (dot(_24081, _22410) < 0.0)
@@ -187,15 +182,15 @@ PS
}
vec3 _21589 = _12200.xyz;
vec3 _16060 = _19629.xyz + _21589;
- vec4 _24259 = (vec4(_16060.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec4 _3402 = textureLodOffset(sampler2D(g_tGBufferLinearDepth, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), clamp(((_23080.xy * (_24259.xy / vec2(_24259.w)).xy) + _20508.xy).xy, _Globals_.g_vRelativeViewport.xy, _Globals_.g_vRelativeViewport.zw).xy, 0.0, ivec2(0));
+ vec4 _18621 = (vec4(_16060.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
+ vec4 _3402 = textureLodOffset(sampler2D(g_tGBufferLinearDepth, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), clamp(((_23080.xy * (_18621.xy / vec2(_18621.w)).xy) + _20508.xy).xy, _Globals_.g_vRelativeViewport.xy, _Globals_.g_vRelativeViewport.zw).xy, 0.0, ivec2(0));
float _5202 = _3402.x;
vec3 _17519 = _16060.xyz - PerViewConstantBuffer_t._m2.xyz;
float _15544 = length(_17519.xyz);
vec3 _6560 = ((PerViewConstantBuffer_t._m2.xyz + ((_17519 / vec3(_15544)).xyz * _5202)).xyz - _21589).xyz;
- _3304 = _13155 + (clamp((_20688 - dot(_6560, _6560)) * 1000000.0, 0.0, 1.0) * clamp((_15544 - _5202) * 1000000.0, 0.0, 1.0));
+ _9828 = _13155 + (clamp((_20688 - dot(_6560, _6560)) * 1000000.0, 0.0, 1.0) * clamp((_15544 - _5202) * 1000000.0, 0.0, 1.0));
_14722 = _16208 + 1;
- _13155 = _3304;
+ _13155 = _9828;
_16208 = _14722;
continue;
}
game/core/shaders_vulkan_dir/shaders/vfx/ssao_bilateral_blur.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/ssao_convert_depth.slang
modified • +7 / -7 • changes: 14
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -82,11 +82,11 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (1332 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float _Globals_1_m0 : packoffset(c23);
- float _Globals_1_m1 : packoffset(c23.y);
- float3 _Globals_1_m2 : packoffset(c29);
+ float PerViewConstantBuffer_t_1_m0 : packoffset(c23);
+ float PerViewConstantBuffer_t_1_m1 : packoffset(c23.y);
+ float3 PerViewConstantBuffer_t_1_m2 : packoffset(c29);
};
Texture2D<float4> g_tGBufferDepth : register(t30, space1);
@@ -106,7 +106,7 @@ PS
void MainPs_inner()
{
- output_0 = (_Globals_1_m2.x / ((_Globals_1_m2.y * clamp((g_tGBufferDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - _Globals_1_m0) / (_Globals_1_m1 - _Globals_1_m0), 0.0f, 1.0f)) + _Globals_1_m2.z)).xxxx;
+ output_0 = (PerViewConstantBuffer_t_1_m2.x / ((PerViewConstantBuffer_t_1_m2.y * clamp((g_tGBufferDepth.Load(int3(int3(int2(gl_FragCoord.xy).xy, 0).xy, 0)).x - PerViewConstantBuffer_t_1_m0) / (PerViewConstantBuffer_t_1_m1 - PerViewConstantBuffer_t_1_m0), 0.0f, 1.0f)) + PerViewConstantBuffer_t_1_m2.z)).xxxx;
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/ssao_downsample_depth.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/ssao_scalable_ambient_obscurance.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -91,7 +91,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vProjInfo) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/sst_copy_depth.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/sst_cs.slang
modified • +154 / -165 • changes: 319
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -31,7 +31,7 @@ CS
DynamicCombo( D_UNPACK_METHOD, 0..2 );
DynamicCombo( D_OUTPUT_DEBUG_COLOR, 0..1 );
- StructuredBuffer g_SST < Attribute("SparseShadowTree"); SrgbRead(false); >;
+ StructuredBuffer g_SST < Attribute("SparseShadowTree"); >;
int g_nSSTForest < Attribute("SSTForest"); UiType(Slider); >;
int g_nSSTOutputPixelExcludeEndX < Attribute("SSTOutputPixelExcludeEndX"); UiType(Slider); >;
int g_nSSTOutputPixelExcludeEndY < Attribute("SSTOutputPixelExcludeEndY"); UiType(Slider); >;
@@ -50,7 +50,7 @@ CS
RWTexture2D<float4> g_tOutDepth < Attribute("ShadowAtlas"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (40196 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (39904 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
@@ -83,9 +83,9 @@ CS
{
do
{
- uint2 _19018 = gl_GlobalInvocationID.xy * uint2(4u, 4u);
+ uint2 _23624 = gl_GlobalInvocationID.xy * uint2(4u, 4u);
uint2 _3797 = uint2(_Globals_1_g_nSSTTileStartX, _Globals_1_g_nSSTTileStartY) + (gl_GlobalInvocationID.xy / uint2(32u, 32u));
- uint2 _15313 = _19018 + uint2(_Globals_1_g_nSSTOutputPixelStartOffsetX, _Globals_1_g_nSSTOutputPixelStartOffsetY);
+ uint2 _15313 = _23624 + uint2(_Globals_1_g_nSSTOutputPixelStartOffsetX, _Globals_1_g_nSSTOutputPixelStartOffsetY);
uint _7985 = _15313.x;
bool _12885;
if (_7985 >= _Globals_1_g_nSSTOutputPixelWidth)
@@ -135,27 +135,26 @@ CS
uint _17785 = (_3797.y * _Globals_1_g_nSSTWidth) + _3797.x;
bool _11402;
uint _11518;
- float _13174;
+ float _12889;
uint _14842;
do
{
+ bool _18261;
uint _21397 = g_SST.Load(_17785 * 4 + 0);
- bool _16054;
do
{
- if ((_21397 & 1073741824u) != 0u)
+ _18261 = (_21397 & 1073741824u) != 0u;
+ if (_18261)
{
- _13174 = asfloat((_21397 & 3221225471u) << uint(2));
- _16054 = true;
+ _12889 = asfloat((_21397 & 3221225471u) << uint(2));
break;
}
- _13174 = 1.0f;
- _16054 = false;
+ _12889 = 1.0f;
break;
} while(false);
- if (_16054)
+ if (_18261)
{
- float4 _10876 = _13174.xxxx;
+ float4 _10876 = _12889.xxxx;
_3177[_15314] = _10876;
_3177[_15314 + uint2(1u, 0u)] = _10876;
_3177[_15314 + uint2(0u, 1u)] = _10876;
@@ -190,27 +189,26 @@ CS
{
bool _11403;
float3 _11519;
- float _13175;
+ float _12890;
uint _14843;
do
{
+ bool _18262;
uint _21398 = g_SST.Load(_14842 * 4 + 0);
- bool _16055;
do
{
- if ((_21398 & 1073741824u) != 0u)
+ _18262 = (_21398 & 1073741824u) != 0u;
+ if (_18262)
{
- _13175 = asfloat((_21398 & 3221225471u) << uint(2));
- _16055 = true;
+ _12890 = asfloat((_21398 & 3221225471u) << uint(2));
break;
}
- _13175 = _13174;
- _16055 = false;
+ _12890 = _12889;
break;
} while(false);
- if (_16055)
+ if (_18262)
{
- float4 _10877 = _13175.xxxx;
+ float4 _10877 = _12890.xxxx;
_3177[_15314] = _10877;
_3177[_15314 + uint2(1u, 0u)] = _10877;
_3177[_15314 + uint2(0u, 1u)] = _10877;
@@ -234,30 +232,29 @@ CS
}
else
{
+ bool _18263;
uint _21970 = _14842 + 1u;
- float3 _13176;
- bool _16056;
+ float3 _12891;
do
{
- if ((_21398 & 2147483648u) != 0u)
+ _18263 = (_21398 & 2147483648u) != 0u;
+ if (_18263)
{
- _13176 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) & 65535u))), asfloat((_21398 & 2147483647u) << uint(1)));
- _16056 = true;
+ _12891 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21970 * 4 + 0) & 65535u))), asfloat((_21398 & 2147483647u) << uint(1)));
break;
}
- _13176 = float3(1.0f, 0.0f, 0.0f);
- _16056 = false;
+ _12891 = float3(1.0f, 0.0f, 0.0f);
break;
} while(false);
- if (_16056)
+ if (_18263)
{
- uint2 _24337 = _19018 % uint2(128u, 128u);
- float4 _22821 = _13176.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22382 = ((_13176.z + (float(_24337.x) * _13176.x)) + (float(_24337.y) * _13176.y)).xxxx;
+ uint2 _24337 = _23624 % uint2(128u, 128u);
+ float4 _22821 = _12891.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22382 = ((_12891.z + (float(_24337.x) * _12891.x)) + (float(_24337.y) * _12891.y)).xxxx;
float4 _9987 = _22382 + _22821;
- float4 _21802 = (_22382 + _13176.yyyy) + _22821;
- float4 _20890 = (_22382 + (_13176.yyyy * 2.0f)) + _22821;
- float4 _16200 = (_22382 + (_13176.yyyy * 3.0f)) + _22821;
+ float4 _21802 = (_22382 + _12891.yyyy) + _22821;
+ float4 _20890 = (_22382 + (_12891.yyyy * 2.0f)) + _22821;
+ float4 _16200 = (_22382 + (_12891.yyyy * 3.0f)) + _22821;
_3177[_15314] = _9987.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9987.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9987.z.xxxx;
@@ -274,14 +271,14 @@ CS
_3177[_15314 + uint2(1u, 3u)] = _16200.y.xxxx;
_3177[_15314 + uint2(2u, 3u)] = _16200.z.xxxx;
_3177[_15314 + uint2(3u, 3u)] = _16200.w.xxxx;
- _11519 = _13176;
+ _11519 = _12891;
_14843 = _14842;
_11403 = true;
break;
}
else
{
- uint2 _13668 = _19018 % uint2(128u, 128u);
+ uint2 _13668 = _23624 % uint2(128u, 128u);
uint _21709;
if (_13668.x < 64u)
{
@@ -318,7 +315,7 @@ CS
}
_14382 = _12502;
}
- _11519 = _13176;
+ _11519 = _12891;
_14843 = _14382 + _11518;
_11403 = false;
break;
@@ -331,27 +328,26 @@ CS
{
bool _11404;
float3 _11520;
- float _13177;
+ float _12892;
uint _14844;
do
{
+ bool _18264;
uint _21399 = g_SST.Load(_14843 * 4 + 0);
- bool _16057;
do
{
- if ((_21399 & 1073741824u) != 0u)
+ _18264 = (_21399 & 1073741824u) != 0u;
+ if (_18264)
{
- _13177 = asfloat((_21399 & 3221225471u) << uint(2));
- _16057 = true;
+ _12892 = asfloat((_21399 & 3221225471u) << uint(2));
break;
}
- _13177 = _13175;
- _16057 = false;
+ _12892 = _12890;
break;
} while(false);
- if (_16057)
+ if (_18264)
{
- float4 _10878 = _13177.xxxx;
+ float4 _10878 = _12892.xxxx;
_3177[_15314] = _10878;
_3177[_15314 + uint2(1u, 0u)] = _10878;
_3177[_15314 + uint2(0u, 1u)] = _10878;
@@ -375,30 +371,29 @@ CS
}
else
{
+ bool _18265;
uint _21971 = _14843 + 1u;
- float3 _13178;
- bool _16058;
+ float3 _12893;
do
{
- if ((_21399 & 2147483648u) != 0u)
+ _18265 = (_21399 & 2147483648u) != 0u;
+ if (_18265)
{
- _13178 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) & 65535u))), asfloat((_21399 & 2147483647u) << uint(1)));
- _16058 = true;
+ _12893 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21971 * 4 + 0) & 65535u))), asfloat((_21399 & 2147483647u) << uint(1)));
break;
}
- _13178 = _11519;
- _16058 = false;
+ _12893 = _11519;
break;
} while(false);
- if (_16058)
+ if (_18265)
{
- uint2 _24338 = _19018 % uint2(64u, 64u);
- float4 _22822 = _13178.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22383 = ((_13178.z + (float(_24338.x) * _13178.x)) + (float(_24338.y) * _13178.y)).xxxx;
+ uint2 _24338 = _23624 % uint2(64u, 64u);
+ float4 _22822 = _12893.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22383 = ((_12893.z + (float(_24338.x) * _12893.x)) + (float(_24338.y) * _12893.y)).xxxx;
float4 _9988 = _22383 + _22822;
- float4 _21803 = (_22383 + _13178.yyyy) + _22822;
- float4 _20891 = (_22383 + (_13178.yyyy * 2.0f)) + _22822;
- float4 _16201 = (_22383 + (_13178.yyyy * 3.0f)) + _22822;
+ float4 _21803 = (_22383 + _12893.yyyy) + _22822;
+ float4 _20891 = (_22383 + (_12893.yyyy * 2.0f)) + _22822;
+ float4 _16201 = (_22383 + (_12893.yyyy * 3.0f)) + _22822;
_3177[_15314] = _9988.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9988.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9988.z.xxxx;
@@ -415,14 +410,14 @@ CS
_3177[_15314 + uint2(1u, 3u)] = _16201.y.xxxx;
_3177[_15314 + uint2(2u, 3u)] = _16201.z.xxxx;
_3177[_15314 + uint2(3u, 3u)] = _16201.w.xxxx;
- _11520 = _13178;
+ _11520 = _12893;
_14844 = _14843;
_11404 = true;
break;
}
else
{
- uint2 _13669 = _19018 % uint2(64u, 64u);
+ uint2 _13669 = _23624 % uint2(64u, 64u);
uint _21710;
if (_13669.x < 32u)
{
@@ -459,7 +454,7 @@ CS
}
_14383 = _12504;
}
- _11520 = _13178;
+ _11520 = _12893;
_14844 = _14383 + _11518;
_11404 = false;
break;
@@ -472,27 +467,26 @@ CS
{
bool _11405;
float3 _11521;
- float _13179;
+ float _12894;
uint _14845;
do
{
+ bool _18266;
uint _21400 = g_SST.Load(_14844 * 4 + 0);
- bool _16059;
do
{
- if ((_21400 & 1073741824u) != 0u)
+ _18266 = (_21400 & 1073741824u) != 0u;
+ if (_18266)
{
- _13179 = asfloat((_21400 & 3221225471u) << uint(2));
- _16059 = true;
+ _12894 = asfloat((_21400 & 3221225471u) << uint(2));
break;
}
- _13179 = _13177;
- _16059 = false;
+ _12894 = _12892;
break;
} while(false);
- if (_16059)
+ if (_18266)
{
- float4 _10879 = _13179.xxxx;
+ float4 _10879 = _12894.xxxx;
_3177[_15314] = _10879;
_3177[_15314 + uint2(1u, 0u)] = _10879;
_3177[_15314 + uint2(0u, 1u)] = _10879;
@@ -516,30 +510,29 @@ CS
}
else
{
+ bool _18267;
uint _21972 = _14844 + 1u;
- float3 _13180;
- bool _16060;
+ float3 _12895;
do
{
- if ((_21400 & 2147483648u) != 0u)
+ _18267 = (_21400 & 2147483648u) != 0u;
+ if (_18267)
{
- _13180 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) & 65535u))), asfloat((_21400 & 2147483647u) << uint(1)));
- _16060 = true;
+ _12895 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21972 * 4 + 0) & 65535u))), asfloat((_21400 & 2147483647u) << uint(1)));
break;
}
- _13180 = _11520;
- _16060 = false;
+ _12895 = _11520;
break;
} while(false);
- if (_16060)
+ if (_18267)
{
- uint2 _24339 = _19018 % uint2(32u, 32u);
- float4 _22823 = _13180.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22384 = ((_13180.z + (float(_24339.x) * _13180.x)) + (float(_24339.y) * _13180.y)).xxxx;
+ uint2 _24339 = _23624 % uint2(32u, 32u);
+ float4 _22823 = _12895.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22384 = ((_12895.z + (float(_24339.x) * _12895.x)) + (float(_24339.y) * _12895.y)).xxxx;
float4 _9989 = _22384 + _22823;
- float4 _21804 = (_22384 + _13180.yyyy) + _22823;
- float4 _20892 = (_22384 + (_13180.yyyy * 2.0f)) + _22823;
- float4 _16202 = (_22384 + (_13180.yyyy * 3.0f)) + _22823;
+ float4 _21804 = (_22384 + _12895.yyyy) + _22823;
+ float4 _20892 = (_22384 + (_12895.yyyy * 2.0f)) + _22823;
+ float4 _16202 = (_22384 + (_12895.yyyy * 3.0f)) + _22823;
_3177[_15314] = _9989.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9989.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9989.z.xxxx;
@@ -556,14 +549,14 @@ CS
_3177[_15314 + uint2(1u, 3u)] = _16202.y.xxxx;
_3177[_15314 + uint2(2u, 3u)] = _16202.z.xxxx;
_3177[_15314 + uint2(3u, 3u)] = _16202.w.xxxx;
- _11521 = _13180;
+ _11521 = _12895;
_14845 = _14844;
_11405 = true;
break;
}
else
{
- uint2 _13670 = _19018 % uint2(32u, 32u);
+ uint2 _13670 = _23624 % uint2(32u, 32u);
uint _21711;
if (_13670.x < 16u)
{
@@ -600,7 +593,7 @@ CS
}
_14384 = _12506;
}
- _11521 = _13180;
+ _11521 = _12895;
_14845 = _14384 + _11518;
_11405 = false;
break;
@@ -613,27 +606,26 @@ CS
{
bool _11406;
float3 _11522;
- float _13181;
+ float _12896;
uint _14846;
do
{
+ bool _18268;
uint _21401 = g_SST.Load(_14845 * 4 + 0);
- bool _16061;
do
{
- if ((_21401 & 1073741824u) != 0u)
+ _18268 = (_21401 & 1073741824u) != 0u;
+ if (_18268)
{
- _13181 = asfloat((_21401 & 3221225471u) << uint(2));
- _16061 = true;
+ _12896 = asfloat((_21401 & 3221225471u) << uint(2));
break;
}
- _13181 = _13179;
- _16061 = false;
+ _12896 = _12894;
break;
} while(false);
- if (_16061)
+ if (_18268)
{
- float4 _10880 = _13181.xxxx;
+ float4 _10880 = _12896.xxxx;
_3177[_15314] = _10880;
_3177[_15314 + uint2(1u, 0u)] = _10880;
_3177[_15314 + uint2(0u, 1u)] = _10880;
@@ -657,30 +649,29 @@ CS
}
else
{
+ bool _18269;
uint _21973 = _14845 + 1u;
- float3 _13182;
- bool _16062;
+ float3 _12897;
do
{
- if ((_21401 & 2147483648u) != 0u)
+ _18269 = (_21401 & 2147483648u) != 0u;
+ if (_18269)
{
- _13182 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) & 65535u))), asfloat((_21401 & 2147483647u) << uint(1)));
- _16062 = true;
+ _12897 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21973 * 4 + 0) & 65535u))), asfloat((_21401 & 2147483647u) << uint(1)));
break;
}
- _13182 = _11521;
- _16062 = false;
+ _12897 = _11521;
break;
} while(false);
- if (_16062)
+ if (_18269)
{
- uint2 _24340 = _19018 % uint2(16u, 16u);
- float4 _22824 = _13182.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22385 = ((_13182.z + (float(_24340.x) * _13182.x)) + (float(_24340.y) * _13182.y)).xxxx;
+ uint2 _24340 = _23624 % uint2(16u, 16u);
+ float4 _22824 = _12897.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22385 = ((_12897.z + (float(_24340.x) * _12897.x)) + (float(_24340.y) * _12897.y)).xxxx;
float4 _9990 = _22385 + _22824;
- float4 _21805 = (_22385 + _13182.yyyy) + _22824;
- float4 _20893 = (_22385 + (_13182.yyyy * 2.0f)) + _22824;
- float4 _16203 = (_22385 + (_13182.yyyy * 3.0f)) + _22824;
+ float4 _21805 = (_22385 + _12897.yyyy) + _22824;
+ float4 _20893 = (_22385 + (_12897.yyyy * 2.0f)) + _22824;
+ float4 _16203 = (_22385 + (_12897.yyyy * 3.0f)) + _22824;
_3177[_15314] = _9990.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9990.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9990.z.xxxx;
@@ -697,14 +688,14 @@ CS
_3177[_15314 + uint2(1u, 3u)] = _16203.y.xxxx;
_3177[_15314 + uint2(2u, 3u)] = _16203.z.xxxx;
_3177[_15314 + uint2(3u, 3u)] = _16203.w.xxxx;
- _11522 = _13182;
+ _11522 = _12897;
_14846 = _14845;
_11406 = true;
break;
}
else
{
- uint2 _13671 = _19018 % uint2(16u, 16u);
+ uint2 _13671 = _23624 % uint2(16u, 16u);
uint _21712;
if (_13671.x < 8u)
{
@@ -741,7 +732,7 @@ CS
}
_14385 = _12508;
}
- _11522 = _13182;
+ _11522 = _12897;
_14846 = _14385 + _11518;
_11406 = false;
break;
@@ -754,27 +745,26 @@ CS
{
bool _11407;
uint _11523;
- float _13183;
+ float _12898;
float3 _14847;
do
{
+ bool _18270;
uint _21402 = g_SST.Load(_14846 * 4 + 0);
- bool _16063;
do
{
- if ((_21402 & 1073741824u) != 0u)
+ _18270 = (_21402 & 1073741824u) != 0u;
+ if (_18270)
{
- _13183 = asfloat((_21402 & 3221225471u) << uint(2));
- _16063 = true;
+ _12898 = asfloat((_21402 & 3221225471u) << uint(2));
break;
}
- _13183 = _13181;
- _16063 = false;
+ _12898 = _12896;
break;
} while(false);
- if (_16063)
+ if (_18270)
{
- float4 _10881 = _13183.xxxx;
+ float4 _10881 = _12898.xxxx;
_3177[_15314] = _10881;
_3177[_15314 + uint2(1u, 0u)] = _10881;
_3177[_15314 + uint2(0u, 1u)] = _10881;
@@ -798,30 +788,29 @@ CS
}
else
{
+ bool _18271;
uint _21974 = _14846 + 1u;
- float3 _13184;
- bool _16064;
+ float3 _12899;
do
{
- if ((_21402 & 2147483648u) != 0u)
+ _18271 = (_21402 & 2147483648u) != 0u;
+ if (_18271)
{
- _13184 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) & 65535u))), asfloat((_21402 & 2147483647u) << uint(1)));
- _16064 = true;
+ _12899 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21974 * 4 + 0) & 65535u))), asfloat((_21402 & 2147483647u) << uint(1)));
break;
}
- _13184 = _11522;
- _16064 = false;
+ _12899 = _11522;
break;
} while(false);
- if (_16064)
+ if (_18271)
{
- uint2 _24341 = _19018 % uint2(8u, 8u);
- float4 _22825 = _13184.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22386 = ((_13184.z + (float(_24341.x) * _13184.x)) + (float(_24341.y) * _13184.y)).xxxx;
+ uint2 _24341 = _23624 % uint2(8u, 8u);
+ float4 _22825 = _12899.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22386 = ((_12899.z + (float(_24341.x) * _12899.x)) + (float(_24341.y) * _12899.y)).xxxx;
float4 _9991 = _22386 + _22825;
- float4 _21806 = (_22386 + _13184.yyyy) + _22825;
- float4 _20894 = (_22386 + (_13184.yyyy * 2.0f)) + _22825;
- float4 _16204 = (_22386 + (_13184.yyyy * 3.0f)) + _22825;
+ float4 _21806 = (_22386 + _12899.yyyy) + _22825;
+ float4 _20894 = (_22386 + (_12899.yyyy * 2.0f)) + _22825;
+ float4 _16204 = (_22386 + (_12899.yyyy * 3.0f)) + _22825;
_3177[_15314] = _9991.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9991.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9991.z.xxxx;
@@ -839,13 +828,13 @@ CS
_3177[_15314 + uint2(2u, 3u)] = _16204.z.xxxx;
_3177[_15314 + uint2(3u, 3u)] = _16204.w.xxxx;
_11523 = _14846;
- _14847 = _13184;
+ _14847 = _12899;
_11407 = true;
break;
}
else
{
- uint2 _13672 = _19018 % uint2(8u, 8u);
+ uint2 _13672 = _23624 % uint2(8u, 8u);
uint _21713;
if (_13672.x < 4u)
{
@@ -883,7 +872,7 @@ CS
_14386 = _12510;
}
_11523 = _14386 + _11518;
- _14847 = _13184;
+ _14847 = _12899;
_11407 = false;
break;
}
@@ -894,23 +883,23 @@ CS
if (!_11407)
{
uint _21403 = g_SST.Load(_11523 * 4 + 0);
- float _13185;
- bool _16065;
+ float _13174;
+ bool _16054;
do
{
if ((_21403 & 1073741824u) != 0u)
{
- _13185 = asfloat((_21403 & 3221225471u) << uint(2));
- _16065 = true;
+ _13174 = asfloat((_21403 & 3221225471u) << uint(2));
+ _16054 = true;
break;
}
- _13185 = _13183;
- _16065 = false;
+ _13174 = _12898;
+ _16054 = false;
break;
} while(false);
- if (_16065)
+ if (_16054)
{
- float4 _10882 = _13185.xxxx;
+ float4 _10882 = _13174.xxxx;
_3177[_15314] = _10882;
_3177[_15314 + uint2(1u, 0u)] = _10882;
_3177[_15314 + uint2(0u, 1u)] = _10882;
@@ -931,29 +920,29 @@ CS
else
{
uint _21975 = _11523 + 1u;
- float3 _13186;
- bool _16066;
+ float3 _13175;
+ bool _16055;
do
{
if ((_21403 & 2147483648u) != 0u)
{
- _13186 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) & 65535u))), asfloat((_21403 & 2147483647u) << uint(1)));
- _16066 = true;
+ _13175 = float3(float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) >> uint(16)))), float((min16float)f16tof32(min16uint(g_SST.Load(_21975 * 4 + 0) & 65535u))), asfloat((_21403 & 2147483647u) << uint(1)));
+ _16055 = true;
break;
}
- _13186 = _14847;
- _16066 = false;
+ _13175 = _14847;
+ _16055 = false;
break;
} while(false);
- if (_16066)
+ if (_16055)
{
- uint2 _24342 = _19018 % uint2(4u, 4u);
- float4 _22826 = _13186.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
- float4 _22387 = ((_13186.z + (float(_24342.x) * _13186.x)) + (float(_24342.y) * _13186.y)).xxxx;
+ uint2 _24342 = _23624 % uint2(4u, 4u);
+ float4 _22826 = _13175.xxxx * float4(0.0f, 1.0f, 2.0f, 3.0f);
+ float4 _22387 = ((_13175.z + (float(_24342.x) * _13175.x)) + (float(_24342.y) * _13175.y)).xxxx;
float4 _9992 = _22387 + _22826;
- float4 _21807 = (_22387 + _13186.yyyy) + _22826;
- float4 _20895 = (_22387 + (_13186.yyyy * 2.0f)) + _22826;
- float4 _16205 = (_22387 + (_13186.yyyy * 3.0f)) + _22826;
+ float4 _21807 = (_22387 + _13175.yyyy) + _22826;
+ float4 _20895 = (_22387 + (_13175.yyyy * 2.0f)) + _22826;
+ float4 _16205 = (_22387 + (_13175.yyyy * 3.0f)) + _22826;
_3177[_15314] = _9992.x.xxxx;
_3177[_15314 + uint2(1u, 0u)] = _9992.y.xxxx;
_3177[_15314 + uint2(2u, 0u)] = _9992.z.xxxx;
game/core/shaders_vulkan_dir/shaders/vfx/stenciltest.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -79,7 +79,7 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (772 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- Texture2D<uint4> g_tStencilTexture_unexpectedTypeId404_1041 : register(t30, space1);
+ Texture2D<uint4> g_tStencilTexture : register(t30, space1);
static float4 gl_FragCoord;
static float4 output_0;
@@ -96,7 +96,7 @@ PS
void MainPs_inner()
{
- output_0 = float4(float(g_tStencilTexture_unexpectedTypeId404_1041.Load(int3(int3(int2(gl_FragCoord.xy), 0).xy, 0)).x) * 0.0039215688593685626983642578125f, 0.0f, 0.0f, 1.0f);
+ output_0 = float4(float(g_tStencilTexture.Load(int3(int3(int2(gl_FragCoord.xy), 0).xy, 0)).x) * 0.0039215688593685626983642578125f, 0.0f, 0.0f, 1.0f);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/sum_aggregate_cull_stats.slang
modified • +37 / -37 • changes: 74
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -36,7 +36,7 @@ CS
int g_nNumFragments < Attribute("NumFragments"); UiType(Slider); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3944 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3976 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1206
{
@@ -53,14 +53,14 @@ CS
uint _m10;
};
- RWByteAddressBuffer undetermined : register(u159, space0);
cbuffer _Globals_ : register(b0, space0)
{
uint _Globals_1_g_nNumFragments : packoffset(c0);
};
- RWByteAddressBuffer undetermined_1 : register(u158, space0);
- Buffer<uint4> undetermined_2 : register(t30, space0);
+ RWByteAddressBuffer undetermined : register(u158, space0);
+ RWByteAddressBuffer undetermined_1 : register(u159, space0);
+ Buffer<uint4> undetermined_unexpectedTypeId408_1045 : register(t30, space0);
static uint3 gl_WorkGroupID;
static uint3 gl_LocalInvocationID;
@@ -114,28 +114,28 @@ CS
uint _5211 = (_13918 + gl_LocalInvocationID.x) + (_17017 * 64u);
if (_5211 < _Globals_1_g_nNumFragments)
{
- uint _18241 = (undetermined_2.Load(int(_5211 / 4u)).x >> ((_5211 % 4u) * 8u)) & 255u;
- uint _17277 = undetermined_1.Load(_5211 * 44 + 0);
- uint _7045 = undetermined_1.Load(_5211 * 44 + 8);
- uint _7046 = undetermined_1.Load(_5211 * 44 + 4);
- uint _7047 = undetermined_1.Load(_5211 * 44 + 12);
- uint _7048 = undetermined_1.Load(_5211 * 44 + 16);
- uint _7049 = undetermined_1.Load(_5211 * 44 + 20);
- uint _7050 = undetermined_1.Load(_5211 * 44 + 32);
- uint _7051 = undetermined_1.Load(_5211 * 44 + 36);
- uint _6540 = undetermined_1.Load(_5211 * 44 + 24);
- uint _6483 = undetermined_1.Load(_5211 * 44 + 28);
- undetermined_1.Store(_5211 * 44 + 0, 0u);
- undetermined_1.Store(_5211 * 44 + 4, 0u);
- undetermined_1.Store(_5211 * 44 + 8, 0u);
- undetermined_1.Store(_5211 * 44 + 12, 0u);
- undetermined_1.Store(_5211 * 44 + 16, 0u);
- undetermined_1.Store(_5211 * 44 + 20, 0u);
- undetermined_1.Store(_5211 * 44 + 24, 0u);
- undetermined_1.Store(_5211 * 44 + 28, 0u);
- undetermined_1.Store(_5211 * 44 + 32, 0u);
- undetermined_1.Store(_5211 * 44 + 36, 0u);
- undetermined_1.Store(_5211 * 44 + 40, 0u);
+ uint _18241 = (undetermined_unexpectedTypeId408_1045.Load(int(_5211 / 4u)).x >> ((_5211 % 4u) * 8u)) & 255u;
+ uint _17277 = undetermined.Load(_5211 * 44 + 0);
+ uint _7045 = undetermined.Load(_5211 * 44 + 8);
+ uint _7046 = undetermined.Load(_5211 * 44 + 4);
+ uint _7047 = undetermined.Load(_5211 * 44 + 12);
+ uint _7048 = undetermined.Load(_5211 * 44 + 16);
+ uint _7049 = undetermined.Load(_5211 * 44 + 20);
+ uint _7050 = undetermined.Load(_5211 * 44 + 32);
+ uint _7051 = undetermined.Load(_5211 * 44 + 36);
+ uint _6540 = undetermined.Load(_5211 * 44 + 24);
+ uint _6483 = undetermined.Load(_5211 * 44 + 28);
+ undetermined.Store(_5211 * 44 + 0, 0u);
+ undetermined.Store(_5211 * 44 + 4, 0u);
+ undetermined.Store(_5211 * 44 + 8, 0u);
+ undetermined.Store(_5211 * 44 + 12, 0u);
+ undetermined.Store(_5211 * 44 + 16, 0u);
+ undetermined.Store(_5211 * 44 + 20, 0u);
+ undetermined.Store(_5211 * 44 + 24, 0u);
+ undetermined.Store(_5211 * 44 + 28, 0u);
+ undetermined.Store(_5211 * 44 + 32, 0u);
+ undetermined.Store(_5211 * 44 + 36, 0u);
+ undetermined.Store(_5211 * 44 + 40, 0u);
_13137 = _13136 + (_17277 * _18241);
_16306 = _16305 + (_7046 * _18241);
_17121 = _17114 + (_7045 * _18241);
@@ -175,25 +175,25 @@ CS
continue;
}
uint _11833;
- undetermined.InterlockedAdd(0, _13136, _11833);
+ undetermined_1.InterlockedAdd(0, _13136, _11833);
uint _16063;
- undetermined.InterlockedAdd(8, _17114, _16063);
+ undetermined_1.InterlockedAdd(8, _17114, _16063);
uint _16064;
- undetermined.InterlockedAdd(4, _16305, _16064);
+ undetermined_1.InterlockedAdd(4, _16305, _16064);
uint _16065;
- undetermined.InterlockedAdd(12, _17115, _16065);
+ undetermined_1.InterlockedAdd(12, _17115, _16065);
uint _16066;
- undetermined.InterlockedAdd(16, _17116, _16066);
+ undetermined_1.InterlockedAdd(16, _17116, _16066);
uint _16067;
- undetermined.InterlockedAdd(20, _17117, _16067);
+ undetermined_1.InterlockedAdd(20, _17117, _16067);
uint _16068;
- undetermined.InterlockedAdd(24, _17118, _16068);
+ undetermined_1.InterlockedAdd(24, _17118, _16068);
uint _16069;
- undetermined.InterlockedAdd(28, _17119, _16069);
+ undetermined_1.InterlockedAdd(28, _17119, _16069);
uint _16070;
- undetermined.InterlockedAdd(32, _17120, _16070);
+ undetermined_1.InterlockedAdd(32, _17120, _16070);
uint _21947;
- undetermined.InterlockedAdd(36, _17133, _21947);
+ undetermined_1.InterlockedAdd(36, _17133, _21947);
}
[numthreads(64, 1, 1)]
game/core/shaders_vulkan_dir/shaders/vfx/test.slang
modified • +18 / -31 • changes: 49
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_60
// Programs: gs, ms, ps, vs
}
@@ -33,15 +33,13 @@ COMMON
MS
{
StaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );
- StaticCombo( S_MOBILE, 0..1 );
DynamicCombo( D_GS_TEST, 0, Sys( 0 ) );
DynamicCombo( D_MS_TEST, 0..1 );
ExternalDescriptorSet ExtTestDescSet < Source(ExternalDescSet); Attribute("ExtTestDescSet"); >;
- ByteAddressBuffer g_inputVB < Source(ExternalDescSet); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2476 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2492 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
// Dynamic combos: D_MS_TEST
static float _4;
@@ -68,14 +66,14 @@ MS
void MainMs_inner(inout gl_MeshPerVertexEXT gl_MeshVerticesEXT[4], inout uint3 gl_PrimitiveTriangleIndicesEXT[2])
{
SetMeshOutputCounts(4u, 2u);
- uint _6392 = gl_GlobalInvocationID.x * 36u;
- gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.x = asfloat(g_inputVB.Load(((_6392 + 12u) / 4u) * 4 + 0));
- gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.y = asfloat(g_inputVB.Load(((_6392 + 16u) / 4u) * 4 + 0));
- gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.z = asfloat(g_inputVB.Load(((_6392 + 20u) / 4u) * 4 + 0));
- gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.x = asfloat(g_inputVB.Load(((_6392 + 28u) / 4u) * 4 + 0));
- gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.y = asfloat(g_inputVB.Load(((_6392 + 32u) / 4u) * 4 + 0));
- float4 _15926 = float4(asfloat(g_inputVB.Load((_6392 / 4u) * 4 + 0)), _4, asfloat(g_inputVB.Load(((_6392 + 8u) / 4u) * 4 + 0)), 1.0f);
- _15926.y = asfloat(g_inputVB.Load(((_6392 + 4u) / 4u) * 4 + 0));
+ uint _11265 = gl_GlobalInvocationID.x * 36u;
+ gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.x = asfloat(g_inputVB.Load(((_11265 + 12u) / 4u) * 4 + 0));
+ gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.y = asfloat(g_inputVB.Load(((_11265 + 16u) / 4u) * 4 + 0));
+ gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_0.z = asfloat(g_inputVB.Load(((_11265 + 20u) / 4u) * 4 + 0));
+ gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.x = asfloat(g_inputVB.Load(((_11265 + 28u) / 4u) * 4 + 0));
+ gl_MeshVerticesEXT[gl_GlobalInvocationID.x].output_1.y = asfloat(g_inputVB.Load(((_11265 + 32u) / 4u) * 4 + 0));
+ float4 _15926 = float4(asfloat(g_inputVB.Load((_11265 / 4u) * 4 + 0)), _4, asfloat(g_inputVB.Load(((_11265 + 8u) / 4u) * 4 + 0)), 1.0f);
+ _15926.y = asfloat(g_inputVB.Load(((_11265 + 4u) / 4u) * 4 + 0));
gl_MeshVerticesEXT[gl_GlobalInvocationID.x].gl_Position = _15926;
if (gl_GlobalInvocationID.x == 0u)
{
@@ -113,7 +111,6 @@ struct VS_INPUT
VS
{
StaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );
- StaticCombo( S_MOBILE, 0..1 );
DynamicCombo( D_GS_TEST, 0..1 );
DynamicCombo( D_MS_TEST, 0, Sys( 0 ) );
@@ -171,19 +168,18 @@ VS
GS
{
StaticCombo( S_GS_FORCE_ENABLE, F_GS_FORCE_ENABLE );
- StaticCombo( S_MOBILE, 0..1 );
DynamicCombo( D_GS_TEST, 0..1 );
DynamicCombo( D_MS_TEST, 0..1 );
cbuffer ExternalTestCB1 < Attribute("ExternalTestCB1"); >;
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2152 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1756 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
// Static combos: S_GS_FORCE_ENABLE
// Dynamic combos: D_GS_TEST
@@ -203,13 +199,6 @@ GS
layout(triangles) in;
layout(max_vertices = 3, triangle_strip) out;
- struct _1109
- {
- vec4 _m0;
- vec3 _m1;
- vec2 _m2;
- };
-
struct _985
{
float _m0;
@@ -225,7 +214,6 @@ GS
void main()
{
- _1109 _19582[3] = _1109[](_1109(input_0[0], input_1[0], input_2[0]), _1109(input_0[1], input_1[1], input_2[1]), _1109(input_0[2], input_1[2], input_2[2]));
vec4 _25074 = ((input_0[0] + input_0[1]) + input_0[2]).xyzw * vec4(0.3333333432674407958984375);
float _11735 = (0.5 * ExternalTestCB1._m0) + 0.5;
int _7155;
@@ -237,11 +225,11 @@ GS
{
break;
}
- vec4 _14141 = mix(_25074, _19582[_13039]._m0, vec4((0.300000011920928955078125 * _11735) + 0.699999988079071044921875));
- output_0 = _19582[_13039]._m1;
- output_1 = _19582[_13039]._m2;
- _14141.y = -_14141.y;
- gl_Position = _14141;
+ vec4 _17221 = mix(_25074, input_0[_13039], vec4((0.300000011920928955078125 * _11735) + 0.699999988079071044921875));
+ output_0 = input_1[_13039];
+ output_1 = input_2[_13039];
+ _17221.y = -_17221.y;
+ gl_Position = _17221;
EmitVertex();
_7155 = _13039 + 1;
_13039 = _7155;
@@ -270,7 +258,6 @@ PS
float g_flPinch < Default(1); UiType(Slider); >;
int g_nValue < UiType(Slider); >;
Texture2D g_tColor < Channel(RGB, Box(TextureColor), Srgb); OutputFormat(DXT1); SrgbRead(true); >;
- Texture2D g_tDescSetTest < Source(ExternalDescSet); SrgbRead(false); >;
float3 g_vModulationColor2 < Default(0); UiType(Color); >;
float3 g_vModulationColor3 < Default3(1, 1, 0.5); UiType(Color); >;
@@ -279,7 +266,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// Only Logical addressing model can be used with HLSL.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/test_dgc.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/test_renderpass.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_facevertexcolor.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_objectspacenormal.slang
modified • +11 / -11 • changes: 22
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -44,8 +44,8 @@ VS
static float4 gl_Position;
static float2 vTexCoord;
- static float4 vNormalOs;
- static float3 vTangentUOs_flTangentVSign;
+ static float3 vNormalOs;
+ static float4 vTangentUOs_flTangentVSign;
static float3 output_0;
static float2 output_1;
static float3 output_2;
@@ -54,8 +54,8 @@ VS
struct VS_INPUT
{
float2 vTexCoord : TEXCOORD0;
- float3 vTangentUOs_flTangentVSign : TEXCOORD1;
- float4 vNormalOs : TEXCOORD2;
+ float3 vNormalOs : TEXCOORD1;
+ float4 vTangentUOs_flTangentVSign : TEXCOORD2;
};
struct PS_INPUT
@@ -70,14 +70,14 @@ VS
void MainVs_inner()
{
float2 _7080 = (float2(vTexCoord.x, 1.0f - vTexCoord.y) - 0.5f.xx) * 2.0f;
- float4 _14817 = float4(_7080, 1.0f, 1.0f);
- float3 _24772 = normalize(vNormalOs.xyz - (vTangentUOs_flTangentVSign.xyz * dot(vNormalOs.xyz, vTangentUOs_flTangentVSign.xyz)));
- output_0 = vTangentUOs_flTangentVSign;
+ float4 _14437 = float4(_7080, 1.0f, 1.0f);
+ float3 _24772 = normalize(vTangentUOs_flTangentVSign.xyz - (vNormalOs.xyz * dot(vTangentUOs_flTangentVSign.xyz, vNormalOs.xyz)));
+ output_0 = vNormalOs;
output_1 = vTexCoord.xy;
output_2 = _24772;
- output_3 = cross(vTangentUOs_flTangentVSign.xyz, _24772.xyz) * vNormalOs.w;
- _14817.y = -_7080.y;
- gl_Position = _14817;
+ output_3 = cross(vNormalOs.xyz, _24772.xyz) * vTangentUOs_flTangentVSign.w;
+ _14437.y = -_7080.y;
+ gl_Position = _14437;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_positionmap.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/texture_generator_render_unlit.slang
modified • +47 / -25 • changes: 72
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -42,11 +42,11 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -60,27 +60,34 @@ VS
float _m7;
};
- struct _1108
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _164
+ struct _1126
{
- _1108 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1234
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1234 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -109,18 +116,33 @@ VS
void MainVs_inner()
{
- _1108 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));
output_1 = vNormalOs;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_2d_generic.slang
modified • +7 / -7 • changes: 14
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -98,14 +98,14 @@ PS
Texture2D<float4> g_tColorTexture : register(t30, space1);
SamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear : register(s14, space1);
- static float2 input_0;
- static float4 input_1;
+ static float4 input_0;
+ static float2 input_1;
static float4 output_0;
struct PS_INPUT
{
- float4 input_1 : TEXCOORD0;
- float2 input_0 : TEXCOORD1;
+ float4 input_0 : TEXCOORD0;
+ float2 input_1 : TEXCOORD1;
};
struct PS_OUTPUT
@@ -115,7 +115,7 @@ PS
void MainPs_inner()
{
- output_0 = input_1 * g_tColorTexture.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, input_0.xy);
+ output_0 = input_0 * g_tColorTexture.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipLinear, input_1.xy);
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_generic.slang
modified • +45 / -23 • changes: 68
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -51,15 +51,15 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Color
float2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup("Color/30"); >;
float2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup("Color/40"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3356 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -73,26 +73,33 @@ VS
float _m7;
};
- struct _1108
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _164
+ struct _1126
{
- _1108 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1234
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1234 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -128,18 +135,33 @@ VS
void MainVs_inner()
{
- _1108 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
- output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));
output_1 = (vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_grid.slang
modified • +22 / -32 • changes: 54
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -54,19 +54,14 @@ VS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vGridAxis1) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2468 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1880 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
- struct _58
- {
- vec4 _m0[4];
- };
-
struct _1295
{
vec3 g_vGridAxis0;
@@ -78,13 +73,13 @@ VS
layout(set = 0) uniform _1295 _Globals_;
- struct _1138
+ struct _1224
{
- _58 _m0;
+ mat4 _m0;
vec4 _m1;
};
- layout(set = 0) uniform _1138 PerViewConstantBuffer_t;
+ layout(set = 0) uniform _1224 PerViewConstantBuffer_t;
layout(location = 0) in vec3 vPositionOs;
layout(location = 1) in vec4 vColor;
@@ -95,11 +90,11 @@ VS
{
float _16863 = mix(_Globals_.g_vGridMin.x, _Globals_.g_vGridMax.x, vPositionOs.x);
float _22467 = mix(_Globals_.g_vGridMin.y, _Globals_.g_vGridMax.y, vPositionOs.y);
- vec4 _23706 = (vec4((((_Globals_.g_vGridAxis0 * _16863) + (_Globals_.g_vGridAxis1 * _22467)).xyz + _Globals_.g_vGridAxis2).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
+ vec4 _18068 = (vec4((((_Globals_.g_vGridAxis0 * _16863) + (_Globals_.g_vGridAxis1 * _22467)).xyz + _Globals_.g_vGridAxis2).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
output_0 = vec3(_16863, _22467, 0.0);
output_1 = vColor;
- _23706.y = -_23706.y;
- gl_Position = _23706;
+ _18068.y = -_18068.y;
+ gl_Position = _18068;
}
@@ -132,30 +127,25 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vGridAxis1) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (6212 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (5608 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
- struct _1444
- {
- vec4 _m0[4];
- };
-
vec4 _3;
- struct _993
+ struct _1318
{
- _1444 _m0;
+ mat4 _m0;
vec2 _m1;
vec2 _m2;
vec3 _m3;
};
- layout(set = 1) uniform _993 PerViewConstantBuffer_t;
+ layout(set = 1) uniform _1318 PerViewConstantBuffer_t;
struct _1980
{
@@ -203,8 +193,8 @@ PS
_16306 = _16305;
_17134 = _17133;
int _3633;
- float _4243;
float _5489;
+ float _23914;
vec4 _14211;
float _17018 = -0.25;
for (;;)
@@ -215,8 +205,8 @@ PS
}
_3633 = _17134 + 1;
vec3 _7727 = cross(_Globals_.g_vGridAxis0, _Globals_.g_vGridAxis1);
- vec4 _24010 = vec4(_17305 + (PerViewConstantBuffer_t._m2 * vec2(_17018, _17017)), 1.0, 1.0) * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec3 _10521 = _24010.xyz / vec3(_24010.w);
+ vec4 _18372 = vec4(_17305 + (PerViewConstantBuffer_t._m2 * vec2(_17018, _17017)), 1.0, 1.0) * PerViewConstantBuffer_t._m0;
+ vec3 _10521 = _18372.xyz / vec3(_18372.w);
vec4 _22905;
_22905.x = _10521.x;
_22905.y = _10521.y;
@@ -228,7 +218,7 @@ PS
vec2 _4840 = vec2(1.0) - clamp(abs(_3719 - _15975) / (_22106 * (0.699999988079071044921875 * _Globals_.g_fInvGridSpacing)), vec2(0.0), vec2(1.0));
float _13224 = _4840.x;
float _7629 = _4840.y;
- _4243 = _16306 + max(_13224, _7629);
+ _23914 = _16306 + max(_13224, _7629);
if (_13224 > _7629)
{
int _6461 = int(_15975.x * _Globals_.g_fGridSpacing);
@@ -295,7 +285,7 @@ PS
}
_5489 = _17018 + 0.25;
_13137 = _14211;
- _16306 = _4243;
+ _16306 = _23914;
_17134 = _3633;
_17018 = _5489;
continue;
@@ -308,9 +298,9 @@ PS
continue;
}
float _16034 = 1.0 / float(_17133);
- vec4 _13992 = _13136 * _16034;
- _13992.w = _13992.w * (_16305 * _16034);
- output_0 = _13992;
+ vec4 _5645 = _13136 * _16034;
+ _5645.w = _5645.w * (_16305 * _16034);
+ output_0 = _5645;
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_light_probe.slang
modified • +12 / -17 • changes: 29
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -38,17 +38,12 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1716 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1112 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- struct _436
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- float4 _m0[4];
- };
-
- cbuffer _Globals_ : register(b0, space0)
- {
- _436 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -73,11 +68,11 @@ VS
void MainVs_inner()
{
- float4 _8264 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(vPositionWs.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
+ float4 _18241 = mul(PerViewConstantBuffer_t_1_m0, (float4(vPositionWs.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = vPositionWs.xyz;
output_1 = vNormalWs.xyz;
- _8264.y = -_8264.y;
- gl_Position = _8264;
+ _18241.y = -_18241.y;
+ gl_Position = _18241;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -106,9 +101,9 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (1452 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float3 _Globals_1_m0 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m0 : packoffset(c26);
};
SamplerState AddressU_Wrap_AddressV_Clamp_Filter_MinMagMipLinear : register(s14, space1);
@@ -131,7 +126,7 @@ PS
void MainPs_inner()
{
- float3 _19258 = normalize(reflect(input_1.xyz - _Globals_1_m0.xyz, normalize(input_0)));
+ float3 _19258 = normalize(reflect(input_1.xyz - PerViewConstantBuffer_t_1_m0.xyz, normalize(input_0)));
float _7511 = acos(_19258.z) * 0.3183098733425140380859375f;
float2 _16582 = _19258.xy;
output_0 = g_tSkyRadiance.SampleGrad(AddressU_Wrap_AddressV_Clamp_Filter_MinMagMipLinear, float2(atan2(_19258.y, _19258.x) * 0.15915493667125701904296875f, _7511), float2(length(ddx(_16582)) * 0.15915493667125701904296875f, ddx(_7511)), float2(length(ddy(_16582)) * 0.15915493667125701904296875f, ddy(_7511)));
game/core/shaders_vulkan_dir/shaders/vfx/tools_modelviewer_wireframe.slang
modified • +44 / -21 • changes: 65
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -46,12 +46,12 @@ VS
DynamicCombo( D_MORPH, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1948 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -65,26 +65,33 @@ VS
float _m7;
};
- struct _1150
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _248
+ struct _1126
{
- _1150 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1276
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1276 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -106,15 +113,31 @@ VS
void MainVs_inner()
{
- _1150 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _24787 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
- _24787.y = -_24787.y;
- gl_Position = _24787;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _19149.y = -_19149.y;
+ gl_Position = _19149;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_outline.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_overlay.slang
modified • +45 / -22 • changes: 67
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -41,15 +41,15 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// OverrideColor
float g_OverrideColorFactor < UiType(Slider); UiGroup("OverrideColor"); >;
float4 g_vOverrideColor < UiType(Color); UiGroup("OverrideColor"); Expression(SrgbGammaToLinear(this)); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4124 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3456 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -63,26 +63,33 @@ VS
float _m7;
};
- struct _982
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2923
+ struct _1126
{
- _982 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1108
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1108 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -116,13 +123,29 @@ VS
void MainVs_inner()
{
- _982 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
float3 _24030 = vColor.xyz * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((vColor.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
float _21354;
@@ -153,9 +176,9 @@ VS
_19190 = _7676.z;
}
output_0 = float4(lerp(float3(_21354, _21355, _19190), _Globals_1_g_vOverrideColor.xyz, _Globals_1_g_OverrideColorFactor.xxx), lerp(vColor.w, _Globals_1_g_vOverrideColor.w, _Globals_1_g_OverrideColorFactor));
- output_1 = _23533;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ output_1 = _17895;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_selection_stencil_copy.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_solid.slang
modified • +55 / -33 • changes: 88
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -52,11 +52,11 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
bool g_bIgnoreTintAlpha < Attribute("IgnoreTintAlpha"); UiType(CheckBox); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4968 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4252 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -70,26 +70,33 @@ VS
float _m7;
};
- struct _1192
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _332
+ struct _1126
{
- _1192 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1318
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1318 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -128,17 +135,32 @@ VS
void MainVs_inner()
{
- _1192 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _23051 = mul(_14779, float4(vPositionOs.xyz, 1.0f));
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
- float4 _13069 = vNormalOs;
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _23051 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ float4 _12923 = vNormalOs;
+ float4 _23812 = float4(uint4(_19924._m0 & 255u, (_19924._m0 & 65280u) >> uint(8), (_19924._m0 & 16711680u) >> uint(16), (_19924._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -172,26 +194,26 @@ VS
_23812.x = _21354;
_23812.y = _21355;
_23812.z = _19167;
- float4 _22252;
+ float4 _22247;
if (_Globals_1_g_bIgnoreTintAlpha != 0)
{
- float3 _15408 = _13069.xyz * abs(_23812.xyz);
- float4 _23714 = _13069;
+ float3 _15408 = _12923.xyz * abs(_23812.xyz);
+ float4 _23714 = _12923;
_23714.x = _15408.x;
_23714.y = _15408.y;
_23714.z = _15408.z;
- _22252 = _23714;
+ _22247 = _23714;
}
else
{
- _22252 = _13069 * abs(_23812);
+ _22247 = _12923 * abs(_23812);
}
- output_0 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)));
- output_1 = _22252;
- output_2 = _23533;
+ output_0 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)));
+ output_1 = _22247;
+ output_2 = _17895;
output_3 = _23051;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_sprite.slang
modified • +14 / -19 • changes: 33
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -149,31 +149,26 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3776 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3172 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
layout(points) in;
layout(max_vertices = 4, triangle_strip) out;
- struct _1402
- {
- vec4 _m0[4];
- };
-
vec4 _2;
- struct _869
+ struct _1278
{
- _1402 _m0;
+ mat4 _m0;
vec2 _m1;
vec4 _m2;
};
- layout(set = 2) uniform _869 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1278 PerViewConstantBuffer_t;
layout(location = 0) in vec4 input_0[1];
layout(location = 1) in vec4 input_1[1];
@@ -184,10 +179,10 @@ GS
void main()
{
- vec4 _7230 = (vec4(input_0[0].xyz, 1.0) + (PerViewConstantBuffer_t._m2 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec2 _13731 = _7230.xy;
+ vec4 _20663 = (vec4(input_0[0].xyz, 1.0) + (PerViewConstantBuffer_t._m2 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
+ vec2 _13731 = _20663.xy;
vec2 _14654 = PerViewConstantBuffer_t._m1.xy * input_2[0];
- float _12129 = _7230.w;
+ float _12129 = _20663.w;
vec2 _6635 = _13731 + ((_14654 * vec2(-1.0)) * _12129);
float _9979 = _6635.x;
vec4 _20488;
@@ -206,23 +201,23 @@ GS
vec2 _9004 = ((_20489.xy / _7534) * 0.5) + vec2(0.5);
vec4 _5752 = vec4(_22603.x, (vec2(_9004.x, 1.0 - _9004.y) / PerViewConstantBuffer_t._m1.xy).yx, _22603.y);
vec2 _9831 = _13731 + ((_14654 * vec2(-1.0, 1.0)) * _12129);
- vec4 _20108 = _7230;
+ vec4 _20108 = _20663;
_20108.x = _9831.x;
output_0 = input_1[0];
output_1 = vec2(0.0);
output_2 = _5752;
_20108.y = -_9831.y;
gl_Position = _20108;
EmitVertex();
- vec4 _18816 = _7230;
+ vec4 _18816 = _20663;
_18816.x = _9979;
output_0 = input_1[0];
output_1 = vec2(0.0, 1.0);
output_2 = _5752;
_18816.y = -_21775;
gl_Position = _18816;
EmitVertex();
- vec4 _18817 = _7230;
+ vec4 _18817 = _20663;
_18817.x = _9980;
output_0 = input_1[0];
output_1 = vec2(1.0, 0.0);
@@ -231,7 +226,7 @@ GS
gl_Position = _18817;
EmitVertex();
vec2 _9832 = _13731 + ((_14654 * vec2(1.0, -1.0)) * _12129);
- vec4 _20109 = _7230;
+ vec4 _20109 = _20663;
_20109.x = _9832.x;
output_0 = input_1[0];
output_1 = vec2(1.0);
game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_blend.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_remap.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_slope.slang
modified • +4 / -4 • changes: 8
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -93,11 +93,11 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vLayerSize) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2320 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2336 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#extension GL_EXT_samplerless_texture_functions : require
@@ -133,7 +133,7 @@ PS
{
break;
}
- uvec2 _10352 = uvec2(textureSize(g_tDisplacement, 0));
+ uvec2 _10352 = uvec2(textureSize(g_tDisplacement, int(0u)));
vec2 _19607 = vec2(1.0) / vec2(ivec2(int(_10352.x), int(_10352.y)));
vec3 _10323 = abs(_20688 - (vec3((_19607 * _Globals_.g_vLayerSize) * _863[_16208], 0.0) + (texture(sampler2D(g_tDisplacement, AddressU_Clamp_AddressV_Clamp_Filter_MinMagMipPoint), (input_0 + (_19607 * _863[_16208])).xy).zyx * _Globals_.g_vDisplacementScale)));
float _23793 = _10323.z;
game/core/shaders_vulkan_dir/shaders/vfx/tools_terrain_composite_test.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -102,7 +102,7 @@ PS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 4 (name: g_TestB) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
game/core/shaders_vulkan_dir/shaders/vfx/tools_texture_preview.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/tools_textured_unlit.slang
modified • +47 / -25 • changes: 72
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -42,11 +42,11 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3008 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2324 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -60,27 +60,34 @@ VS
float _m7;
};
- struct _1108
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _164
+ struct _1126
{
- _1108 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1234
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1234 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -109,18 +116,33 @@ VS
void MainVs_inner()
{
- _1108 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float4 _23533 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));
output_1 = vNormalOs;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_visualize_collision_mesh.slang
modified • +46 / -24 • changes: 70
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -48,12 +48,12 @@ VS
DynamicCombo( D_COMPRESSED_NORMALS_AND_TANGENTS, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
float4 g_vColor < Default4(1, 1, 1, 1); Attribute("Color"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4536 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3852 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -67,26 +67,33 @@ VS
float _m7;
};
- struct _1444
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _836
+ struct _1126
{
- _1444 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1570
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1570 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
float3 PerViewConstantBuffer_t_1_m2 : packoffset(c26);
};
@@ -122,23 +129,38 @@ VS
void MainVs_inner()
{
- _1444 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _11111 = mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz;
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_11111, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
- float3 _10837 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _11111 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(_11111, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ float3 _10837 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)));
float _19069 = clamp(dot(_10837, float3(-1.0f, 1.0f, -1.0f)), 0.0f, 1.0f);
float _13301 = dot(-normalize(_11111 - PerViewConstantBuffer_t_1_m2.xyz), _10837.xyz);
bool _6651 = _13301 < 0.0f;
output_0 = float4((vNormalOs.xyz * _Globals_1_g_vColor.xyz) * (clamp(float3(clamp(dot(_10837, 1.0f.xxx), 0.0f, 1.0f) + _19069, clamp(dot(_10837, float3(-1.0f, -1.0f, 1.0f)), 0.0f, 1.0f) + _19069, clamp(dot(_10837, float3(1.0f, -1.0f, -1.0f)), 0.0f, 1.0f)) * 0.014999999664723873138427734375f, 0.0f.xxx, 1.0f.xxx) + 0.89999997615814208984375f.xxx), (vNormalOs.w * clamp(((_6651 ? 0.25f : 1.0f) * pow(1.0f - abs(_13301), _6651 ? 4.0f : 2.0f)) + pow(clamp(_13301, 0.0f, 1.0f), 8.0f), 0.0f, 1.0f)) * _Globals_1_g_vColor.w);
output_1 = _10837;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/tools_visualize_tangent_frame.slang
modified • +54 / -40 • changes: 94
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -54,12 +54,12 @@ VS
DynamicCombo( D_MORPH, 0..1 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
Texture2D g_tCompositeMorphTextureAtlas < Attribute("CompositeMorphTextureAtlas"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1644 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -73,14 +73,26 @@ VS
float _m7;
};
- struct _1150
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _248
+ struct _1126
{
- _1150 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
+ };
+
+ struct _1120
+ {
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
@@ -107,15 +119,30 @@ VS
void MainVs_inner()
{
- _1150 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14437 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- output_0 = mul(_14437, float4(vPositionOs.xyz, 1.0f));
- output_1 = normalize(mul(_14437, float4(vNormalOs.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ output_0 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ output_1 = normalize(mul(_19848._m0, float4(vNormalOs.xyz, 0.0f)));
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -145,34 +172,23 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2948 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1932 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
layout(triangles) in;
layout(max_vertices = 6, line_strip) out;
- struct _1055
- {
- vec3 _m0;
- vec3 _m1;
- };
-
- struct _2452
- {
- vec4 _m0[4];
- };
-
- struct _2915
+ struct _1224
{
- _2452 _m0;
+ mat4 _m0;
vec4 _m1;
};
- layout(set = 2) uniform _2915 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1224 PerViewConstantBuffer_t;
struct _985
{
@@ -187,7 +203,6 @@ GS
void main()
{
- _1055 _19582[3] = _1055[](_1055(input_0[0], input_1[0]), _1055(input_0[1], input_1[1]), _1055(input_0[2], input_1[2]));
int _10337;
int _13039 = 0;
for (;;)
@@ -197,13 +212,12 @@ GS
break;
}
vec4 _21447 = PerViewConstantBuffer_t._m1 * 1.0;
- mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec4 _23875 = (vec4(_19582[_13039]._m0.xyz, 1.0) + _21447).xyzw * _15571;
+ vec4 _18241 = (vec4(input_0[_13039].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = vec3(0.0, 0.0, 1.0);
- _23875.y = -_23875.y;
- gl_Position = _23875;
+ _18241.y = -_18241.y;
+ gl_Position = _18241;
EmitVertex();
- vec4 _8486 = (vec4((_19582[_13039]._m0.xyz + (_19582[_13039]._m1.xyz * undetermined._m0)).xyz, 1.0) + _21447).xyzw * _15571;
+ vec4 _8486 = (vec4((input_0[_13039].xyz + (input_1[_13039].xyz * undetermined._m0)).xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
output_0 = vec3(0.300000011920928955078125, 0.300000011920928955078125, 1.0);
_8486.y = -_8486.y;
gl_Position = _8486;
game/core/shaders_vulkan_dir/shaders/vfx/tools_wireframe.slang
modified • +80 / -67 • changes: 147
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -42,14 +42,13 @@ struct VS_INPUT
float4 vColor : COLOR0 < Semantic( Color ); >;
float4 vNormalOs : NORMAL0 < Semantic( Normal ); >;
float3 vPositionOs : POSITION0 < Semantic( PosXyz ); >;
- float2 vFirstLineVertPosWs : TEXCOORD0 < Semantic( uvw ); >; // D_THICK_LINES=0, D_FREEFORM_DEFORMATION=1, S_MOBILE=1
+ float2 vFirstLineVertPosWs : TEXCOORD0 < Semantic( uvw ); >; // D_THICK_LINES=0, D_FREEFORM_DEFORMATION=1
float2 nInstanceIdx : TEXCOORD13 < Semantic( InstanceTransformUv ); >;
};
VS
{
StaticCombo( S_MODE_DEPTH, 0..1 );
- StaticCombo( S_MOBILE, 0..1 );
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
DynamicCombo( D_DEPTH_BIAS, 0..1 );
DynamicCombo( D_SNAP_TO_SCREEN_PIXELS, 0..1 );
@@ -61,8 +60,8 @@ VS
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
bool g_bIgnoreTintAlpha < Attribute("IgnoreTintAlpha"); UiType(CheckBox); >;
float g_flDynamicLineThickness < Default(1); Attribute("DynamicLineThickness"); UiType(Slider); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Depth Bias Amount
float g_DepthBiasAmount < Default(0.005); UiType(Slider); UiGroup("Depth Bias Amount"); >;
@@ -75,7 +74,7 @@ VS
float4 g_vOverrideColor < Default(0); UiType(Color); UiGroup("Override Color"); Expression(SrgbGammaToLinear(this)); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (6176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (5476 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -89,26 +88,33 @@ VS
float _m7;
};
- struct _1360
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _668
+ struct _1126
{
- _1360 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1486
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1486 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -153,17 +159,31 @@ VS
void MainVs_inner()
{
- _1360 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _23070 = mul(_14779, float4(vPositionOs.xyz, 1.0f));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _23070 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
float4 _21447 = PerViewConstantBuffer_t_1_m1 * 1.0f;
- float4x4 _15571 = float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w));
- float4 _23875 = mul(_15571, (float4(_23070.xyz, 1.0f) + _21447).xyzw);
+ float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23070.xyz, 1.0f) + _21447).xyzw);
float3 _24030 = nInstanceIdx.xyz * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((nInstanceIdx.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
float _21354;
@@ -193,8 +213,8 @@ VS
{
_19302 = _7676.z;
}
- float4 _23628 = float4(_21354, _21355, _19302, nInstanceIdx.w);
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 255u), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(vFirstLineVertPosWs * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ float4 _23482 = float4(_21354, _21355, _19302, nInstanceIdx.w);
+ float4 _23812 = float4(uint4(_19924._m0 & 255u, (_19924._m0 & 65280u) >> uint(8), (_19924._m0 & 16711680u) >> uint(16), (_19924._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7677 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -231,24 +251,24 @@ VS
float4 _21709;
if (_Globals_1_g_bIgnoreTintAlpha != 0)
{
- float3 _15408 = _23628.xyz * abs(_23812.xyz);
- float4 _23714 = _23628;
+ float3 _15408 = _23482.xyz * abs(_23812.xyz);
+ float4 _23714 = _23482;
_23714.x = _15408.x;
_23714.y = _15408.y;
_23714.z = _15408.z;
_21709 = _23714;
}
else
{
- _21709 = _23628 * abs(_23812);
+ _21709 = _23482 * abs(_23812);
}
- output_0 = normalize(mul(_14779, float4(vColor.xyz, 0.0f)).xyz);
+ output_0 = normalize(mul(_19848._m0, float4(vColor.xyz, 0.0f)).xyz);
output_1 = lerp(_21709, _Globals_1_g_vOverrideColor, _Globals_1_g_OverrideColorFactor.xxxx);
- output_2 = mul(_15571, (float4(mul(_14779, float4(vNormalOs, 1.0f)).xyz, 1.0f) + _21447).xyzw);
- output_3 = _23875;
+ output_2 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vNormalOs, 1.0f)).xyz, 1.0f) + _21447).xyzw);
+ output_3 = _18237;
output_4 = _23070;
- _23875.y = -_23875.y;
- gl_Position = _23875;
+ _18237.y = -_18237.y;
+ gl_Position = _18237;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -277,7 +297,6 @@ VS
GS
{
StaticCombo( S_MODE_DEPTH, 0..1 );
- StaticCombo( S_MOBILE, 0..1 );
DynamicCombo( D_THICK_LINES, 0..1 );
DynamicCombo( D_DEPTH_BIAS, 0..1 );
@@ -288,30 +307,25 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4136 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3532 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
// Dynamic combos: D_THICK_LINES
#version 460
layout(lines) in;
layout(max_vertices = 4, triangle_strip) out;
- struct _1864
- {
- vec4 _m0[4];
- };
-
- struct _1793
+ struct _1278
{
- _1864 _m0;
+ mat4 _m0;
vec2 _m1;
vec4 _m2;
};
- layout(set = 2) uniform _1793 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1278 PerViewConstantBuffer_t;
layout(location = 0) in vec3 input_0[2];
layout(location = 1) in vec3 input_1[2];
@@ -326,61 +340,60 @@ GS
void main()
{
vec4 _21447 = PerViewConstantBuffer_t._m2 * 1.0;
- mat4 _15571 = mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- vec4 _24240 = (vec4(input_0[0].xyz, 1.0) + _21447).xyzw * _15571;
- vec4 _9193 = (vec4(input_0[1].xyz, 1.0) + _21447).xyzw * _15571;
+ vec4 _20663 = (vec4(input_0[0].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
+ vec4 _9193 = (vec4(input_0[1].xyz, 1.0) + _21447).xyzw * PerViewConstantBuffer_t._m0;
vec2 _13645 = _9193.xy;
float _20176 = _9193.w;
- vec2 _7058 = _24240.xy;
- float _20181 = _24240.w;
+ vec2 _7058 = _20663.xy;
+ float _20181 = _20663.w;
vec2 _25108 = PerViewConstantBuffer_t._m1.xy * 2.0;
- float _14436 = _24240.z;
- vec2 _19809 = (normalize(vec2(1.0, -1.0) * (((_13645 / vec2(_20176)) - (_7058 / vec2(_20181))).xy / _25108).yx).xy * _25108).xy;
- vec2 _13861 = _7058 + ((_19809 * input_2[0]) * _20181);
+ float _15395 = _20663.z;
+ vec2 _20907 = (normalize(vec2(1.0, -1.0) * (((_13645 / vec2(_20176)) - (_7058 / vec2(_20181))).xy / _25108).yx).xy * _25108).xy;
+ vec2 _13861 = _7058 + ((_20907 * input_2[0]) * _20181);
float _9979 = _13861.x;
- vec4 _20450 = _24240;
+ vec4 _20450 = _20663;
_20450.x = _9979;
output_0 = input_1[0];
output_1 = input_3[0];
- output_2 = _24240;
- output_3 = vec4(_9979, _13861.y, _14436, _20181);
+ output_2 = _20663;
+ output_3 = vec4(_9979, _13861.y, _15395, _20181);
output_4 = input_0[0];
_20450.y = -_13861.y;
gl_Position = _20450;
EmitVertex();
- float _14689 = _9193.z;
- vec2 _13862 = _13645 + ((_19809 * input_2[1]) * _20176);
+ float _8092 = _9193.z;
+ vec2 _13862 = _13645 + ((_20907 * input_2[1]) * _20176);
float _9980 = _13862.x;
vec4 _20451 = _9193;
_20451.x = _9980;
output_0 = input_1[1];
output_1 = input_3[1];
- output_2 = _24240;
- output_3 = vec4(_9980, _13862.y, _14689, _20176);
+ output_2 = _20663;
+ output_3 = vec4(_9980, _13862.y, _8092, _20176);
output_4 = input_0[1];
_20451.y = -_13862.y;
gl_Position = _20451;
EmitVertex();
- vec2 _13863 = _7058 + ((_19809 * ((-1.0) * input_2[0])) * _20181);
+ vec2 _13863 = _7058 + ((_20907 * ((-1.0) * input_2[0])) * _20181);
float _9981 = _13863.x;
- vec4 _20452 = _24240;
+ vec4 _20452 = _20663;
_20452.x = _9981;
output_0 = input_1[0];
output_1 = input_3[0];
- output_2 = _24240;
- output_3 = vec4(_9981, _13863.y, _14436, _20181);
+ output_2 = _20663;
+ output_3 = vec4(_9981, _13863.y, _15395, _20181);
output_4 = input_0[0];
_20452.y = -_13863.y;
gl_Position = _20452;
EmitVertex();
- vec2 _13864 = _13645 + ((_19809 * ((-1.0) * input_2[1])) * _20176);
+ vec2 _13864 = _13645 + ((_20907 * ((-1.0) * input_2[1])) * _20176);
float _9982 = _13864.x;
vec4 _20453 = _9193;
_20453.x = _9982;
output_0 = input_1[1];
output_1 = input_3[1];
- output_2 = _24240;
- output_3 = vec4(_9982, _13864.y, _14689, _20176);
+ output_2 = _20663;
+ output_3 = vec4(_9982, _13864.y, _8092, _20176);
output_4 = input_0[1];
_20453.y = -_13864.y;
gl_Position = _20453;
game/core/shaders_vulkan_dir/shaders/vfx/ui.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/ui_texture_on_model.slang
modified • +45 / -23 • changes: 68
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -47,15 +47,15 @@ VS
DynamicCombo( D_BLEND_WEIGHT_COUNT, 0..4 );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Color
float2 g_vTexCoordScale < Default2(1, 1); Range2(0, 0, 8, 8); UiType(VectorText); UiGroup("Color/30"); >;
float2 g_vTexCoordOffset < Range2(-1, -1, 1, 1); UiType(VectorText); UiGroup("Color/40"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3356 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2688 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -69,26 +69,33 @@ VS
float _m7;
};
- struct _1108
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _164
+ struct _1126
{
- _1108 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1234
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _1234 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -124,18 +131,33 @@ VS
void MainVs_inner()
{
- _1108 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float4 _23533 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(_14779, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
- output_0 = normalize(mul(_14779, float4(vTexCoord.xyz, 0.0f)));
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17895 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = normalize(mul(_19848._m0, float4(vTexCoord.xyz, 0.0f)));
output_1 = (vNormalOs.xy * _Globals_1_g_vTexCoordScale.xy) + _Globals_1_g_vTexCoordOffset.xy;
- _23533.y = -_23533.y;
- gl_Position = _23533;
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/unlit.slang
modified • +2 / -2 • changes: 4
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/vis_cstest.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/core/shaders_vulkan_dir/shaders/vfx/visualize_aggregate.slang
modified • +43 / -20 • changes: 63
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -38,12 +38,12 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
float3 g_vColor < Attribute("Color"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2860 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -57,26 +57,33 @@ VS
float _m7;
};
- struct _856
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2671
+ struct _1126
{
- _856 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _982
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _982 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -105,16 +112,32 @@ VS
void MainVs_inner()
{
- _856 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _23609 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = _Globals_1_g_vColor;
- _23609.y = -_23609.y;
- gl_Position = _23609;
+ _17971.y = -_17971.y;
+ gl_Position = _17971;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/visualize_cloth.slang
modified • +60 / -50 • changes: 110
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -57,19 +57,19 @@ VS
float g_flAlpha < Default(1); UiType(Slider); UiGroup("Color"); >;
float3 g_vColorTint < Default3(1, 1, 1); UiType(Color); UiGroup("Color"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// WireframeEmit
float3 g_vWireframeEmit < UiType(Color); UiGroup("WireframeEmit"); >;
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3440 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3344 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
@@ -85,19 +85,31 @@ VS
float _m7;
};
- struct _940
+ struct _1126
{
- vec4 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
+ };
+
+ struct _1119
+ {
+ mat3x4 _m0;
};
- struct _2839
+ struct _1120
{
- _940 _m0;
+ mat3x4 _m0;
};
layout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer
{
- _1125 _m0[];
+ _1126 _m0[];
} g_instanceBuffer_1;
struct _1075
@@ -111,18 +123,27 @@ VS
layout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer
{
- _2839 _m0[];
+ _1120 _m0[];
} g_transformBuffer_1;
- layout(location = 0) in vec3 vPositionOs;
- layout(location = 1) in uint nInstanceIdx;
+ layout(location = 1) in uint vPositionOs;
+ layout(location = 0) in vec3 nInstanceIdx;
layout(location = 0) out vec3 output_0;
layout(location = 1) out vec4 output_1;
layout(location = 2) out vec3 output_2;
void main()
{
- vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
+ _1125 _22470;
+ _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;
+ _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;
+ _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;
+ _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;
+ _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;
+ _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;
+ _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;
+ _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;
+ vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
vec3 _6253 = _23812.xyz;
vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);
vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));
@@ -154,7 +175,9 @@ VS
_19302 = _7676.z;
}
float _25150 = _23812.w;
- output_0 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);
+ _1119 _19848;
+ _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;
+ output_0 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;
output_1 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);
output_2 = _Globals_.g_vWireframeEmit;
}
@@ -172,11 +195,11 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_EXT_control_flow_attributes)
@@ -194,25 +217,13 @@ GS
layout(triangles) in;
layout(max_vertices = 3, triangle_strip) out;
- struct _1134
- {
- vec3 _m0;
- vec4 _m1;
- vec3 _m2;
- };
-
- struct _239
- {
- vec4 _m0[4];
- };
-
- struct _1500
+ struct _1224
{
- _239 _m0;
+ mat4 _m0;
vec4 _m1;
};
- layout(set = 2) uniform _1500 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1224 PerViewConstantBuffer_t;
layout(location = 0) in vec3 input_0[3];
layout(location = 1) in vec4 input_1[3];
@@ -224,8 +235,7 @@ GS
void main()
{
- _1134 _19582[3] = _1134[](_1134(input_0[0], input_1[0], input_2[0]), _1134(input_0[1], input_1[1], input_2[1]), _1134(input_0[2], input_1[2], input_2[2]));
- vec3 _15751 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));
+ vec3 _15752 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));
int _7155;
int _13039 = 0;
SPIRV_CROSS_UNROLL
@@ -235,13 +245,13 @@ GS
{
break;
}
- vec4 _23913 = (vec4(_19582[_13039]._m0.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- output_0 = _15751;
- output_1 = _19582[_13039]._m0;
- output_2 = _19582[_13039]._m1;
- output_3 = _19582[_13039]._m2;
- _23913.y = -_23913.y;
- gl_Position = _23913;
+ vec4 _17895 = (vec4(input_0[_13039].xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
+ output_0 = _15752;
+ output_1 = input_0[_13039];
+ output_2 = input_1[_13039];
+ output_3 = input_2[_13039];
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
EmitVertex();
_7155 = _13039 + 1;
_13039 = _7155;
@@ -275,13 +285,13 @@ PS
RenderState(DepthWriteEnable, F_TRANSLUCENT ? False : True);
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
// IsSelected
float g_flIsSelected < Attribute("IsSelected"); UiType(Slider); UiGroup("IsSelected"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3984 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _3;
@@ -301,10 +311,10 @@ PS
float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
- cbuffer SunLightShaderParamsCB : register(b3, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b3, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
cbuffer _Globals_ : register(b0, space1)
@@ -337,7 +347,7 @@ PS
float3 _14744 = normalize(input_1.xyz).xyz;
float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
- float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;
+ float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;
float4 _23714;
_23714.x = _21122.x;
_23714.y = _21122.y;
@@ -355,8 +365,8 @@ PS
{
if (fmod((gl_FragCoord.x - 0.5f) + float(int(fmod(gl_FragCoord.y - 0.5f, 2.0f))), 2.0f) < 1.0f)
{
- float _18383 = _Globals_1_g_flIsSelected * 0.5f;
- _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _18383) + (_17971 * (1.0f - _18383));
+ float _15961 = _Globals_1_g_flIsSelected * 0.5f;
+ _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _15961) + (_17971 * (1.0f - _15961));
break;
}
}
game/core/shaders_vulkan_dir/shaders/vfx/visualize_depth.slang
modified • +77 / -28 • changes: 105
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -96,23 +96,32 @@ PS
DynamicCombo( D_IMGUI, 0..1 );
DynamicCombo( D_VR_DEPTH_TEXTURE, 0..2 );
+ int g_nCombinedSlicesMode < Attribute("g_nCombinedSlicesMode"); UiType(Slider); >;
+ int g_nDepthSlice < Attribute("g_nDepthSlice"); UiType(Slider); >;
Texture2D g_tDepthTexture < Attribute("InputTexture"); SrgbRead(false); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (1348 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3140 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ static const float3 _2728[3] = { float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f) };
+ static const float3 _2729[3] = { float3(1.0f, 0.0f, 0.0f), float3(0.0f, 1.0f, 0.0f), float3(0.0f, 0.0f, 1.0f) };
+
+ cbuffer _Globals_ : register(b0, space1)
+ {
+ int _Globals_1_g_nDepthSlice : packoffset(c0);
+ int _Globals_1_g_nCombinedSlicesMode : packoffset(c0.y);
+ };
Texture2D<float4> g_tDepthTexture : register(t30, space1);
- SamplerComparisonState AddressU_Clamp_AddressV_Clamp_Filter_ComparisonMinMagMipLinear : register(s15, space1);
+ SamplerState AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint : register(s16, space1);
- static float4 input_0;
+ static float2 input_0;
static float4 output_0;
- static float2 input_1;
struct PS_INPUT
{
- float2 input_1 : TEXCOORD0;
- float4 input_0 : TEXCOORD1;
+ float2 input_0 : TEXCOORD0;
};
struct PS_OUTPUT
@@ -122,35 +131,75 @@ PS
void MainPs_inner()
{
- float4 _13155;
- _13155 = float4(0.0f, 0.0f, 0.0f, 1.0f);
- int _11515;
- float4 _13138;
- int _16208 = 0;
- for (;;)
+ float4 _6805;
+ if (_Globals_1_g_nCombinedSlicesMode == 0)
{
- if (!(_16208 < 64))
+ _6805 = frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_Globals_1_g_nDepthSlice)).x * 32.0f).xxxx;
+ }
+ else
+ {
+ float4 _12502;
+ if (_Globals_1_g_nCombinedSlicesMode == 1)
+ {
+ int _7603;
+ float3 _22743;
+ int _13039 = 9;
+ for (;;)
+ {
+ if (!(_13039 >= 0))
+ {
+ _22743 = 0.0f.xxx;
+ break;
+ }
+ if (frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_13039)).x) > 0.0f)
+ {
+ _22743 = _2728[_13039 - 3 * (_13039 / 3)];
+ break;
+ }
+ _7603 = _13039 - 1;
+ _13039 = _7603;
+ continue;
+ }
+ _12502 = float4(_22743 * frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, 0.0f).x * 64.0f), 1.0f);
+ }
+ else
{
- break;
+ float4 _12501;
+ if (_Globals_1_g_nCombinedSlicesMode == 2)
+ {
+ float3 _13155;
+ _13155 = 0.0f.xxx;
+ float3 _5949;
+ int _18752;
+ int _16208 = 0;
+ for (;;)
+ {
+ if (!(_16208 < 10))
+ {
+ break;
+ }
+ _5949 = _13155 + (_2729[_16208 - 3 * (_16208 / 3)] * frac(g_tDepthTexture.SampleLevel(AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagMipPoint, input_0.xy, float(_16208)).x * 32.0f));
+ _18752 = _16208 + 1;
+ _13155 = _5949;
+ _16208 = _18752;
+ continue;
+ }
+ _12501 = float4(_13155, 1.0f);
+ }
+ else
+ {
+ _12501 = float4(0.0f, 0.0f, 0.0f, 1.0f);
+ }
+ _12502 = _12501;
}
- float3 _20312 = _13155.xyz + (0.015625f * g_tDepthTexture.SampleCmpLevelZero(AddressU_Clamp_AddressV_Clamp_Filter_ComparisonMinMagMipLinear, input_1.xy, float(_16208) * 0.015625f)).xxx;
- float4 _20488 = _13155;
- _20488.x = _20312.x;
- _20488.y = _20312.y;
- _13138 = _20488;
- _13138.z = _20312.z;
- _11515 = _16208 + 1;
- _13155 = _13138;
- _16208 = _11515;
- continue;
+ _6805 = _12502;
}
- output_0 = _13155 * input_0;
+ output_0 = _6805;
}
PS_OUTPUT MainPs(PS_INPUT stage_input)
{
input_0 = stage_input.input_0;
- input_1 = stage_input.input_1;
MainPs_inner();
PS_OUTPUT stage_output;
stage_output.output_0 = output_0;
game/core/shaders_vulkan_dir/shaders/vfx/visualize_distance_field.slang
modified • +3 / -3 • changes: 6
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -94,7 +94,7 @@ PS
float2 _Globals_1_g_vViewportRatio : packoffset(c0);
};
- Texture2DArray<float4> g_tVisualizeDistanceField_unexpectedTypeId470_1107 : register(t30, space1);
+ Texture2DArray<float4> g_tVisualizeDistanceField : register(t30, space1);
SamplerState AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint : register(s14, space1);
static float2 input_0;
@@ -112,7 +112,7 @@ PS
void MainPs_inner()
{
- float4 _3401 = g_tVisualizeDistanceField_unexpectedTypeId470_1107.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, float3(input_0 * _Globals_1_g_vViewportRatio, 0.0f));
+ float4 _3401 = g_tVisualizeDistanceField.Sample(AddressU_Clamp_AddressV_Clamp_Filter_MinMagLinearMipPoint, float3(input_0 * _Globals_1_g_vViewportRatio, 0.0f));
float _17666 = _3401.x;
output_0 = float4(_17666, _17666, _17666, (_17666 > 0.0500000007450580596923828125f) ? 0.5f : 0.0f);
}
game/core/shaders_vulkan_dir/shaders/vfx/visualize_implicit.slang
modified • +48 / -26 • changes: 74
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -43,11 +43,11 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2864 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2180 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -61,27 +61,34 @@ VS
float _m7;
};
- struct _940
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2839
+ struct _1126
{
- _940 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _1066
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _1066 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -108,19 +115,34 @@ VS
void MainVs_inner()
{
- _940 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float3x4 _14779 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _19956 = mul(_14779, float4(vPositionOs.xyz, 1.0f));
- float4 _8283 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(_19956.xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- output_0 = _19956;
- output_1 = normalize(mul(_14779, float4(vNormalOs, 0.0f)));
- _8283.y = -_8283.y;
- gl_Position = _8283;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float3 _23051 = mul(_19848._m0, float4(vPositionOs.xyz, 1.0f));
+ float4 _19645 = mul(PerViewConstantBuffer_t_1_m0, (float4(_23051.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ output_0 = _23051;
+ output_1 = normalize(mul(_19848._m0, float4(vNormalOs, 0.0f)));
+ _19645.y = -_19645.y;
+ gl_Position = _19645;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/visualize_instanced.slang
modified • +43 / -20 • changes: 63
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -38,12 +38,12 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
float3 g_vColor < Attribute("Color"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2860 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (2176 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -57,26 +57,33 @@ VS
float _m7;
};
- struct _856
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2671
+ struct _1126
{
- _856 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _982
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _982 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -105,16 +112,32 @@ VS
void MainVs_inner()
{
- _856 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _23609 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _17971 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = _Globals_1_g_vColor;
- _23609.y = -_23609.y;
- gl_Position = _23609;
+ _17971.y = -_17971.y;
+ gl_Position = _17971;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/visualize_nav.slang
modified • +44 / -26 • changes: 70
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -50,8 +50,8 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Depth Bias Amount
float g_DepthBiasAmount < Default(0.025); UiType(Slider); UiGroup("Depth Bias Amount"); >;
@@ -65,11 +65,11 @@ VS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5008 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4324 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
@@ -85,24 +85,31 @@ VS
float _m7;
};
- struct _1150
+ struct _1126
{
- vec4 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _248
+ struct _1119
{
- _1150 _m0;
+ mat3x4 _m0;
};
- struct _1276
+ struct _1120
{
- vec4 _m0[4];
+ mat3x4 _m0;
};
layout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer
{
- _1125 _m0[];
+ _1126 _m0[];
} g_instanceBuffer_1;
struct _1100
@@ -117,19 +124,19 @@ VS
layout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer
{
- _248 _m0[];
+ _1120 _m0[];
} g_transformBuffer_1;
- struct _563
+ struct _1224
{
- _1276 _m0;
+ mat4 _m0;
vec4 _m1;
};
- layout(set = 0) uniform _563 PerViewConstantBuffer_t;
+ layout(set = 0) uniform _1224 PerViewConstantBuffer_t;
- layout(location = 0) in vec3 vPositionOs;
- layout(location = 1) in uint nInstanceIdx;
+ layout(location = 1) in uint vPositionOs;
+ layout(location = 0) in vec3 nInstanceIdx;
layout(location = 0) out vec3 output_0;
layout(location = 1) out vec3 output_1;
layout(location = 2) out vec4 output_2;
@@ -138,7 +145,16 @@ VS
void main()
{
- vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
+ _1125 _22470;
+ _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;
+ _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;
+ _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;
+ _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;
+ _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;
+ _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;
+ _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;
+ _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;
+ vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
vec3 _6253 = _23812.xyz;
vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);
vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));
@@ -170,18 +186,20 @@ VS
_19302 = _7676.z;
}
float _25150 = _23812.w;
- vec3 _19956 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);
- vec4 _23913 = (vec4(_19956.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- float _13048 = _23913.z;
- float _11452 = _23913.w;
- vec4 _19428 = _23913;
+ _1119 _19848;
+ _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;
+ vec3 _19956 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;
+ vec4 _18275 = (vec4(_19956.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
+ float _13048 = _18275.z;
+ float _11452 = _18275.w;
+ vec4 _19428 = _18275;
_19428.z = _13048 - (mix(_Globals_.g_DepthBiasAmount, 9.9999999747524270787835121154785e-07, saturate(_13048 / _11452)) * _11452);
output_0 = vec3(0.0);
output_1 = _19956;
output_2 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);
output_3 = vec3(0.0);
output_4 = _Globals_.g_vWireframeEmit;
- _19428.y = -_23913.y;
+ _19428.y = -_18275.y;
gl_Position = _19428;
}
game/core/shaders_vulkan_dir/shaders/vfx/visualize_physics.slang
modified • +60 / -50 • changes: 110
Show patch
@@ -7,8 +7,8 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
- // Platform: VULKAN_SM_40
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
// Programs: gs, ps, vs
}
@@ -56,19 +56,19 @@ VS
float g_flAlpha < Default(1); UiType(Slider); UiGroup("Color"); >;
float3 g_vColorTint < Default3(1, 1, 1); UiType(Color); UiGroup("Color"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// WireframeEmit
float3 g_vWireframeEmit < UiType(Color); UiGroup("WireframeEmit"); >;
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 1 (name: g_vWireframeEmit) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (3440 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3344 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
@@ -84,19 +84,31 @@ VS
float _m7;
};
- struct _940
+ struct _1126
{
- vec4 _m0[3];
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
+ };
+
+ struct _1119
+ {
+ mat3x4 _m0;
};
- struct _2839
+ struct _1120
{
- _940 _m0;
+ mat3x4 _m0;
};
layout(set = 0, binding = 32, std430) readonly buffer g_instanceBuffer
{
- _1125 _m0[];
+ _1126 _m0[];
} g_instanceBuffer_1;
struct _1075
@@ -110,18 +122,27 @@ VS
layout(set = 0, binding = 30, std430) readonly buffer g_transformBuffer
{
- _2839 _m0[];
+ _1120 _m0[];
} g_transformBuffer_1;
- layout(location = 0) in vec3 vPositionOs;
- layout(location = 1) in uint nInstanceIdx;
+ layout(location = 1) in uint vPositionOs;
+ layout(location = 0) in vec3 nInstanceIdx;
layout(location = 0) out vec3 output_0;
layout(location = 1) out vec4 output_1;
layout(location = 2) out vec3 output_2;
void main()
{
- vec4 _23812 = vec4(uvec4((g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 255u), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 65280u) >> uint(8), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 16711680u) >> uint(16), (g_instanceBuffer_1._m0[nInstanceIdx]._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
+ _1125 _22470;
+ _22470._m0 = g_instanceBuffer_1._m0[vPositionOs]._m0;
+ _22470._m1 = g_instanceBuffer_1._m0[vPositionOs]._m1;
+ _22470._m2 = g_instanceBuffer_1._m0[vPositionOs]._m2;
+ _22470._m3 = g_instanceBuffer_1._m0[vPositionOs]._m3;
+ _22470._m4 = g_instanceBuffer_1._m0[vPositionOs]._m4;
+ _22470._m5 = g_instanceBuffer_1._m0[vPositionOs]._m5;
+ _22470._m6 = g_instanceBuffer_1._m0[vPositionOs]._m6;
+ _22470._m7 = g_instanceBuffer_1._m0[vPositionOs]._m7;
+ vec4 _23812 = vec4(uvec4(_22470._m0 & 255u, (_22470._m0 & 65280u) >> uint(8), (_22470._m0 & 16711680u) >> uint(16), (_22470._m0 & 4278190080u) >> uint(24))) * vec4(0.0039215688593685626983642578125);
vec3 _6253 = _23812.xyz;
vec3 _17828 = _6253 * vec3(0.077399380505084991455078125);
vec3 _7676 = pow((_6253 * vec3(0.947867333889007568359375)) + vec3(0.052132703363895416259765625), vec3(2.400000095367431640625));
@@ -153,7 +174,9 @@ VS
_19302 = _7676.z;
}
float _25150 = _23812.w;
- output_0 = vec4(vPositionOs.xyz, 1.0) * mat3x4(g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[0], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[1], g_transformBuffer_1._m0[g_instanceBuffer_1._m0[nInstanceIdx]._m1]._m0._m0[2]);
+ _1119 _19848;
+ _19848._m0 = g_transformBuffer_1._m0[_22470._m1]._m0;
+ output_0 = vec4(nInstanceIdx.xyz, 1.0) * _19848._m0;
output_1 = vec4(vec4(_21354, _21355, _19302, _25150).xyz * _Globals_.g_vColorTint.xyz, _25150 * _Globals_.g_flAlpha);
output_2 = _Globals_.g_vWireframeEmit;
}
@@ -172,11 +195,11 @@ GS
// SPIR-V reflection failed for backend HLSL:
// Unsupported shader stage.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1872 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
#if defined(GL_EXT_control_flow_attributes)
@@ -194,25 +217,13 @@ GS
layout(triangles) in;
layout(max_vertices = 3, triangle_strip) out;
- struct _1134
- {
- vec3 _m0;
- vec4 _m1;
- vec3 _m2;
- };
-
- struct _239
- {
- vec4 _m0[4];
- };
-
- struct _1500
+ struct _1224
{
- _239 _m0;
+ mat4 _m0;
vec4 _m1;
};
- layout(set = 2) uniform _1500 PerViewConstantBuffer_t;
+ layout(set = 2) uniform _1224 PerViewConstantBuffer_t;
layout(location = 0) in vec3 input_0[3];
layout(location = 1) in vec4 input_1[3];
@@ -224,8 +235,7 @@ GS
void main()
{
- _1134 _19582[3] = _1134[](_1134(input_0[0], input_1[0], input_2[0]), _1134(input_0[1], input_1[1], input_2[1]), _1134(input_0[2], input_1[2], input_2[2]));
- vec3 _15751 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));
+ vec3 _15752 = normalize(cross(input_0[1] - input_0[0], input_0[2] - input_0[0]));
int _7155;
int _13039 = 0;
SPIRV_CROSS_UNROLL
@@ -235,13 +245,13 @@ GS
{
break;
}
- vec4 _23913 = (vec4(_19582[_13039]._m0.xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
- output_0 = _15751;
- output_1 = _19582[_13039]._m0;
- output_2 = _19582[_13039]._m1;
- output_3 = _19582[_13039]._m2;
- _23913.y = -_23913.y;
- gl_Position = _23913;
+ vec4 _17895 = (vec4(input_0[_13039].xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
+ output_0 = _15752;
+ output_1 = input_0[_13039];
+ output_2 = input_1[_13039];
+ output_3 = input_2[_13039];
+ _17895.y = -_17895.y;
+ gl_Position = _17895;
EmitVertex();
_7155 = _13039 + 1;
_13039 = _7155;
@@ -275,13 +285,13 @@ PS
RenderState(DepthWriteEnable, F_TRANSLUCENT ? False : True);
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
cbuffer RoughnessLightingGlobalsCB_t < Attribute("RoughnessLightingGlobalsCB_t"); >;
- cbuffer SunLightShaderParamsCB < Attribute("SunLightShaderParamsCB"); >;
+ cbuffer SunLightShaderParamsCB_t < Attribute("SunLightShaderParamsCB_t"); >;
// IsSelected
float g_flIsSelected < Attribute("IsSelected"); UiType(Slider); UiGroup("IsSelected"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (4000 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (3984 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
static float4 _3;
@@ -301,10 +311,10 @@ PS
float PerViewConstantBuffer_t_1_m6 : packoffset(c32.z);
};
- cbuffer SunLightShaderParamsCB : register(b3, space1)
+ cbuffer SunLightShaderParamsCB_t : register(b3, space1)
{
- float4 SunLightShaderParamsCB_1_m0 : packoffset(c0);
- float3 SunLightShaderParamsCB_1_m1 : packoffset(c1);
+ float3 SunLightShaderParamsCB_t_1_m0 : packoffset(c0);
+ float3 SunLightShaderParamsCB_t_1_m1 : packoffset(c1);
};
cbuffer _Globals_ : register(b0, space1)
@@ -337,7 +347,7 @@ PS
float3 _14744 = normalize(input_1.xyz).xyz;
float3 _23378 = clamp(_14744, 0.0f.xxx, 1.0f.xxx);
float3 _23904 = clamp(-_14744, 0.0f.xxx, 1.0f.xxx);
- float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;
+ float3 _21122 = ((RoughnessLightingGlobalsCB_t_1_m0.xyz * (dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 1.0f), _23378 * _23378) + dot(float3(0.60000002384185791015625f, 0.4000000059604644775390625f, 0.20000000298023223876953125f), _23904 * _23904))).xyz + ((SunLightShaderParamsCB_t_1_m0.xyz * (pow(clamp(dot(_14744, SunLightShaderParamsCB_t_1_m1.xyz), 0.0f, 1.0f), 0.60000002384185791015625f) * 0.800000011920928955078125f)) * 1.0f)).xyz * input_0.xyz;
float4 _23714;
_23714.x = _21122.x;
_23714.y = _21122.y;
@@ -355,8 +365,8 @@ PS
{
if (fmod((gl_FragCoord.x - 0.5f) + float(int(fmod(gl_FragCoord.y - 0.5f, 2.0f))), 2.0f) < 1.0f)
{
- float _18383 = _Globals_1_g_flIsSelected * 0.5f;
- _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _18383) + (_17971 * (1.0f - _18383));
+ float _15961 = _Globals_1_g_flIsSelected * 0.5f;
+ _6805 = (float4(1.0f, 1.0f, 0.75f, 1.0f) * _15961) + (_17971 * (1.0f - _15961));
break;
}
}
game/core/shaders_vulkan_dir/shaders/vfx/visualize_quad_overdraw.slang
modified • +6 / -6 • changes: 12
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -80,12 +80,12 @@ PS
// Source 2 Viewer - https://valveresourceformat.github.io
// SPIR-V source (2872 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
- cbuffer _Globals_ : register(b0, space1)
+ cbuffer PerViewConstantBuffer_t : register(b0, space1)
{
- float4 _Globals_1_m0 : packoffset(c22);
+ float4 PerViewConstantBuffer_t_1_m0 : packoffset(c22);
};
- Texture2D<uint4> g_tQuadOverdrawUAV_unexpectedTypeId404_1041 : register(t30, space1);
+ Texture2D<uint4> g_tQuadOverdrawUAV : register(t30, space1);
static float4 gl_FragCoord;
static float4 output_0;
@@ -103,7 +103,7 @@ PS
void MainPs_inner()
{
float4 _21709;
- switch (g_tQuadOverdrawUAV_unexpectedTypeId404_1041.Load(int3(uint2(gl_FragCoord.xy * 0.5f.xx), 0)).x)
+ switch (g_tQuadOverdrawUAV.Load(int3(uint2(gl_FragCoord.xy * 0.5f.xx), 0)).x)
{
case 0u:
{
@@ -161,7 +161,7 @@ PS
break;
}
}
- float2 _21065 = gl_FragCoord.xy * _Globals_1_m0.xy;
+ float2 _21065 = gl_FragCoord.xy * PerViewConstantBuffer_t_1_m0.xy;
float2 _12444 = _21065.xy;
bool _12885;
if (all(bool2(_12444.x > float2(0.100000001490116119384765625f, 0.89999997615814208984375f).x, _12444.y > float2(0.100000001490116119384765625f, 0.89999997615814208984375f).y)))
game/core/shaders_vulkan_dir/shaders/vfx/visualize_rtproxy.slang
modified • +45 / -22 • changes: 67
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -41,11 +41,11 @@ VS
DynamicComboRule( Allow0( D_BLEND_WEIGHT_COUNT ) );
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2672 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (1988 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -59,27 +59,34 @@ VS
float _m7;
};
- struct _856
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _2671
+ struct _1126
{
- _856 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _982
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space0);
ByteAddressBuffer g_transformBuffer : register(t30, space0);
- cbuffer _Globals_ : register(b0, space0)
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
{
- _982 _Globals_1_m0 : packoffset(c0);
- float4 _Globals_1_m1 : packoffset(c24);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -102,15 +109,31 @@ VS
void MainVs_inner()
{
- _856 _25207;
- [unroll]
- for (int _1ident = 0; _1ident < 3; _1ident++)
- {
- _25207._m0[_1ident] = asfloat(g_transformBuffer.Load4(_1ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- float4 _24787 = mul(float4x4(float4(_Globals_1_m0._m0[0].x, _Globals_1_m0._m0[1].x, _Globals_1_m0._m0[2].x, _Globals_1_m0._m0[3].x), float4(_Globals_1_m0._m0[0].y, _Globals_1_m0._m0[1].y, _Globals_1_m0._m0[2].y, _Globals_1_m0._m0[3].y), float4(_Globals_1_m0._m0[0].z, _Globals_1_m0._m0[1].z, _Globals_1_m0._m0[2].z, _Globals_1_m0._m0[3].z), float4(_Globals_1_m0._m0[0].w, _Globals_1_m0._m0[1].w, _Globals_1_m0._m0[2].w, _Globals_1_m0._m0[3].w)), (float4(mul(float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]), float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (_Globals_1_m1 * 1.0f)).xyzw);
- _24787.y = -_24787.y;
- gl_Position = _24787;
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _19924;
+ _19924._m0 = _24007._m0;
+ _19924._m1 = _24007._m1;
+ _19924._m2 = _24007._m2;
+ _19924._m3 = _24007._m3;
+ _19924._m4 = _24007._m4;
+ _19924._m5 = _24007._m5;
+ _19924._m6 = _24007._m6;
+ _19924._m7 = _24007._m7;
+ _1120 _8152;
+ _8152._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_19924._m1 * 48 + 0), g_transformBuffer.Load4(_19924._m1 * 48 + 16), g_transformBuffer.Load4(_19924._m1 * 48 + 32)));
+ _1119 _19848;
+ _19848._m0 = _8152._m0;
+ float4 _19149 = mul(PerViewConstantBuffer_t_1_m0, (float4(mul(_19848._m0, float4(vPositionOs.xyz, 1.0f)).xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ _19149.y = -_19149.y;
+ gl_Position = _19149;
}
PS_INPUT MainVs(VS_INPUT stage_input)
game/core/shaders_vulkan_dir/shaders/vfx/vt_cs.slang
added • +86 / -0 • changes: 86
Show patch
@@ -0,0 +1,86 @@
+//=================================================================================================
+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io
+//=================================================================================================
+HEADER
+{
+ Description = "Virtual Texture Manager Shader";
+ DevShader = true;
+ Version = 0;
+
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_60
+ // Programs: cs
+}
+
+MODES
+{
+ Default();
+}
+
+FEATURES
+{
+}
+
+COMMON
+{
+ #include "system.fxc"
+}
+
+CS
+{
+ DynamicCombo( D_VARIANT, 0..6 );
+
+ RWStructuredBuffer g_compactTexUsageBuf < Attribute("CompactTexUsageBuffer"); >;
+ ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
+ int g_nPageTablePatchCount < Attribute("PageTablePatchCount"); UiType(Slider); >;
+ RWBuffer<float4> g_outputPageTable < Attribute("VirtualPageTableBuffer"); >;
+ RWByteAddressBuffer g_outputTexInfoBuffer < Attribute("VirtualTexInfoBuffer"); >;
+ Buffer g_pageTablePatchBuffer < Attribute("VTPageTablePatchBuffer"); SrgbRead(false); >;
+ RWTexture2D<float4>[] g_tTileAtlas < Attribute("PhysicalPageCache"); >;
+ Buffer g_texInfoPatchBuffer < Attribute("VTTexInfoPatchBuffer"); SrgbRead(false); >;
+ RWStructuredBuffer g_texUsageBuf < Attribute("TexUsageBuffer"); >;
+ Buffer g_tileAtlasUpdateQueue < Attribute("VTTileAtlasUpdateQueue"); SrgbRead(false); >;
+ RWStructuredBuffer g_vtAuxBuf < Attribute("VirtualTextureAuxBuffer"); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (724 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ RWTexture2DArray<uint4> _5248 : register(u158, space0);
+
+ static uint3 gl_GlobalInvocationID;
+ struct SPIRV_Cross_Input
+ {
+ uint3 gl_GlobalInvocationID : SV_DispatchThreadID;
+ };
+
+ void MainCs_inner()
+ {
+ uint _16380;
+ uint _13039 = 0u;
+ for (;;)
+ {
+ if (!(_13039 < 6u))
+ {
+ break;
+ }
+ _5248[uint3(gl_GlobalInvocationID.xy, _13039)] = uint4(0u, 0u, 0u, 0u);
+ _16380 = _13039 + 1u;
+ _13039 = _16380;
+ continue;
+ }
+ }
+
+ [numthreads(8, 8, 1)]
+ void MainCs(SPIRV_Cross_Input stage_input)
+ {
+ gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;
+ MainCs_inner();
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+
+ BoolAttribute(BindlessResources, true);
+
+}
game/core/shaders_vulkan_dir/shaders/vfx/vt_debug_imgui.slang
added • +163 / -0 • changes: 163
Show patch
@@ -0,0 +1,163 @@
+//=================================================================================================
+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io
+//=================================================================================================
+HEADER
+{
+ Description = "Shader to draw Dear ImGui";
+ DevShader = true;
+ Version = 0;
+
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
+ // Programs: ps, vs
+}
+
+MODES
+{
+ Default();
+}
+
+FEATURES
+{
+}
+
+COMMON
+{
+ #include "system.fxc"
+}
+
+struct VS_INPUT
+{
+ float4 vColor : COLOR0 < Semantic( Color ); >;
+ float3 vPositionPs : POSITION0 < Semantic( PosXyz ); >;
+ float4 vUV : TEXCOORD0 < Semantic( texcoord ); >;
+};
+
+VS
+{
+
+ float4 g_OrthoParams < Attribute("ImGuiOrthoParams"); UiType(VectorText); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (1368 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ cbuffer _Globals_ : register(b0, space0)
+ {
+ float4 _Globals_1_g_OrthoParams : packoffset(c0);
+ };
+
+
+ static float4 gl_Position;
+ static float2 vPositionPs;
+ static float4 vColor;
+ static float2 vUV;
+ static float2 output_0;
+ static float4 output_1;
+
+ struct VS_INPUT
+ {
+ float2 vPositionPs : TEXCOORD0;
+ float2 vUV : TEXCOORD1;
+ float4 vColor : TEXCOORD2;
+ };
+
+ struct PS_INPUT
+ {
+ float2 output_0 : TEXCOORD0;
+ float4 output_1 : TEXCOORD1;
+ float4 gl_Position : SV_Position;
+ };
+
+ void MainVs_inner()
+ {
+ float4 _23513 = mul(transpose(float4x4(float4(2.0f / (_Globals_1_g_OrthoParams.y - _Globals_1_g_OrthoParams.x), 0.0f, 0.0f, 0.0f), float4(0.0f, 2.0f / (_Globals_1_g_OrthoParams.z - _Globals_1_g_OrthoParams.w), 0.0f, 0.0f), float4(0.0f, 0.0f, 0.5f, 0.0f), float4((_Globals_1_g_OrthoParams.y + _Globals_1_g_OrthoParams.x) / (_Globals_1_g_OrthoParams.x - _Globals_1_g_OrthoParams.y), (_Globals_1_g_OrthoParams.z + _Globals_1_g_OrthoParams.w) / (_Globals_1_g_OrthoParams.w - _Globals_1_g_OrthoParams.z), 0.5f, 1.0f))), float4(vPositionPs.xy, 0.0f, 1.0f));
+ output_0 = vUV;
+ output_1 = vColor;
+ _23513.y = -_23513.y;
+ gl_Position = _23513;
+ }
+
+ PS_INPUT MainVs(VS_INPUT stage_input)
+ {
+ vPositionPs = stage_input.vPositionPs;
+ vColor = stage_input.vColor;
+ vUV = stage_input.vUV;
+ MainVs_inner();
+ PS_INPUT stage_output;
+ stage_output.gl_Position = gl_Position;
+ stage_output.output_0 = output_0;
+ stage_output.output_1 = output_1;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
+
+PS
+{
+
+ int g_ArrayIndex < Attribute("ImGuiTextureArrayIndex"); UiType(Slider); >;
+ float4 g_ChannelMask < Attribute("ImGuiChannelMask"); UiType(VectorText); >;
+ Texture2D g_texture < Attribute("ImGuiTexture"); SrgbRead(false); >;
+ Texture2DArray g_textureArray < Attribute("ImGuiTextureArray"); SrgbRead(false); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (1584 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ cbuffer _Globals_ : register(b0, space1)
+ {
+ float4 _Globals_1_g_ChannelMask : packoffset(c0);
+ int _Globals_1_g_ArrayIndex : packoffset(c1);
+ };
+
+ Texture2D<float4> g_texture : register(t30, space1);
+ SamplerState Filter_MinMagMipLinear : register(s14, space1);
+ Texture2DArray<float4> g_textureArray : register(t31, space1);
+ SamplerState Filter_MinMagMipLinear_1 : register(s15, space1);
+
+ static float2 input_0;
+ static float4 input_1;
+ static float4 output_0;
+
+ struct PS_INPUT
+ {
+ float2 input_0 : TEXCOORD0;
+ float4 input_1 : TEXCOORD1;
+ };
+
+ struct PS_OUTPUT
+ {
+ float4 output_0 : SV_Target0;
+ };
+
+ void MainPs_inner()
+ {
+ float4 _21760 = g_texture.Sample(Filter_MinMagMipLinear, input_0.xy);
+ float4 _21709;
+ if (_Globals_1_g_ArrayIndex != (-1))
+ {
+ _21709 = g_textureArray.Sample(Filter_MinMagMipLinear_1, float3(input_0.xy, float(_Globals_1_g_ArrayIndex)).xyz);
+ }
+ else
+ {
+ _21709 = _21760;
+ }
+ output_0 = input_1 * lerp(1.0f.xxxx, _21709, _Globals_1_g_ChannelMask);
+ }
+
+ PS_OUTPUT MainPs(PS_INPUT stage_input)
+ {
+ input_0 = stage_input.input_0;
+ input_1 = stage_input.input_1;
+ MainPs_inner();
+ PS_OUTPUT stage_output;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
game/core/shaders_vulkan_dir/shaders/vfx/wind_controller_visualize.slang
modified • +13 / -18 • changes: 31
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -39,27 +39,22 @@ VS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5300 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4744 bytes), GLSL reflection with SPIRV-Cross by KhronosGroup
#version 460
- struct _323
+ struct _365
{
vec4 _m0[4];
};
- struct _1605
+ struct _1689
{
- _323 _m0;
- };
-
- struct _324
- {
- vec4 _m0[4];
+ _365 _m0;
};
struct _995
@@ -70,22 +65,22 @@ VS
layout(set = 0) uniform _995 _Globals_;
- struct _1173
+ struct _1341
{
- _1605 _m0;
+ _1689 _m0;
float _m1;
};
- layout(set = 0) uniform _1173 WindControllerConstantBuffer_t;
+ layout(set = 0) uniform _1341 WindControllerConstantBuffer_t;
- struct _1732
+ struct _1288
{
- _324 _m0;
+ mat4 _m0;
vec4 _m1;
vec3 _m2;
};
- layout(set = 0) uniform _1732 PerViewConstantBuffer_t;
+ layout(set = 0) uniform _1288 PerViewConstantBuffer_t;
layout(set = 0, binding = 30) uniform texture3D g_tWind;
layout(set = 0, binding = 14) uniform sampler AddressU_Clamp_AddressV_Clamp_AddressW_Clamp_Filter_MinMagLinearMipPoint;
@@ -131,7 +126,7 @@ VS
{
_19363 = _24854;
}
- _18053 = (vec4(((_19363.xyz + PerViewConstantBuffer_t._m2.xyz) - vec3(0.0, 0.0, 1000.0)).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * mat4(vec4(PerViewConstantBuffer_t._m0._m0[0].x, PerViewConstantBuffer_t._m0._m0[1].x, PerViewConstantBuffer_t._m0._m0[2].x, PerViewConstantBuffer_t._m0._m0[3].x), vec4(PerViewConstantBuffer_t._m0._m0[0].y, PerViewConstantBuffer_t._m0._m0[1].y, PerViewConstantBuffer_t._m0._m0[2].y, PerViewConstantBuffer_t._m0._m0[3].y), vec4(PerViewConstantBuffer_t._m0._m0[0].z, PerViewConstantBuffer_t._m0._m0[1].z, PerViewConstantBuffer_t._m0._m0[2].z, PerViewConstantBuffer_t._m0._m0[3].z), vec4(PerViewConstantBuffer_t._m0._m0[0].w, PerViewConstantBuffer_t._m0._m0[1].w, PerViewConstantBuffer_t._m0._m0[2].w, PerViewConstantBuffer_t._m0._m0[3].w));
+ _18053 = (vec4(((_19363.xyz + PerViewConstantBuffer_t._m2.xyz) - vec3(0.0, 0.0, 1000.0)).xyz, 1.0) + (PerViewConstantBuffer_t._m1 * 1.0)).xyzw * PerViewConstantBuffer_t._m0;
}
float _21177 = saturate(_3401.z);
float _9436 = _21177 * _21177;
game/core/shaders_vulkan_dir/shaders/vfx/wind_noise_cs.slang
modified • +7 / -7 • changes: 14
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -34,8 +34,8 @@ CS
ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
// SPIR-V reflection failed for backend HLSL:
- // cbuffer ID 3246 (name: _Globals_), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ // cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
@@ -60,7 +60,7 @@ CS
float _m6;
};
- layout(set = 0) uniform _117 _Globals_;
+ layout(set = 0) uniform _117 WindControllerConstantBuffer_t;
layout(set = 0, binding = 158) uniform writeonly image3D _4363;
@@ -70,13 +70,13 @@ CS
uint _13039 = 0u;
for (;;)
{
- if (!(_13039 < _Globals_._m0._m0))
+ if (!(_13039 < WindControllerConstantBuffer_t._m0._m0))
{
break;
}
float _17644 = float(_13039);
- vec2 _4678 = _Globals_._m1 + ((vec2(gl_GlobalInvocationID.xy) * _Globals_._m2) * exp2(_Globals_._m4 * _17644));
- float _3269 = (_Globals_._m3 * exp2(_Globals_._m5 * _17644)) + (_Globals_._m6 * _17644);
+ vec2 _4678 = WindControllerConstantBuffer_t._m1 + ((vec2(gl_GlobalInvocationID.xy) * WindControllerConstantBuffer_t._m2) * exp2(WindControllerConstantBuffer_t._m4 * _17644));
+ float _3269 = (WindControllerConstantBuffer_t._m3 * exp2(WindControllerConstantBuffer_t._m5 * _17644)) + (WindControllerConstantBuffer_t._m6 * _17644);
vec3 _8570 = vec3(_4678, _3269);
vec3 _12135 = _8570 * mat3(vec3(0.0, 1.0, 1.0), vec3(1.0, 0.0, 1.0), vec3(1.0, 1.0, 0.0));
vec3 _16879 = floor(_12135);
game/core/shaders_vulkan_dir/shaders/vfx/wind_update_cs.slang
modified • +8 / -8 • changes: 16
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -37,7 +37,7 @@ CS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 3246 (name: WindControllerConstantBuffer_t), member index 0 (name: _m0) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
@@ -46,24 +46,24 @@ CS
#version 460
layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;
- struct _310
+ struct _226
{
vec4 _m0[4];
};
- struct _1968
+ struct _1716
{
vec4 _m0;
- _310 _m1;
+ _226 _m1;
float _m2;
float _m3;
};
vec4 _4;
- struct _2183
+ struct _1679
{
- _1968 _m0;
+ _1716 _m0;
float _m1;
float _m2;
float _m3;
@@ -75,7 +75,7 @@ CS
float _m9;
};
- layout(set = 0) uniform _2183 WindControllerConstantBuffer_t;
+ layout(set = 0) uniform _1679 WindControllerConstantBuffer_t;
layout(set = 0, binding = 158) uniform writeonly image3D _4903;
game/csgo/shaders_vulkan_dir/shaders/vfx/bilateral_upsample.slang
modified • +5 / -10 • changes: 15
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
@@ -41,12 +41,7 @@ VS
float4 g_vlowResTexelSize < Attribute("LowResTexelSize"); UiType(VectorText); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (2660 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
-
- struct _2200
- {
- float4 _m0[4];
- };
+ // SPIR-V source (2056 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer _Globals_ : register(b0, space0)
{
@@ -55,7 +50,7 @@ VS
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _2200 PerViewConstantBuffer_t_1_m0 : packoffset(c4);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c4);
float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);
};
@@ -93,14 +88,14 @@ VS
{
float4 _14513 = float4(vPositionPs, 0.0f, 1.0f);
float2 _7669 = vTexCoord - (_Globals_1_g_vlowResTexelSize.xy * 0.5f);
- float4 _24010 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));
+ float4 _14015 = mul(PerViewConstantBuffer_t_1_m0, float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));
output_0 = vTexCoord;
output_1 = 1.0f.xxxx;
output_2 = _7669;
output_3 = _7669 + float2(_Globals_1_g_vlowResTexelSize.x, 0.0f);
output_4 = _7669 + float2(0.0f, _Globals_1_g_vlowResTexelSize.y);
output_5 = _7669 + _Globals_1_g_vlowResTexelSize.xy;
- output_6 = normalize((_24010.xyz / _24010.w.xxx) - PerViewConstantBuffer_t_1_m1.xyz);
+ output_6 = normalize((_14015.xyz / _14015.w.xxx) - PerViewConstantBuffer_t_1_m1.xyz);
_14513.y = -vPositionPs.y;
gl_Position = _14513;
}
game/csgo/shaders_vulkan_dir/shaders/vfx/bloom_cs.slang
modified • +5 / -5 • changes: 10
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: cs
}
@@ -65,7 +65,7 @@ CS
// SPIR-V reflection failed for backend HLSL:
// cbuffer ID 5618 (name: _Globals_), member index 0 (name: g_vInputDownSampleDim) cannot be expressed with either HLSL packing layout or packoffset.
- //
+ //
// Re-attempting reflection with the GLSL backend.
// Source 2 Viewer - https://valveresourceformat.github.io
@@ -96,11 +96,11 @@ CS
{
do
{
- uint _25171 = (gl_WorkGroupID.x * 8u) + gl_LocalInvocationID.x;
+ uint _16337 = (gl_WorkGroupID.x * 8u) + gl_LocalInvocationID.x;
uint _24071 = (gl_WorkGroupID.y * 8u) + gl_LocalInvocationID.y;
- uvec2 _13756 = uvec2(_25171, _24071);
+ uvec2 _13756 = uvec2(_16337, _24071);
bool _12885;
- if (_25171 >= _Globals_.g_nDstWidth)
+ if (_16337 >= _Globals_.g_nDstWidth)
{
_12885 = true;
}
game/csgo/shaders_vulkan_dir/shaders/vfx/blur.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/csgo/shaders_vulkan_dir/shaders/vfx/blur_with_depth.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = true;
Version = 0;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/csgo/shaders_vulkan_dir/shaders/vfx/bomb_blast.slang
added • +212 / -0 • changes: 212
Show patch
@@ -0,0 +1,212 @@
+//=================================================================================================
+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io
+//=================================================================================================
+HEADER
+{
+ Description = "Bomb Blast";
+ DevShader = true;
+ Version = 0;
+
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
+ // Programs: ps, vs
+}
+
+MODES
+{
+ Default();
+}
+
+FEATURES
+{
+}
+
+COMMON
+{
+ #include "system.fxc"
+}
+
+struct VS_INPUT
+{
+ float3 vPositionSs : POSITION0 < Semantic( PosXyz ); >;
+ float4 vTexCoord : TEXCOORD0 < Semantic( texcoord ); >;
+};
+
+VS
+{
+
+ cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
+ ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
+ ExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerGpuSet"); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (1292 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ cbuffer PerViewConstantBuffer_t : register(b0, space0)
+ {
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c4);
+ float3 PerViewConstantBuffer_t_1_m1 : packoffset(c26);
+ };
+
+
+ static float4 gl_Position;
+ static float3 vPositionSs;
+ static float2 vTexCoord;
+ static float3 output_0;
+
+ struct VS_INPUT
+ {
+ float3 vPositionSs : TEXCOORD0;
+ float2 vTexCoord : TEXCOORD1;
+ };
+
+ struct PS_INPUT
+ {
+ float3 output_0 : TEXCOORD0;
+ float4 gl_Position : SV_Position;
+ };
+
+ void MainVs_inner()
+ {
+ float4 _14817 = float4(vPositionSs, 1.0f);
+ float4 _14015 = mul(PerViewConstantBuffer_t_1_m0, float4((vTexCoord.x * 2.0f) - 1.0f, ((1.0f - vTexCoord.y) * 2.0f) - 1.0f, 1.0f, 1.0f));
+ _14817.y = -vPositionSs.y;
+ gl_Position = _14817;
+ output_0 = normalize((_14015.xyz / _14015.w.xxx) - PerViewConstantBuffer_t_1_m1);
+ }
+
+ PS_INPUT MainVs(VS_INPUT stage_input)
+ {
+ vPositionSs = stage_input.vPositionSs;
+ vTexCoord = stage_input.vTexCoord;
+ MainVs_inner();
+ PS_INPUT stage_output;
+ stage_output.gl_Position = gl_Position;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
+
+PS
+{
+
+ cbuffer PerViewConstantBufferCsgo_t < Attribute("PerViewConstantBufferCsgo_t"); >;
+ cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
+ ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
+ ExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerGpuSet"); >;
+ Texture2D g_tBlueNoise < Attribute("BlueNoise"); SrgbRead(false); >;
+ Texture2D g_tFramebufferColor < Attribute("FramebufferInputColor"); SrgbRead(true); >;
+ Texture2D g_tFramebufferDepth < Attribute("FramebufferInputDepth"); SrgbRead(false); >;
+ float3 g_vBlastPosSS < Attribute("BlastPosSS"); UiType(VectorText); >;
+ float4 g_vBlastPosWSAndTime < Attribute("BlastPosWS"); UiType(VectorText); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (5632 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ static float4 _3;
+
+ cbuffer PerViewConstantBuffer_t : register(b1, space1)
+ {
+ float4 PerViewConstantBuffer_t_1_m0 : packoffset(c16);
+ float PerViewConstantBuffer_t_1_m1 : packoffset(c18.w);
+ float2 PerViewConstantBuffer_t_1_m2 : packoffset(c19);
+ float2 PerViewConstantBuffer_t_1_m3 : packoffset(c20);
+ float2 PerViewConstantBuffer_t_1_m4 : packoffset(c21);
+ float PerViewConstantBuffer_t_1_m5 : packoffset(c23);
+ float PerViewConstantBuffer_t_1_m6 : packoffset(c23.y);
+ float3 PerViewConstantBuffer_t_1_m7 : packoffset(c26);
+ float3 PerViewConstantBuffer_t_1_m8 : packoffset(c28);
+ };
+
+ cbuffer _Globals_ : register(b0, space1)
+ {
+ float4 _Globals_1_g_vBlastPosWSAndTime : packoffset(c0);
+ float3 _Globals_1_g_vBlastPosSS : packoffset(c1);
+ };
+
+ cbuffer PerViewConstantBufferCsgo_t : register(b2, space1)
+ {
+ int2 PerViewConstantBufferCsgo_t_1_m0 : packoffset(c11);
+ };
+
+ Texture2D<float4> g_tFramebufferDepth : register(t31, space1);
+ Texture2D<float4> g_tBlueNoise : register(t32, space1);
+ Texture2D<float4> g_tFramebufferColor : register(t30, space1);
+ SamplerState DefaultSamplerState_0 : register(s14, space1);
+
+ static float4 gl_FragCoord;
+ static float3 input_0;
+ static float4 output_0;
+
+ struct PS_INPUT
+ {
+ float3 input_0 : TEXCOORD0;
+ float4 gl_FragCoord : SV_Position;
+ };
+
+ struct PS_OUTPUT
+ {
+ float4 output_0 : SV_Target0;
+ };
+
+ void MainPs_inner()
+ {
+ float _21646 = clamp(PerViewConstantBuffer_t_1_m1 - _Globals_1_g_vBlastPosWSAndTime.w, 0.0f, 10.0f);
+ int2 _17364 = int2(gl_FragCoord.xy);
+ int2 _11700 = int3(_17364, 0).xy;
+ float3 _12686 = (-normalize(input_0.xyz)).xyz;
+ float3 _13517 = (PerViewConstantBuffer_t_1_m7.xyz + (_12686 * (1.0f / (((clamp((g_tFramebufferDepth.Load(int3(_11700, 0)).x - PerViewConstantBuffer_t_1_m5) / (PerViewConstantBuffer_t_1_m6 - PerViewConstantBuffer_t_1_m5), 0.0f, 1.0f) * PerViewConstantBuffer_t_1_m0.z) + PerViewConstantBuffer_t_1_m0.w) * dot(PerViewConstantBuffer_t_1_m8.xyz, _12686))))).xyz;
+ float _23870 = distance(PerViewConstantBuffer_t_1_m7, _13517);
+ float _12116 = _21646 * 3000.0f;
+ float _19346 = distance(_Globals_1_g_vBlastPosWSAndTime.xyz, _13517);
+ float _3109 = smoothstep(_12116 + 40.0f, _12116, _19346) * pow(smoothstep(_12116 - 3000.0f, _12116, _19346), 2.0f);
+ float2 _4328 = ((gl_FragCoord.xy - PerViewConstantBuffer_t_1_m3.xy).xy * PerViewConstantBuffer_t_1_m4.xy).xy * PerViewConstantBuffer_t_1_m2;
+ float2 _5763 = (_Globals_1_g_vBlastPosSS.xy * PerViewConstantBuffer_t_1_m2) - _4328.xy;
+ float2 _18815 = normalize(_5763);
+ float _21107 = (_3109 * 0.02999999932944774627685546875f) * ((clamp(clamp(length(_5763), 0.0f, 1.0f) * 2.0f, 0.0f, 1.0f) * 0.99989998340606689453125f) + 9.9999997473787516355514526367188e-05f);
+ float _6835 = frac(PerViewConstantBuffer_t_1_m1 + g_tBlueNoise.Load(int3(int3(_17364 & PerViewConstantBufferCsgo_t_1_m0, 0).xy, 0)).y) - 0.5f;
+ float4 _13155;
+ _13155 = 0.0f.xxxx;
+ int _9908;
+ float4 _17376;
+ int _16208 = 0;
+ for (;;)
+ {
+ if (!(_16208 < 32))
+ {
+ break;
+ }
+ _17376 = _13155 + g_tFramebufferColor.Sample(DefaultSamplerState_0, lerp(clamp(_4328 + ((_18815 * _21107) * ((float(_16208 - 16) * 0.0625f) + _6835)), 0.0f.xx, 1.0f.xx), 0.5f.xx, 0.02999999932944774627685546875f.xx).xy);
+ _9908 = _16208 + 1;
+ _13155 = _17376;
+ _16208 = _9908;
+ continue;
+ }
+ float3 _12937 = (_13155 * 0.03125f).xyz;
+ float3 _22087 = _12937 + pow(_12937, 8.0f.xxx);
+ float4 _20488;
+ _20488.x = _22087.x;
+ _20488.y = _22087.y;
+ _20488.z = _22087.z;
+ output_0 = float4(lerp(lerp(g_tFramebufferColor.Load(int3(_11700, 0)).xyz, _20488.xyz, ((_3109 * smoothstep(30.0f, 80.0f, _23870)) * smoothstep(6000.0f, 5000.0f, _23870)).xxx).xyz, float3(0.310000002384185791015625f, 0.300000011920928955078125f, 0.2899999916553497314453125f), (pow(smoothstep(_12116, _12116 - 5000.0f, distance(_Globals_1_g_vBlastPosWSAndTime.xyz, PerViewConstantBuffer_t_1_m7)), 2.0f) * 0.20000000298023223876953125f).xxx), smoothstep(10.0f, 3.0f, _21646));
+ }
+
+ PS_OUTPUT MainPs(PS_INPUT stage_input)
+ {
+ gl_FragCoord = stage_input.gl_FragCoord;
+ gl_FragCoord.w = 1.0 / gl_FragCoord.w;
+ input_0 = stage_input.input_0;
+ MainPs_inner();
+ PS_OUTPUT stage_output;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
game/csgo/shaders_vulkan_dir/shaders/vfx/cs_color_picker.slang
added • +278 / -0 • changes: 278
Show patch
@@ -0,0 +1,278 @@
+//=================================================================================================
+// Reconstructed with Source 2 Viewer - https://valveresourceformat.github.io
+//=================================================================================================
+HEADER
+{
+ Description = "Used to draw UI color picker elements";
+ DevShader = false;
+ Version = 0;
+
+ // VcsVersion: 71
+ // Platform: VULKAN_SM_50
+ // Programs: ps, vs
+}
+
+MODES
+{
+ Default();
+}
+
+FEATURES
+{
+}
+
+COMMON
+{
+ #include "system.fxc"
+}
+
+struct VS_INPUT
+{
+ float4 vColor : COLOR0 < Semantic( Color ); >;
+ float3 vPositionSs : POSITION0 < Semantic( PosXyz ); >;
+ float2 vTexCoord : TEXCOORD0 < Semantic( LowPrecisionUv ); >;
+};
+
+VS
+{
+
+ float4 g_vViewport < Source(Viewport); UiType(VectorText); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (1972 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ static float _3;
+
+ cbuffer _Globals_ : register(b0, space0)
+ {
+ float4 _Globals_1_g_vViewport : packoffset(c0);
+ };
+
+
+ static float4 gl_Position;
+ static float2 vPositionSs;
+ static float4 vColor;
+ static float2 vTexCoord;
+ static float4 output_0;
+ static float2 output_1;
+
+ struct VS_INPUT
+ {
+ float2 vPositionSs : TEXCOORD0;
+ float4 vColor : TEXCOORD1;
+ float2 vTexCoord : TEXCOORD2;
+ };
+
+ struct PS_INPUT
+ {
+ float4 output_0 : TEXCOORD0;
+ float2 output_1 : TEXCOORD1;
+ float4 gl_Position : SV_Position;
+ };
+
+ void MainVs_inner()
+ {
+ float2 _15639 = (((vPositionSs.xy - _Globals_1_g_vViewport.xy) * 2.0f) / _Globals_1_g_vViewport.zw) - 1.0f.xx;
+ float4 _14779 = float4(_15639.x, _3, 1.0f, 1.0f);
+ float3 _24030 = vColor.xyz * 0.077399380505084991455078125f.xxx;
+ float3 _7676 = pow((vColor.xyz * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
+ float _21354;
+ if (vColor.x <= 0.040449999272823333740234375f)
+ {
+ _21354 = _24030.x;
+ }
+ else
+ {
+ _21354 = _7676.x;
+ }
+ float _21355;
+ if (vColor.y <= 0.040449999272823333740234375f)
+ {
+ _21355 = _24030.y;
+ }
+ else
+ {
+ _21355 = _7676.y;
+ }
+ float _19302;
+ if (vColor.z <= 0.040449999272823333740234375f)
+ {
+ _19302 = _24030.z;
+ }
+ else
+ {
+ _19302 = _7676.z;
+ }
+ output_0 = float4(_21354, _21355, _19302, vColor.w);
+ output_1 = vTexCoord;
+ _14779.y = _15639.y;
+ gl_Position = _14779;
+ }
+
+ PS_INPUT MainVs(VS_INPUT stage_input)
+ {
+ vPositionSs = stage_input.vPositionSs;
+ vColor = stage_input.vColor;
+ vTexCoord = stage_input.vTexCoord;
+ MainVs_inner();
+ PS_INPUT stage_output;
+ stage_output.gl_Position = gl_Position;
+ stage_output.output_0 = output_0;
+ stage_output.output_1 = output_1;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+
+ BoolAttribute(ui, true);
+ BoolAttribute(ScreenSpaceVertices, true);
+
+}
+
+PS
+{
+
+ float g_flHue < Default(1); Range(0, 360); UiType(Slider); >;
+
+ // Source 2 Viewer - https://valveresourceformat.github.io
+ // SPIR-V source (2908 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+
+ static float _2;
+
+ cbuffer _Globals_ : register(b0, space1)
+ {
+ float _Globals_1_g_flHue : packoffset(c0);
+ };
+
+
+ static float2 input_0;
+ static float4 input_1;
+ static float4 output_0;
+
+ struct PS_INPUT
+ {
+ float4 input_1 : TEXCOORD0;
+ float2 input_0 : TEXCOORD1;
+ };
+
+ struct PS_OUTPUT
+ {
+ float4 output_0 : SV_Target0;
+ };
+
+ void MainPs_inner()
+ {
+ float _13211 = 1.0f - input_0.y;
+ float3 _22743;
+ if (input_0.x != 0.0f)
+ {
+ float _12281 = _Globals_1_g_flHue * 0.01666666753590106964111328125f;
+ float _23729 = floor(_12281);
+ float _15688 = _13211 * (1.0f - input_0.x);
+ float _17993 = _12281 - _23729;
+ float _10560 = _13211 * (1.0f - (input_0.x * _17993));
+ float _23319 = _13211 * (1.0f - (input_0.x * (1.0f - _17993)));
+ float3 _12505;
+ if (_23729 == 0.0f)
+ {
+ _12505 = float3(_13211, _23319, _15688);
+ }
+ else
+ {
+ float3 _12504;
+ if (_23729 == 1.0f)
+ {
+ _12504 = float3(_10560, _13211, _15688);
+ }
+ else
+ {
+ float3 _12503;
+ if (_23729 == 2.0f)
+ {
+ _12503 = float3(_15688, _13211, _23319);
+ }
+ else
+ {
+ float3 _12502;
+ if (_23729 == 3.0f)
+ {
+ _12502 = float3(_15688, _10560, _13211);
+ }
+ else
+ {
+ float3 _12501;
+ if (_23729 == 4.0f)
+ {
+ _12501 = float3(_23319, _15688, _13211);
+ }
+ else
+ {
+ _12501 = float3(_13211, _15688, _10560);
+ }
+ _12502 = _12501;
+ }
+ _12503 = _12502;
+ }
+ _12504 = _12503;
+ }
+ _12505 = _12504;
+ }
+ _22743 = _12505;
+ }
+ else
+ {
+ _22743 = float3(_2, input_0.x, _13211).zzz;
+ }
+ float4 _15731 = input_1.xyzw * float4(_22743, 1.0f);
+ float3 _6273 = _15731.xyz;
+ float3 _17828 = _6273 * 0.077399380505084991455078125f.xxx;
+ float3 _7676 = pow((_6273 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
+ float _21354;
+ if (_15731.x <= 0.040449999272823333740234375f)
+ {
+ _21354 = _17828.x;
+ }
+ else
+ {
+ _21354 = _7676.x;
+ }
+ float _21355;
+ if (_15731.y <= 0.040449999272823333740234375f)
+ {
+ _21355 = _17828.y;
+ }
+ else
+ {
+ _21355 = _7676.y;
+ }
+ float _19167;
+ if (_15731.z <= 0.040449999272823333740234375f)
+ {
+ _19167 = _17828.z;
+ }
+ else
+ {
+ _19167 = _7676.z;
+ }
+ _15731.x = _21354;
+ _15731.y = _21355;
+ _15731.z = _19167;
+ output_0 = _15731;
+ }
+
+ PS_OUTPUT MainPs(PS_INPUT stage_input)
+ {
+ input_0 = stage_input.input_0;
+ input_1 = stage_input.input_1;
+ MainPs_inner();
+ PS_OUTPUT stage_output;
+ stage_output.output_0 = output_0;
+ return stage_output;
+ }
+
+ // --------- SPIRV -> HLSL end ---------
+
+
+}
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_alpha_immunity.slang
modified • +1 / -1 • changes: 2
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = false;
Version = 1;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, vs
}
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_black_unlit.slang
modified • +71 / -55 • changes: 126
Show patch
@@ -7,7 +7,7 @@ HEADER
DevShader = false;
Version = 1;
- // VcsVersion: 70
+ // VcsVersion: 71
// Platform: VULKAN_SM_50
// Programs: ps, psrs, vs
}
@@ -53,14 +53,14 @@ VS
cbuffer PerViewConstantBufferCsgo_t < Attribute("PerViewConstantBufferCsgo_t"); >;
cbuffer PerViewConstantBuffer_t < Attribute("PerViewConstantBuffer_t"); >;
- ByteAddressBuffer g_animatedVertexCache < Attribute("AnimatedVertexCache"); SrgbRead(false); >;
+ ByteAddressBuffer g_animatedVertexCache < Attribute("AnimatedVertexCache"); >;
ExternalDescriptorSet g_globalLateBoundBindlessSet < Source(ExternalDescSet); Attribute("g_globalLateBoundBindlessSet"); >;
- StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_instanceBuffer < Attribute("InstanceBuffer"); >;
ExternalDescriptorSet g_lightBinnerGpuSet < Source(ExternalDescSet); Attribute("g_lightBinnerGpuSet"); >;
- StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); SrgbRead(false); >;
+ StructuredBuffer g_transformBuffer < Attribute("TransformBuffer"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5620 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
+ // SPIR-V source (4804 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
struct _1125
{
@@ -74,26 +74,33 @@ VS
float _m7;
};
- struct _1612
+ struct _1119
{
- float4 _m0[3];
+ float3x4 _m0;
};
- struct _1172
+ struct _1126
{
- _1612 _m0;
+ uint _m0;
+ uint _m1;
+ uint _m2;
+ uint _m3;
+ uint _m4;
+ uint _m5;
+ uint _m6;
+ float _m7;
};
- struct _113
+ struct _1120
{
- float4 _m0[4];
+ row_major float3x4 _m0;
};
ByteAddressBuffer g_instanceBuffer : register(t32, space4);
ByteAddressBuffer g_transformBuffer : register(t30, space4);
cbuffer PerViewConstantBuffer_t : register(b1, space0)
{
- _113 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
+ column_major float4x4 PerViewConstantBuffer_t_1_m0 : packoffset(c0);
float4 PerViewConstantBuffer_t_1_m1 : packoffset(c24);
};
@@ -136,39 +143,52 @@ VS
void MainVs_inner()
{
- uint _13771 = (g_instanceBuffer.Load(nInstanceIdx * 32 + 20) >> uint(16)) & 15u;
- uint _21785;
- if (_13771 == 1u)
+ _1126 _24007;
+ _24007._m0 = g_instanceBuffer.Load(nInstanceIdx * 32 + 0);
+ _24007._m1 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
+ _24007._m2 = g_instanceBuffer.Load(nInstanceIdx * 32 + 8);
+ _24007._m3 = g_instanceBuffer.Load(nInstanceIdx * 32 + 12);
+ _24007._m4 = g_instanceBuffer.Load(nInstanceIdx * 32 + 16);
+ _24007._m5 = g_instanceBuffer.Load(nInstanceIdx * 32 + 20);
+ _24007._m6 = g_instanceBuffer.Load(nInstanceIdx * 32 + 24);
+ _24007._m7 = asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
+ _1125 _20228;
+ _20228._m0 = _24007._m0;
+ _20228._m1 = _24007._m1;
+ _20228._m2 = _24007._m2;
+ _20228._m3 = _24007._m3;
+ _20228._m4 = _24007._m4;
+ _20228._m5 = _24007._m5;
+ _20228._m6 = _24007._m6;
+ _20228._m7 = _24007._m7;
+ uint _16987 = (_20228._m5 >> uint(16)) & 15u;
+ uint _21709;
+ if (_16987 == 1u)
{
- _21785 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4) + (2u + vBlendIndices.x);
+ _21709 = _20228._m1 + (2u + vBlendIndices.x);
}
else
{
- _21785 = g_instanceBuffer.Load(nInstanceIdx * 32 + 4);
- }
- _1612 _25207;
- [unroll]
- for (int _2ident = 0; _2ident < 3; _2ident++)
- {
- _25207._m0[_2ident] = asfloat(g_transformBuffer.Load4(_2ident * 16 + _21785 * 48 + 0));
+ _21709 = _20228._m1;
}
- float3x4 _17839 = float3x4(_25207._m0[0], _25207._m0[1], _25207._m0[2]);
- float3 _21709;
- if (_13771 > 0u)
+ _1120 _11578;
+ _11578._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_21709 * 48 + 0), g_transformBuffer.Load4(_21709 * 48 + 16), g_transformBuffer.Load4(_21709 * 48 + 32)));
+ _1119 _21957;
+ _21957._m0 = _11578._m0;
+ float3 _19321;
+ if (_16987 > 0u)
{
- _1612 _25208;
- [unroll]
- for (int _3ident = 0; _3ident < 3; _3ident++)
- {
- _25208._m0[_3ident] = asfloat(g_transformBuffer.Load4(_3ident * 16 + g_instanceBuffer.Load(nInstanceIdx * 32 + 4) * 48 + 0));
- }
- _21709 = _25208._m0[0].z.xxx;
+ _1120 _10769;
+ _10769._m0 = asfloat(uint3x4(g_transformBuffer.Load4(_20228._m1 * 48 + 0), g_transformBuffer.Load4(_20228._m1 * 48 + 16), g_transformBuffer.Load4(_20228._m1 * 48 + 32)));
+ _1119 _20229;
+ _20229._m0 = _10769._m0;
+ _19321 = _20229._m0[0].z.xxx;
}
else
{
- _21709 = 1.0f.xxx;
+ _19321 = 1.0f.xxx;
}
- float4 _23812 = float4(uint4((g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 255u), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 65280u) >> uint(8), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 16711680u) >> uint(16), (g_instanceBuffer.Load(nInstanceIdx * 32 + 0) & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
+ float4 _23812 = float4(uint4(_20228._m0 & 255u, (_20228._m0 & 65280u) >> uint(8), (_20228._m0 & 16711680u) >> uint(16), (_20228._m0 & 4278190080u) >> uint(24))) * 0.0039215688593685626983642578125f.xxxx;
float3 _6253 = _23812.xyz;
float3 _17828 = _6253 * 0.077399380505084991455078125f.xxx;
float3 _7676 = pow((_6253 * 0.947867333889007568359375f.xxx) + 0.052132703363895416259765625f.xxx, 2.400000095367431640625f.xxx);
@@ -190,27 +210,27 @@ VS
{
_21355 = _7676.y;
}
- float _14124;
+ float _17978;
if (_23812.z <= 0.040449999272823333740234375f)
{
- _14124 = _17828.z;
+ _17978 = _17828.z;
}
else
{
- _14124 = _7676.z;
+ _17978 = _7676.z;
}
- float _9851 = _23812.w;
- float4 _20063 = float4(_21354, _21355, _14124, _9851);
- _20063.w = _9851 * asfloat(g_instanceBuffer.Load(nInstanceIdx * 32 + 28));
- float3 _12151 = mul(_17839, float4(vPositionOs.xyz * _21709.xyz, 1.0f));
- float4 _23875 = mul(float4x4(float4(PerViewConstantBuffer_t_1_m0._m0[0].x, PerViewConstantBuffer_t_1_m0._m0[1].x, PerViewConstantBuffer_t_1_m0._m0[2].x, PerViewConstantBuffer_t_1_m0._m0[3].x), float4(PerViewConstantBuffer_t_1_m0._m0[0].y, PerViewConstantBuffer_t_1_m0._m0[1].y, PerViewConstantBuffer_t_1_m0._m0[2].y, PerViewConstantBuffer_t_1_m0._m0[3].y), float4(PerViewConstantBuffer_t_1_m0._m0[0].z, PerViewConstantBuffer_t_1_m0._m0[1].z, PerViewConstantBuffer_t_1_m0._m0[2].z, PerViewConstantBuffer_t_1_m0._m0[3].z), float4(PerViewConstantBuffer_t_1_m0._m0[0].w, PerViewConstantBuffer_t_1_m0._m0[1].w, PerViewConstantBuffer_t_1_m0._m0[2].w, PerViewConstantBuffer_t_1_m0._m0[3].w)), (float4(_12151.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
+ float _7654 = _23812.w;
+ float4 _20063 = float4(_21354, _21355, _17978, _7654);
+ _20063.w = _7654 * _20228._m7;
+ float3 _12151 = mul(_21957._m0, float4(vPositionOs.xyz * _19321.xyz, 1.0f));
+ float4 _18237 = mul(PerViewConstantBuffer_t_1_m0, (float4(_12151.xyz, 1.0f) + (PerViewConstantBuffer_t_1_m1 * 1.0f)).xyzw);
output_0 = _12151.xyz - PerViewConstantBufferCsgo_t_1_m0.xyz;
- output_1 = normalize(mul(_17839, float4(vNormalOs.xyz, 0.0f)));
+ output_1 = normalize(mul(_21957._m0, float4(vNormalOs.xyz, 0.0f)));
output_2 = vTexCoord.xyxy;
output_3 = _20063;
- output_4 = (g_instanceBuffer.Load(nInstanceIdx * 32 + 20)) & 65535u;
- _23875.y = -_23875.y;
- gl_Position = _23875;
+ output_4 = _20228._m5 & 65535u;
+ _18237.y = -_18237.y;
+ gl_Position = _18237;
}
PS_INPUT MainVs(VS_INPUT stage_input)
@@ -261,12 +281,7 @@ PS
bool g_bFogEnabled < Default(1); UiType(CheckBox); UiGroup("Fog"); >;
// Source 2 Viewer - https://valveresourceformat.github.io
- // SPIR-V source (5560 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
-
- struct _1444
- {
- float4 _m0[4];
- };
+ // SPIR-V source (4956 bytes), HLSL reflection with SPIRV-Cross by KhronosGroup
cbuffer PerViewConstantBufferCsgo_t : register(b3, space1)
{
@@ -276,7 +291,7 @@ PS
float4 PerViewConstantBufferCsgo_t_1_m3 : packoffset(c26);
float4 PerViewConstantBufferCsgo_t_1_m4 : packoffset(c27);
float4 PerViewConstantBufferCsgo_t_1_m5 : packoffset(c28);
- _1444 PerViewConstantBufferCsgo_t_1_m6 : packoffset(c29);
+ column_major float4x4 PerViewConstantBufferCsgo_t_1_m6 : packoffset(c29);
float4 PerViewConstantBufferCsgo_t_1_m7 : packoffset(c33);
float4 PerViewConstantBufferCsgo_t_1_m8 : packoffset(c34);
float4 PerViewConstantBufferCsgo_t_1_m9 : packoffset(c35);
@@ -330,6 +345,7 @@ PS
{
_12885 = false;
}
+ [branch]
if (_12885)
{
float2 _9342 = clamp(PerViewConstantBufferCsgo_t_1_m0.xy + (PerViewConstantBufferCsgo_t_1_m0.zw * float2(length(_21493), _10061.z)), 0.0f.xx, 1.0f.xx);
@@ -360,7 +376,7 @@ PS
{
float _14602 = clamp(pow(max(0.0f, (length(_21493) * PerViewConstantBufferCsgo_t_1_m4.y) + PerViewConstantBufferCsgo_t_1_m4.x), PerViewConstantBufferCsgo_t_1_m4.w), 0.0f, 1.0f) * clamp(pow(max(0.0f, (_10061.z * PerViewConstantBufferCsgo_t_1_m5.y) + PerViewConstantBufferCsgo_t_1_m5.x), PerViewConstantBufferCsgo_t_1_m5.z), 0.0f, 1.0f);
float _8892 = clamp(_14602, 0.0f, 1.0f) * PerViewConstantBufferCsgo_t_1_m7.w;
- _19341 = lerp(_23944.xyz, float4((g_tFogCubeTexture.SampleLevel(g_sTrilinearClamp, normalize(mul(float4(_10784, 0.0f), float4x4(float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].x, PerViewConstantBufferCsgo_t_1_m6._m0[1].x, PerViewConstantBufferCsgo_t_1_m6._m0[2].x, PerViewConstantBufferCsgo_t_1_m6._m0[3].x), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].y, PerViewConstantBufferCsgo_t_1_m6._m0[1].y, PerViewConstantBufferCsgo_t_1_m6._m0[2].y, PerViewConstantBufferCsgo_t_1_m6._m0[3].y), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].z, PerViewConstantBufferCsgo_t_1_m6._m0[1].z, PerViewConstantBufferCsgo_t_1_m6._m0[2].z, PerViewConstantBufferCsgo_t_1_m6._m0[3].z), float4(PerViewConstantBufferCsgo_t_1_m6._m0[0].w, PerViewConstantBufferCsgo_t_1_m6._m0[1].w, PerViewConstantBufferCsgo_t_1_m6._m0[2].w, PerViewConstantBufferCsgo_t_1_m6._m0[3].w))).xyz).xyz, PerViewConstantBufferCsgo_t_1_m5.w * clamp(1.0f - (_14602 * PerViewConstantBufferCsgo_t_1_m4.z), 0.0f, 1.0f)) * PerViewConstantBufferCsgo_t_1_m8.x).xyz, _8892).xyz, _8892.xxx);
+ _19341 = lerp(_23944.xyz, float4((g_tFogCubeTexture.SampleLevel(g_sTrilinearClamp, normalize(mul(float4(_10784, 0.0f), PerViewConstantBufferCsgo_t_1_m6).xyz).xyz, PerViewConstantBufferCsgo_t_1_m5.w * clamp(1.0f - (_14602 * PerViewConstantBufferCsgo_t_1_m4.z), 0.0f, 1.0f)) * PerViewConstantBufferCsgo_t_1_m8.x).xyz, _8892).xyz, _8892.xxx);
break;
}
_19341 = _23944.xyz;
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_complex.slang
modified • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_copy_rt.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_customglove_preview.slang
modified • +1043 / -991 • changes: 2034
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_dronecam.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_effects.slang
modified • +69 / -53 • changes: 122
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_environment.slang
modified • +1640 / -1522 • changes: 3162
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_environment_blend.slang
modified • +2229 / -2053 • changes: 4282
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_eyeball.slang
modified • +200 / -187 • changes: 387
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_flashbang_overlay.slang
modified • +55 / -31 • changes: 86
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_foliage.slang
modified • +1550 / -1437 • changes: 2987
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_glass.slang
modified • +139 / -137 • changes: 276
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_grenade_camera.slang
modified • +5 / -5 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_panolayer_rt.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_screenspace_zone.slang
modified • +15 / -19 • changes: 34
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple.slang
modified • +127 / -123 • changes: 250
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_2way_blend.slang
modified • +1046 / -980 • changes: 2026
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_3layer_parallax.slang
modified • +145 / -114 • changes: 259
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_simple_liquid.slang
modified • +429 / -429 • changes: 858
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_static_overlay.slang
modified • +104 / -65 • changes: 169
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_textile_layer.slang
modified • +209 / -185 • changes: 394
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_ui_texture_attribute.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_water_fancy.slang
modified • +119 / -105 • changes: 224
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_weapon.slang
modified • +256 / -194 • changes: 450
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/csgo_weapon_sticker.slang
modified • +186 / -164 • changes: 350
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/deferred_particle_shadows.slang
modified • +46 / -43 • changes: 89
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/denoise_blur.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/denoise_blur_cs.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/depthtolineardepth.slang
modified • +7 / -7 • changes: 14
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/dof2.slang
modified • +3 / -3 • changes: 6
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/downsample_outlineglows.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/gaussian_bloom_blur.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/grasstile.slang
modified • +120 / -118 • changes: 238
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/grasstile_preview.slang
modified • +50 / -28 • changes: 78
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/healthboost.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/histogram_cs.slang
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/inferno.slang
modified • +34 / -46 • changes: 80
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/legacy_sniper_scope.slang
modified • +10 / -10 • changes: 20
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/luminaire.slang
modified • +76 / -61 • changes: 137
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/mboit_mixed_combine.slang
modified • +5 / -10 • changes: 15
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/mboit_mixed_upsample.slang
modified • +32 / -32 • changes: 64
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/mboitfinal.slang
modified • +5 / -10 • changes: 15
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/outlines.slang
modified • +4 / -4 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/overlay_smoke.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/panorama_alpha.slang
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/player_visibility.slang
modified • +10 / -10 • changes: 20
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/player_visibility_stencil_proxy.slang
modified • +10 / -20 • changes: 30
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/post_process.slang
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/reconstruct_normals.slang
modified • +33 / -33 • changes: 66
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/screenparticlescombine.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume.slang
modified • +91 / -78 • changes: 169
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_cs.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_depth.slang
modified • +16 / -21 • changes: 37
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_lpv.slang
modified • +81 / -70 • changes: 151
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/smoke_volume_mask.slang
modified • +8 / -13 • changes: 21
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/upsample.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/visualize_aggregate.slang
modified • +44 / -21 • changes: 65
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir/shaders/vfx/write_smoke_depth_water_reflection.slang
modified • +4 / -10 • changes: 14
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/cables.slang
modified • +197 / -163 • changes: 360
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_beachfoam.slang
modified • +53 / -34 • changes: 87
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_character.slang
modified • +442 / -335 • changes: 777
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_generic.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_height_to_normal.slang
modified • +3 / -4 • changes: 7
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_composite_inputs.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_customglove.slang
modified • +77 / -53 • changes: 130
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_customweapon.slang
modified • +23 / -11 • changes: 34
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_decal_renderer.slang
modified • +59 / -35 • changes: 94
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_decalmodulate.slang
modified • +51 / -32 • changes: 83
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_depth_only.slang
modified • +63 / -39 • changes: 102
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_legs_prepass.slang
modified • +64 / -45 • changes: 109
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_lightmapped_4wayblend.slang
modified • +116 / -90 • changes: 206
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_lightmappedgeneric.slang
modified • +1083 / -991 • changes: 2074
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_moondome.slang
modified • +57 / -42 • changes: 99
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_projected_decals.slang
modified • +181 / -127 • changes: 308
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_refract.slang
modified • +59 / -40 • changes: 99
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_tools_shading_complexity.slang
modified • +63 / -42 • changes: 105
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_tools_wireframe.slang
modified • +63 / -42 • changes: 105
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_unlitgeneric.slang
modified • +63 / -48 • changes: 111
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_vertexlitgeneric.slang
modified • +1079 / -992 • changes: 2071
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_volume_viewer.slang
modified • +55 / -32 • changes: 87
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/csgo_water.slang
modified • +97 / -70 • changes: 167
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/error.slang
modified • +63 / -42 • changes: 105
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/generate_decal_normals.slang
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/generic.slang
modified • +138 / -110 • changes: 248
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/lpv_debug_grid.slang
modified • +108 / -79 • changes: 187
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/player_visibility_data.slang
modified • +61 / -40 • changes: 101
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/simple.slang
modified • +175 / -156 • changes: 331
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/sky.slang
modified • +39 / -31 • changes: 70
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/solidcolor.slang
modified • +61 / -40 • changes: 101
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/spritecard.slang
modified • +130 / -151 • changes: 281
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/tools_solid.slang
modified • +62 / -40 • changes: 102
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/tools_wireframe.slang
modified • +83 / -75 • changes: 158
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir/shaders/vfx/visualize_physics.slang
modified • +55 / -45 • changes: 100
No patch available (GitHub often omits patches for large/binary diffs).
9.7.2026, 15.48.29
Assets/UI/maps update (DumpSource2/module_metadata/materialsystem2.kv3, DumpSource2/schemas/client/CModelState.h).
Files changed: 300 • +44736 / -18866
assets
Changed files
DumpSource2/.stringsignore
modified • +1994 / -379 • changes: 2373
No patch available (GitHub often omits patches for large/binary diffs).
DumpSource2/commands.txt
modified • +50 / -67 • changes: 117
Show patch
@@ -191,6 +191,9 @@ axis (gamedll cheat)
Draw an axis
Arguments: x y z pitch yaw roll <lifetime = 10.0> <r g b a>
+bake_bomb_damage_render_visualization (clientdll cheat)
+ <no description>
+
banid (developmentonly defensive)
Add a user ID to the ban list.
@@ -270,9 +273,6 @@ bug (developmentonly dontrecord defensive)
bugbug (clientdll release)
bugbug
-bugbug_commit (clientdll release)
- bugbug_commit
-
bugvoice_clear (developmentonly dontrecord defensive)
Clear voice attachment data.
@@ -369,18 +369,6 @@ cast_sphere (gamedll cheat)
cc_emit (developmentonly clientdll defensive)
Emits a closed caption
-cc_findsound (developmentonly clientdll defensive)
- Searches for soundname which emits specified text.
-
-cc_flush (developmentonly clientdll defensive)
- Flushes async'd captions.
-
-cc_random (developmentonly clientdll defensive)
- Emits a random caption
-
-cc_showblocks (developmentonly clientdll defensive)
- Toggles showing which blocks are pending/loaded async.
-
changelevel (release)
changelevel <mapname> :Multiplayer change level.
@@ -728,7 +716,7 @@ cl_pred_track_off (developmentonly clientdll defensive)
clear field track changes.
cl_predictioncopy_describe (developmentonly clientdll defensive)
- Describe datamap_t for entindex
+ Describe PredictionMap_t for entindex
cl_predictioncopy_print (developmentonly clientdll defensive)
Print simple description of prediction copy fields for entindex
@@ -766,9 +754,6 @@ cl_resetfps (developmentonly clientdll defensive)
cl_rr_dump_rules (clientdll cheat)
Print all response rules
-cl_rr_reloadresponsesystems (clientdll cheat)
- Reload all response system scripts.
-
cl_script_add_debug_filter (clientdll cheat)
Add a filter to the game debug overlay
@@ -1983,9 +1968,6 @@ menuselect (clientdll clientcmd_can_execute)
minimap_create (clientdll cheat)
Does a bunch of work to create a minimap
-mm_datacenter_debugprint (developmentonly defensive)
- Shows information retrieved from data center
-
mm_debugprint (developmentonly defensive)
Show debug information about current matchmaking session
@@ -2190,6 +2172,10 @@ open_asset (developmentonly defensive)
open_current_map_in_hammer (developmentonly)
opens the current map in hammer.
+open_current_map_pulse_in_tool (developmentonly vconsole_fuzzy_matching)
+ Opens the specified pulse used in this map in the editor.
+ Arguments: <pulse_file>
+
p2p_listpeers (developmentonly defensive)
List currently known peers.
@@ -2470,6 +2456,9 @@ removeip (developmentonly defensive)
repeat_last_console_command (release)
Repeat last console command.
+replant_bomb (gamedll cheat)
+ <no description>
+
replay_death (gamedll cheat)
start hltv replay of last death
@@ -2544,9 +2533,6 @@ rr_forceconcept (gamedll cheat)
USAGE: rr_forceconcept <target name or index> <concept> "criteria1:value1,criteria2:value2,..."
criteria values are optional.
-rr_reloadresponsesystems (gamedll cheat)
- Reload all response system scripts.
-
rs_dump_stats (developmentonly)
rs_dump_stats - Dump resourcesystem stats.
@@ -2598,9 +2584,6 @@ sc_setclassflags (cheat)
sc_showclasses (cheat)
List the object class names known by scenesystem
-scene_coordinator_add_request (developmentonly gamedll defensive)
- Add a request to the scene coordinator
-
scene_playvcd (gamedll cheat)
Play the given VCD as an instanced scripted scene.
@@ -2707,7 +2690,10 @@ server_game_time (developmentonly gamedll defensive)
Gives the game time in seconds (server's curtime)
server_snd_cast (gamedll cheat)
- Casts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically. Usage: snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.
+ Casts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically. Usage: server_snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.
+
+server_snd_pos (gamedll cheat)
+ Starts a sound event at a given position. The sound event will retrigger periodically. Usage: server_snd_pos <eventname> <retrigger time> <x> <y> <z>.
servervoice_clear (developmentonly clientdll defensive)
servervoice_clear
@@ -2818,8 +2804,8 @@ slot9 (clientdll server_can_execute)
snapto (developmentonly clientdll defensive)
<no description>
-snd_arrangement_start (cheat)
- Starts the specified arrangement.
+snd__beatpattern_stop_track (cheat)
+ Stops the specified track
snd_async_flush (developmentonly defensive)
Flush all unlocked async audio data
@@ -2833,6 +2819,24 @@ snd_async_showmem_music (developmentonly defensive)
snd_async_showmem_summary (developmentonly defensive)
Show brief async memory stats
+snd_beatpattern_flush (cheat)
+ Purge and reload all beat pattern data and files.
+
+snd_beatpattern_print_activetracks (cheat)
+ List all active tracks
+
+snd_beatpattern_print_patterns (cheat)
+ List all available beat patterns
+
+snd_beatpattern_set_track_bpm (cheat)
+ Sets the tempo of the specified track
+
+snd_beatpattern_set_track_transpose (cheat)
+ Sets the transposition of the specified track
+
+snd_beatpattern_stop_all_tracks (cheat)
+ Stops all currently playing patterns
+
snd_cast (cheat)
Casts a ray and starts a sound event where the ray hits. The sound event will retrigger periodically if cl_snd_cast_retrigger is set. The sound event will clear previous snd_cast events if cl_snd_cast_clear is set. Usage: snd_cast <eventname> [<retrigger time>] [<max distance>]. Arguments that are specified will become defaults for the remainder of the session.
@@ -2908,30 +2912,6 @@ snd_samplers_play_note (cheat)
snd_samplers_stop_note (cheat)
Stop a note from a specified sampler
-snd_sequencer_print_activetracks (cheat)
- List all active tracks
-
-snd_sequencer_print_arrangements (cheat)
- List all available sequence arrangments
-
-snd_sequencer_print_sequences (cheat)
- List all available midi sequences
-
-snd_sequencer_set_track_bpm (cheat)
- Sets the tempo of the specified track
-
-snd_sequencer_set_track_transpose (cheat)
- Sets the transposition of the specified track
-
-snd_sequencer_stop_all_tracks (cheat)
- Stops all currently playing sequences
-
-snd_sequencer_stop_track (cheat)
- Stops the specified track
-
-snd_sequencer_vmidi_flush (cheat)
- Purge and reload all vmidi data and files.
-
snd_set_physics_surface_properties (cheat)
Set physics surface properties for materials. Usage: <heuristic #> <commit>
@@ -3145,6 +3125,9 @@ ss_remove (developmentonly defensive)
ss_teleport (developmentonly clientdll cheat)
Teleport other splitscreen player to my location.
+start_rec_mic (linked_concommand developmentonly defensive)
+ Start recording to a desired wav.
+
startdemos (release)
Play demos in demo sequence.
@@ -3172,6 +3155,12 @@ steamvrevent_quit (developmentonly gamedll hidden defensive)
stop (release)
Finish recording demo.
+stop_rec_mic (linked_concommand developmentonly defensive)
+ Stop recording to a desired wav.
+
+stop_rec_mic_all (linked_concommand developmentonly defensive)
+ Stop recording all mic streams.
+
stopdemos (release)
Stop looping demos (current demo will complete).
@@ -3458,24 +3447,12 @@ voice_containers_get_instance_params (linked_concommand developmentonly defensiv
voice_modenable_toggle (clientdll release)
Toggle the voice_modenable convar.
-voice_mute (developmentonly defensive)
- Mute a specific Steam user
-
-voice_reset_mutelist (developmentonly defensive)
- Reset all mute information for all players who were ever muted.
-
-voice_show_mute (developmentonly defensive)
- Show whether current players are muted.
-
voice_status_test_toggle (developmentonly clientdll)
Test voice and status notices
voice_toggle_open_mic (clientdll release)
Toggles between open-mic and push-to-talk
-voice_unmute (developmentonly defensive)
- Unmute a specific Steam user, or `all` to unmute all connected players.
-
vprof_dump_counters (developmentonly defensive)
Dump vprof counters to the console
@@ -3522,6 +3499,12 @@ weapon_switch (developmentonly gamedll)
workshop_annotation_submit (clientdll release)
Submit annotation to workshop. To update an existing submission add its ID number from the workshop URL as a second argument.
+workshop_clear_cloud_save (developmentonly gamedll defensive)
+ Remove a workshop save from steam cloud. Pass the published file id to delete or 0 to delete the non-workshop addon save.
+
+workshop_dump_cloud_contents (developmentonly gamedll defensive)
+ Spew contents of steam cloud.
+
workshop_item_submit (clientdll hidden release)
<no description>
DumpSource2/convars.txt
modified • +168 / -171 • changes: 339
Show patch
@@ -643,7 +643,7 @@ camera_datadriven_debug false (developmentonly clientdll cheat)
camera_datadriven_disable_cache false (developmentonly gamedll cheat)
<no description>
-camera_path_edit_mode false (clientdll cheat)
+camera_path_edit_mode false (gamedll clientdll replicated cheat)
<no description>
cash_player_bomb_defused 300 (gamedll clientdll notify replicated release commandline_enforced)
@@ -742,6 +742,9 @@ cc_captiontrace 1 (developmentonly clientdll defensive)
cc_delay_time 0.25 (clientdll archive)
Close caption delay before showing caption.
+cc_force_combine_chatter true (developmentonly clientdll defensive)
+ <no description>
+
cc_lang "" (clientdll archive)
Current close caption language (emtpy = use game UI language)
@@ -751,12 +754,6 @@ cc_linger_time 1 (clientdll archive)
cc_log 0 (developmentonly clientdll defensive)
Log caption names and contents (0 = off, 1 = found captions, 2 = unfound captions, 3 = all captions)
-cc_norepeat 5 (developmentonly gamedll defensive)
- In multiplayer games, don't repeat captions more often than this many seconds.
-
-cc_showmissing false (developmentonly gamedll replicated defensive)
- Show missing closecaption entries.
-
cc_spectator_only false (clientdll archive)
<no description>
@@ -838,6 +835,9 @@ cl_autobuy "" (clientdll release)
cl_autohelp true (clientdll archive userinfo)
Auto-help
+cl_bake_bomb_damage_debug 0 (clientdll cheat)
+ <no description>
+
cl_batch_entity_list_ops_during_latch false (developmentonly clientdll)
Batch entity list adds / removes while latching interpolated variables to avoid mutex contention.
@@ -1165,6 +1165,9 @@ cl_ent_attachment_filter_substrings "" (clientdll cheat)
cl_ent_joint_axis_size 4 (developmentonly clientdll defensive)
<no description>
+cl_ent_joint_filter_name "" (clientdll cheat)
+ If a joint's entire name matches (case insensitive), it will be displayed.
+
cl_ent_joint_filter_substrings "" (clientdll cheat)
If a joint's name has any of the given substrings in it, it will be displayed. Substrings can be delimited by the ',' or '|' character.
@@ -1696,6 +1699,9 @@ cl_player_visibility_stencil_proxy_min_dist_box 1 (developmentonly clientdll)
cl_player_visibility_stencil_proxy_type 1 (developmentonly clientdll)
0 - box, 1 - dodecahedron
+cl_playerslot_in_names false (clientdll cheat release)
+ prepend controller playerslot to names for debugging
+
cl_poll_network_early true (release)
Enable polling for network messages every frame, instead of every tick
@@ -2158,6 +2164,9 @@ cl_streams_request_url "https://api.twitch.tv/helix/streams?game_id=32399&first=
cl_streams_write_response_file "" (developmentonly clientdll)
When set will save streams info file for diagnostics
+cl_svc_usercmds_delta_validate false (developmentonly clientdll)
+ Validate consistency of delta-encoded user commands. Requires server to have sv_cq_validate_encoded_svc_usercmds enabled.
+
cl_teamcounter_playercount_instead_of_avatars false (clientdll archive release)
<no description>
@@ -2353,6 +2362,9 @@ cloth_hudmodel_presettle 0 (developmentonly clientdll)
cloth_hudmodel_presettle_log false (developmentonly clientdll)
<no description>
+cloth_interp_rot false (developmentonly clientdll)
+ <no description>
+
cloth_iv_dump 4 (developmentonly clientdll defensive)
<no description>
@@ -2518,6 +2530,9 @@ cq_runtests_interval 30 (developmentonly gamedll)
crosshair true (clientdll archive per_user)
<no description>
+cs2_bomb_damage_showdebugwindow false (developmentonly clientdll archive replicated cheat menubar_item)
+ CSGO/Bomb Damage
+
cs_AssistDamageThreshold 25 (developmentonly gamedll)
cs_AssistDamageThreshold defines the amount of damage needed to score an assist
@@ -2578,97 +2593,91 @@ csgo_nav_jump_link_detour_threshold 1500 (developmentonly gamedll replicated def
csgo_use_fullsort_for_opaque true (clientdll cheat)
fullsort the opaque pass when there wasn't a depth prepass
-csm_bias_override_0 1 (cheat)
+csm_bias_override_0 1 (clientdll cheat)
<no description>
-csm_bias_override_1 1 (cheat)
+csm_bias_override_1 1 (clientdll cheat)
<no description>
-csm_bias_override_2 1 (cheat)
+csm_bias_override_2 1 (clientdll cheat)
<no description>
-csm_bias_override_3 1 (cheat)
+csm_bias_override_3 1 (clientdll cheat)
<no description>
-csm_cascade0_override_dist -1 (cheat)
+csm_cascade0_override_dist -1 (clientdll cheat)
<no description>
-csm_cascade1_override_dist -1 (cheat)
+csm_cascade1_override_dist -1 (clientdll cheat)
<no description>
-csm_cascade2_override_dist -1 (cheat)
+csm_cascade2_override_dist -1 (clientdll cheat)
<no description>
-csm_cascade3_override_dist -1 (cheat)
+csm_cascade3_override_dist -1 (clientdll cheat)
<no description>
-csm_cascade_viewdir_shadow_bias_scale 2 (cheat)
+csm_cascade_viewdir_shadow_bias_scale 2 (clientdll cheat)
<no description>
-csm_max_dist_between_caster_and_receiver 15000 (cheat)
+csm_max_dist_between_caster_and_receiver 15000 (clientdll cheat)
default pushback
-csm_max_num_cascades_override -1 (developmentonly defensive)
+csm_max_num_cascades_override -1 (developmentonly clientdll defensive)
Number of cascades in sunlight shadow
-csm_max_shadow_dist_override -1 (developmentonly defensive)
+csm_max_shadow_dist_override -1 (developmentonly clientdll defensive)
<no description>
-csm_max_visible_dist 7500 (cheat)
+csm_max_visible_dist 7500 (clientdll cheat)
<no description>
-csm_res_override_0 0 (cheat)
+csm_res_override_0 0 (clientdll cheat)
<no description>
-csm_res_override_1 0 (cheat)
+csm_res_override_1 0 (clientdll cheat)
<no description>
-csm_res_override_2 0 (cheat)
+csm_res_override_2 0 (clientdll cheat)
<no description>
-csm_res_override_3 0 (cheat)
+csm_res_override_3 0 (clientdll cheat)
<no description>
-csm_shadow_worldview_align_x_to_u false (cheat)
+csm_shadow_worldview_align_x_to_u false (clientdll cheat)
<no description>
-csm_shadow_worldview_shear_align_z_to_v false (cheat)
+csm_shadow_worldview_shear_align_z_to_v false (clientdll cheat)
<no description>
-csm_split_log_scalar 0.85 (cheat)
+csm_sst_max_visible_dist 2000 (clientdll cheat)
<no description>
-csm_sst_max_visible_dist 2000 (cheat)
- <no description>
-
-csm_sst_pushback_distance 1500 (cheat)
+csm_sst_pushback_distance 1500 (clientdll cheat)
default pushback
-csm_sst_shadow_focus_region_maxz 2000 (cheat)
- <no description>
-
-csm_sst_shadow_focus_region_minz -2000 (cheat)
+csm_sst_shadow_focus_region_maxz 2000 (clientdll cheat)
<no description>
-csm_sst_shadow_focus_region_thin_compensation 500 (clientdll cheat)
+csm_sst_shadow_focus_region_minz -2000 (clientdll cheat)
<no description>
-csm_viewdir_shadow_bias 0 (cheat)
+csm_sst_shadow_focus_region_thin_compensation 1500 (clientdll cheat)
<no description>
-csm_viewmodel_farz 30 (cheat)
+csm_viewdir_shadow_bias 0 (clientdll cheat)
<no description>
-csm_viewmodel_max_shadow_dist 21 (cheat)
+csm_viewmodel_max_shadow_dist 21 (clientdll cheat)
<no description>
-csm_viewmodel_max_visible_dist 1000 (cheat)
+csm_viewmodel_max_visible_dist 1000 (clientdll cheat)
<no description>
-csm_viewmodel_nearz 0.5 (cheat)
+csm_viewmodel_nearz 0.5 (clientdll cheat)
<no description>
-csm_viewmodel_shadows false (developmentonly defensive)
+csm_viewmodel_shadows false (developmentonly clientdll defensive)
<no description>
custom_bot_difficulty 2 (gamedll clientdll replicated release)
@@ -2683,9 +2692,6 @@ cv_bot_ai_bt_hiding_spot_show false (gamedll replicated cheat)
cv_bot_ai_bt_moveto_show_next_hiding_spot false (gamedll replicated cheat)
Draw the hiding spot the bot will check next.
-d3d_max_feature_level "<Not set>" (developmentonly defensive)
- Report the maximum D3D feature level available.
-
damage_impact_heavy 40 (developmentonly clientdll defensive)
Damage ABOVE this value is considered heavy damage
@@ -2758,6 +2764,9 @@ debug_video_config_cvars false (developmentonly clientdll)
debug_visibility_monitor 0 (gamedll cheat)
<no description>
+debugoverlay_circle_verts 24 (cheat)
+ <no description>
+
debugoverlay_enable_dotted_dashed true (cheat)
Toggle the use of dotted/dashed debugoverlay lines to indicate source
@@ -2914,6 +2923,9 @@ disable_dynamic_prop_loading false (gamedll cheat)
disable_source_soundscape_trace false (developmentonly gamedll defensive)
Bypasses lookup of soundscapes for indvidual audio sources when enabled.
+display_convars_onscreen_in_big_text "" (developmentonly gamedll clientdll replicated cheat)
+ Display the convars on the screen in big text. Use semicolons to separate multiple convars
+
display_game_events false (gamedll cheat)
<no description>
@@ -3028,12 +3040,6 @@ engine_render_only false (developmentonly defensive)
engine_rendersystem_init "" (developmentonly defensive)
Rendersystem option requested (changing this does not change the rendersystem).
-engine_rendersystem_meets_min_dx_110 "Unknown" (developmentonly defensive)
- Rendersystem meets min DX110 feature level (changing this does not change the shader model).
-
-engine_rendersystem_meets_min_dx_110_simple "Unknown" (developmentonly defensive)
- Rendersystem meets min DX110 feature level (changing this does not change the shader model).
-
engine_rendersystem_shader_model 0 (developmentonly defensive)
Rendersystem shader model in use (changing this does not change the shader model).
@@ -3076,6 +3082,9 @@ ent_debug_draw_thinkers false (developmentonly gamedll clientdll replicated defe
ent_joint_axis_size 4 (developmentonly gamedll defensive)
<no description>
+ent_joint_filter_name "" (gamedll cheat)
+ If a joint's entire name matches (case insensitive), it will be displayed.
+
ent_joint_filter_substrings "" (gamedll cheat)
If a joint's name has any of the given substrings in it, it will be displayed. Substrings can be delimited by the ',' or '|' character.
@@ -3367,15 +3376,24 @@ func_mover_debug_showtext false (developmentonly gamedll defensive)
func_mover_debug_verbose false (developmentonly gamedll defensive)
<no description>
+func_mover_force_transition_start_direction false (developmentonly gamedll defensive)
+ <no description>
+
func_mover_get_speed_override 0 (developmentonly gamedll defensive)
<no description>
func_mover_imgui_log_count 30 (developmentonly gamedll defensive)
<no description>
+func_mover_run_parallel true (developmentonly gamedll defensive)
+ <no description>
+
func_rotator_debug false (developmentonly gamedll defensive)
<no description>
+func_rotator_run_parallel true (developmentonly gamedll defensive)
+ <no description>
+
fx_drawmetalspark true (developmentonly clientdll)
Draw metal spark effects.
@@ -3541,16 +3559,16 @@ hud_scaling 1 (min: 0.9, max: 1.1, clientdll archive)
hud_showtargetid true (clientdll archive per_user)
Enables display of target names
-hullivr_edge_merge_tan 0.02 (developmentonly gamedll replicated defensive)
+hullivr_edge_merge_tan 0.02 (developmentonly gamedll clientdll replicated defensive)
Should we try to straighten two faces connected to this edge? (tangent)
-hullivr_faceisland_merge_disp 0 (developmentonly gamedll replicated defensive)
+hullivr_faceisland_merge_disp 0 (developmentonly gamedll clientdll replicated defensive)
Should we straighten face island if the displacement is this much? (inches)
-hullivr_faceisland_merge_tan 0.04 (developmentonly gamedll replicated defensive)
+hullivr_faceisland_merge_tan 0.04 (developmentonly gamedll clientdll replicated defensive)
Should we try to straighten an island of faces deviating from their average normal (tangent)?
-hullivr_version 3 (developmentonly gamedll replicated defensive)
+hullivr_version 3 (developmentonly gamedll clientdll replicated defensive)
<no description>
ik_constraints_enabled true (developmentonly replicated defensive)
@@ -3796,9 +3814,6 @@ instant_replay true (developmentonly defensive)
instant_replay_history_limit 120 (developmentonly defensive)
Maximum amount of minutes to save history (0 is unlimited).
-instant_replay_history_limit_low 10 (developmentonly defensive)
- Maximum amount of minutes to save history on low memory (32 bit) systems (0 is unlimited).
-
iv_debugbone "" (release)
Debug bone name for interpolation spew of CAnimationState.
@@ -4183,7 +4198,7 @@ lb_tile_pixels 8 (developmentonly defensive)
lb_time_sliced_shadow_map_reallocation_age 0.7 (developmentonly defensive)
Age of cached allocation to be considered for re-allocation
-lb_time_sliced_shadow_map_reallocation_pct 0.33 (developmentonly defensive)
+lb_time_sliced_shadow_map_reallocation_pct 0.2 (developmentonly defensive)
Likelyhood we'll re-allocate a timesliced shadowmap (to try to improve packing)
lb_time_sliced_shadow_map_rendering_enable true (developmentonly defensive)
@@ -4225,6 +4240,9 @@ lockMoveControllerRet false (clientdll archive)
logaddress_token_secret "" (gamedll release)
Set a secret string that will be hashed when using logaddress with explicit token hash.
+logic_entity_analyzer_debug false (gamedll replicated cheat)
+ <no description>
+
logic_npc_counter_debug false (gamedll replicated cheat)
<no description>
@@ -4252,9 +4270,6 @@ markup_volume_ref_cone_angle 135 (developmentonly gamedll defensive)
mat_assert_on_error_shader_use false (developmentonly)
<no description>
-mat_async_shader_load false (release)
- <no description>
-
mat_cache_and_skip_commandbuffers true (developmentonly)
<no description>
@@ -4411,15 +4426,6 @@ mic_listen_while_nonfocused false (developmentonly clientdll defensive)
mm_csgo_community_search_players_min 3 (archive release)
When performing CSGO community matchmaking look for servers with at least so many human players
-mm_datacenter_query_delay 5 (developmentonly)
- Delay after datacenter update is enabled before data is actually queried.
-
-mm_datacenter_retry_interval 75 (developmentonly)
- Interval between datacenter stats retries.
-
-mm_datacenter_update_interval 3600 (developmentonly)
- Interval between datacenter stats updates.
-
mm_debug_friend_rp 0 (developmentonly)
<no description>
@@ -5040,6 +5046,9 @@ mp_roundtime_defuse 0 (min: 0, max: 60, gamedll notify replicated release comman
mp_roundtime_hostage 0 (min: 0, max: 60, gamedll notify replicated release commandline_enforced)
How many minutes each round of Hostage Rescue takes. If 0 then use mp_roundtime instead.
+mp_shoot_dropped_grenades false (gamedll clientdll replicated release commandline_enforced)
+ Dropped grenades detonate when shot.
+
mp_shorthanded_cash_bonus_ignore_kicked true (gamedll clientdll replicated release)
Determines whether kicked players are included in the assessment for short-handedness
@@ -5448,6 +5457,9 @@ nav_draw_space_transitions true (developmentonly gamedll)
nav_edit 0 (gamedll cheat)
Set to one to interactively edit the Navigation Mesh. Set to zero to leave edit mode.
+nav_edit_draw_navlinks true (gamedll cheat)
+ <no description>
+
nav_edit_use_camera true (gamedll cheat)
<no description>
@@ -5559,7 +5571,7 @@ nav_gen_opt_to_quads_se_limit_start 1e-05 (gamedll cheat)
nav_gen_opt_to_quads_weld_limit_end 0.01 (gamedll cheat)
<no description>
-nav_gen_opt_to_quads_weld_limit_start 1e-07 (gamedll cheat)
+nav_gen_opt_to_quads_weld_limit_start 0 (gamedll cheat)
<no description>
nav_gen_oriented_angle_tol 15 (gamedll cheat)
@@ -5760,7 +5772,7 @@ nav_smooth_draw_speed 0 (gamedll cheat)
nav_smooth_enable 1 (gamedll cheat)
<no description>
-nav_smooth_push_from_walls -1 (developmentonly gamedll)
+nav_smooth_push_from_walls 12 (developmentonly gamedll)
<no description>
nav_smooth_relax true (gamedll cheat)
@@ -5940,9 +5952,6 @@ nav_test_npc_collision_show_geometry false (gamedll cheat)
nav_test_path false (gamedll cheat)
Calculate and draw a path from player/camera position to the test position.
-nav_test_path_expansion_search 0 (gamedll cheat)
- Extend nav_test_path by doing an expansion search on that path. Convar value defines dist.
-
nav_test_path_lock_goal false (gamedll cheat)
Lock the pathfinding goal to the current intersection point.
@@ -5991,6 +6000,9 @@ nav_test_search_on_path false (gamedll cheat)
nav_test_search_on_path_boundary_edges_only false (gamedll cheat)
Activate the 'boundary edges only' constraint when testing the 'on path' search mode for tactical searches.
+nav_test_search_on_path_setgoal false (gamedll cheat)
+ Test the 'on path' search mode for tactical searches using SetGoal w/ possible path clipping (flips between 2 searches). Requires a selected NPC.
+
nav_test_smooth false (gamedll cheat)
<no description>
@@ -6366,15 +6378,6 @@ panorama_label_wrap_before_shrink true (developmentonly clientdll hidden defensi
panorama_large_dispatch_event_queue 0 (developmentonly hidden defensive)
<no description>
-panorama_max_fps 120 (developmentonly hidden defensive)
- <no description>
-
-panorama_max_oof_overlay_up_fps 4 (developmentonly hidden defensive)
- <no description>
-
-panorama_max_overlay_fps 60 (developmentonly hidden defensive)
- <no description>
-
panorama_max_text_shadow_strength 10 (developmentonly hidden defensive)
<no description>
@@ -6642,9 +6645,6 @@ phys_visualize_awake_dynamic_only false (developmentonly gamedll clientdll repli
phys_visualize_awake_unattached_only false (developmentonly gamedll clientdll replicated defensive)
<no description>
-phys_visualize_traces false (gamedll clientdll replicated cheat)
- <no description>
-
phys_wind_force_scale 1 (developmentonly gamedll clientdll replicated)
Scale on the force wind applies to physics bodies
@@ -6657,10 +6657,10 @@ player0_using_joystick false (archive)
player_botdifflast_s "2" (clientdll archive release)
<no description>
-player_competitive_maplist_2v2_10_0_630B8B7C "mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_poseidon,mg_de_sanctum,mg_de_overpass" (clientdll archive)
+player_competitive_maplist_2v2_10_0_D684D4E1 "mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_debris,mg_de_poseidon,mg_de_eldorado,mg_de_overpass" (clientdll archive)
<no description>
-player_competitive_maplist_8_10_0_556B3D03 "mg_de_warden,mg_de_dust2,mg_de_train,mg_de_ancient,mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_mirage,mg_cs_office,mg_cs_italy,mg_cs_alpine,mg_de_cache,mg_de_stronghold,mg_de_anubis,mg_lobby_mapveto,mg_de_overpass" (clientdll archive)
+player_competitive_maplist_8_10_0_A062AC6A "mg_de_dust2,mg_de_train,mg_de_ancient,mg_de_inferno,mg_de_nuke,mg_de_vertigo,mg_de_mirage,mg_cs_office,mg_cs_italy,mg_de_cache,mg_de_boulder,mg_de_anubis,mg_lobby_mapveto,mg_de_fachwerk,mg_cs_shelter,mg_de_overpass" (clientdll archive)
<no description>
player_debug_off_nav false (gamedll cheat)
@@ -6804,7 +6804,7 @@ r_RainAllowInSplitScreen false (developmentonly clientdll defensive)
r_RainParticleDensity 1 (developmentonly clientdll defensive)
Density of Particle Rain 0-1
-r_add_views_in_pre_output false (developmentonly defensive)
+r_add_views_in_pre_output false (developmentonly clientdll defensive)
<no description>
r_allow_onesweep_gpusort true (developmentonly defensive)
@@ -7275,6 +7275,9 @@ r_debug_particle_shadows false (clientdll cheat)
r_debug_precipitation false (clientdll cheat)
Show precipitation volumes
+r_decal_hit_confirmation false (developmentonly gamedll clientdll replicated)
+ <no description>
+
r_decals 2048 (developmentonly gamedll clientdll replicated defensive)
<no description>
@@ -7467,9 +7470,6 @@ r_flashlighttracedistwatercutoff 80 (clientdll cheat)
r_flashlightvisualizetrace false (clientdll cheat)
<no description>
-r_flush_on_pooled_ib_resize true (release)
- <no description>
-
r_force_no_present false (cheat)
Force the render device to not present frames.
@@ -7479,9 +7479,6 @@ r_force_render_frame_count 5 (developmentonly)
r_force_thick_hair false (developmentonly cheat)
<no description>
-r_force_zprepass -1 (cheat)
- 0: Force z prepass off. 1: Force on. -1: Don't force
-
r_frame_sync_enable true (developmentonly defensive)
<no description>
@@ -7497,6 +7494,9 @@ r_fullscreen_gamma 2.2 (min: 1, max: 4, archive missing1)
r_fullscreen_quad_single_triangle true (developmentonly)
<no description>
+r_gpu_debug_draw_freeze false (developmentonly clientdll)
+ <no description>
+
r_grass_allow_flattening false (developmentonly defensive)
<no description>
@@ -7815,18 +7815,9 @@ r_show_time_info false (clientdll release)
r_showdebugoverlays false (cheat)
Set to render debug overlays
-r_showdebugrendertarget false (cheat)
- Set the debug render target to show, 0 == disable
-
r_showsceneobjectbounds false (cheat)
Show scenesystem object bounding boxes
-r_showsunshadowdebugrendertargets false (cheat)
- Set to render sun shadow render targets
-
-r_showsunshadowdebugsplitvis false (cheat)
- Set to render sun shadow split visibility debugger
-
r_size_cull_threshold 0.8 (developmentonly)
Threshold of screen size percentage below which objects get culled
@@ -7866,9 +7857,6 @@ r_ssao_strength 1.2 (developmentonly defensive)
r_strip_invisible_during_sceneobject_update false (developmentonly clientdll defensive)
<no description>
-r_suppress_redundant_state_changes true (developmentonly defensive)
- <no description>
-
r_test1_maximum_wait_ms 10 (clientdll release)
<no description>
@@ -7908,9 +7896,6 @@ r_texture_stream_max_resolution 2147483647 (min: 512, developmentonly defensive)
r_texture_stream_mip_bias 0 (developmentonly defensive)
Biases the mip level the texture streaming system choses to stream for each texture.
-r_texture_stream_resolution_bias 1 (developmentonly defensive)
- <no description>
-
r_texture_stream_resolution_bias_decrease_rate 0.1 (developmentonly defensive)
<no description>
@@ -7956,6 +7941,9 @@ r_timestamp_query_multiplier 1 (developmentonly defensive)
r_translucent true (cheat)
Enable rendering of translucent geometry
+r_ui_update_parallel_with_server false (developmentonly defensive)
+ <no description>
+
r_update_particles_on_render_only_frames false (developmentonly clientdll defensive)
<no description>
@@ -7992,9 +7980,6 @@ r_world_wind_smooth_time 2 (developmentonly defensive)
r_world_wind_strength 40 (developmentonly defensive)
<no description>
-r_zprepass_normals false (cheat)
- 0: Use normals reconstructed from depth. 1: Output correct normals in z prepass.
-
radarvisdistance 1000 (min: 10, gamedll cheat)
at this distance and beyond you need to be point right at someone to see them
@@ -8109,9 +8094,6 @@ report_connection_failure_percentage 0 (developmentonly defensive)
reset_voice_on_input_stallout false (userinfo)
If true, resets the input device when there was a long enough hitch between callbacks.
-resourcesystem_multiframe_finalize_time_msec 10 (developmentonly)
- Max time to spend finalizing resources per frame in miliseconds.
-
rope_averagelight true (developmentonly clientdll defensive)
Makes ropes use average of cubemap lighting instead of max intensity.
@@ -8205,9 +8187,6 @@ save_screenshot 2 (developmentonly gamedll defensive)
save_spew false (developmentonly gamedll clientdll replicated defensive)
<no description>
-save_version 2 (developmentonly gamedll clientdll replicated defensive)
- 0: (V0) Legacy save format, 1: (V1) KeyValues3 save format, 2: (V2) KV3Transfer saves
-
save_write_kv3 false (developmentonly gamedll clientdll replicated defensive)
Write the KV3 entity data as a text file in the save directory
@@ -8244,9 +8223,6 @@ sc_aggregate_gpu_culling_show_culled false (developmentonly menubar_item)
sc_aggregate_gpu_occlusion_culling true (developmentonly defensive)
<no description>
-sc_aggregate_gpu_vis_culling true (developmentonly defensive)
- <no description>
-
sc_aggregate_indirect_draw_compaction true (release)
Use multidrawindirect...count if the driver/hardware supports it
@@ -8331,7 +8307,7 @@ sc_disable_spotlight_shadows false (cheat)
sc_disable_world_materials false (cheat)
<no description>
-sc_distance_field_visualize_atlas false (developmentonly defensive)
+sc_distancefield_visualize_atlas false (developmentonly defensive)
<no description>
sc_dithered_lod_transition_amt 0.075 (min: 0, max: 0.2, developmentonly defensive)
@@ -8436,6 +8412,21 @@ sc_max_framebuffer_copies_per_layer 1 (developmentonly defensive)
sc_mesh_backface_culling true (developmentonly defensive)
<no description>
+sc_mesh_gpu_occlusion_culling true (developmentonly defensive)
+ <no description>
+
+sc_mesh_gpu_volume_culling true (developmentonly defensive)
+ <no description>
+
+sc_mesh_mesh_shaders false (developmentonly defensive)
+ <no description>
+
+sc_mesh_shadows_batch_across_materials true (developmentonly defensive)
+ <no description>
+
+sc_mesh_use_pmb false (developmentonly defensive)
+ <no description>
+
sc_no_cull false (developmentonly defensive)
<no description>
@@ -8508,12 +8499,12 @@ sc_visualize_batches 0 (developmentonly defensive)
sc_visualize_sceneobjects "SCENEOBJECT_VIS_NONE" (developmentonly menubar_item defensive)
SceneSystem/Visualize SceneObject Mode
+sc_visualize_sceneobjects_meshlets "SCENEOBJECT_MESHLET_VIS_NONE" (developmentonly menubar_item)
+ SceneSystem/Visualize Base SceneObject Meshlets
+
scene_clientflex true (developmentonly gamedll clientdll replicated defensive)
Do client side flex animation.
-scene_maxcaptionradius 1200 (developmentonly gamedll defensive)
- Only show closed captions if recipient is within this many units of speaking actor (0==disabled).
-
scene_print 0 (developmentonly gamedll clientdll replicated defensive)
When playing back a scene, print timing and event info to console.
@@ -8664,6 +8655,18 @@ snd_async_spew_blocking 0 (developmentonly defensive)
snd_autodetect_latency true (archive missing1)
<no description>
+snd_beatpattern_show_bpm false (cheat)
+ <no description>
+
+snd_beatpattern_show_events false (cheat)
+ <no description>
+
+snd_beatpattern_show_quantize_queue false (cheat)
+ <no description>
+
+snd_beatpattern_use_lookahead false (cheat)
+ <no description>
+
snd_boxverb_simd true (developmentonly defensive)
Enable SIMD code path for shoebox reverb processor.
@@ -8928,21 +8931,15 @@ snd_roundend_volume 0.16 (min: 0, max: 1, clientdll archive release)
snd_roundstart_volume 0 (min: 0, max: 1, clientdll archive release)
Volume of Round Start Music
-snd_sequencer_show_bpm false (cheat)
- <no description>
-
-snd_sequencer_show_events false (cheat)
- <no description>
-
-snd_sequencer_show_quantize_queue false (cheat)
- <no description>
-
snd_showclassname 0 (cheat)
<no description>
snd_showstart 0 (cheat)
<no description>
+snd_sos_beatpattern_show_operator_updates false (developmentonly defensive)
+ <no description>
+
snd_sos_block_global_stack false (cheat)
<no description>
@@ -8988,6 +8985,9 @@ snd_sos_print_field_references false (cheat)
snd_sos_print_fps false (cheat)
<no description>
+snd_sos_print_frametime false (cheat)
+ <no description>
+
snd_sos_print_full_field_info false (cheat)
<no description>
@@ -9087,6 +9087,9 @@ snd_sos_soundevent_max_deferred_time 5 (developmentonly defensive)
snd_sos_soundevent_show_deferral_warning false (developmentonly defensive)
<no description>
+snd_sos_tools_detailed_debugging true (developmentonly archive)
+ <no description>
+
snd_sound_areas_debug false (clientdll replicated cheat)
<no description>
@@ -9105,6 +9108,15 @@ snd_soundmixer_version 2 (developmentonly defensive)
snd_spatialize_lerp 0 (archive release)
<no description>
+snd_steamaudio_display_dimension_data_inside true (developmentonly defensive)
+ When visualizing dimensions data at runtime, draw the inside direction.
+
+snd_steamaudio_display_dimension_data_outside true (developmentonly defensive)
+ When visualizing dimensions data at runtime, draw the outisde direction.
+
+snd_steamaudio_display_dimension_data_size true (developmentonly defensive)
+ When visualizing dimensions data at runtime, draw the size of the space.
+
snd_steamaudio_dynamicpathing_max_samples 16 (developmentonly gamedll clientdll replicated defensive)
<no description>
@@ -9159,9 +9171,6 @@ snd_use_baked_occlusion 0 (replicated cheat release)
snd_vmix_override_mix_decay_time -1 (cheat)
If set > 0, overrides how long the decay time is on all mix graphs (in seconds).
-snd_vmix_show_input_updates false (cheat)
- If set to 1, show all incoming updates to vmix inputs.
-
snd_voipvolume 1 (min: 0, max: 2, archive missing1)
Voice volume
@@ -9255,7 +9264,7 @@ sparseshadowtree_disable_add_layers false (developmentonly)
sparseshadowtree_disable_for_viewmodel true (developmentonly)
Disable SST generation and runtime for viewmodel (use original CSM rendering).
-sparseshadowtree_enable_rendering false (developmentonly)
+sparseshadowtree_enable_rendering true (developmentonly)
Enable use of SST at runtime (static geo rendered into cascades via SST).
sparseshadowtree_leaf_compress_scaleoffset true (developmentonly)
@@ -9636,6 +9645,9 @@ sv_clockcorrection_msecs 30 (gamedll release)
sv_clockdbg false (developmentonly)
Print spew related to server clock and ticking
+sv_cloth_interp_rot false (developmentonly gamedll)
+ <no description>
+
sv_cluster 0 (release)
Data center cluster this server lives in.
@@ -9651,6 +9663,9 @@ sv_compute_per_bot_difficulty false (developmentonly gamedll clientdll replicate
sv_condense_late_buttons true (developmentonly gamedll defensive)
When condensing late commands. Should we compress multiple moves of button presses into the target move?
+sv_cq_delta_encode_svc_usercmds true (developmentonly gamedll)
+ Delta encode svc_UserCmds message
+
sv_cq_min_queue 0 (min: 0, developmentonly replicated defensive)
Server min buffer size.
@@ -9663,6 +9678,9 @@ sv_cq_trim_bloat_space 0 (gamedll release)
sv_cq_trim_catchup_remainder 1 (gamedll release)
When trimming an overful CQ due to app 'catchup' request, leave at least N more commands than the minimum
+sv_cq_validate_encoded_svc_usercmds false (developmentonly gamedll)
+ VERY EXPENSIVE: serialize non-delta-encoded commands along with delta-encoded for validation
+
sv_cs_player_speed_has_hostage 200 (gamedll clientdll replicated release)
<no description>
@@ -9768,9 +9786,6 @@ sv_early_network_message_processing false (developmentonly gamedll)
sv_enable_alternate_baselines 1 (release)
Allow alternate baseline system, set to 2 for debugging spew.
-sv_enable_delta_packing true (release)
- When enabled, this allows for entity packing to use the property changes for building up the data. This is many times faster, but can be disabled for error checking.
-
sv_enable_donttransmit true (developmentonly)
When encoding entity deltas, instead of unreliably deducing explicit deletions, actually send list of existing but not networked entities (dont_transmit list) to each client.
@@ -9798,9 +9813,6 @@ sv_endmatch_item_drop_interval_rare 1 (developmentonly gamedll clientdll replica
sv_ent_showonlyhitbox -1 (gamedll cheat)
<no description>
-sv_ents_write_alarm 0 (release)
- Print callstack every time CNetworkGameServerBase::WriteEntityUpdate takes more than this amount of milliseconds
-
sv_extra_client_connect_time 15 (developmentonly defensive)
Seconds after client connect during which extra frames are buffered to prevent non-delta'd update
@@ -10011,9 +10023,6 @@ sv_lightquery_debug false (gamedll cheat)
sv_limit_buyrandom_per_life true (gamedll release)
Enable to limit buyrandom command to only run once per player life
-sv_log_change_offsets false (developmentonly gamedll)
- Log change offsets to game/varchangeinfoN.log files.
-
sv_log_http_record_before_any_listeners false (gamedll release)
<no description>
@@ -10044,7 +10053,7 @@ sv_logsdir "logs" (archive release)
sv_long_frame_ms 0 (developmentonly defensive)
If a server frame takes longer than N ms, complain about it. (Dedicated server only.) See also engine_frametime_warnings_enable.
-sv_mapvetopickvote_maps "de_anubis,de_overpass,de_inferno,de_mirage,de_dust2,de_nuke,de_ancient" (gamedll release)
+sv_mapvetopickvote_maps "de_cache,de_anubis,de_inferno,de_mirage,de_dust2,de_nuke,de_ancient" (gamedll release)
Which maps are used for map veto pick sequence
sv_mapvetopickvote_phase_duration "[1:5][2:15][3:20][4:10][5:10][6:5]" (gamedll release)
@@ -10065,9 +10074,6 @@ sv_matchpause_auto_5v5 false (gamedll clientdll replicated release)
sv_matchperfstats_maxclientperfsamples 100 (developmentonly gamedll defensive)
Don't retain more than N perf samples for any given client
-sv_max_change_offsets 48 (developmentonly gamedll)
- How many network changes to track before requiring full diff check.
-
sv_max_deathmatch_respawns_per_tick 0 (gamedll release commandline_enforced)
<no description>
@@ -10152,9 +10158,6 @@ sv_networkvar_log_fullchanges false (developmentonly gamedll)
sv_networkvar_perfieldtracking true (release)
Track individual field offset changes, rather than a single dirty flag for the whole entity.
-sv_networkvar_validate false (release)
- Validate each StateChanged against known offsets.
-
sv_no_navmesh false (developmentonly gamedll cheat)
Block loading of the navmesh. Unplayable, only used for memory sampling.
@@ -10194,12 +10197,6 @@ sv_outofpvsentityupdates false (developmentonly)
sv_override_max_health 0 (gamedll release)
<no description>
-sv_pack_entities_really_verbose false (release)
- Increase verbosity for entity packing
-
-sv_pack_entities_verbose_entidx -1 (release)
- Verbose output for entity packing, set to the entindex of the entity you want verbose output for.
-
sv_parallel_checktransmit 0 (gamedll release)
Set to 1 to use threaded checkentities for transmit/pvs on listen servers, 2 for dedicated servers.
@@ -10335,9 +10332,6 @@ sv_rcon_minfailures 5 (min: 1, max: 20, developmentonly defensive)
sv_rcon_minfailuretime 30 (min: 1, developmentonly defensive)
Number of seconds to track failed rcon authentications
-sv_recipients_check true (release)
- When packing entities, check that recipient bits match for fast path packing.
-
sv_record_item_time_data false (gamedll release)
Turn on recording of per player item time data into the server log.
@@ -10527,6 +10521,9 @@ sv_standable_normal 0.7 (gamedll clientdll replicated cheat release)
sv_stats true (developmentonly defensive)
Collect CPU usage stats
+sv_steamauth_correct false (release)
+ Correct behavior
+
sv_steamauth_enforce 2 (release)
By default, player must maintain a reliable connection to Steam servers. When player Steam session drops, enforce it: 2 = instantly kick, 1 = kick at next spawn, 0 = do not kick.
@@ -10773,9 +10770,6 @@ sv_walkable_normal 0.7 (gamedll clientdll replicated cheat release)
sv_warmup_to_freezetime_delay 4 (min: 3, max: 20, gamedll clientdll replicated release commandline_enforced)
Delay between end of warmup and start of match.
-sv_watchtransmit -2 (gamedll release)
- Watch NetworkStateChanged info for this entity index.
-
sv_water_slow_amount 0.9 (gamedll clientdll replicated release)
<no description>
@@ -10824,10 +10818,10 @@ thread_pool_option -1 (hidden release)
throttle_expensive_ai false (developmentonly gamedll defensive)
<no description>
-timedemo_end "-1" (developmentonly defensive)
+timedemo_end "-1" (release)
Ends timedemo on given tick.
-timedemo_start "-1" (developmentonly defensive)
+timedemo_start "-1" (release)
Starts timedemo on given tick.
toast_manager_override_duration -1 (developmentonly clientdll)
@@ -11520,6 +11514,9 @@ vprof_scope_entity_thinks false (developmentonly gamedll clientdll replicated de
vprof_think_limit false (developmentonly gamedll defensive)
<no description>
+vt_sim_streaming_delay_ms 500 (developmentonly defensive)
+ <no description>
+
weapon_accuracy_forcespread 0 (gamedll clientdll replicated release)
Force spread to the specified value.
DumpSource2/module_metadata/assetbrowser.kv3
modified • +2 / -11 • changes: 13
Show patch
@@ -23,21 +23,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -64,6 +54,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/assetpreview.kv3
modified • +3 / -12 • changes: 15
Show patch
@@ -6,7 +6,7 @@
name = "NmAssetPreview"
group = "ToolsStartup"
source_file = "src/assetpreview/assetpreview.cpp"
- source_line = 69
+ source_line = 31
resources =
[
resource_name:"scripts/tools/anim_preview_archetypes.vdata",
@@ -91,21 +91,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -132,6 +122,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/client.kv3
modified • +9341 / -4390 • changes: 13731
No patch available (GitHub often omits patches for large/binary diffs).
DumpSource2/module_metadata/engine2.kv3
modified • +2 / -2 • changes: 4
Show patch
@@ -6,7 +6,7 @@
name = "AdditiveFilterManifest"
group = "GameStartup"
source_file = "src/engine2/renderingworld.cpp"
- source_line = 896
+ source_line = 903
resources =
[
resource_name:"materials/dev/generalfilter_additive.vmat",
@@ -36,7 +36,7 @@
name = "LoopModeLevelLoad"
group = ""
source_file = "src/engine2/loopmodelevelload.cpp"
- source_line = 93
+ source_line = 94
resources =
[
resource_name:"materials/loading_background.vmat",
DumpSource2/module_metadata/materialsystem2.kv3
modified • +2 / -2 • changes: 4
Show patch
@@ -6,7 +6,7 @@
name = "MaterialUtilsInit"
group = "GameStartup"
source_file = "src/materialsystem2/utils/materialsystem2utils.cpp"
- source_line = 641
+ source_line = 642
resources =
[
resource_name:"dev/vgui/materials/renderui.vmat",
@@ -19,7 +19,7 @@
},
{
name = "PostProcessingSystemManifest"
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/materialsystem2/postprocessingsystem.cpp"
source_line = 39
resources =
DumpSource2/module_metadata/meshsystem.kv3
modified • +1 / -1 • changes: 2
Show patch
@@ -16,7 +16,7 @@
name = "VModelError"
group = ""
source_file = "src/meshsystem/meshsystem.cpp"
- source_line = 66
+ source_line = 67
resources =
[
resource_name:"models/dev/error.vmdl",
DumpSource2/module_metadata/modtools.kv3
modified • +2 / -11 • changes: 13
Show patch
@@ -13,21 +13,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -54,6 +44,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/pulse_system.kv3
modified • +3123 / -1503 • changes: 4626
No patch available (GitHub often omits patches for large/binary diffs).
DumpSource2/module_metadata/resourcecompiler.kv3
modified • +1894 / -834 • changes: 2728
No patch available (GitHub often omits patches for large/binary diffs).
DumpSource2/module_metadata/scenesystem.kv3
modified • +36 / -34 • changes: 70
Show patch
@@ -36,9 +36,20 @@
resource_name:"textures/dev/blue_noise_256.vtex",
]
},
+ {
+ name = "VirtualTextureMgrManifest"
+ group = ""
+ source_file = "src/scenesystem/utils/virtualtexturemanager.cpp"
+ source_line = 16
+ resources =
+ [
+ resource_name:"materials/dev/vt_cs.vmat",
+ resource_name:"materials/dev/vt_debug_imgui.vmat",
+ ]
+ },
{
name = "SSAOManifest"
- group = "GameStartup_SM40"
+ group = "GameStartup"
source_file = "src/scenesystem/utils/scalable_ambient_obscurance.cpp"
source_line = 32
resources =
@@ -80,7 +91,7 @@
name = "SparseShadowTreeManifest"
group = ""
source_file = "src/scenesystem/sparseshadowtree.cpp"
- source_line = 66
+ source_line = 68
resources =
[
resource_name:"materials/dev/sst_cs.vmat",
@@ -89,7 +100,7 @@
},
{
name = ""
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/scenesystem/scenelpvdebuggrid.cpp"
source_line = 22
resources =
@@ -101,7 +112,7 @@
name = "SubsurfaceProfilesManifest"
group = "SubsurfaceProfilesManifest"
source_file = "src/scenesystem/scenegfxresources.cpp"
- source_line = 486
+ source_line = 478
resources =
[
resource_name:"materials/subsurface_profiles.vdata",
@@ -111,7 +122,7 @@
name = ""
group = "ToolsStartup_RayTracing"
source_file = "src/scenesystem/scenegfxresources.cpp"
- source_line = 477
+ source_line = 469
resources =
[
resource_name:"materials/dev/rtx/binlights.vmat",
@@ -124,41 +135,22 @@
},
{
name = ""
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/scenesystem/scenegfxresources.cpp"
- source_line = 467
+ source_line = 456
resources =
[
+ resource_name:"TonemapManifest",
resource_name:"VolumetricFogManifest",
resource_name:"WindControllerManifest",
resource_name:"materials/dev/skinning_cs.vmat",
resource_name:"materials/dev/compute_smooth_normals_cs.vmat",
resource_name:"materials/dev/cs_parallel_sort.vmat",
resource_name:"materials/dev/cs_parallel_sort_onesweep.vmat",
- ]
- },
- {
- name = ""
- group = "GameStartup"
- source_file = "src/scenesystem/scenegfxresources.cpp"
- source_line = 460
- resources =
- [
- resource_name:"TonemapManifest",
resource_name:"materials/tools/copy_texture_with_gamma.vmat",
resource_name:"materials/rendertargetops/copydepth.vmat",
]
},
- {
- name = "SceneSystemInitSM50"
- group = "GameStartup_SM50"
- source_file = "src/scenesystem/scenegfxresources.cpp"
- source_line = 447
- resources =
- [
- resource_name:"materials/dev/luminaire.vmat",
- ]
- },
{
name = "SceneSystemInit"
group = "GameStartup"
@@ -183,11 +175,12 @@
resource_name:"materials/dev/primary_white_trans.vmat",
resource_name:"materials/dev/reflectivity_90.vmat",
resource_name:"materials/dev/generalfilter.vmat",
+ resource_name:"materials/dev/luminaire.vmat",
]
},
{
name = "RenderingPipelineForwardManifest"
- group = "GameStartup_SM40"
+ group = "GameStartup"
source_file = "src/scenesystem/renderingpipelineforward.cpp"
source_line = 42
resources =
@@ -205,11 +198,21 @@
resource_name:"materials/dev/imgui.vmat",
]
},
+ {
+ name = "BaseSceneObjectManifest"
+ group = ""
+ source_file = "src/scenesystem/sceneobjectdescs.cpp"
+ source_line = 60
+ resources =
+ [
+ resource_name:"materials/dev/cull_scene_objects.vmat",
+ ]
+ },
{
name = "InstancedMeshSceneObjectManifest"
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/scenesystem/instancedmeshdesc.cpp"
- source_line = 66
+ source_line = 67
resources =
[
resource_name:"materials/dev/cull_instanced_meshes.vmat",
@@ -228,7 +231,7 @@
},
{
name = "AggregateRTProxySceneObjectManifest"
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/scenesystem/aggregatertproxydesc.cpp"
source_line = 36
resources =
@@ -238,12 +241,11 @@
},
{
name = "AggregateSceneObjectManifest"
- group = "GameStartup_SM50"
+ group = "GameStartup"
source_file = "src/scenesystem/aggregatedesc.cpp"
- source_line = 39
+ source_line = 36
resources =
[
- resource_name:"materials/dev/generate_aggregate_cull_requests.vmat",
resource_name:"materials/dev/cull_aggregate_fragments.vmat",
resource_name:"materials/dev/compact_indirect_draws.vmat",
resource_name:"materials/dev/sum_aggregate_cull_stats.vmat",
DumpSource2/module_metadata/server.kv3
modified • +25447 / -10976 • changes: 36423
No patch available (GitHub often omits patches for large/binary diffs).
DumpSource2/module_metadata/soundsystem.kv3
modified • +14 / -4 • changes: 18
Show patch
@@ -6,7 +6,7 @@
name = ""
group = "GameStartup"
source_file = "src/soundsystem/snd_op_sys/sos_system.cpp"
- source_line = 10065
+ source_line = 10068
resources =
[
resource_name:"soundstacks/soundstacks_manifest.vrman",
@@ -17,7 +17,7 @@
name = ""
group = "ToolsStartupPreGame"
source_file = "src/soundsystem/snd_op_sys/sos_system.cpp"
- source_line = 10059
+ source_line = 10062
resources =
[
resource_name:"soundstacks/soundstacks_manifest_tools.vrman",
@@ -28,17 +28,27 @@
name = "SoundSystemStartupGroupsManifest"
group = "SosStartup"
source_file = "src/soundsystem/snd_op_sys/sos_system.cpp"
- source_line = 66
+ source_line = 63
resources =
[
resource_name:"soundstacks/soundeventgroups.vdata",
]
},
+ {
+ name = "SoundSystemBeatPatternManifest"
+ group = "SosStartup"
+ source_file = "src/soundsystem/snd_op_sys/sos_beatpattern_system.cpp"
+ source_line = 26
+ resources =
+ [
+ resource_name:"soundstacks/beatpattern_manager.vdata",
+ ]
+ },
{
name = "SoundsystemVMixLoader"
group = "VMixStartup"
source_file = "src/soundsystem/vmix.cpp"
- source_line = 3186
+ source_line = 2987
resources =
[
resource_name:"soundstacks/mixgraph.vmix",
DumpSource2/module_metadata/tools_hammer.kv3
modified • +17 / -16 • changes: 33
Show patch
@@ -2,6 +2,16 @@
{
resource_manifests =
[
+ {
+ name = ""
+ group = "ToolsStartup"
+ source_file = "src/tools/hammer/waterplanehelper.cpp"
+ source_line = 19
+ resources =
+ [
+ resource_name:"scripts/water_types.vdata",
+ ]
+ },
{
name = "ToolLocatorGroup"
group = "ToolsStartup"
@@ -38,7 +48,7 @@
name = ""
group = "ToolsStartup_RayTracing"
source_file = "src/tools/hammer/qhammerpanecontainer.cpp"
- source_line = 206
+ source_line = 209
resources =
[
resource_name:"materials/dev/rtx/pathtracer.vmat",
@@ -49,7 +59,7 @@
name = "MapViewGroup"
group = "ToolsStartup"
source_file = "src/tools/hammer/mapview.cpp"
- source_line = 85
+ source_line = 81
resources =
[
resource_name:"materials/tools/selection_stencil_copy.vmat",
@@ -132,21 +142,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -173,6 +173,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
@@ -232,7 +233,7 @@
name = ""
group = "ToolsStartup"
source_file = "src/mapdoclib/mapprefab.cpp"
- source_line = 28
+ source_line = 30
resources =
[
resource_name:"materials/editor/prefab_icon.vmat",
@@ -251,9 +252,9 @@
},
{
name = ""
- group = "ToolsStartup_SM50"
+ group = "ToolsStartup"
source_file = "src/mapdoclib/windcontrollerhelper.cpp"
- source_line = 26
+ source_line = 27
resources =
[
resource_name:"materials/dev/wind_controller_visualize.vmat",
DumpSource2/module_metadata/tools_met.kv3
modified • +2 / -11 • changes: 13
Show patch
@@ -13,21 +13,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -54,6 +44,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/tools_modeldoc_editor.kv3
modified • +3 / -12 • changes: 15
Show patch
@@ -47,7 +47,7 @@
name = ""
group = "GameStartup"
source_file = "src/tools/modeldoc_editor/model_preview_root.cpp"
- source_line = 62
+ source_line = 66
resources =
[
resource_name:"materials/tools/show_normals.vmat",
@@ -164,21 +164,11 @@
resource_name:"materials/tools/hlmv_ground.vmat",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -205,6 +195,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/tools_pet.kv3
modified • +2 / -11 • changes: 13
Show patch
@@ -59,21 +59,11 @@
resource_name:"models/editor/camera.vmdl",
]
},
- {
- name = ""
- group = "ToolsStartup_SM50"
- source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 161
- resources =
- [
- resource_name:"materials/tools/grid.vmat",
- ]
- },
{
name = ""
group = "ToolsStartup"
source_file = "src/toolrenderutils/toolmatsysutils.cpp"
- source_line = 125
+ source_line = 126
resources =
[
resource_name:"materials/tools/wireframe_vertex_color.vmat",
@@ -100,6 +90,7 @@
resource_name:"materials/tools/handle_ring_translucent.vmat",
resource_name:"materials/tools/handle_square_ring_translucent.vmat",
resource_name:"materials/tools/handle_edged_circle_translucent.vmat",
+ resource_name:"materials/tools/grid.vmat",
]
},
{
DumpSource2/module_metadata/vphysics2.kv3
modified • +2 / -2 • changes: 4
Show patch
@@ -6,7 +6,7 @@
name = "VPhysics2SurfacePropLoader"
group = "VPhysics2Startup"
source_file = "src/vphysics2/vphysics2.cpp"
- source_line = 119
+ source_line = 185
resources =
[
resource_name:"surfaceproperties/surfaceproperties.vsurf",
@@ -16,7 +16,7 @@
name = "PhysicsDebugMaterials"
group = "PhysicsDebugMaterials"
source_file = "src/vphysics2/vphys2_debug.cpp"
- source_line = 38
+ source_line = 37
resources =
[
resource_name:"materials/dev/debug_physics_noedges.vmat",
DumpSource2/schemas/animationsystem/CCompressorGroup.h
removed • +0 / -20 • changes: 20
Show patch
@@ -1,20 +0,0 @@
-class CCompressorGroup
-{
- int32 m_nTotalElementCount;
- CUtlVector< char* > m_szChannelClass;
- CUtlVector< char* > m_szVariableName;
- CUtlVector< fieldtype_t > m_nType;
- CUtlVector< int32 > m_nFlags;
- CUtlVector< CUtlString > m_szGrouping;
- CUtlVector< int32 > m_nCompressorIndex;
- CUtlVector< CUtlVector< char* > > m_szElementNames;
- CUtlVector< CUtlVector< int32 > > m_nElementUniqueID;
- CUtlVector< uint32 > m_nElementMask;
- CUtlVector< CCompressor< Vector >* > m_vectorCompressor;
- CUtlVector< CCompressor< QuaternionStorage >* > m_quaternionCompressor;
- CUtlVector< CCompressor< int32 >* > m_intCompressor;
- CUtlVector< CCompressor< bool >* > m_boolCompressor;
- CUtlVector< CCompressor< Color >* > m_colorCompressor;
- CUtlVector< CCompressor< Vector2D >* > m_vector2DCompressor;
- CUtlVector< CCompressor< Vector4D >* > m_vector4DCompressor;
-};
DumpSource2/schemas/animdoclib/CNmClipDocEvent_FloatCurve.h
modified • +22 / -2 • changes: 24
Show patch
@@ -7,9 +7,29 @@
// {
// "m_spline":
// [
+// {
+// "x": 0.000000,
+// "y": 0.000000,
+// "m_flSlopeIncoming": 1.000000,
+// "m_flSlopeOutgoing": 1.000000
+// },
+// {
+// "x": 1.000000,
+// "y": 1.000000,
+// "m_flSlopeIncoming": 1.000000,
+// "m_flSlopeOutgoing": 1.000000
+// }
// ],
// "m_tangents":
// [
+// {
+// "m_nIncomingTangent": "CURVE_TANGENT_SPLINE",
+// "m_nOutgoingTangent": "CURVE_TANGENT_SPLINE"
+// },
+// {
+// "m_nIncomingTangent": "CURVE_TANGENT_SPLINE",
+// "m_nOutgoingTangent": "CURVE_TANGENT_SPLINE"
+// }
// ],
// "m_vDomainMins":
// [
@@ -18,8 +38,8 @@
// ],
// "m_vDomainMaxs":
// [
-// 0.000000,
-// 0.000000
+// 1.000000,
+// 1.000000
// ]
// }
//}
DumpSource2/schemas/animdoclib/CNmGraphDocBoneMaskNode.h
modified • +4 / -1 • changes: 5
Show patch
@@ -32,10 +32,13 @@
// [
// ],
// "m_defaultResourceName": "",
-// "m_maskID": ""
+// "m_maskID": "",
+// "m_bIsOptionalMask": false
//}
class CNmGraphDocBoneMaskNode : public CNmGraphDocVariationDataNode
{
// MPropertyAttributeEditor = "BoneMaskID()"
CGlobalSymbol m_maskID;
+ // MPropertyDescription = "Should we check at compile time that this is an optional mask?"
+ bool m_bIsOptionalMask;
};
DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__IDSet_t.h
modified • +2 / -0 • changes: 2
Show patch
@@ -10,7 +10,9 @@ class CNmGraphDocDataDictionary::IDSet_t
{
// MPropertySuppressField
V_uuid_t m_ID;
+ // MPropertyFlattenIntoParentRow
CUtlString m_name;
// MPropertyAutoExpandSelf
+ // MPropertyFriendlyName = "Graph IDs"
CUtlVector< CGlobalSymbol > m_graphIDs;
};
DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__ParameterSet_t.h
modified • +1 / -0 • changes: 1
Show patch
@@ -7,6 +7,7 @@
// MPropertyAutoExpandSelf
class CNmGraphDocDataDictionary::ParameterSet_t
{
+ // MPropertyFlattenIntoParentRow
CUtlString m_name;
// MPropertyAutoExpandSelf
CUtlVector< CNmGraphDocDataDictionary::Parameter_t > m_parameters;
DumpSource2/schemas/animdoclib/CNmGraphDocDataDictionary__Parameter_t.h
modified • +1 / -0 • changes: 1
Show patch
@@ -12,6 +12,7 @@ class CNmGraphDocDataDictionary::Parameter_t
{
// MPropertySuppressField
V_uuid_t m_ID;
+ // MPropertyFlattenIntoParentRow
CUtlString m_name;
CUtlString m_groupName;
NmGraphValueType_t m_valueType;
DumpSource2/schemas/animdoclib/CNmGraphDocRootMotionOverrideNode.h
modified • +7 / -0 • changes: 7
Show patch
@@ -46,6 +46,13 @@
// "m_type": "Float",
// "m_bIsDynamicPin": false,
// "m_bAllowMultipleOutConnections": false
+// },
+// {
+// "m_ID": <HIDDEN FOR DIFF>,
+// "m_name": "Enabled",
+// "m_type": "Bool",
+// "m_bIsDynamicPin": false,
+// "m_bAllowMultipleOutConnections": false
// }
// ],
// "m_outputPins":
DumpSource2/schemas/animdoclib/CNmSkeletonDocument.h
modified • +6 / -1 • changes: 7
Show patch
@@ -18,6 +18,9 @@
// "m_boneMaskSetDefinitions":
// [
// ],
+// "m_floatChannelSets":
+// [
+// ],
// "m_previewModelName": ""
//}
class CNmSkeletonDocument : public CNmAnimDocument
@@ -34,9 +37,11 @@ class CNmSkeletonDocument : public CNmAnimDocument
// MPropertyDescription = "The set of bones that need to be converted at import to match the S2 coordinate system (Z-up, X-forward)"
CUtlVector< CGlobalSymbol > m_gameplayRelevantBones;
// MPropertySuppressField
- CUtlVector< CUtlString > m_highLODBones;
+ CUtlVector< CGlobalSymbol > m_highLODBones;
// MPropertySuppressField
CUtlVector< NmBoneMaskSetDefinition_t > m_boneMaskSetDefinitions;
+ // MPropertySuppressField
+ CUtlVector< CNmFloatChannelSet_t > m_floatChannelSets;
// MPropertyGroupName = "+Preview"
// MPropertyAttributeEditor = "AssetBrowse( vmdl, *requiredoubleclick )"
CUtlString m_previewModelName;
DumpSource2/schemas/animdoclib/CnmGraphDocChainLookatNode.h
modified • +14 / -3 • changes: 17
Show patch
@@ -47,15 +47,26 @@
// "m_pDefaultVariationData":
// {
// "_class": "CnmGraphDocChainLookatNode::CData",
-// "m_chainEndBoneName": "",
-// "m_chainForwardDir":
+// "m_endEffectorBoneName": "",
+// "m_endEffectorForwardAxis":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_endEffectorOffset":
// [
// 0.000000,
// 0.000000,
// 0.000000
// ],
// "m_nChainLength": 2,
-// "m_flBlendTimeSeconds": 0.000000
+// "m_flBlendTimeSeconds": 0.000000,
+// "m_chainWeights":
+// [
+// 1.000000,
+// 1.000000
+// ]
// },
// "m_overrides":
// [
DumpSource2/schemas/animdoclib/CnmGraphDocChainLookatNode__CData.h
modified • +23 / -5 • changes: 28
Show patch
@@ -1,19 +1,37 @@
// MGetKV3ClassDefaults = {
// "_class": "CnmGraphDocChainLookatNode::CData",
-// "m_chainEndBoneName": "",
-// "m_chainForwardDir":
+// "m_endEffectorBoneName": "",
+// "m_endEffectorForwardAxis":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_endEffectorOffset":
// [
// 0.000000,
// 0.000000,
// 0.000000
// ],
// "m_nChainLength": 2,
-// "m_flBlendTimeSeconds": 0.000000
+// "m_flBlendTimeSeconds": 0.000000,
+// "m_chainWeights":
+// [
+// ]
//}
class CnmGraphDocChainLookatNode::CData : public CNmGraphDocVariationDataNode::CData
{
- CUtlString m_chainEndBoneName;
- Vector m_chainForwardDir;
+ CUtlString m_endEffectorBoneName;
+ // MPropertyDescription = "The axis that you want to point at the target"
+ Vector m_endEffectorForwardAxis;
+ // MPropertyDescription = "Add an additional local space offset to the end effector to use for aiming the lookat"
+ Vector m_endEffectorOffset;
+ // MPropertyDescription = "The length of the IK chain"
+ // MPropertyAttributeRange = "2 7"
uint8 m_nChainLength;
+ // MPropertyDescription = "How long should the blend in/out take"
float32 m_flBlendTimeSeconds;
+ // MPropertyAutoExpandSelf
+ // MPropertyDescription = "The weights from the tip of the chain to the base. 0 is the effector/tip of the chain weight, N is the base of the chain."
+ CUtlVector< float32 > m_chainWeights;
};
DumpSource2/schemas/animgraphlib/TagActionStatus.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum TagActionStatus : uint8_t
+{
+ Inactive = 0,
+ Active = 1,
+ Fired = 2,
+};
DumpSource2/schemas/animgraphlib/TagStatus.h
added • +9 / -0 • changes: 9
Show patch
@@ -0,0 +1,9 @@
+// MGetKV3ClassDefaults = {
+// "m_TagStatus": "Inactive",
+// "m_flTagStartAnimTime": -1.000000
+//}
+class TagStatus
+{
+ TagActionStatus m_TagStatus;
+ float32 m_flTagStartAnimTime;
+};
DumpSource2/schemas/animlib/CNmChainLookatNode__CDefinition.h
modified • +21 / -10 • changes: 31
Show patch
@@ -2,26 +2,37 @@
// "_class": "CNmChainLookatNode::CDefinition",
// "m_nNodeIdx": -1,
// "m_nChildNodeIdx": -1,
-// "m_chainEndBoneID": "",
-// "m_nLookatTargetNodeIdx": -1,
-// "m_nEnabledNodeIdx": -1,
-// "m_flBlendTimeSeconds": 0.000000,
-// "m_nChainLength": 2,
-// "m_bIsTargetInWorldSpace": false,
-// "m_chainForwardDir":
+// "m_endEffectorBoneID": "",
+// "m_endEffectorForwardAxis":
// [
// 1.000000,
// 0.000000,
// 0.000000
-// ]
+// ],
+// "m_endEffectorOffset":
+// [
+// 1.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_nLookatTargetNodeIdx": -1,
+// "m_nEnabledNodeIdx": -1,
+// "m_flBlendTimeSeconds": 0.000000,
+// "m_chainWeights":
+// [
+// ],
+// "m_nChainLength": 2,
+// "m_bIsTargetInWorldSpace": false
//}
class CNmChainLookatNode::CDefinition : public CNmPassthroughNode::CDefinition
{
- CGlobalSymbol m_chainEndBoneID;
+ CGlobalSymbol m_endEffectorBoneID;
+ Vector m_endEffectorForwardAxis;
+ Vector m_endEffectorOffset;
int16 m_nLookatTargetNodeIdx;
int16 m_nEnabledNodeIdx;
float32 m_flBlendTimeSeconds;
+ CUtlVectorFixedGrowable< float32, 5 > m_chainWeights;
uint8 m_nChainLength;
bool m_bIsTargetInWorldSpace;
- Vector m_chainForwardDir;
};
DumpSource2/schemas/animlib/CNmChainLookatTask.h
modified • +0 / -11 • changes: 11
Show patch
@@ -1,14 +1,3 @@
class CNmChainLookatTask : public CNmPoseTask
{
- int32 m_nChainEndBoneIdx;
- int32 m_nNumBonesInChain;
- Vector m_chainForwardDir;
- float32 m_flBlendWeight;
- float32 m_flHorizontalAngleLimitDegrees;
- float32 m_flVerticalAngleLimitDegrees;
- Vector m_lookatTarget;
- bool m_bIsTargetInWorldSpace;
- bool m_bIsRunningFromDeserializedData;
- float32 m_flHorizontalAngleDegrees;
- float32 m_flVerticalAngleDegrees;
};
DumpSource2/schemas/animlib/CNmClip.h
modified • +3 / -15 • changes: 18
Show patch
@@ -9,19 +9,10 @@
// "m_compressedPoseOffsets":
// [
// ],
-// "m_floatCurveIDs":
-// [
-// ],
-// "m_floatCurveDefs":
-// [
-// ],
-// "m_compressedFloatCurveData":
-// [
-// ],
-// "m_compressedFloatCurveOffsets":
+// "m_secondaryAnimations":
// [
// ],
-// "m_secondaryAnimations":
+// "m_floatChannelData":
// [
// ],
// "m_syncTrack":
@@ -81,11 +72,8 @@ class CNmClip
CUtlBinaryBlock m_compressedPoseData;
CUtlVector< NmCompressionSettings_t > m_trackCompressionSettings;
CUtlVector< uint32 > m_compressedPoseOffsets;
- CUtlVector< CGlobalSymbol > m_floatCurveIDs;
- CUtlVector< NmFloatCurveCompressionSettings_t > m_floatCurveDefs;
- CUtlVector< uint16 > m_compressedFloatCurveData;
- CUtlVector< uint32 > m_compressedFloatCurveOffsets;
CUtlVectorFixedGrowable< CNmClip*, 1 > m_secondaryAnimations;
+ CUtlVectorFixedGrowable< CNmFloatChannelData*, 2 > m_floatChannelData;
CNmSyncTrack m_syncTrack;
CNmRootMotionData m_rootMotion;
bool m_bIsAdditive;
DumpSource2/schemas/animlib/CNmFloatChannelData.h
added • +21 / -0 • changes: 21
Show patch
@@ -0,0 +1,21 @@
+// MGetKV3ClassDefaults = {
+// "m_skeleton": "",
+// "m_setID": "",
+// "m_channelSettings":
+// [
+// ],
+// "m_compressedData":
+// [
+// ],
+// "m_compressedOffsets":
+// [
+// ]
+//}
+class CNmFloatChannelData
+{
+ CStrongHandle< InfoForResourceTypeCNmSkeleton > m_skeleton;
+ CGlobalSymbol m_setID;
+ CUtlVector< CNmFloatChannelData::ChannelSettings_t > m_channelSettings;
+ CUtlVector< uint16 > m_compressedData;
+ CUtlVector< uint32 > m_compressedOffsets;
+};
DumpSource2/schemas/animlib/CNmFloatChannelData__ChannelSettings_t.h
added • +13 / -0 • changes: 13
Show patch
@@ -0,0 +1,13 @@
+// MGetKV3ClassDefaults = {
+// "m_range":
+// {
+// "m_flRangeStart": 0.000000,
+// "m_flRangeLength": -1.000000
+// },
+// "m_bIsStatic": false
+//}
+class CNmFloatChannelData::ChannelSettings_t
+{
+ NmCompressionSettings_t::QuantizationRange_t m_range;
+ bool m_bIsStatic;
+};
DumpSource2/schemas/animlib/CNmFloatChannelSet_t.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+// MGetKV3ClassDefaults = {
+// "m_ID": <HIDDEN FOR DIFF>,
+// "m_channelIDs":
+// [
+// ]
+//}
+class CNmFloatChannelSet_t
+{
+ CGlobalSymbol m_ID;
+ CUtlLeanVector< CGlobalSymbol > m_channelIDs;
+};
DumpSource2/schemas/animlib/CNmRootMotionOverrideNode__CDefinition.h
modified • +2 / -0 • changes: 2
Show patch
@@ -6,6 +6,7 @@
// "m_desiredFacingDirectionNodeIdx": -1,
// "m_linearVelocityLimitNodeIdx": -1,
// "m_angularVelocityLimitNodeIdx": -1,
+// "m_enabledNodeIdx": -1,
// "m_maxLinearVelocity": -1.000000,
// "m_maxAngularVelocityRadians": -1.000000,
// "m_overrideFlags":
@@ -19,6 +20,7 @@ class CNmRootMotionOverrideNode::CDefinition : public CNmPassthroughNode::CDefin
int16 m_desiredFacingDirectionNodeIdx;
int16 m_linearVelocityLimitNodeIdx;
int16 m_angularVelocityLimitNodeIdx;
+ int16 m_enabledNodeIdx;
float32 m_maxLinearVelocity;
float32 m_maxAngularVelocityRadians;
CNmBitFlags m_overrideFlags;
DumpSource2/schemas/animlib/CNmSkeleton.h
modified • +4 / -0 • changes: 4
Show patch
@@ -19,6 +19,9 @@
// "m_secondarySkeletons":
// [
// ],
+// "m_floatChannelSets":
+// [
+// ],
// "m_bIsPropSkeleton": false
//}
class CNmSkeleton
@@ -31,5 +34,6 @@ class CNmSkeleton
int32 m_numBonesToSampleAtLowLOD;
CUtlLeanVector< NmBoneMaskSetDefinition_t > m_maskDefinitions;
CUtlLeanVector< CNmSkeleton::SecondarySkeleton_t > m_secondarySkeletons;
+ CUtlLeanVector< CNmFloatChannelSet_t > m_floatChannelSets;
bool m_bIsPropSkeleton;
};
DumpSource2/schemas/client/AI_BaseNPCAnimGraph_DebugSnapshotData_t.h
modified • +14 / -6 • changes: 20
Show patch
@@ -1,14 +1,22 @@
// MGetKV3ClassDefaults = {
-// "_class": "AI_BaseNPCAnimGraph_DebugSnapshotData_t",
// "e_action_desired": "",
-// "b_action_restart": false,
+// "e_action_handshake_restart": "",
+// "e_action_handshake_body_authority_current": "",
+// "e_action_handshake_body_authority_desired": "",
// "e_movement_type_desired": "",
-// "b_movement_type_restart": false
+// "e_movement_handshake_restart": "",
+// "e_movement_handshake_body_authority_current": "",
+// "e_movement_handshake_body_authority_desired": ""
//}
-class AI_BaseNPCAnimGraph_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
+// MPropertyFriendlyName = "AnimGraph"
+class AI_BaseNPCAnimGraph_DebugSnapshotData_t
{
CGlobalSymbol e_action_desired;
- bool b_action_restart;
+ CGlobalSymbol e_action_handshake_restart;
+ CGlobalSymbol e_action_handshake_body_authority_current;
+ CGlobalSymbol e_action_handshake_body_authority_desired;
CGlobalSymbol e_movement_type_desired;
- bool b_movement_type_restart;
+ CGlobalSymbol e_movement_handshake_restart;
+ CGlobalSymbol e_movement_handshake_body_authority_current;
+ CGlobalSymbol e_movement_handshake_body_authority_desired;
};
DumpSource2/schemas/client/AI_BaseNPC_DebugSnapshotData_t.h
modified • +58 / -8 • changes: 66
Show patch
@@ -4,27 +4,77 @@
// "current_enemy": null,
// "s_current_schedule": "",
// "s_current_task": "",
-// "s_schedule_interrupt_reason": "",
-// "s_schedule_fail_reason": "",
+// "s_prev_schedule": "",
+// "s_npc_current_movement": "",
+// "s_last_task_end_location": "",
// "conditions":
// [
// ],
// "anim_events":
// [
// ],
-// "e_action_body_section": "",
-// "e_movement_body_section": ""
+// "animgraph":
+// {
+// "e_action_desired": "",
+// "e_action_handshake_restart": "",
+// "e_action_handshake_body_authority_current": "",
+// "e_action_handshake_body_authority_desired": "",
+// "e_movement_type_desired": "",
+// "e_movement_handshake_restart": "",
+// "e_movement_handshake_body_authority_current": "",
+// "e_movement_handshake_body_authority_desired": ""
+// },
+// "navigator":
+// {
+// "s_movement_id": "",
+// "s_movement_serial_number": 0,
+// "s_goal_source_location": "",
+// "last_waypoint_pos": null,
+// "goal_location": null,
+// "waypoints":
+// [
+// ],
+// "s_arrival_movement_gait_set": ""
+// },
+// "motorServices":
+// {
+// "active_motor": "",
+// "desired_speed": 0.000000,
+// "motor_velocity":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "motor_path":
+// [
+// ]
+// },
+// "facingServices":
+// {
+// "npc_position": null,
+// "facing_target_source": "",
+// "facing_target": null,
+// "schedule_facing_priority": "",
+// "strafing_source": "",
+// "strafing_enabled": false,
+// "movement_id": ""
+// }
//}
+// MPropertyFriendlyName = "Base NPC"
class AI_BaseNPC_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
{
CGlobalSymbol npc_state;
CHandle< C_BaseEntity > current_enemy;
CUtlString s_current_schedule;
CGlobalSymbol s_current_task;
- CUtlString s_schedule_interrupt_reason;
- CUtlString s_schedule_fail_reason;
+ CUtlString s_prev_schedule;
+ CUtlString s_npc_current_movement;
+ CUtlString s_last_task_end_location;
CUtlVector< CGlobalSymbol > conditions;
CUtlVector< CGlobalSymbol > anim_events;
- CGlobalSymbol e_action_body_section;
- CGlobalSymbol e_movement_body_section;
+ AI_BaseNPCAnimGraph_DebugSnapshotData_t animgraph;
+ AI_Navigator_DebugSnapshotData_t navigator;
+ AI_MotorServices_DebugSnapshotData_t motorServices;
+ AI_FacingServices_DebugSnapshotData_t facingServices;
};
DumpSource2/schemas/client/AI_DefaultNPC_DebugSnapshotData_t.h
modified • +5 / -15 • changes: 20
Show patch
@@ -6,19 +6,10 @@
// "tactic_interrupt_conditions":
// [
// ],
-// "s_npc_current_movement": "",
-// "path_query_schedule":
+// "path_query":
// {
-// "m_sInitialQueryName": "",
-// "m_sCurrentQueryName": "",
-// "m_nMode": "",
-// "m_nType": "",
-// "m_nState": ""
-// },
-// "path_query_tactic":
-// {
-// "m_sInitialQueryName": "",
-// "m_sCurrentQueryName": "",
+// "m_nInitialMovementId": "",
+// "m_nCurrentMovementId": "",
// "m_nMode": "",
// "m_nType": "",
// "m_nState": ""
@@ -27,14 +18,13 @@
// [
// ]
//}
+// MPropertyFriendlyName = "Default NPC"
class AI_DefaultNPC_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
{
CGlobalSymbol s_npc_current_ability;
CGlobalSymbol s_npc_tactic_current;
CGlobalSymbol s_npc_tactic_phase;
CUtlVector< CGlobalSymbol > tactic_interrupt_conditions;
- CUtlString s_npc_current_movement;
- AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query_schedule;
- AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query_tactic;
+ AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t path_query;
CUtlVector< AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t > path_queries_speculative;
};
DumpSource2/schemas/client/AI_DefaultNPC_DebugSnapshotData_t__PathQuery_t.h
modified • +4 / -4 • changes: 8
Show patch
@@ -1,15 +1,15 @@
// MGetKV3ClassDefaults = {
-// "m_sInitialQueryName": "",
-// "m_sCurrentQueryName": "",
+// "m_nInitialMovementId": "",
+// "m_nCurrentMovementId": "",
// "m_nMode": "",
// "m_nType": "",
// "m_nState": ""
//}
// MDebugSnapshotDataSummaryFn (UNKNOWN FOR PARSER)
class AI_DefaultNPC_DebugSnapshotData_t::PathQuery_t
{
- CGlobalSymbol m_sInitialQueryName;
- CGlobalSymbol m_sCurrentQueryName;
+ CGlobalSymbol m_nInitialMovementId;
+ CGlobalSymbol m_nCurrentMovementId;
CGlobalSymbol m_nMode;
CGlobalSymbol m_nType;
CGlobalSymbol m_nState;
DumpSource2/schemas/client/AI_FacingServices_DebugSnapshotData_t.h
added • +21 / -0 • changes: 21
Show patch
@@ -0,0 +1,21 @@
+// MGetKV3ClassDefaults = {
+// "npc_position": null,
+// "facing_target_source": "",
+// "facing_target": null,
+// "schedule_facing_priority": "",
+// "strafing_source": "",
+// "strafing_enabled": false,
+// "movement_id": ""
+//}
+// MPropertyFriendlyName = "Facing Services"
+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)
+class AI_FacingServices_DebugSnapshotData_t
+{
+ VectorWS npc_position;
+ CGlobalSymbol facing_target_source;
+ VectorWS facing_target;
+ CGlobalSymbol schedule_facing_priority;
+ CGlobalSymbol strafing_source;
+ bool strafing_enabled;
+ CGlobalSymbol movement_id;
+};
DumpSource2/schemas/client/AI_GroundRootMotionMotor_DebugSnapshotData_t.h
added • +45 / -0 • changes: 45
Show patch
@@ -0,0 +1,45 @@
+// MGetKV3ClassDefaults = {
+// "_class": "AI_GroundRootMotionMotor_DebugSnapshotData_t",
+// "desired_movement_gait_set": "",
+// "desired_movement_gait": "",
+// "current_movement_gait_set": "",
+// "current_movement_gait": "",
+// "movement_setting_id": "",
+// "gait_switch_blocked_reason": "",
+// "b_goal_completion_allowed": true,
+// "state": "",
+// "n_state_active_tick_count": 0,
+// "b_has_path": false,
+// "f_remaining_ground_path_length": -1.000000,
+// "f_current_speed": -1.000000,
+// "move_type": "",
+// "f_forward_strafing_angle_actual": -1.000000,
+// "f_forward_strafing_angle_desired": -1.000000,
+// "f_current_lean": 0.000000,
+// "f_target_lean": 0.000000,
+// "vec_events":
+// [
+// ]
+//}
+// MPropertyFriendlyName = "Ground Root Motion Motor"
+class AI_GroundRootMotionMotor_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
+{
+ CGlobalSymbol desired_movement_gait_set;
+ CGlobalSymbol desired_movement_gait;
+ CGlobalSymbol current_movement_gait_set;
+ CGlobalSymbol current_movement_gait;
+ CGlobalSymbol movement_setting_id;
+ CGlobalSymbol gait_switch_blocked_reason;
+ bool b_goal_completion_allowed;
+ CGlobalSymbol state;
+ int32 n_state_active_tick_count;
+ bool b_has_path;
+ float32 f_remaining_ground_path_length;
+ float32 f_current_speed;
+ CGlobalSymbol move_type;
+ float32 f_forward_strafing_angle_actual;
+ float32 f_forward_strafing_angle_desired;
+ float32 f_current_lean;
+ float32 f_target_lean;
+ CUtlVector< AI_GroundRootMotionMotor_DebugSnapshotData_t::Event_t > vec_events;
+};
DumpSource2/schemas/client/AI_GroundRootMotionMotor_DebugSnapshotData_t__Event_t.h
renamed • +1 / -1 • changes: 2
Show patch
@@ -2,7 +2,7 @@
// "description": "",
// "location": null
//}
-class AI_MotorGroundAnimgraph_DebugSnapshotData_t::Event_t
+class AI_GroundRootMotionMotor_DebugSnapshotData_t::Event_t
{
CUtlString description;
VectorWS location;
DumpSource2/schemas/client/AI_MotorGroundAnimgraph_DebugSnapshotData_t.h
removed • +0 / -28 • changes: 28
Show patch
@@ -1,28 +0,0 @@
-// MGetKV3ClassDefaults = {
-// "_class": "AI_MotorGroundAnimgraph_DebugSnapshotData_t",
-// "state": "",
-// "b_has_path": false,
-// "f_remaining_ground_path_length": -1.000000,
-// "f_current_speed": -1.000000,
-// "move_type": "",
-// "f_move_heading_actual": -1.000000,
-// "f_move_heading_desired": -1.000000,
-// "f_current_lean": 0.000000,
-// "f_target_lean": 0.000000,
-// "vec_events":
-// [
-// ]
-//}
-class AI_MotorGroundAnimgraph_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
-{
- CGlobalSymbol state;
- bool b_has_path;
- float32 f_remaining_ground_path_length;
- float32 f_current_speed;
- CGlobalSymbol move_type;
- float32 f_move_heading_actual;
- float32 f_move_heading_desired;
- float32 f_current_lean;
- float32 f_target_lean;
- CUtlVector< AI_MotorGroundAnimgraph_DebugSnapshotData_t::Event_t > vec_events;
-};
DumpSource2/schemas/client/AI_MotorServices_DebugSnapshotData_t.h
added • +22 / -0 • changes: 22
Show patch
@@ -0,0 +1,22 @@
+// MGetKV3ClassDefaults = {
+// "active_motor": "",
+// "desired_speed": 0.000000,
+// "motor_velocity":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "motor_path":
+// [
+// ]
+//}
+// MPropertyFriendlyName = "Motor Services"
+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)
+class AI_MotorServices_DebugSnapshotData_t
+{
+ CGlobalSymbol active_motor;
+ float32 desired_speed;
+ Vector motor_velocity;
+ CUtlVector< AI_MotorServices_DebugSnapshotData_t::MotorPathWaypoint_t > motor_path;
+};
DumpSource2/schemas/client/AI_MotorServices_DebugSnapshotData_t__MotorPathWaypoint_t.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+// MGetKV3ClassDefaults = {
+// "position": null,
+// "nav_type": 0,
+// "flags": 0
+//}
+class AI_MotorServices_DebugSnapshotData_t::MotorPathWaypoint_t
+{
+ VectorWS position;
+ uint32 nav_type;
+ uint32 flags;
+};
DumpSource2/schemas/client/AI_Motor_DebugSnapshotData_t.h
removed • +0 / -12 • changes: 12
Show patch
@@ -1,12 +0,0 @@
-// MGetKV3ClassDefaults = {
-// "_class": "AI_Motor_DebugSnapshotData_t",
-// "current_movement_gait_set": "",
-// "current_movement_gait": "",
-// "movement_setting_id": ""
-//}
-class AI_Motor_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
-{
- CGlobalSymbol current_movement_gait_set;
- CGlobalSymbol current_movement_gait;
- CGlobalSymbol movement_setting_id;
-};
DumpSource2/schemas/client/AI_Navigator_DebugSnapshotData_t.h
modified • +14 / -13 • changes: 27
Show patch
@@ -1,22 +1,23 @@
// MGetKV3ClassDefaults = {
-// "_class": "AI_Navigator_DebugSnapshotData_t",
-// "s_npc_nav_authority": "",
-// "s_goal_nav_search_id": "",
+// "s_movement_id": "",
+// "s_movement_serial_number": 0,
// "s_goal_source_location": "",
-// "goal_actual_pos": null,
-// "goal_base_pos": null,
+// "last_waypoint_pos": null,
+// "goal_location": null,
// "waypoints":
// [
-// ]
+// ],
+// "s_arrival_movement_gait_set": ""
//}
-// MDebugSnapshotDataRenderable
-// MDebugSnapshotDataRenderByDefault
-class AI_Navigator_DebugSnapshotData_t : public DebugSnapshotBaseStructuredData_t
+// MPropertyFriendlyName = "Navigator"
+// MDebugSnapshotDataRenderFn (UNKNOWN FOR PARSER)
+class AI_Navigator_DebugSnapshotData_t
{
- CGlobalSymbol s_npc_nav_authority;
- CGlobalSymbol s_goal_nav_search_id;
+ CGlobalSymbol s_movement_id;
+ uint32 s_movement_serial_number;
CUtlString s_goal_source_location;
- VectorWS goal_actual_pos;
- VectorWS goal_base_pos;
+ VectorWS last_waypoint_pos;
+ VectorWS goal_location;
CUtlVector< AI_Navigator_DebugSnapshotData_t::Waypoint_t > waypoints;
+ CGlobalSymbol s_arrival_movement_gait_set;
};
DumpSource2/schemas/client/AI_Navigator_DebugSnapshotData_t__Waypoint_t.h
modified • +3 / -1 • changes: 4
Show patch
@@ -1,11 +1,13 @@
// MGetKV3ClassDefaults = {
// "position": null,
// "nav_type": 0,
-// "flags": 0
+// "flags": 0,
+// "is_pathcorner": false
//}
class AI_Navigator_DebugSnapshotData_t::Waypoint_t
{
VectorWS position;
uint32 nav_type;
uint32 flags;
+ bool is_pathcorner;
};
DumpSource2/schemas/client/ActiveModelConfig_t.h
modified • +11 / -0 • changes: 11
Show patch
@@ -1,3 +1,14 @@
+// MGetKV3ClassDefaults = {
+// "_class": "ActiveModelConfig_t",
+// "m_Handle": 0,
+// "m_Name": "",
+// "m_AssociatedEntities":
+// [
+// ],
+// "m_AssociatedEntityNames":
+// [
+// ]
+//}
class ActiveModelConfig_t
{
ModelConfigHandle_t m_Handle;
DumpSource2/schemas/client/BeamClipStyle_t.h
removed • +0 / -7 • changes: 7
Show patch
@@ -1,7 +0,0 @@
-enum BeamClipStyle_t : uint32_t
-{
- kNOCLIP = 0,
- kGEOCLIP = 1,
- kMODELCLIP = 2,
- kBEAMCLIPSTYLE_NUMBITS = 2,
-};
DumpSource2/schemas/client/BeamType_t.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,7 +4,7 @@ enum BeamType_t : uint32_t
BEAM_POINTS = 1,
BEAM_ENTPOINT = 2,
BEAM_ENTS = 3,
- BEAM_HOSE = 4,
+ xxBEAM_HOSExxunused = 4,
BEAM_SPLINE = 5,
BEAM_LASER = 6,
};
DumpSource2/schemas/client/Bidirectional_Messages.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+enum Bidirectional_Messages : uint32_t
+{
+ bi_RebroadcastGameEvent = 16,
+ bi_RebroadcastSource = 17,
+ bi_GameEvent_DEPRECATED = 18,
+ bi_PredictionEvent = 19,
+};
DumpSource2/schemas/client/BodySectionMutex_t.h
renamed • +1 / -1 • changes: 2
Show patch
@@ -1,4 +1,4 @@
-enum BodySectionAuthority_t : uint32_t
+enum BodySectionMutex_t : uint32_t
{
eNone = 0,
eLowerBody = 1,
DumpSource2/schemas/client/CAnimEventListener.h
removed • +0 / -3 • changes: 3
Show patch
@@ -1,3 +0,0 @@
-class CAnimEventListener : public CAnimEventListenerBase
-{
-};
DumpSource2/schemas/client/CAnimEventListenerBase.h
removed • +0 / -3 • changes: 3
Show patch
@@ -1,3 +0,0 @@
-class CAnimEventListenerBase
-{
-};
DumpSource2/schemas/client/CAnimEventQueueListener.h
removed • +0 / -3 • changes: 3
Show patch
@@ -1,3 +0,0 @@
-class CAnimEventQueueListener : public CAnimEventListenerBase
-{
-};
DumpSource2/schemas/client/CAnimGraph2InstancePtr.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CAnimGraph2InstancePtr
+{
+};
DumpSource2/schemas/client/CAnimGraphControllerPtr.h
added • +4 / -0 • changes: 4
Show patch
@@ -0,0 +1,4 @@
+class CAnimGraphControllerPtr
+{
+ CAnimGraphControllerBase* m_pController;
+};
DumpSource2/schemas/client/CBarnLightAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBarnLightAPI
+{
+};
DumpSource2/schemas/client/CBaseAnimGraph.h
modified • +3 / -3 • changes: 6
Show patch
@@ -1,11 +1,11 @@
class CBaseAnimGraph : public C_BaseModelEntity
{
- // MSaveOpsForField = "GetAnimGraphControllerManagerSaveRestoreOps"
CAnimGraphControllerManager m_graphControllerManager;
- // MSaveOpsForField = "GetAnimGraphControllerPtrSaveRestoreOps"
- CAnimGraphControllerBase* m_pMainGraphController;
+ CAnimGraphControllerPtr m_pMainGraphController;
bool m_bInitiallyPopulateInterpHistory;
bool m_bSuppressAnimEventSounds;
+ CEntityOutputTemplate< float32 > m_OnLayerCycleUpdated;
+ CEntityIOOutput m_OnExternalChoreoGraphChanged;
bool m_bAnimGraphUpdateEnabled;
// MNotSaved
bool m_bAnimationUpdateScheduled;
DumpSource2/schemas/client/CBaseAnimGraphAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBaseAnimGraphAPI
+{
+};
DumpSource2/schemas/client/CBaseAnimGraphAlias_baseanimating.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBaseAnimGraphAlias_baseanimating : public CBaseAnimGraph
+{
+};
DumpSource2/schemas/client/CBaseAnimGraphController.h
modified • +40 / -4 • changes: 44
Show patch
@@ -1,3 +1,41 @@
+// MGetKV3ClassDefaults = {
+// "m_nAnimationAlgorithm": "eInvalid",
+// "m_nNextExternalGraphHandle": 0,
+// "m_vecSecondarySkeletonSlotIDs":
+// [
+// ],
+// "m_vecSecondarySkeletons":
+// [
+// ],
+// "m_nSecondarySkeletonMasterCount": 0,
+// "m_flSoundSyncTime": 0.000000,
+// "m_nActiveIKChainMask": 0,
+// "m_hSequence": -1,
+// "m_flSeqStartTime": null,
+// "m_flSeqFixedCycle": 0.000000,
+// "m_nAnimLoopMode": "ANIM_LOOP_MODE_USE_SEQUENCE_SETTINGS",
+// "m_flPlaybackRate": 1.000000,
+// "m_nNotifyState": "eDoNotNotify",
+// "m_bNetworkedAnimationInputsChanged": false,
+// "m_bNetworkedSequenceChanged": false,
+// "m_bLastUpdateSkipped": false,
+// "m_bSequenceFinished": false,
+// "m_nPrevAnimUpdateTick": null,
+// "m_hGraphDefinitionAG2": "",
+// "m_nServerGraphInstanceIteration": 0,
+// "m_nServerSerializationContextIteration": 0,
+// "m_primaryGraphId": 0,
+// "m_vecExternalGraphIds":
+// [
+// ],
+// "m_vecExternalClipIds":
+// [
+// ],
+// "m_sAnimGraph2Identifier": "",
+// "m_pGraphInstanceAG2": null,
+// "m_vecExternalGraphs": null,
+// "m_nPrevAnimationAlgorithm": "eNone"
+//}
class CBaseAnimGraphController : public CSkeletonAnimationController
{
AnimationAlgorithm_t m_nAnimationAlgorithm;
@@ -33,9 +71,7 @@ class CBaseAnimGraphController : public CSkeletonAnimationController
C_NetworkUtlVectorBase< ResourceId_t > m_vecExternalGraphIds;
C_NetworkUtlVectorBase< ResourceId_t > m_vecExternalClipIds;
CGlobalSymbol m_sAnimGraph2Identifier;
- // MSaveOpsForField = "GetAnimGraph2SaveRestoreOps"
- CNmGraphInstance* m_pGraphInstanceAG2;
- // MSaveOpsForField = "GetExternalAnimGraphSaveRestoreOps"
- CUtlVector< ExternalAnimGraph_t > m_vecExternalGraphs;
+ CAnimGraph2InstancePtr m_pGraphInstanceAG2;
+ CExternalAnimGraphList m_vecExternalGraphs;
AnimationAlgorithm_t m_nPrevAnimationAlgorithm;
};
DumpSource2/schemas/client/CBaseEntity_SharedAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBaseEntity_SharedAPI
+{
+};
DumpSource2/schemas/client/CBaseGrenade_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBaseGrenade_API
+{
+};
DumpSource2/schemas/client/CBaseModelEntityAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CBaseModelEntityAPI
+{
+};
DumpSource2/schemas/client/CBodyComponent.h
modified • +2 / -0 • changes: 2
Show patch
@@ -1,3 +1,5 @@
+// MGetKV3ClassDefaults = {
+//}
class CBodyComponent : public CEntityComponent
{
// MNotSaved
DumpSource2/schemas/client/CBodyComponentBaseAnimGraph.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CBodyComponentBaseAnimGraph : public CBodyComponentSkeletonInstance
{
CBaseAnimGraphController m_animationController;
DumpSource2/schemas/client/CBodyComponentPoint.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CBodyComponentPoint : public CBodyComponent
{
CGameSceneNode m_sceneNode;
DumpSource2/schemas/client/CBodyComponentSkeletonInstance.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CBodyComponentSkeletonInstance : public CBodyComponent
{
CSkeletonInstance m_skeletonInstance;
DumpSource2/schemas/client/CBreakableStageHelper.h
modified • +3 / -0 • changes: 3
Show patch
@@ -1,3 +1,6 @@
+// MGetKV3ClassDefaults = {
+// "m_nCurrentStage": -1
+//}
class CBreakableStageHelper
{
int32 m_nCurrentStage;
DumpSource2/schemas/client/CBuoyancyHelper.h
modified • +21 / -0 • changes: 21
Show patch
@@ -1,3 +1,24 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CBuoyancyHelper",
+// "m_nFluidType": "",
+// "m_flFluidDensity": 1.000000,
+// "m_flNeutrallyBuoyantGravity": 0.000000,
+// "m_flNeutrallyBuoyantLinearDamping": 0.000000,
+// "m_flNeutrallyBuoyantAngularDamping": 0.000000,
+// "m_bNeutrallyBuoyant": false,
+// "m_vecFractionOfWheelSubmergedForWheelFriction":
+// [
+// ],
+// "m_vecWheelFrictionScales":
+// [
+// ],
+// "m_vecFractionOfWheelSubmergedForWheelDrag":
+// [
+// ],
+// "m_vecWheelDrag":
+// [
+// ]
+//}
class CBuoyancyHelper
{
// MPhysPtr
DumpSource2/schemas/client/CCS2ChickenGraphController.h
modified • +0 / -2 • changes: 2
Show patch
@@ -2,7 +2,6 @@
// "_class": "CCS2ChickenGraphController",
// "m_hExternalGraph": 4294967295,
// "m_action": null,
-// "m_actionSubtype": null,
// "m_bActionReset": null,
// "m_idleVariation": null,
// "m_runVariation": null,
@@ -15,7 +14,6 @@
class CCS2ChickenGraphController : public CAnimGraphControllerBase
{
CAnimGraph2ParamOptionalRef< CGlobalSymbol > m_action;
- CAnimGraph2ParamOptionalRef< CGlobalSymbol > m_actionSubtype;
CAnimGraph2ParamAutoResetOptionalRef m_bActionReset;
CAnimGraph2ParamOptionalRef< float32 > m_idleVariation;
CAnimGraph2ParamOptionalRef< float32 > m_runVariation;
DumpSource2/schemas/client/CCS2UIPawnGraphController.h
modified • +2 / -0 • changes: 2
Show patch
@@ -3,6 +3,7 @@
// "m_hExternalGraph": 4294967295,
// "m_nAnimationSeed": null,
// "m_characterMode": null,
+// "m_bCharacterModeReset": null,
// "m_nTeamPreviewVariant": null,
// "m_nTeamPreviewRandom": null,
// "m_nTeamPreviewPosition": null,
@@ -19,6 +20,7 @@ class CCS2UIPawnGraphController : public CAnimGraphControllerBase
{
CAnimGraph2ParamOptionalRef< float32 > m_nAnimationSeed;
CAnimGraph2ParamOptionalRef< CGlobalSymbol > m_characterMode;
+ CAnimGraph2ParamOptionalRef< bool > m_bCharacterModeReset;
CAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewVariant;
CAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewRandom;
CAnimGraph2ParamOptionalRef< float32 > m_nTeamPreviewPosition;
DumpSource2/schemas/client/CCSGO_TeamPreviewCharacterPosition_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CCSGO_TeamPreviewCharacterPosition_API
+{
+};
DumpSource2/schemas/client/CCSPlayerController_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CCSPlayerController_API
+{
+};
DumpSource2/schemas/client/CCSPlayer_MovementServices.h
modified • +0 / -1 • changes: 1
Show patch
@@ -29,7 +29,6 @@ class CCSPlayer_MovementServices : public CPlayer_MovementServices_Humanoid
Vector m_vecUp;
int32 m_nGameCodeHasMovedPlayerAfterCommand;
GameTime_t m_fStashGrenadeParameterWhen;
- uint64 m_nButtonDownMaskPrev;
bool m_bUseFrictionStashedSpeed;
float32 m_flUseFrictionStashedSpeedUntilFrac;
float32 m_flFrictionStashedSpeed;
DumpSource2/schemas/client/CCSWeaponBase_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CCSWeaponBase_API
+{
+};
DumpSource2/schemas/client/CChoreoComponent.h
modified • +10 / -0 • changes: 10
Show patch
@@ -1,8 +1,18 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CChoreoComponent",
+// "m_hOwner": null,
+// "m_nExernalChoreoGraphCount": 0,
+// "m_sActiveExternalChoreoGraphSlotID": "",
+// "m_nNextSceneEventId": 0,
+// "m_flAllowResponsesEndTime": null
+//}
class CChoreoComponent
{
// MNotSaved
CNetworkVarChainer __m_pChainEntity;
CHandle< C_BaseModelEntity > m_hOwner;
+ int32 m_nExernalChoreoGraphCount;
+ CGlobalSymbol m_sActiveExternalChoreoGraphSlotID;
SceneEventId_t m_nNextSceneEventId;
GameTime_t m_flAllowResponsesEndTime;
};
DumpSource2/schemas/client/CChoreo_GraphController.h
added • +13 / -0 • changes: 13
Show patch
@@ -0,0 +1,13 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CChoreo_GraphController",
+// "m_hExternalGraph": 4294967295,
+// "m_eChoreoState": null,
+// "m_tChoreoTargetWarp": null,
+// "m_tChoreoExitWarp": null
+//}
+class CChoreo_GraphController : public CAnimGraphControllerBase
+{
+ CAnimGraph2ParamOptionalRef< CGlobalSymbol > m_eChoreoState;
+ CAnimGraph2ParamOptionalRef< CTransform > m_tChoreoTargetWarp;
+ CAnimGraph2ParamOptionalRef< CTransform > m_tChoreoExitWarp;
+};
DumpSource2/schemas/client/CClientAlphaProperty.h
modified • +14 / -0 • changes: 14
Show patch
@@ -1,3 +1,17 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CClientAlphaProperty",
+// "m_nDistFadeStart": 0,
+// "m_nDistFadeEnd": 0,
+// "m_nDesyncOffset": 0,
+// "m_bAlphaOverride": 0,
+// "m_bShadowAlphaOverride": 0,
+// "m_nRenderMode": 0,
+// "m_nRenderFX": 0,
+// "m_nAlpha": 255,
+// "m_flFadeScale": 0.000000,
+// "m_flRenderFxStartTime": null,
+// "m_flRenderFxDuration": 0.000000
+//}
class CClientAlphaProperty : public IClientAlphaProperty
{
uint16 m_nDistFadeStart;
DumpSource2/schemas/client/CCollisionProperty.h
modified • +75 / -0 • changes: 75
Show patch
@@ -1,7 +1,82 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CCollisionProperty",
+// "m_collisionAttribute":
+// {
+// "m_nInteractsAs": 131072,
+// "m_nInteractsWith": 0,
+// "m_nInteractsExclude": 0,
+// "m_nEntityId": 0,
+// "m_nOwnerId": 4294967295,
+// "m_nHierarchyId": 0,
+// "m_nDetailLayerMask": 0,
+// "m_nDetailLayerMaskType": 0,
+// "m_nTargetDetailLayer": 0,
+// "m_nCollisionGroup": 4,
+// "m_nCollisionFunctionMask": 7
+// },
+// "m_vecMins":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecMaxs":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_usSolidFlags": 0,
+// "m_nSolidType": "SOLID_NONE",
+// "m_triggerBloat": 0,
+// "m_nSurroundType": "USE_OBB_COLLISION_BOUNDS",
+// "m_CollisionGroup": 4,
+// "m_nEnablePhysics": 1,
+// "m_flBoundingRadius": 0.000000,
+// "m_vecSpecifiedSurroundingMins":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecSpecifiedSurroundingMaxs":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecSurroundingMaxs":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecSurroundingMins":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vCapsuleCenter1":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vCapsuleCenter2":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_flCapsuleRadius": 0.000000
+//}
class CCollisionProperty
{
VPhysicsCollisionAttribute_t m_collisionAttribute;
+ // MSaveBehavior (UNKNOWN FOR PARSER)
Vector m_vecMins;
+ // MSaveBehavior (UNKNOWN FOR PARSER)
Vector m_vecMaxs;
uint8 m_usSolidFlags;
SolidType_t m_nSolidType;
DumpSource2/schemas/client/CDebugSnapshotData_t.h
modified • +0 / -1 • changes: 1
Show patch
@@ -9,7 +9,6 @@ class CDebugSnapshotData_t
CTransformWS m_userTransform;
CGenericShapeProxy m_userShape;
Color m_drawColor;
- // MKV3TransferSaveOpsForField = "GetUtlVectorAllocateSaveOps< CDebugDrawHistoryData >"
CUtlVector< CDebugDrawHistoryData* > m_vecDebugOverlayData;
DebugSnapshotBaseStructuredData_t* m_pStructuredData;
CHandle< C_BaseEntity > m_hEntity;
DumpSource2/schemas/client/CDecalInstance.h
modified • +1 / -0 • changes: 1
Show patch
@@ -10,6 +10,7 @@ class CDecalInstance
Vector m_vPositionLS;
Vector m_vPositionOS;
Vector m_vNormalLS;
+ Vector m_vNormalOS;
Vector m_vSAxisLS;
DecalFlags_t m_nFlags;
Color m_Color;
DumpSource2/schemas/client/CDestructiblePartsComponent.h
modified • +8 / -2 • changes: 10
Show patch
@@ -1,9 +1,15 @@
+// MGetKV3ClassDefaults = {
+// "m_vecDamageTakenByHitGroup":
+// [
+// ],
+// "m_hOwner": null,
+// "m_pAnimGraphDestructibleGraphController": null
+//}
class CDestructiblePartsComponent
{
// MNotSaved
CNetworkVarChainer __m_pChainEntity;
CUtlVector< uint16 > m_vecDamageTakenByHitGroup;
CHandle< C_BaseModelEntity > m_hOwner;
- // MSaveOpsForField = "GetAnimGraphControllerPtrSaveRestoreOps"
- CBaseAnimGraphDestructibleParts_GraphController* m_pAnimGraphDestructibleGraphController;
+ CAnimGraphControllerPtr m_pAnimGraphDestructibleGraphController;
};
DumpSource2/schemas/client/CEnvCombinedLightProbeVolumeAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CEnvCombinedLightProbeVolumeAPI
+{
+};
DumpSource2/schemas/client/CEnvCubemapAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CEnvCubemapAPI
+{
+};
DumpSource2/schemas/client/CEnvLightProbeVolumeAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CEnvLightProbeVolumeAPI
+{
+};
DumpSource2/schemas/client/CEnvSkyAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CEnvSkyAPI
+{
+};
DumpSource2/schemas/client/CEnvSoundscape.h
modified • +1 / -1 • changes: 2
Show patch
@@ -2,7 +2,7 @@ class CEnvSoundscape : public C_BaseEntity
{
CEntityIOOutput m_OnPlay;
float32 m_flRadius;
- CUtlSymbolLarge m_soundEventName;
+ CGameSoundEventName m_soundEventName;
bool m_bOverrideWithEvent;
// MNotSaved
int32 m_soundscapeIndex;
DumpSource2/schemas/client/CEnvWindSharedAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CEnvWindSharedAPI
+{
+};
DumpSource2/schemas/client/CExternalAnimGraphList.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CExternalAnimGraphList
+{
+};
DumpSource2/schemas/client/CFlashbangProjectile_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CFlashbangProjectile_API
+{
+};
DumpSource2/schemas/client/CFlashlightEffect.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,7 +4,7 @@ class CFlashlightEffect
bool m_bMuzzleFlashEnabled;
float32 m_flMuzzleFlashBrightness;
Quaternion m_quatMuzzleFlashOrientation;
- Vector m_vecMuzzleFlashOrigin;
+ VectorWS m_vecMuzzleFlashOrigin;
float32 m_flFov;
float32 m_flFarZ;
float32 m_flLinearAtten;
DumpSource2/schemas/client/CFootstepControl_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CFootstepControl_API
+{
+};
DumpSource2/schemas/client/CGameSceneNode.h
modified • +1 / -1 • changes: 2
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CGameSceneNode
{
// MNotSaved
@@ -56,5 +57,4 @@ class CGameSceneNode
CUtlStringToken m_name;
CUtlStringToken m_hierarchyAttachName;
float32 m_flClientLocalScale;
- Vector m_vRenderOrigin;
};
DumpSource2/schemas/client/CGameSceneNodeHandle.h
modified • +5 / -0 • changes: 5
Show patch
@@ -1,3 +1,8 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CGameSceneNodeHandle",
+// "m_hOwner": null,
+// "m_name": ""
+//}
class CGameSceneNodeHandle
{
CEntityHandle m_hOwner;
DumpSource2/schemas/client/CGlobalLightBase.h
modified • +3 / -3 • changes: 6
Show patch
@@ -1,7 +1,7 @@
class CGlobalLightBase
{
bool m_bSpotLight;
- Vector m_SpotLightOrigin;
+ VectorWS m_SpotLightOrigin;
QAngle m_SpotLightAngles;
Vector m_ShadowDirection;
Vector m_AmbientDirection;
@@ -35,10 +35,10 @@ class CGlobalLightBase
float32 m_flFoWDarkness;
bool m_bEnableSeparateSkyboxFog;
Vector m_vFowColor;
- Vector m_ViewOrigin;
+ VectorWS m_ViewOrigin;
QAngle m_ViewAngles;
float32 m_flViewFoV;
- Vector[8] m_WorldPoints;
+ VectorWS[8] m_WorldPoints;
Vector2D m_vFogOffsetLayer0;
Vector2D m_vFogOffsetLayer1;
CHandle< C_BaseEntity > m_hEnvWind;
DumpSource2/schemas/client/CGlowProperty.h
modified • +5 / -0 • changes: 5
Show patch
@@ -1,3 +1,8 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CGlowProperty",
+// "m_iGlowType": 0,
+// "m_bEligibleForScreenHighlight": false
+//}
class CGlowProperty
{
// MNotSaved
DumpSource2/schemas/client/CGrenadeTracer_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CGrenadeTracer_API
+{
+};
DumpSource2/schemas/client/CHitboxComponent.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CHitboxComponent",
+// "m_flBoundsExpandRadius": 0.000000
+//}
class CHitboxComponent : public CEntityComponent
{
float32 m_flBoundsExpandRadius;
DumpSource2/schemas/client/CInfoInteraction.h
removed • +0 / -18 • changes: 18
Show patch
@@ -1,18 +0,0 @@
-class CInfoInteraction : public C_PointEntity
-{
- SceneRequestHandle_t m_hSceneRequest;
- SceneOpportunityHandle_t m_hSceneOpportunity;
- bool m_bEnabled;
- bool m_bStartDisabled;
- CUtlSymbolLarge m_strSceneVDataName;
- CUtlSymbolLarge m_strPulseVDataName;
- float32 m_flRadius;
- float32 m_flOwnerFOV;
- CUtlSymbolLarge m_strLocalInterestReqTags;
- CUtlSymbolLarge m_strLocalInterestOptTags;
- CUtlSymbolLarge m_strLookTarget;
- float32 m_flDuration;
- float32 m_flCooldown;
- int32 m_nRepeatCount;
- bool m_bDisableOnExit;
-};
DumpSource2/schemas/client/CLC_Messages.h
added • +17 / -0 • changes: 17
Show patch
@@ -0,0 +1,17 @@
+enum CLC_Messages : uint32_t
+{
+ clc_ClientInfo = 20,
+ clc_Move = 21,
+ clc_VoiceData = 22,
+ clc_BaselineAck = 23,
+ clc_RespondCvarValue = 25,
+ clc_LoadingProgress = 27,
+ clc_SplitPlayerConnect = 28,
+ clc_SplitPlayerDisconnect = 30,
+ clc_ServerStatus = 31,
+ clc_RequestPause = 33,
+ clc_CmdKeyValues = 34,
+ clc_RconServerDetails = 35,
+ clc_HltvReplay = 36,
+ clc_Diagnostic = 37,
+};
DumpSource2/schemas/client/CLightComponent.h
modified • +120 / -0 • changes: 120
Show patch
@@ -1,3 +1,123 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CLightComponent",
+// "m_Color":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "m_SecondaryColor":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "m_flBrightness": 0.000000,
+// "m_flBrightnessScale": 1.000000,
+// "m_flBrightnessMult": 1.000000,
+// "m_flRange": 0.000000,
+// "m_flFalloff": 0.000000,
+// "m_flAttenuation0": 0.000000,
+// "m_flAttenuation1": 0.000000,
+// "m_flAttenuation2": 0.000000,
+// "m_flTheta": 0.000000,
+// "m_flPhi": 0.000000,
+// "m_hLightCookie": "",
+// "m_nCascades": 0,
+// "m_nCastShadows": 0,
+// "m_nShadowWidth": 0,
+// "m_nShadowHeight": 0,
+// "m_bRenderDiffuse": true,
+// "m_nRenderSpecular": 1,
+// "m_bRenderTransmissive": true,
+// "m_flOrthoLightWidth": 0.000000,
+// "m_flOrthoLightHeight": 0.000000,
+// "m_nStyle": 0,
+// "m_Pattern": "",
+// "m_nCascadeRenderStaticObjects": -1,
+// "m_flShadowCascadeCrossFade": 0.000000,
+// "m_flShadowCascadeDistanceFade": 0.000000,
+// "m_flShadowCascadeDistance0": 0.000000,
+// "m_flShadowCascadeDistance1": 0.000000,
+// "m_flShadowCascadeDistance2": 0.000000,
+// "m_flShadowCascadeDistance3": 0.000000,
+// "m_nShadowCascadeResolution0": 0,
+// "m_nShadowCascadeResolution1": 0,
+// "m_nShadowCascadeResolution2": 0,
+// "m_nShadowCascadeResolution3": 0,
+// "m_bUsesBakedShadowing": false,
+// "m_nShadowPriority": -1,
+// "m_nBakedShadowIndex": -1,
+// "m_nLightPathUniqueId": 0,
+// "m_nLightMapUniqueId": 0,
+// "m_bRenderToCubemaps": true,
+// "m_bAllowSSTGeneration": true,
+// "m_nDirectLight": 0,
+// "m_nBounceLight": 0,
+// "m_flBounceScale": 0.000000,
+// "m_flFadeMinDist": 0.000000,
+// "m_flFadeMaxDist": 0.000000,
+// "m_flShadowFadeMinDist": 0.000000,
+// "m_flShadowFadeMaxDist": 0.000000,
+// "m_bEnabled": false,
+// "m_bFlicker": false,
+// "m_bPrecomputedFieldsValid": false,
+// "m_vPrecomputedBoundsMins":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vPrecomputedBoundsMaxs":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vPrecomputedOBBOrigin":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vPrecomputedOBBAngles":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vPrecomputedOBBExtent":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_flPrecomputedMaxRange": 0.000000,
+// "m_nFogLightingMode": 0,
+// "m_flFogContributionStength": 1.000000,
+// "m_flNearClipPlane": 1.000000,
+// "m_SkyColor":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "m_flSkyIntensity": 0.000000,
+// "m_SkyAmbientBounce":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "m_bUseSecondaryColor": false,
+// "m_flLightStyleStartTime": null,
+// "m_flCapsuleLength": 0.000000,
+// "m_flMinRoughness": 0.000000
+//}
class CLightComponent : public CEntityComponent
{
// MNotSaved
DumpSource2/schemas/client/CLightEntityAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CLightEntityAPI
+{
+};
DumpSource2/schemas/client/CMapInfo_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CMapInfo_API
+{
+};
DumpSource2/schemas/client/CModelState.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CModelState
{
CStrongHandle< InfoForResourceTypeCModel > m_hModel;
DumpSource2/schemas/client/CNMEventPulseState_t.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "m_eventID": ""
+//}
+class CNMEventPulseState_t
+{
+ CGlobalSymbol m_eventID;
+};
DumpSource2/schemas/client/CNetworkOriginCellCoordQuantizedVectorWS.h
added • +10 / -0 • changes: 10
Show patch
@@ -0,0 +1,10 @@
+class CNetworkOriginCellCoordQuantizedVectorWS
+{
+ uint16 m_cellX;
+ uint16 m_cellY;
+ uint16 m_cellZ;
+ uint16 m_nOutsideWorld;
+ CNetworkedQuantizedFloat m_vecX;
+ CNetworkedQuantizedFloat m_vecY;
+ CNetworkedQuantizedFloat m_vecZ;
+};
DumpSource2/schemas/client/CNetworkOriginQuantizedVectorWS.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+class CNetworkOriginQuantizedVectorWS
+{
+ CNetworkedQuantizedFloat m_vecX;
+ CNetworkedQuantizedFloat m_vecY;
+ CNetworkedQuantizedFloat m_vecZ;
+};
DumpSource2/schemas/client/CNetworkTransmitComponent.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CNetworkTransmitComponent",
+// "m_nTransmitStateOwnedCounter": 0
+//}
class CNetworkTransmitComponent
{
uint8 m_nTransmitStateOwnedCounter;
DumpSource2/schemas/client/CNetworkedSequenceOperation.h
modified • +11 / -0 • changes: 11
Show patch
@@ -1,3 +1,14 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CNetworkedSequenceOperation",
+// "m_hSequence": -1,
+// "m_flPrevCycle": 0.000000,
+// "m_flCycle": 0.000000,
+// "m_flWeight": 1.000000,
+// "m_bSequenceChangeNetworked": false,
+// "m_bDiscontinuity": false,
+// "m_flPrevCycleFromDiscontinuity": 0.000000,
+// "m_flPrevCycleForAnimEventDetection": 0.000000
+//}
class CNetworkedSequenceOperation
{
HSequence m_hSequence;
DumpSource2/schemas/client/CNmEventConsumerPulse.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CNmEventConsumerPulse"
+//}
+class CNmEventConsumerPulse : public CNmEventConsumer
+{
+};
DumpSource2/schemas/client/CParticleSystemAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CParticleSystemAPI
+{
+};
DumpSource2/schemas/client/CPathNode.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,6 +4,6 @@ class CPathNode : public C_PointEntity
Vector m_vOutTangentLocal;
CUtlString m_strParentPathUniqueID;
CUtlString m_strPathNodeParameter;
- CTransform m_xWSPrevParent;
+ CTransformWS m_xWSPrevParent;
CHandle< CPathWithDynamicNodes > m_hPath;
};
DumpSource2/schemas/client/CPathQueryComponent.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CPathQueryComponent : public CEntityComponent, public CPathQueryUtil
{
};
DumpSource2/schemas/client/CPathQueryUtil.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CPathQueryUtil
{
CTransform m_PathToEntityTransform;
DumpSource2/schemas/client/CPhysicsBodyGameMarkupData.h
modified • +1 / -1 • changes: 2
Show patch
@@ -7,5 +7,5 @@
class CPhysicsBodyGameMarkupData
{
// MPropertyDescription = "Physics Body Data By Bone Name"
- CUtlOrderedMap< CUtlString, CPhysicsBodyGameMarkup > m_PhysicsBodyMarkupByBoneName;
+ CUtlDict< CPhysicsBodyGameMarkup > m_PhysicsBodyMarkupByBoneName;
};
DumpSource2/schemas/client/CPlayerPawnComponent.h
modified • +2 / -0 • changes: 2
Show patch
@@ -1,5 +1,7 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CPlayerPawnComponent
{
// MNotSaved
CNetworkVarChainer __m_pChainEntity;
+ CAnimGraphControllerPtr m_pComponentGraphController;
};
DumpSource2/schemas/client/CPointValueRemapperAPI.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CPointValueRemapperAPI
+{
+};
DumpSource2/schemas/client/CPrecipitationVData.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,6 +1,8 @@
// MGetKV3ClassDefaults = {
// "_class": "CPrecipitationVData",
// "m_szParticlePrecipitationEffect": "",
+// "m_szParticlePrecipitationPuddleEffect": "",
+// "m_szParticlePrecipitationPostEffect": "",
// "m_flInnerDistance": 32.000000,
// "m_nAttachType": "PATTACH_ABSORIGIN_FOLLOW",
// "m_bBatchSameVolumeType": true,
@@ -16,6 +18,8 @@
class CPrecipitationVData : public CEntitySubclassVDataBase
{
CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationEffect;
+ CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationPuddleEffect;
+ CResourceNameTyped< CWeakHandle< InfoForResourceTypeIParticleSystemDefinition > > m_szParticlePrecipitationPostEffect;
float32 m_flInnerDistance;
ParticleAttachment_t m_nAttachType;
bool m_bBatchSameVolumeType;
DumpSource2/schemas/client/CPropDataComponent.h
modified • +13 / -0 • changes: 13
Show patch
@@ -1,3 +1,16 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CPropDataComponent",
+// "m_flDmgModBullet": 1.000000,
+// "m_flDmgModClub": 1.000000,
+// "m_flDmgModExplosive": 1.000000,
+// "m_flDmgModFire": 1.000000,
+// "m_iszPhysicsDamageTableName": "",
+// "m_iszBasePropData": "",
+// "m_nInteractions": 0,
+// "m_bSpawnMotionDisabled": false,
+// "m_nDisableTakePhysicsDamageSpawnFlag": 0,
+// "m_nMotionDisabledSpawnFlag": 0
+//}
class CPropDataComponent : public CEntityComponent
{
float32 m_flDmgModBullet;
DumpSource2/schemas/client/CPulseAnimFuncs.h
removed • +0 / -3 • changes: 3
Show patch
@@ -1,3 +0,0 @@
-class CPulseAnimFuncs
-{
-};
DumpSource2/schemas/client/CPulseCell_LerpCameraSettings.h
modified • +12 / -0 • changes: 12
Show patch
@@ -1,6 +1,18 @@
// MGetKV3ClassDefaults = {
// "_class": "CPulseCell_LerpCameraSettings",
// "m_nEditorNodeID": -1,
+// "m_BaseFlow_OnAfterCancel":
+// {
+// "m_SourceOutflowName": "",
+// "m_nDestChunk": -1,
+// "m_nInstruction": -1
+// },
+// "m_BaseFlow_WhileActive":
+// {
+// "m_SourceOutflowName": "",
+// "m_nDestChunk": -1,
+// "m_nInstruction": -1
+// },
// "m_WakeResume":
// {
// "m_SourceOutflowName": "",
DumpSource2/schemas/client/CPulseCell_PlaySequence.h
modified • +12 / -7 • changes: 19
Show patch
@@ -1,6 +1,18 @@
// MGetKV3ClassDefaults = {
// "_class": "CPulseCell_PlaySequence",
// "m_nEditorNodeID": -1,
+// "m_BaseFlow_OnAfterCancel":
+// {
+// "m_SourceOutflowName": "",
+// "m_nDestChunk": -1,
+// "m_nInstruction": -1
+// },
+// "m_BaseFlow_WhileActive":
+// {
+// "m_SourceOutflowName": "",
+// "m_nDestChunk": -1,
+// "m_nInstruction": -1
+// },
// "m_SequenceName": "",
// "m_PulseAnimEvents":
// {
@@ -13,12 +25,6 @@
// "m_SourceOutflowName": "",
// "m_nDestChunk": -1,
// "m_nInstruction": -1
-// },
-// "m_OnCanceled":
-// {
-// "m_SourceOutflowName": "",
-// "m_nDestChunk": -1,
-// "m_nInstruction": -1
// }
//}
// MPropertyFriendlyName = "Play Sequence"
@@ -29,5 +35,4 @@ class CPulseCell_PlaySequence : public CPulseCell_BaseYieldingInflow
CUtlString m_SequenceName;
PulseNodeDynamicOutflows_t m_PulseAnimEvents;
CPulse_ResumePoint m_OnFinished;
- CPulse_ResumePoint m_OnCanceled;
};
DumpSource2/schemas/client/CRR_Response.h
modified • +9 / -0 • changes: 9
Show patch
@@ -1,3 +1,12 @@
+// MGetKV3ClassDefaults = {
+// "m_Type": 0,
+// "m_szResponseName": "",
+// "m_Params":
+// {
+// "odds": 100,
+// "flags": 0
+// }
+//}
class CRR_Response
{
uint8 m_Type;
DumpSource2/schemas/client/CRandSimTimer.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CRandSimTimer : public CSimpleSimTimer
{
float32 m_flMinInterval;
DumpSource2/schemas/client/CRandStopwatch.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CRandStopwatch : public CStopwatchBase
{
float32 m_flMinInterval;
DumpSource2/schemas/client/CRenderComponent.h
modified • +3 / -0 • changes: 3
Show patch
@@ -1,3 +1,6 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CRenderComponent"
+//}
class CRenderComponent : public CEntityComponent
{
// MNotSaved
DumpSource2/schemas/client/CRopeOverlapHit.h
modified • +6 / -0 • changes: 6
Show patch
@@ -1,3 +1,9 @@
+// MGetKV3ClassDefaults = {
+// "m_hEntity": null,
+// "m_vecOverlappingLinks":
+// [
+// ]
+//}
class CRopeOverlapHit
{
CHandle< C_BaseEntity > m_hEntity;
DumpSource2/schemas/client/CSceneEventInfo.h
modified • +4 / -0 • changes: 4
Show patch
@@ -4,6 +4,10 @@ class CSceneEventInfo
int32 m_iPriority;
HSequence m_hSequence;
float32 m_flWeight;
+ float32 m_flLastAccumulatedTime;
+ float32 m_flLastJumpFromTime;
+ float32 m_flLastJumpToTime;
+ float32 m_flLastCycle;
CStrongHandle< InfoForResourceTypeCNmClip > m_hAnimClip;
CGlobalSymbol m_sAnimClipSlot;
CGlobalSymbol m_sAnimClipSlotWeight;
DumpSource2/schemas/client/CScenePayloadVData.h
removed • +0 / -16 • changes: 16
Show patch
@@ -1,16 +0,0 @@
-// MGetKV3ClassDefaults = {
-// "m_eNPCBehavior": "eTakeOver",
-// "m_sPulseFile": "",
-// "m_sSceneFile": "",
-// "m_ePriority": "INTERACT_PRIORITY_NONE"
-//}
-// MVDataRoot
-// MVDataOverlayType = 1
-// MVDataAssociatedFile = "scripts/scenes.vdata"
-class CScenePayloadVData
-{
- ENPCBehaviorOverride_t m_eNPCBehavior;
- CResourceNameTyped< CWeakHandle< InfoForResourceTypeIPulseGraphDef > > m_sPulseFile;
- CResourceNameTyped< CWeakHandle< InfoForResourceTypeCChoreoSceneResource > > m_sSceneFile;
- InteractionPriority_t m_ePriority;
-};
DumpSource2/schemas/client/CSimpleSimTimer.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CSimpleSimTimer
{
GameTime_t m_flNext;
DumpSource2/schemas/client/CSkeletonAnimationController.h
modified • +2 / -0 • changes: 2
Show patch
@@ -1,4 +1,6 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CSkeletonAnimationController : public ISkeletonAnimationController
{
+ // MNotSaved
CSkeletonInstance* m_pSkeletonInstance;
};
DumpSource2/schemas/client/CSkeletonInstance.h
modified • +3 / -2 • changes: 5
Show patch
@@ -1,13 +1,14 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CSkeletonInstance : public CGameSceneNode
{
CModelState m_modelState;
// MNotSaved
bool m_bUseParentRenderBounds;
bool m_bDisableSolidCollisionsForHierarchy;
// MNotSaved
- bitfield:1 m_bDirtyMotionType;
+ bool m_bDirtyMotionType;
// MNotSaved
- bitfield:1 m_bIsGeneratingLatchedParentSpaceState;
+ bool m_bIsGeneratingLatchedParentSpaceState;
CUtlStringToken m_materialGroup;
uint8 m_nHitboxSet;
};
DumpSource2/schemas/client/CSoundOpvarSetBoxEntity.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class CSoundOpvarSetBoxEntity : public C_SoundOpvarSetPointEntity
+{
+};
DumpSource2/schemas/client/CSoundPatch.h
modified • +0 / -32 • changes: 32
Show patch
@@ -1,40 +1,8 @@
-// MGetKV3ClassDefaults = {
-// "_class": "CSoundPatch",
-// "m_pitch":
-// {
-// "m_current": 0.000000,
-// "m_target": 0.000000,
-// "m_rate": 0.000000,
-// "m_forceupdate": false
-// },
-// "m_volume":
-// {
-// "m_current": 0.000000,
-// "m_target": 0.000000,
-// "m_rate": 0.000000,
-// "m_forceupdate": false
-// },
-// "m_iszSoundScriptName": "",
-// "m_hEnt": null,
-// "m_isPlaying": 0,
-// "m_Filter":
-// {
-// "_class": "CCopyRecipientFilter",
-// "m_Flags": 0,
-// "m_Recipients":
-// [
-// ],
-// "m_slotPlayerExcludedDueToPrediction": -1
-// },
-// "m_flCloseCaptionDuration": 2.000000
-//}
class CSoundPatch
{
CSoundEnvelope m_pitch;
CSoundEnvelope m_volume;
- // MKV3TransferSaveOpsForField = "GetEngineTimeSaveRestoreOps"
float32 m_shutdownTime;
- // MKV3TransferSaveOpsForField = "GetEngineTimeSaveRestoreOps"
float32 m_flLastTime;
CUtlSymbolLarge m_iszSoundScriptName;
CHandle< C_BaseEntity > m_hEnt;
DumpSource2/schemas/client/CStopwatchBase.h
modified • +2 / -1 • changes: 3
Show patch
@@ -1,4 +1,5 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CStopwatchBase : public CSimpleSimTimer
{
- bool m_fIsRunning;
+ bool m_bIsRunning;
};
DumpSource2/schemas/client/CTakeDamageResult.h
modified • +2 / -0 • changes: 2
Show patch
@@ -43,6 +43,7 @@
// "m_nHealthBefore": 0,
// "m_flDamageDealt": 0.000000,
// "m_flPreModifiedDamage": 0.000000,
+// "m_vDamagePosition": null,
// "m_nTotalledHealthLost": 0,
// "m_flTotalledDamageDealt": 0.000000,
// "m_flTotalledPreModifiedDamage": 0.000000,
@@ -61,6 +62,7 @@ class CTakeDamageResult
int32 m_nHealthBefore;
float32 m_flDamageDealt;
float32 m_flPreModifiedDamage;
+ VectorWS m_vDamagePosition;
int32 m_nTotalledHealthLost;
float32 m_flTotalledDamageDealt;
float32 m_flTotalledPreModifiedDamage;
DumpSource2/schemas/client/CTimeline.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = null
class CTimeline : public IntervalTimer
{
float32[64] m_flValues;
DumpSource2/schemas/client/CWorldCompositionChunkReferenceElement_t.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "m_strMapToLoad": "",
+// "m_strLandmarkName": ""
+//}
class CWorldCompositionChunkReferenceElement_t
{
CUtlString m_strMapToLoad;
DumpSource2/schemas/client/C_BaseCSGrenadeProjectile.h
modified • +2 / -2 • changes: 4
Show patch
@@ -1,11 +1,11 @@
class C_BaseCSGrenadeProjectile : public C_BaseGrenade
{
- Vector m_vInitialPosition;
+ VectorWS m_vInitialPosition;
Vector m_vInitialVelocity;
int32 m_nBounces;
CStrongHandle< InfoForResourceTypeIParticleSystemDefinition > m_nExplodeEffectIndex;
int32 m_nExplodeEffectTickBegin;
- Vector m_vecExplodeEffectOrigin;
+ VectorWS m_vecExplodeEffectOrigin;
GameTime_t m_flSpawnTime;
Vector vecLastTrailLinePos;
GameTime_t flNextTrailLineTime;
DumpSource2/schemas/client/C_BaseEntity.h
modified • +1 / -3 • changes: 4
Show patch
@@ -70,8 +70,6 @@ class C_BaseEntity : public CEntityInstance
// MNotSaved
GameTime_t m_flCreateTime;
// MNotSaved
- float32 m_flSpeed;
- // MNotSaved
uint16 m_EntClientFlags;
// MNotSaved
bool m_bClientSideRagdoll;
@@ -80,7 +78,7 @@ class C_BaseEntity : public CEntityInstance
uint32 m_spawnflags;
// MNotSaved
GameTick_t m_nNextThinkTick;
- // MSaveFlags = 4096
+ // MSaveBehavior (UNKNOWN FOR PARSER)
uint32 m_fFlags;
// MNotSaved
Vector m_vecAbsVelocity;
DumpSource2/schemas/client/C_BaseModelEntity.h
modified • +1 / -3 • changes: 4
Show patch
@@ -3,7 +3,6 @@ class C_BaseModelEntity : public C_BaseEntity
// MNotSaved
CRenderComponent* m_CRenderComponent;
CHitboxComponent m_CHitboxComponent;
- // MPtrAutoallocate
CChoreoComponent* m_pChoreoComponent;
HitGroup_t m_nDestructiblePartInitialStateDestructed0;
HitGroup_t m_nDestructiblePartInitialStateDestructed1;
@@ -20,7 +19,6 @@ class C_BaseModelEntity : public C_BaseEntity
bool m_bDestructiblePartInitialStateDestructed2_GenerateBreakpieces;
bool m_bDestructiblePartInitialStateDestructed3_GenerateBreakpieces;
bool m_bDestructiblePartInitialStateDestructed4_GenerateBreakpieces;
- // MPtrAutoallocate
CDestructiblePartsComponent* m_pDestructiblePartsSystemComponent;
// MNotSaved
bool m_bInitModelEffects;
@@ -52,6 +50,6 @@ class C_BaseModelEntity : public C_BaseEntity
Color m_ClientOverrideTint;
// MNotSaved
bool m_bUseClientOverrideTint;
- // MSaveOpsForField = "GetHitgroupDisableListSaveRestoreOps"
+ // MKV3TransferSaveOpsForField = "GetHitgroupDisableListSaveRestoreOps"
uint32[1] m_bvDisabledHitGroups;
};
DumpSource2/schemas/client/C_BaseModelEntity__Emphasized_Phoneme.h
modified • +7 / -0 • changes: 7
Show patch
@@ -1,3 +1,10 @@
+// MGetKV3ClassDefaults = {
+// "m_sClassName": "",
+// "m_flAmount": 0.000000,
+// "m_bRequired": false,
+// "m_bBasechecked": false,
+// "m_bValid": false
+//}
class C_BaseModelEntity::Emphasized_Phoneme
{
CUtlString m_sClassName;
DumpSource2/schemas/client/C_BasePropDoor.h
modified • +2 / -2 • changes: 4
Show patch
@@ -9,11 +9,11 @@ class C_BasePropDoor : public C_DynamicProp
// MNotSaved
bool m_bNoNPCs;
// MNotSaved
- Vector m_closedPosition;
+ VectorWS m_closedPosition;
// MNotSaved
QAngle m_closedAngles;
// MNotSaved
CHandle< C_BasePropDoor > m_hMaster;
// MNotSaved
- Vector m_vWhereToSetLightingOrigin;
+ VectorWS m_vWhereToSetLightingOrigin;
};
DumpSource2/schemas/client/C_BaseTrigger.h
modified • +1 / -0 • changes: 1
Show patch
@@ -7,6 +7,7 @@ class C_BaseTrigger : public C_BaseToggle
CEntityIOOutput m_OnTouching;
CEntityIOOutput m_OnTouchingEachEntity;
CEntityIOOutput m_OnNotTouching;
+ CEntityIOOutput m_OnTouchingChanged;
CUtlVector< CHandle< C_BaseEntity > > m_hTouchingEntities;
CUtlSymbolLarge m_iFilterName;
CHandle< CBaseFilter > m_hFilter;
DumpSource2/schemas/client/C_Beam.h
modified • +0 / -1 • changes: 1
Show patch
@@ -21,7 +21,6 @@ class C_Beam : public C_BaseModelEntity
float32 m_fStartFrame;
float32 m_fSpeed;
float32 m_flFrame;
- BeamClipStyle_t m_nClipStyle;
bool m_bTurnedOff;
VectorWS m_vecEndPos;
CHandle< C_BaseEntity > m_hEndEntity;
DumpSource2/schemas/client/C_BulletHitModel.h
modified • +1 / -1 • changes: 2
Show patch
@@ -5,5 +5,5 @@ class C_BulletHitModel : public CBaseAnimGraph
CHandle< C_BaseEntity > m_hPlayerParent;
bool m_bIsHit;
float32 m_flTimeCreated;
- Vector m_vecStartPos;
+ VectorWS m_vecStartPos;
};
DumpSource2/schemas/client/C_CSGO_MapPreviewCameraPathNode_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSGO_MapPreviewCameraPathNode_API
+{
+};
DumpSource2/schemas/client/C_CSGO_MapPreviewCameraPath_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSGO_MapPreviewCameraPath_API
+{
+};
DumpSource2/schemas/client/C_CSGO_PreviewModel_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSGO_PreviewModel_API
+{
+};
DumpSource2/schemas/client/C_CSGO_PreviewPlayer_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSGO_PreviewPlayer_API
+{
+};
DumpSource2/schemas/client/C_CSGO_TeamPreviewCamera_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSGO_TeamPreviewCamera_API
+{
+};
DumpSource2/schemas/client/C_CSGameRules.h
modified • +2 / -2 • changes: 4
Show patch
@@ -63,8 +63,8 @@ class C_CSGameRules : public C_TeamplayRules
int32[30] m_iMatchStats_PlayersAlive_T;
float32[32] m_TeamRespawnWaveTimes;
GameTime_t[32] m_flNextRespawnWave;
- Vector m_vMinimapMins;
- Vector m_vMinimapMaxs;
+ VectorWS m_vMinimapMins;
+ VectorWS m_vMinimapMaxs;
float32[8] m_MinimapVerticalSectionHeights;
uint64 m_ullLocalMatchID;
int32[10] m_nEndMatchMapGroupVoteTypes;
DumpSource2/schemas/client/C_CSObserverPawn_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSObserverPawn_API
+{
+};
DumpSource2/schemas/client/C_CSPlayerPawn.h
modified • +3 / -4 • changes: 7
Show patch
@@ -40,10 +40,9 @@ class C_CSPlayerPawn : public C_CSPlayerPawnBase
bool m_bMustSyncRagdollState;
int32 m_nRagdollDamageBone;
Vector m_vRagdollDamageForce;
- Vector m_vRagdollDamagePosition;
char[64] m_szRagdollDamageWeaponName;
bool m_bRagdollDamageHeadshot;
- Vector m_vRagdollServerOrigin;
+ VectorWS m_vRagdollServerOrigin;
GameTime_t m_lastLandTime;
bool m_bOnGroundLastTick;
CHandle< C_CS2HudModelArms > m_hHudModelArms;
@@ -81,11 +80,11 @@ class C_CSPlayerPawn : public C_CSPlayerPawnBase
bool m_bOldIsScoped;
bool m_bHasDeathInfo;
float32 m_flDeathInfoTime;
- Vector m_vecDeathInfoOrigin;
+ VectorWS m_vecDeathInfoOrigin;
GameTime_t m_grenadeParameterStashTime;
bool m_bGrenadeParametersStashed;
QAngle m_angStashedShootAngles;
- Vector m_vecStashedGrenadeThrowPosition;
+ VectorWS m_vecStashedGrenadeThrowPosition;
Vector m_vecStashedVelocity;
bool m_bShouldAutobuyDMWeapons;
GameTime_t m_fImmuneToGunGameDamageTime;
DumpSource2/schemas/client/C_CSPlayerPawnBase_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSPlayerPawnBase_API
+{
+};
DumpSource2/schemas/client/C_CSPlayerPawn_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CSPlayerPawn_API
+{
+};
DumpSource2/schemas/client/C_CSPlayerResource.h
modified • +2 / -2 • changes: 4
Show patch
@@ -3,8 +3,8 @@ class C_CSPlayerResource : public C_BaseEntity
bool[12] m_bHostageAlive;
bool[12] m_isHostageFollowingSomeone;
CEntityIndex[12] m_iHostageEntityIDs;
- Vector m_bombsiteCenterA;
- Vector m_bombsiteCenterB;
+ VectorWS m_bombsiteCenterA;
+ VectorWS m_bombsiteCenterB;
int32[4] m_hostageRescueX;
int32[4] m_hostageRescueY;
int32[4] m_hostageRescueZ;
DumpSource2/schemas/client/C_Chicken.h
modified • +0 / -2 • changes: 2
Show patch
@@ -1,7 +1,5 @@
class C_Chicken : public C_DynamicProp, public IHasAttributes
{
- CHandle< CBaseAnimGraph > m_hHolidayHatAddon;
- bool m_jumpedThisFrame;
CHandle< C_CSPlayerPawn > m_leader;
C_AttributeContainer m_AttributeManager;
bool m_bAttributesInitialized;
DumpSource2/schemas/client/C_ColorCorrection.h
modified • +1 / -1 • changes: 2
Show patch
@@ -1,7 +1,7 @@
class C_ColorCorrection : public C_BaseEntity
{
// MNotSaved
- Vector m_vecOrigin;
+ VectorWS m_vecOrigin;
// MNotSaved
float32 m_MinFalloff;
// MNotSaved
DumpSource2/schemas/client/C_CommandContext.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "needsprocessing": false,
+// "command_number": 0
+//}
class C_CommandContext
{
bool needsprocessing;
DumpSource2/schemas/client/C_CsmFovOverride_API.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class C_CsmFovOverride_API
+{
+};
DumpSource2/schemas/client/C_DynamicProp.h
modified • +1 / -0 • changes: 1
Show patch
@@ -15,6 +15,7 @@ class C_DynamicProp : public C_BreakableProp
bool m_bFiredStartEndOutput;
// MNotSaved
bool m_bForceNpcExclude;
+ bool m_bCreateMovableSurfaceGraph;
// MNotSaved
bool m_bCreateNonSolid;
// MNotSaved
DumpSource2/schemas/client/C_EntityDissolve.h
modified • +2 / -2 • changes: 4
Show patch
@@ -17,9 +17,9 @@ class C_EntityDissolve : public C_BaseModelEntity
// MNotSaved
GameTime_t m_flNextSparkTime;
// MNotSaved
- EntityDisolveType_t m_nDissolveType;
+ EntityDissolveType_t m_nDissolveType;
// MNotSaved
- Vector m_vDissolverOrigin;
+ VectorWS m_vDissolverOrigin;
// MNotSaved
uint32 m_nMagnitude;
// MNotSaved
DumpSource2/schemas/client/C_EnvWindShared.h
modified • +12 / -0 • changes: 12
Show patch
@@ -1,3 +1,15 @@
+// MGetKV3ClassDefaults = {
+// "_class": "C_EnvWindShared",
+// "m_iMinWind": 0,
+// "m_iMaxWind": 0,
+// "m_windRadius": 0,
+// "m_iMinGust": 0,
+// "m_iMaxGust": 0,
+// "m_flMinGustDelay": 0.000000,
+// "m_flMaxGustDelay": 0.000000,
+// "m_flGustDuration": 0.000000,
+// "m_iGustDirChange": 0
+//}
class C_EnvWindShared
{
// MNotSaved
DumpSource2/schemas/client/C_Fish.h
modified • +3 / -3 • changes: 6
Show patch
@@ -1,7 +1,7 @@
class C_Fish : public CBaseAnimGraph
{
// MNotSaved
- Vector m_pos;
+ VectorWS m_pos;
// MNotSaved
Vector m_vel;
// MNotSaved
@@ -21,11 +21,11 @@ class C_Fish : public CBaseAnimGraph
// MNotSaved
float32 m_wiggleRate;
// MNotSaved
- Vector m_actualPos;
+ VectorWS m_actualPos;
// MNotSaved
QAngle m_actualAngles;
// MNotSaved
- Vector m_poolOrigin;
+ VectorWS m_poolOrigin;
// MNotSaved
float32 m_waterLevel;
// MNotSaved
DumpSource2/schemas/client/C_Hostage.h
modified • +2 / -2 • changes: 4
Show patch
@@ -10,13 +10,13 @@ class C_Hostage : public C_BaseCombatCharacter
bool m_bHandsHaveBeenCut;
CHandle< C_CSPlayerPawn > m_hHostageGrabber;
GameTime_t m_fLastGrabTime;
- Vector m_vecGrabbedPos;
+ VectorWS m_vecGrabbedPos;
GameTime_t m_flRescueStartTime;
GameTime_t m_flGrabSuccessTime;
GameTime_t m_flDropStartTime;
GameTime_t m_flDeadOrRescuedTime;
CountdownTimer m_blinkTimer;
- Vector m_lookAt;
+ VectorWS m_lookAt;
CountdownTimer m_lookAroundTimer;
bool m_isInit;
AttachmentHandle_t m_eyeAttachment;
DumpSource2/schemas/client/C_Inferno.h
modified • +4 / -4 • changes: 8
Show patch
@@ -6,8 +6,8 @@ class C_Inferno : public C_BaseModelEntity
CStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoOutlinePointsSnapshot;
CStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoClimbingOutlinePointsSnapshot;
CStrongHandle< InfoForResourceTypeIParticleSnapshot > m_hInfernoDecalsSnapshot;
- Vector[64] m_firePositions;
- Vector[64] m_fireParentPositions;
+ VectorWS[64] m_firePositions;
+ VectorWS[64] m_fireParentPositions;
bool[64] m_bFireIsBurning;
Vector[64] m_BurnNormal;
int32 m_fireCount;
@@ -21,7 +21,7 @@ class C_Inferno : public C_BaseModelEntity
int32 m_nlosperiod;
float32 m_maxFireHalfWidth;
float32 m_maxFireHeight;
- Vector m_minBounds;
- Vector m_maxBounds;
+ VectorWS m_minBounds;
+ VectorWS m_maxBounds;
float32 m_flLastGrassBurnThink;
};
DumpSource2/schemas/client/C_LocalTempEntity.h
modified • +2 / -2 • changes: 4
Show patch
@@ -43,11 +43,11 @@ class C_LocalTempEntity : public CBaseAnimGraph
// MNotSaved
int32 m_iLastCollisionFrame;
// MNotSaved
- Vector m_vLastCollisionOrigin;
+ VectorWS m_vLastCollisionOrigin;
// MNotSaved
Vector m_vecTempEntVelocity;
// MNotSaved
- Vector m_vecPrevAbsOrigin;
+ VectorWS m_vecPrevAbsOrigin;
// MNotSaved
Vector m_vecTempEntAcceleration;
};
DumpSource2/schemas/client/C_ParticleSystem.h
modified • +2 / -0 • changes: 2
Show patch
@@ -15,6 +15,8 @@ class C_ParticleSystem : public C_BaseModelEntity
Vector[4] m_vServerControlPoints;
uint8[4] m_iServerControlPointAssignments;
CHandle< C_BaseEntity >[64] m_hControlPointEnts;
+ bool m_bDataStringLocalized;
+ CUtlString m_strDataString;
bool m_bNoSave;
bool m_bNoFreeze;
bool m_bNoRamp;
DumpSource2/schemas/client/C_PlantedC4.h
modified • +1 / -1 • changes: 2
Show patch
@@ -26,7 +26,7 @@ class C_PlantedC4 : public CBaseAnimGraph, public IHasAttributes
CHandle< C_CSPlayerPawn > m_pBombDefuser;
GameTime_t m_fLastDefuseTime;
CBasePlayerController* m_pPredictionOwner;
- Vector m_vecC4ExplodeSpectatePos;
+ VectorWS m_vecC4ExplodeSpectatePos;
QAngle m_vecC4ExplodeSpectateAng;
float32 m_flC4ExplodeSpectateDuration;
};
DumpSource2/schemas/client/C_PlayerSprayDecal.h
modified • +2 / -2 • changes: 4
Show patch
@@ -4,8 +4,8 @@ class C_PlayerSprayDecal : public C_ModelPointEntity
uint32 m_unAccountID;
uint32 m_unTraceID;
uint32 m_rtGcTime;
- Vector m_vecEndPos;
- Vector m_vecStart;
+ VectorWS m_vecEndPos;
+ VectorWS m_vecStart;
Vector m_vecLeft;
Vector m_vecNormal;
int32 m_nPlayer;
DumpSource2/schemas/client/C_PointClientUIWorldPanel.h
modified • +1 / -0 • changes: 1
Show patch
@@ -35,4 +35,5 @@ class C_PointClientUIWorldPanel : public C_BaseClientUIEntity
bool m_bOnlyRenderToTexture;
bool m_bDisableMipGen;
int32 m_nExplicitImageLayout;
+ bool m_bIgnoreParentOrientation;
};
DumpSource2/schemas/client/C_PointCommentaryNode.h
modified • +0 / -1 • changes: 1
Show patch
@@ -11,7 +11,6 @@ class C_PointCommentaryNode : public CBaseAnimGraph
int32 m_iNodeNumber;
int32 m_iNodeNumberMax;
bool m_bListenedTo;
- // MSaveOpsForField = "GetSoundSaveRestoreOps"
CSoundPatch* m_sndCommentary;
CHandle< C_BaseEntity > m_hViewPosition;
// MNotSaved
DumpSource2/schemas/client/C_PointValueRemapper.h
modified • +1 / -1 • changes: 2
Show patch
@@ -25,5 +25,5 @@ class C_PointValueRemapper : public C_BaseEntity
bool m_bFirstUpdate;
float32 m_flPreviousValue;
GameTime_t m_flPreviousUpdateTickTime;
- Vector m_vecPreviousTestPoint;
+ VectorWS m_vecPreviousTestPoint;
};
DumpSource2/schemas/client/C_ShatterGlassShardPhysics.h
modified • +1 / -1 • changes: 2
Show patch
@@ -1,4 +1,4 @@
-class C_ShatterGlassShardPhysics : public C_PhysicsProp
+class C_ShatterGlassShardPhysics : public C_BaseModelEntity
{
// MNotSaved
shard_model_desc_t m_ShardDesc;
DumpSource2/schemas/client/C_SmokeGrenadeProjectile.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,7 +4,7 @@ class C_SmokeGrenadeProjectile : public C_BaseCSGrenadeProjectile
bool m_bDidSmokeEffect;
int32 m_nRandomSeed;
Vector m_vSmokeColor;
- Vector m_vSmokeDetonationPos;
+ VectorWS m_vSmokeDetonationPos;
C_NetworkUtlVectorBase< uint8 > m_VoxelFrameData;
int32 m_nVoxelFrameDataSize;
int32 m_nVoxelUpdate;
DumpSource2/schemas/client/C_SoundOpvarSetAABBEntity.h
modified • +1 / -1 • changes: 2
Show patch
@@ -1,3 +1,3 @@
-class C_SoundOpvarSetAABBEntity : public C_SoundOpvarSetPointEntity
+class C_SoundOpvarSetAABBEntity : public CSoundOpvarSetBoxEntity
{
};
DumpSource2/schemas/client/C_Sprite.h
modified • +1 / -0 • changes: 1
Show patch
@@ -25,4 +25,5 @@ class C_Sprite : public C_BaseModelEntity
int32 m_nSpriteWidth;
// MNotSaved
int32 m_nSpriteHeight;
+ float32 m_flSpeed;
};
DumpSource2/schemas/client/C_TriggerPhysics.h
modified • +1 / -1 • changes: 2
Show patch
@@ -10,7 +10,7 @@ class C_TriggerPhysics : public C_BaseTrigger
float32 m_flDampingRatio;
Vector m_vecLinearForcePointAt;
bool m_bCollapseToForcePoint;
- Vector m_vecLinearForcePointAtWorld;
+ VectorWS m_vecLinearForcePointAtWorld;
Vector m_vecLinearForceDirection;
bool m_bConvertToDebrisWhenPossible;
};
DumpSource2/schemas/client/C_fogplayerparams_t.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class C_fogplayerparams_t
{
CHandle< C_FogController > m_hCtrl;
DumpSource2/schemas/client/ChoreoExternalAnimgraphControlState_t.h
modified • +17 / -11 • changes: 28
Show patch
@@ -3,18 +3,24 @@ enum ChoreoExternalAnimgraphControlState_t : uint32_t
// MPropertyFriendlyName = "None"
// MAlternateSemanticName = "None"
eNone = 0,
- // MPropertyFriendlyName = "Begin"
- // MAlternateSemanticName = "Begin"
- eBegin = 1,
- // MPropertyFriendlyName = "Looping"
- // MAlternateSemanticName = "Looping"
- eLooping = 2,
// MPropertyFriendlyName = "Exit"
// MAlternateSemanticName = "Exit"
- eExit = 3,
- // MPropertyFriendlyName = "Abort"
- // MAlternateSemanticName = "Abort"
- eAbort = 4,
+ eExit = 1,
+ // MPropertyFriendlyName = "State_01"
+ // MAlternateSemanticName = "State_01"
+ eState01 = 2,
+ // MPropertyFriendlyName = "State_02"
+ // MAlternateSemanticName = "State_02"
+ eState02 = 3,
+ // MPropertyFriendlyName = "State_03"
+ // MAlternateSemanticName = "State_03"
+ eState03 = 4,
+ // MPropertyFriendlyName = "State_04"
+ // MAlternateSemanticName = "State_04"
+ eState04 = 5,
+ // MPropertyFriendlyName = "State_05"
+ // MAlternateSemanticName = "State_05"
+ eState05 = 6,
// MPropertySuppressEnumerator
- eCount = 5,
+ eCount = 7,
};
DumpSource2/schemas/client/ChoreoStrafeMode_t.h
added • +9 / -0 • changes: 9
Show patch
@@ -0,0 +1,9 @@
+enum ChoreoStrafeMode_t : uint32_t
+{
+ // MPropertyFriendlyName = "Default"
+ DEFAULT = 0,
+ // MPropertyFriendlyName = "Enable"
+ ENABLE = 1,
+ // MPropertyFriendlyName = "Disable"
+ DISABLE = 2,
+};
DumpSource2/schemas/client/DIALOG_TYPE.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum DIALOG_TYPE : uint32_t
+{
+ DIALOG_MSG = 0,
+ DIALOG_MENU = 1,
+ DIALOG_TEXT = 2,
+ DIALOG_ENTRY = 3,
+ DIALOG_ASKCONNECT = 4,
+};
DumpSource2/schemas/client/DebugDrawBoneTransforms_t.h
modified • +1 / -0 • changes: 1
Show patch
@@ -4,6 +4,7 @@
// [
// ]
//}
+// MPropertyFriendlyName = "Bone Transforms"
class DebugDrawBoneTransforms_t : public DebugSnapshotBaseStructuredData_t
{
CUtlVectorFixedGrowable< CTransform, 128 > vecBones;
DumpSource2/schemas/client/DebugOverlayBits_t.h
modified • +9 / -0 • changes: 9
Show patch
@@ -118,4 +118,13 @@ enum DebugOverlayBits_t : uint64_t
// MPropertyFriendlyName = "Minimal Text"
// MPropertyDescription = "Only draw the base name and subclass, but no other text data"
OVERLAY_MINIMAL_TEXT = 2199023255552,
+ // MPropertyFriendlyName = "NPC God Mode"
+ // MPropertyDescription = "This NPC will take no damage or react to it"
+ OVERLAY_NPC_GOD_MODE = 4398046511104,
+ // MPropertyFriendlyName = "NPC Anim AI Handshakes"
+ // MPropertyDescription = "show handshaking between AI and Animgraphs"
+ OVERLAY_NPC_ANIM_AI_HANDSHAKES_BIT = 8796093022208,
+ // MPropertyFriendlyName = "NPC Path Queries"
+ // MPropertyDescription = "show path query processing"
+ OVERLAY_NPC_PATH_QUERIES_BIT = 17592186044416,
};
DumpSource2/schemas/client/DebugSnapshotBaseStructuredData_t.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,6 +1,7 @@
// MGetKV3ClassDefaults = {
// "_class": "DebugSnapshotBaseStructuredData_t"
//}
+// MPropertyFriendlyName = "Base Structured Data"
class DebugSnapshotBaseStructuredData_t
{
};
DumpSource2/schemas/client/DestructiblePartDamageRequest_t.h
modified • +2 / -0 • changes: 2
Show patch
@@ -6,6 +6,7 @@
// "m_nDamageType": "DMG_BLAST",
// "m_flBreakDamage": 0.000000,
// "m_flBreakDamageRadius": 24.000000,
+// "m_hAttacker": null,
// "m_vWsBreakDamageOrigin": null,
// "m_vWsBreakDamageForce":
// [
@@ -23,6 +24,7 @@ class DestructiblePartDamageRequest_t
DamageTypes_t m_nDamageType;
float32 m_flBreakDamage;
float32 m_flBreakDamageRadius;
+ CHandle< C_BaseEntity > m_hAttacker;
VectorWS m_vWsBreakDamageOrigin;
Vector m_vWsBreakDamageForce;
};
DumpSource2/schemas/client/EBaseClientMessages.h
added • +10 / -0 • changes: 10
Show patch
@@ -0,0 +1,10 @@
+enum EBaseClientMessages : uint32_t
+{
+ CM_CustomGameEvent = 280,
+ CM_CustomGameEventBounce = 281,
+ CM_ClientUIEvent = 282,
+ CM_DevPaletteVisibilityChanged = 283,
+ CM_WorldUIControllerHasPanelChanged = 284,
+ CM_RotateAnchor = 285,
+ CM_MAX_BASE = 300,
+};
DumpSource2/schemas/client/EBaseEntityMessages.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum EBaseEntityMessages : uint32_t
+{
+ EM_PlayJingle = 136,
+ EM_ScreenOverlay = 137,
+ EM_PropagateForce = 139,
+ EM_DoSpark = 140,
+ EM_FixAngle = 141,
+};
DumpSource2/schemas/client/EBaseGameEvents.h
added • +18 / -0 • changes: 18
Show patch
@@ -0,0 +1,18 @@
+enum EBaseGameEvents : uint32_t
+{
+ GE_VDebugGameSessionIDEvent = 200,
+ GE_PlaceDecalEvent = 201,
+ GE_ClearWorldDecalsEvent = 202,
+ GE_ClearEntityDecalsEvent = 203,
+ GE_ClearDecalsForEntityEvent = 204,
+ GE_Source1LegacyGameEventList = 205,
+ GE_Source1LegacyListenEvents = 206,
+ GE_Source1LegacyGameEvent = 207,
+ GE_SosStartSoundEvent = 208,
+ GE_SosStopSoundEvent = 209,
+ GE_SosSetSoundEventParams = 210,
+ GE_SosSetLibraryStackFields = 211,
+ GE_SosStopSoundEventHash = 212,
+ GE_ClothStiffenAnimEvent = 213,
+ GE_ClothEffectAnimEvent = 214,
+};
DumpSource2/schemas/client/EBasePredictionEvents.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum EBasePredictionEvents : uint32_t
+{
+ BPE_StringCommand = 128,
+ BPE_Teleport = 130,
+ BPE_Diagnostic = 16384,
+};
DumpSource2/schemas/client/EBaseUserMessages.h
added • +54 / -0 • changes: 54
Show patch
@@ -0,0 +1,54 @@
+enum EBaseUserMessages : uint32_t
+{
+ UM_AchievementEvent = 101,
+ UM_CurrentTimescale = 104,
+ UM_DesiredTimescale = 105,
+ UM_Fade = 106,
+ UM_GameTitle = 107,
+ UM_HudMsg = 110,
+ UM_HudText = 111,
+ UM_ColoredText = 113,
+ UM_RequestState = 114,
+ UM_ResetHUD = 115,
+ UM_Rumble = 116,
+ UM_SayText = 117,
+ UM_SayText2 = 118,
+ UM_SayTextChannel = 119,
+ UM_Shake = 120,
+ UM_ShakeDir = 121,
+ UM_WaterShake = 122,
+ UM_TextMsg = 124,
+ UM_ScreenTilt = 125,
+ UM_VoiceMask = 128,
+ UM_SendAudio = 130,
+ UM_ItemPickup = 131,
+ UM_AmmoDenied = 132,
+ UM_ShowMenu = 134,
+ UM_CreditsMsg = 135,
+ UM_CloseCaptionPlaceholder = 142,
+ UM_CameraTransition = 143,
+ UM_AudioParameter = 144,
+ UM_ParticleManager = 145,
+ UM_HudError = 146,
+ UM_CustomGameEvent = 148,
+ UM_AnimGraphUpdate = 149,
+ UM_HapticsManagerPulse = 150,
+ UM_HapticsManagerEffect = 151,
+ UM_UpdateCssClasses = 153,
+ UM_ServerFrameTime = 154,
+ UM_LagCompensationError = 155,
+ UM_RequestDllStatus = 156,
+ UM_RequestUtilAction = 157,
+ UM_UtilActionResponse = 158,
+ UM_DllStatusResponse = 159,
+ UM_RequestInventory = 160,
+ UM_InventoryResponse = 161,
+ UM_RequestDiagnostic = 162,
+ UM_DiagnosticResponse = 163,
+ UM_ExtraUserData = 164,
+ UM_NotifyResponseFound = 165,
+ UM_PlayResponseConditional = 166,
+ UM_UserSentBugBug = 167,
+ UM_UsageReport = 168,
+ UM_MAX_BASE = 200,
+};
DumpSource2/schemas/client/ECSPredictionEvents.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum ECSPredictionEvents : uint32_t
+{
+ CSPE_DamageTag = 1,
+ CSPE_PlayerTeleport = 3,
+};
DumpSource2/schemas/client/ECSUsrMsg_DisconnectToLobby_Action.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum ECSUsrMsg_DisconnectToLobby_Action : uint32_t
+{
+ k_ECSUsrMsg_DisconnectToLobby_Action_Default = 0,
+ k_ECSUsrMsg_DisconnectToLobby_Action_GoQueue = 1,
+};
DumpSource2/schemas/client/EChickenActivity.h
added • +10 / -0 • changes: 10
Show patch
@@ -0,0 +1,10 @@
+enum EChickenActivity : uint32_t
+{
+ Idle = 0,
+ Squat = 1,
+ Walk = 2,
+ Run = 3,
+ Glide = 4,
+ Land = 5,
+ Panic = 6,
+};
DumpSource2/schemas/client/EClientReportingVersion.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum EClientReportingVersion : uint32_t
+{
+ k_EClientReportingVersion_OldVersion = 0,
+ k_EClientReportingVersion_BetaVersion = 1,
+ k_EClientReportingVersion_SupportsTrustedMode = 2,
+};
DumpSource2/schemas/client/EClientUIEvent.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum EClientUIEvent : uint32_t
+{
+ EClientUIEvent_Invalid = 0,
+ EClientUIEvent_DialogFinished = 1,
+ EClientUIEvent_FireOutput = 2,
+};
DumpSource2/schemas/client/ECommunityItemAttribute.h
added • +13 / -0 • changes: 13
Show patch
@@ -0,0 +1,13 @@
+enum ECommunityItemAttribute : uint32_t
+{
+ k_ECommunityItemAttribute_Invalid = 0,
+ k_ECommunityItemAttribute_CardBorder = 1,
+ k_ECommunityItemAttribute_Level = 2,
+ k_ECommunityItemAttribute_IssueNumber = 3,
+ k_ECommunityItemAttribute_TradableTime = 4,
+ k_ECommunityItemAttribute_StorePackageID = 5,
+ k_ECommunityItemAttribute_CommunityItemAppID = 6,
+ k_ECommunityItemAttribute_CommunityItemType = 7,
+ k_ECommunityItemAttribute_ProfileModiferEnabled = 8,
+ k_ECommunityItemAttribute_ExpiryTime = 9,
+};
DumpSource2/schemas/client/ECommunityItemClass.h
added • +14 / -0 • changes: 14
Show patch
@@ -0,0 +1,14 @@
+enum ECommunityItemClass : uint32_t
+{
+ k_ECommunityItemClass_Invalid = 0,
+ k_ECommunityItemClass_Badge = 1,
+ k_ECommunityItemClass_GameCard = 2,
+ k_ECommunityItemClass_ProfileBackground = 3,
+ k_ECommunityItemClass_Emoticon = 4,
+ k_ECommunityItemClass_BoosterPack = 5,
+ k_ECommunityItemClass_Consumable = 6,
+ k_ECommunityItemClass_GameGoo = 7,
+ k_ECommunityItemClass_ProfileModifier = 8,
+ k_ECommunityItemClass_Scene = 9,
+ k_ECommunityItemClass_SalienItem = 10,
+};
DumpSource2/schemas/client/ECsgoGCMsg.h
added • +112 / -0 • changes: 112
Show patch
@@ -0,0 +1,112 @@
+enum ECsgoGCMsg : uint32_t
+{
+ k_EMsgGCCStrike15_v2_Base = 9100,
+ k_EMsgGCCStrike15_v2_MatchmakingStart = 9101,
+ k_EMsgGCCStrike15_v2_MatchmakingStop = 9102,
+ k_EMsgGCCStrike15_v2_MatchmakingClient2ServerPing = 9103,
+ k_EMsgGCCStrike15_v2_MatchmakingGC2ClientUpdate = 9104,
+ k_EMsgGCCStrike15_v2_MatchmakingServerReservationResponse = 9106,
+ k_EMsgGCCStrike15_v2_MatchmakingGC2ClientReserve = 9107,
+ k_EMsgGCCStrike15_v2_MatchmakingClient2GCHello = 9109,
+ k_EMsgGCCStrike15_v2_MatchmakingGC2ClientHello = 9110,
+ k_EMsgGCCStrike15_v2_MatchmakingGC2ClientAbandon = 9112,
+ k_EMsgGCCStrike15_v2_MatchmakingOperator2GCBlogUpdate = 9117,
+ k_EMsgGCCStrike15_v2_ServerNotificationForUserPenalty = 9118,
+ k_EMsgGCCStrike15_v2_ClientReportPlayer = 9119,
+ k_EMsgGCCStrike15_v2_ClientReportServer = 9120,
+ k_EMsgGCCStrike15_v2_ClientCommendPlayer = 9121,
+ k_EMsgGCCStrike15_v2_ClientReportResponse = 9122,
+ k_EMsgGCCStrike15_v2_ClientCommendPlayerQuery = 9123,
+ k_EMsgGCCStrike15_v2_ClientCommendPlayerQueryResponse = 9124,
+ k_EMsgGCCStrike15_v2_WatchInfoUsers = 9126,
+ k_EMsgGCCStrike15_v2_ClientRequestPlayersProfile = 9127,
+ k_EMsgGCCStrike15_v2_PlayersProfile = 9128,
+ k_EMsgGCCStrike15_v2_PlayerOverwatchCaseUpdate = 9131,
+ k_EMsgGCCStrike15_v2_PlayerOverwatchCaseAssignment = 9132,
+ k_EMsgGCCStrike15_v2_PlayerOverwatchCaseStatus = 9133,
+ k_EMsgGCCStrike15_v2_GC2ClientTextMsg = 9134,
+ k_EMsgGCCStrike15_v2_Client2GCTextMsg = 9135,
+ k_EMsgGCCStrike15_v2_MatchEndRunRewardDrops = 9136,
+ k_EMsgGCCStrike15_v2_MatchEndRewardDropsNotification = 9137,
+ k_EMsgGCCStrike15_v2_ClientRequestWatchInfoFriends2 = 9138,
+ k_EMsgGCCStrike15_v2_MatchList = 9139,
+ k_EMsgGCCStrike15_v2_MatchListRequestCurrentLiveGames = 9140,
+ k_EMsgGCCStrike15_v2_MatchListRequestRecentUserGames = 9141,
+ k_EMsgGCCStrike15_v2_GC2ServerReservationUpdate = 9142,
+ k_EMsgGCCStrike15_v2_ClientVarValueNotificationInfo = 9144,
+ k_EMsgGCCStrike15_v2_MatchListRequestTournamentGames = 9146,
+ k_EMsgGCCStrike15_v2_MatchListRequestFullGameInfo = 9147,
+ k_EMsgGCCStrike15_v2_GiftsLeaderboardRequest = 9148,
+ k_EMsgGCCStrike15_v2_GiftsLeaderboardResponse = 9149,
+ k_EMsgGCCStrike15_v2_ServerVarValueNotificationInfo = 9150,
+ k_EMsgGCCStrike15_v2_ClientSubmitSurveyVote = 9152,
+ k_EMsgGCCStrike15_v2_Server2GCClientValidate = 9153,
+ k_EMsgGCCStrike15_v2_MatchListRequestLiveGameForUser = 9154,
+ k_EMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockRequest = 9156,
+ k_EMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockResponse = 9157,
+ k_EMsgGCCStrike15_v2_AccountPrivacySettings = 9158,
+ k_EMsgGCCStrike15_v2_SetMyActivityInfo = 9159,
+ k_EMsgGCCStrike15_v2_MatchListRequestTournamentPredictions = 9160,
+ k_EMsgGCCStrike15_v2_MatchListUploadTournamentPredictions = 9161,
+ k_EMsgGCCStrike15_v2_DraftSummary = 9162,
+ k_EMsgGCCStrike15_v2_ClientRequestJoinFriendData = 9163,
+ k_EMsgGCCStrike15_v2_ClientRequestJoinServerData = 9164,
+ k_EMsgGCCStrike15_v2_GC2ClientTournamentInfo = 9167,
+ k_EMsgGC_GlobalGame_Subscribe = 9168,
+ k_EMsgGC_GlobalGame_Unsubscribe = 9169,
+ k_EMsgGC_GlobalGame_Play = 9170,
+ k_EMsgGCCStrike15_v2_AcknowledgePenalty = 9171,
+ k_EMsgGCCStrike15_v2_Client2GCRequestPrestigeCoin = 9172,
+ k_EMsgGCCStrike15_v2_GC2ClientGlobalStats = 9173,
+ k_EMsgGCCStrike15_v2_Client2GCStreamUnlock = 9174,
+ k_EMsgGCCStrike15_v2_FantasyRequestClientData = 9175,
+ k_EMsgGCCStrike15_v2_FantasyUpdateClientData = 9176,
+ k_EMsgGCCStrike15_v2_GCToClientSteamdatagramTicket = 9177,
+ k_EMsgGCCStrike15_v2_ClientToGCRequestTicket = 9178,
+ k_EMsgGCCStrike15_v2_ClientToGCRequestElevate = 9179,
+ k_EMsgGCCStrike15_v2_GlobalChat = 9180,
+ k_EMsgGCCStrike15_v2_GlobalChat_Subscribe = 9181,
+ k_EMsgGCCStrike15_v2_GlobalChat_Unsubscribe = 9182,
+ k_EMsgGCCStrike15_v2_ClientAuthKeyCode = 9183,
+ k_EMsgGCCStrike15_v2_GotvSyncPacket = 9184,
+ k_EMsgGCCStrike15_v2_ClientPlayerDecalSign = 9185,
+ k_EMsgGCCStrike15_v2_ClientLogonFatalError = 9187,
+ k_EMsgGCCStrike15_v2_ClientPollState = 9188,
+ k_EMsgGCCStrike15_v2_Party_Register = 9189,
+ k_EMsgGCCStrike15_v2_Party_Unregister = 9190,
+ k_EMsgGCCStrike15_v2_Party_Search = 9191,
+ k_EMsgGCCStrike15_v2_Party_Invite = 9192,
+ k_EMsgGCCStrike15_v2_Account_RequestCoPlays = 9193,
+ k_EMsgGCCStrike15_v2_ClientGCRankUpdate = 9194,
+ k_EMsgGCCStrike15_v2_ClientRequestOffers = 9195,
+ k_EMsgGCCStrike15_v2_ClientAccountBalance = 9196,
+ k_EMsgGCCStrike15_v2_ClientPartyJoinRelay = 9197,
+ k_EMsgGCCStrike15_v2_ClientPartyWarning = 9198,
+ k_EMsgGCCStrike15_v2_SetEventFavorite = 9200,
+ k_EMsgGCCStrike15_v2_GetEventFavorites_Request = 9201,
+ k_EMsgGCCStrike15_v2_ClientPerfReport = 9202,
+ k_EMsgGCCStrike15_v2_GetEventFavorites_Response = 9203,
+ k_EMsgGCCStrike15_v2_ClientRequestSouvenir = 9204,
+ k_EMsgGCCStrike15_v2_GC2ClientRefuseSecureMode = 9206,
+ k_EMsgGCCStrike15_v2_GC2ClientRequestValidation = 9207,
+ k_EMsgGCCStrike15_v2_ClientRedeemMissionReward = 9209,
+ k_EMsgGCCStrike15_ClientDeepStats = 9210,
+ k_EMsgGCCStrike15_StartAgreementSessionInGame = 9211,
+ k_EMsgGCCStrike15_v2_GC2ClientInitSystem = 9212,
+ k_EMsgGCCStrike15_v2_GC2ClientInitSystem_Response = 9213,
+ k_EMsgGCCStrike15_v2_PrivateQueues = 9214,
+ k_EMsgGCCStrike15_v2_MatchListTournamentOperatorMgmt = 9215,
+ k_EMsgGCCStrike15_v2_BetaEnrollment = 9217,
+ k_EMsgGCCStrike15_v2_SetPlayerLeaderboardSafeName = 9218,
+ k_EMsgGCCStrike15_v2_ClientRedeemFreeReward = 9219,
+ k_EMsgGCCStrike15_v2_ClientNetworkConfig = 9220,
+ k_EMsgGCCStrike15_v2_GC2ClientNotifyXPShop = 9221,
+ k_EMsgGCCStrike15_v2_Client2GcAckXPShopTracks = 9222,
+ k_EMsgGCCStrike15_v2_MatchmakingGC2ClientSearchStats = 9223,
+ k_EMsgGCCStrike15_v2_PremierSeasonSummary = 9224,
+ k_EMsgGCCStrike15_v2_RequestRecurringMissionSchedule = 9225,
+ k_EMsgGCCStrike15_v2_RecurringMissionSchema = 9226,
+ k_EMsgGCCStrike15_v2_VolatileItemClaimReward = 9227,
+ k_EMsgGCCStrike15_v2_VolatileShopSubscribe = 9228,
+ k_EMsgGCCStrike15_v2_SetClanId = 9229,
+};
DumpSource2/schemas/client/ECsgoGameEvents.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+enum ECsgoGameEvents : uint32_t
+{
+ GE_PlayerAnimEventId = 450,
+ GE_RadioIconEventId = 451,
+ GE_FireBulletsId = 452,
+ GE_PlayerBulletHitId = 453,
+};
DumpSource2/schemas/client/ECsgoSteamUserStat.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum ECsgoSteamUserStat : uint32_t
+{
+ k_ECsgoSteamUserStat_XpEarnedGames = 1,
+ k_ECsgoSteamUserStat_MatchWinsCompetitive = 2,
+ k_ECsgoSteamUserStat_SurvivedDangerZone = 3,
+};
DumpSource2/schemas/client/ECstrike15UserMessages.h
added • +81 / -0 • changes: 81
Show patch
@@ -0,0 +1,81 @@
+enum ECstrike15UserMessages : uint32_t
+{
+ CS_UM_VGUIMenu = 301,
+ CS_UM_Geiger = 302,
+ CS_UM_Train = 303,
+ CS_UM_HudText = 304,
+ CS_UM_SayText = 305,
+ CS_UM_SayText2 = 306,
+ CS_UM_TextMsg = 307,
+ CS_UM_HudMsg = 308,
+ CS_UM_ResetHud = 309,
+ CS_UM_GameTitle = 310,
+ CS_UM_Shake = 312,
+ CS_UM_Fade = 313,
+ CS_UM_Rumble = 314,
+ CS_UM_CloseCaption = 315,
+ CS_UM_CloseCaptionDirect = 316,
+ CS_UM_SendAudio = 317,
+ CS_UM_RawAudio = 318,
+ CS_UM_VoiceMask = 319,
+ CS_UM_RequestState = 320,
+ CS_UM_Damage = 321,
+ CS_UM_RadioText = 322,
+ CS_UM_HintText = 323,
+ CS_UM_KeyHintText = 324,
+ CS_UM_ProcessSpottedEntityUpdate = 325,
+ CS_UM_ReloadEffect = 326,
+ CS_UM_AdjustMoney = 327,
+ CS_UM_UpdateTeamMoney = 328,
+ CS_UM_StopSpectatorMode = 329,
+ CS_UM_KillCam = 330,
+ CS_UM_DesiredTimescale = 331,
+ CS_UM_CurrentTimescale = 332,
+ CS_UM_AchievementEvent = 333,
+ CS_UM_MatchEndConditions = 334,
+ CS_UM_DisconnectToLobby = 335,
+ CS_UM_PlayerStatsUpdate = 336,
+ CS_UM_ClientInfo = 339,
+ CS_UM_XRankGet = 340,
+ CS_UM_XRankUpd = 341,
+ CS_UM_CallVoteFailed = 345,
+ CS_UM_VoteStart = 346,
+ CS_UM_VotePass = 347,
+ CS_UM_VoteFailed = 348,
+ CS_UM_VoteSetup = 349,
+ CS_UM_ServerRankRevealAll = 350,
+ CS_UM_SendLastKillerDamageToClient = 351,
+ CS_UM_ServerRankUpdate = 352,
+ CS_UM_ItemPickup = 353,
+ CS_UM_ShowMenu = 354,
+ CS_UM_BarTime = 355,
+ CS_UM_AmmoDenied = 356,
+ CS_UM_MarkAchievement = 357,
+ CS_UM_MatchStatsUpdate = 358,
+ CS_UM_ItemDrop = 359,
+ CS_UM_SendPlayerItemDrops = 361,
+ CS_UM_RoundBackupFilenames = 362,
+ CS_UM_SendPlayerItemFound = 363,
+ CS_UM_ReportHit = 364,
+ CS_UM_XpUpdate = 365,
+ CS_UM_QuestProgress = 366,
+ CS_UM_ScoreLeaderboardData = 367,
+ CS_UM_PlayerDecalDigitalSignature = 368,
+ CS_UM_WeaponSound = 369,
+ CS_UM_UpdateScreenHealthBar = 370,
+ CS_UM_EntityOutlineHighlight = 371,
+ CS_UM_SSUI = 372,
+ CS_UM_SurvivalStats = 373,
+ CS_UM_DisconnectToLobby2 = 374,
+ CS_UM_EndOfMatchAllPlayersData = 375,
+ CS_UM_PostRoundDamageReport = 376,
+ CS_UM_RoundEndReportData = 379,
+ CS_UM_CurrentRoundOdds = 380,
+ CS_UM_DeepStats = 381,
+ CS_UM_ShootInfo = 383,
+ CS_UM_CounterStrafe = 385,
+ CS_UM_DamagePrediction = 386,
+ CS_UM_RecurringMissionSchema = 387,
+ CS_UM_SendPlayerLoadout = 388,
+ CS_UM_WeaponMagDrop = 389,
+};
DumpSource2/schemas/client/EDemoCommands.h
added • +25 / -0 • changes: 25
Show patch
@@ -0,0 +1,25 @@
+enum EDemoCommands : uint32_t
+{
+ DEM_Error = -1,
+ DEM_Stop = 0,
+ DEM_FileHeader = 1,
+ DEM_FileInfo = 2,
+ DEM_SyncTick = 3,
+ DEM_SendTables = 4,
+ DEM_ClassInfo = 5,
+ DEM_StringTables = 6,
+ DEM_Packet = 7,
+ DEM_SignonPacket = 8,
+ DEM_ConsoleCmd = 9,
+ DEM_CustomData = 10,
+ DEM_CustomDataCallbacks = 11,
+ DEM_UserCmd = 12,
+ DEM_FullPacket = 13,
+ DEM_SaveGame = 14,
+ DEM_SpawnGroups = 15,
+ DEM_AnimationData = 16,
+ DEM_AnimationHeader = 17,
+ DEM_Recovery = 18,
+ DEM_Max = 19,
+ DEM_IsCompressed = 64,
+};
DumpSource2/schemas/client/EDestructibleParts_DestroyParameterFlags.h
modified • +1 / -0 • changes: 1
Show patch
@@ -8,6 +8,7 @@ enum EDestructibleParts_DestroyParameterFlags : uint32_t
ForceDamageApply = 8,
IgnoreKillEntityFlag = 16,
IgnoreHealthCheck = 32,
+ ApplyPhysicsForce = 64,
// MEnumeratorIsNotAFlag
Default = 7,
};
DumpSource2/schemas/client/EGCBaseClientMsg.h
added • +14 / -0 • changes: 14
Show patch
@@ -0,0 +1,14 @@
+enum EGCBaseClientMsg : uint32_t
+{
+ k_EMsgGCClientWelcome = 4004,
+ k_EMsgGCServerWelcome = 4005,
+ k_EMsgGCClientHello = 4006,
+ k_EMsgGCServerHello = 4007,
+ k_EMsgGCClientConnectionStatus = 4009,
+ k_EMsgGCServerConnectionStatus = 4010,
+ k_EMsgGCClientHelloPartner = 4011,
+ k_EMsgGCClientHelloPW = 4012,
+ k_EMsgGCClientHelloR2 = 4013,
+ k_EMsgGCClientHelloR3 = 4014,
+ k_EMsgGCClientHelloR4 = 4015,
+};
DumpSource2/schemas/client/EGCBaseMsg.h
added • +18 / -0 • changes: 18
Show patch
@@ -0,0 +1,18 @@
+enum EGCBaseMsg : uint32_t
+{
+ k_EMsgGCSystemMessage = 4001,
+ k_EMsgGCReplicateConVars = 4002,
+ k_EMsgGCConVarUpdated = 4003,
+ k_EMsgGCInQueue = 4008,
+ k_EMsgGCInviteToParty = 4501,
+ k_EMsgGCInvitationCreated = 4502,
+ k_EMsgGCPartyInviteResponse = 4503,
+ k_EMsgGCKickFromParty = 4504,
+ k_EMsgGCLeaveParty = 4505,
+ k_EMsgGCServerAvailable = 4506,
+ k_EMsgGCClientConnectToServer = 4507,
+ k_EMsgGCGameServerInfo = 4508,
+ k_EMsgGCError = 4509,
+ k_EMsgGCReplay_UploadedToYouTube = 4510,
+ k_EMsgGCLANServerAvailable = 4511,
+};
DumpSource2/schemas/client/EGCBaseProtoObjectTypes.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum EGCBaseProtoObjectTypes : uint32_t
+{
+ k_EProtoObjectPartyInvite = 1001,
+ k_EProtoObjectLobbyInvite = 1002,
+};
DumpSource2/schemas/client/EGCItemCustomizationNotification.h
added • +31 / -0 • changes: 31
Show patch
@@ -0,0 +1,31 @@
+enum EGCItemCustomizationNotification : uint32_t
+{
+ k_EGCItemCustomizationNotification_NameItem = 1006,
+ k_EGCItemCustomizationNotification_UnlockCrate = 1007,
+ k_EGCItemCustomizationNotification_XRayItemReveal = 1008,
+ k_EGCItemCustomizationNotification_XRayItemClaim = 1009,
+ k_EGCItemCustomizationNotification_CasketTooFull = 1011,
+ k_EGCItemCustomizationNotification_CasketContents = 1012,
+ k_EGCItemCustomizationNotification_CasketAdded = 1013,
+ k_EGCItemCustomizationNotification_CasketRemoved = 1014,
+ k_EGCItemCustomizationNotification_CasketInvFull = 1015,
+ k_EGCItemCustomizationNotification_NameBaseItem = 1019,
+ k_EGCItemCustomizationNotification_RemoveItemName = 1030,
+ k_EGCItemCustomizationNotification_RemoveSticker = 1053,
+ k_EGCItemCustomizationNotification_ExtractSticker = 1054,
+ k_EGCItemCustomizationNotification_EncapsulateSticker = 1055,
+ k_EGCItemCustomizationNotification_ApplySticker = 1086,
+ k_EGCItemCustomizationNotification_StatTrakSwap = 1088,
+ k_EGCItemCustomizationNotification_RemovePatch = 1089,
+ k_EGCItemCustomizationNotification_ApplyPatch = 1090,
+ k_EGCItemCustomizationNotification_ApplyKeychain = 1091,
+ k_EGCItemCustomizationNotification_RemoveKeychain = 1092,
+ k_EGCItemCustomizationNotification_ActivateFanToken = 9178,
+ k_EGCItemCustomizationNotification_ActivateOperationCoin = 9179,
+ k_EGCItemCustomizationNotification_GraffitiUnseal = 9185,
+ k_EGCItemCustomizationNotification_GenerateSouvenir = 9204,
+ k_EGCItemCustomizationNotification_ClientRedeemMissionReward = 9209,
+ k_EGCItemCustomizationNotification_ClientRedeemFreeReward = 9219,
+ k_EGCItemCustomizationNotification_XpShopUseTicket = 9221,
+ k_EGCItemCustomizationNotification_XpShopAckTracks = 9222,
+};
DumpSource2/schemas/client/EGCItemMsg.h
added • +150 / -0 • changes: 150
Show patch
@@ -0,0 +1,150 @@
+enum EGCItemMsg : uint32_t
+{
+ k_EMsgGCBase = 1000,
+ k_EMsgGCSetItemPosition = 1001,
+ k_EMsgGCCraft = 1002,
+ k_EMsgGCCraftResponse = 1003,
+ k_EMsgGCDelete = 1004,
+ k_EMsgGCVerifyCacheSubscription = 1005,
+ k_EMsgGCNameItem = 1006,
+ k_EMsgGCUnlockCrate_DEPRECATED = 1007,
+ k_EMsgGCUnlockCrateResponse = 1008,
+ k_EMsgGCPaintItem = 1009,
+ k_EMsgGCPaintItemResponse = 1010,
+ k_EMsgGCGoldenWrenchBroadcast = 1011,
+ k_EMsgGCMOTDRequest = 1012,
+ k_EMsgGCMOTDRequestResponse = 1013,
+ k_EMsgGCAddItemToSocket_DEPRECATED = 1014,
+ k_EMsgGCAddItemToSocketResponse_DEPRECATED = 1015,
+ k_EMsgGCAddSocketToBaseItem_DEPRECATED = 1016,
+ k_EMsgGCAddSocketToItem_DEPRECATED = 1017,
+ k_EMsgGCAddSocketToItemResponse_DEPRECATED = 1018,
+ k_EMsgGCNameBaseItem = 1019,
+ k_EMsgGCNameBaseItemResponse = 1020,
+ k_EMsgGCRemoveSocketItem_DEPRECATED = 1021,
+ k_EMsgGCRemoveSocketItemResponse_DEPRECATED = 1022,
+ k_EMsgGCCustomizeItemTexture = 1023,
+ k_EMsgGCCustomizeItemTextureResponse = 1024,
+ k_EMsgGCUseItemRequest = 1025,
+ k_EMsgGCUseItemResponse = 1026,
+ k_EMsgGCGiftedItems_DEPRECATED = 1027,
+ k_EMsgGCRemoveItemName = 1030,
+ k_EMsgGCRemoveItemPaint = 1031,
+ k_EMsgGCGiftWrapItem = 1032,
+ k_EMsgGCGiftWrapItemResponse = 1033,
+ k_EMsgGCDeliverGift = 1034,
+ k_EMsgGCDeliverGiftResponseGiver = 1035,
+ k_EMsgGCDeliverGiftResponseReceiver = 1036,
+ k_EMsgGCUnwrapGiftRequest = 1037,
+ k_EMsgGCUnwrapGiftResponse = 1038,
+ k_EMsgGCSetItemStyle = 1039,
+ k_EMsgGCUsedClaimCodeItem = 1040,
+ k_EMsgGCSortItems = 1041,
+ k_EMsgGC_RevolvingLootList_DEPRECATED = 1042,
+ k_EMsgGCLookupAccount = 1043,
+ k_EMsgGCLookupAccountResponse = 1044,
+ k_EMsgGCLookupAccountName = 1045,
+ k_EMsgGCLookupAccountNameResponse = 1046,
+ k_EMsgGCUpdateItemSchema = 1049,
+ k_EMsgGCRemoveCustomTexture = 1051,
+ k_EMsgGCRemoveCustomTextureResponse = 1052,
+ k_EMsgGCRemoveMakersMark = 1053,
+ k_EMsgGCRemoveMakersMarkResponse = 1054,
+ k_EMsgGCRemoveUniqueCraftIndex = 1055,
+ k_EMsgGCRemoveUniqueCraftIndexResponse = 1056,
+ k_EMsgGCSaxxyBroadcast = 1057,
+ k_EMsgGCBackpackSortFinished = 1058,
+ k_EMsgGCCollectItem = 1061,
+ k_EMsgGCItemAcknowledged__DEPRECATED = 1062,
+ k_EMsgGC_ReportAbuse = 1065,
+ k_EMsgGC_ReportAbuseResponse = 1066,
+ k_EMsgGCNameItemNotification = 1068,
+ k_EMsgGCApplyConsumableEffects = 1069,
+ k_EMsgGCConsumableExhausted = 1070,
+ k_EMsgGCShowItemsPickedUp = 1071,
+ k_EMsgGCClientDisplayNotification = 1072,
+ k_EMsgGCApplyStrangePart = 1073,
+ k_EMsgGC_IncrementKillCountAttribute = 1074,
+ k_EMsgGC_IncrementKillCountResponse = 1075,
+ k_EMsgGCApplyPennantUpgrade = 1076,
+ k_EMsgGCSetItemPositions = 1077,
+ k_EMsgGCApplyEggEssence = 1078,
+ k_EMsgGCNameEggEssenceResponse = 1079,
+ k_EMsgGCPaintKitItem = 1080,
+ k_EMsgGCPaintKitBaseItem = 1081,
+ k_EMsgGCPaintKitItemResponse = 1082,
+ k_EMsgGCGiftedItems = 1083,
+ k_EMsgGCUnlockItemStyle = 1084,
+ k_EMsgGCUnlockItemStyleResponse = 1085,
+ k_EMsgGCApplySticker = 1086,
+ k_EMsgGCItemAcknowledged = 1087,
+ k_EMsgGCStatTrakSwap = 1088,
+ k_EMsgGCUserTrackTimePlayedConsecutively = 1089,
+ k_EMsgGCItemCustomizationNotification = 1090,
+ k_EMsgGCModifyItemAttribute = 1091,
+ k_EMsgGCCasketItemAdd = 1092,
+ k_EMsgGCCasketItemExtract = 1093,
+ k_EMsgGCCasketItemLoadContents = 1094,
+ k_EMsgGCTradingBase = 1500,
+ k_EMsgGCTrading_InitiateTradeRequest = 1501,
+ k_EMsgGCTrading_InitiateTradeResponse = 1502,
+ k_EMsgGCTrading_StartSession = 1503,
+ k_EMsgGCTrading_SetItem = 1504,
+ k_EMsgGCTrading_RemoveItem = 1505,
+ k_EMsgGCTrading_UpdateTradeInfo = 1506,
+ k_EMsgGCTrading_SetReadiness = 1507,
+ k_EMsgGCTrading_ReadinessResponse = 1508,
+ k_EMsgGCTrading_SessionClosed = 1509,
+ k_EMsgGCTrading_CancelSession = 1510,
+ k_EMsgGCTrading_TradeChatMsg = 1511,
+ k_EMsgGCTrading_ConfirmOffer = 1512,
+ k_EMsgGCTrading_TradeTypingChatMsg = 1513,
+ k_EMsgGCServerBrowser_FavoriteServer = 1601,
+ k_EMsgGCServerBrowser_BlacklistServer = 1602,
+ k_EMsgGCServerRentalsBase = 1700,
+ k_EMsgGCItemPreviewCheckStatus = 1701,
+ k_EMsgGCItemPreviewStatusResponse = 1702,
+ k_EMsgGCItemPreviewRequest = 1703,
+ k_EMsgGCItemPreviewRequestResponse = 1704,
+ k_EMsgGCItemPreviewExpire = 1705,
+ k_EMsgGCItemPreviewExpireNotification = 1706,
+ k_EMsgGCItemPreviewItemBoughtNotification = 1707,
+ k_EMsgGCDev_NewItemRequest = 2001,
+ k_EMsgGCDev_NewItemRequestResponse = 2002,
+ k_EMsgGCDev_PaintKitDropItem = 2003,
+ k_EMsgGCDev_SchemaReservationRequest = 2004,
+ k_EMsgGCStoreGetUserData = 2500,
+ k_EMsgGCStoreGetUserDataResponse = 2501,
+ k_EMsgGCStorePurchaseInit_DEPRECATED = 2502,
+ k_EMsgGCStorePurchaseInitResponse_DEPRECATED = 2503,
+ k_EMsgGCStorePurchaseFinalize = 2504,
+ k_EMsgGCStorePurchaseFinalizeResponse = 2505,
+ k_EMsgGCStorePurchaseCancel = 2506,
+ k_EMsgGCStorePurchaseCancelResponse = 2507,
+ k_EMsgGCStorePurchaseQueryTxn = 2508,
+ k_EMsgGCStorePurchaseQueryTxnResponse = 2509,
+ k_EMsgGCStorePurchaseInit = 2510,
+ k_EMsgGCStorePurchaseInitResponse = 2511,
+ k_EMsgGCBannedWordListRequest = 2512,
+ k_EMsgGCBannedWordListResponse = 2513,
+ k_EMsgGCToGCBannedWordListBroadcast = 2514,
+ k_EMsgGCToGCBannedWordListUpdated = 2515,
+ k_EMsgGCToGCDirtySDOCache = 2516,
+ k_EMsgGCToGCDirtyMultipleSDOCache = 2517,
+ k_EMsgGCToGCUpdateSQLKeyValue = 2518,
+ k_EMsgGCToGCIsTrustedServer = 2519,
+ k_EMsgGCToGCIsTrustedServerResponse = 2520,
+ k_EMsgGCToGCBroadcastConsoleCommand = 2521,
+ k_EMsgGCServerVersionUpdated = 2522,
+ k_EMsgGCToGCWebAPIAccountChanged = 2524,
+ k_EMsgGCRequestAnnouncements = 2525,
+ k_EMsgGCRequestAnnouncementsResponse = 2526,
+ k_EMsgGCRequestPassportItemGrant = 2527,
+ k_EMsgGCClientVersionUpdated = 2528,
+ k_EMsgGCRecurringSubscriptionStatus = 2530,
+ k_EMsgGCAdjustEquipSlotsManual = 2531,
+ k_EMsgGCAdjustEquipSlotsShuffle = 2532,
+ k_EMsgGCOpenCrate = 2534,
+ k_EMsgGCAcknowledgeRentalExpiration = 2535,
+ k_EMsgGCVolatileItemLoadContents = 2536,
+};
DumpSource2/schemas/client/EGCMsgResponse.h
added • +14 / -0 • changes: 14
Show patch
@@ -0,0 +1,14 @@
+enum EGCMsgResponse : uint32_t
+{
+ k_EGCMsgResponseOK = 0,
+ k_EGCMsgResponseDenied = 1,
+ k_EGCMsgResponseServerError = 2,
+ k_EGCMsgResponseTimeout = 3,
+ k_EGCMsgResponseInvalid = 4,
+ k_EGCMsgResponseNoMatch = 5,
+ k_EGCMsgResponseUnknownError = 6,
+ k_EGCMsgResponseNotLoggedOn = 7,
+ k_EGCMsgFailedToCreate = 8,
+ k_EGCMsgLimitExceeded = 9,
+ k_EGCMsgCommitUnfinalized = 10,
+};
DumpSource2/schemas/client/EGCSystemMsg.h
added • +95 / -0 • changes: 95
Show patch
@@ -0,0 +1,95 @@
+enum EGCSystemMsg : uint32_t
+{
+ k_EGCMsgInvalid = 0,
+ k_EGCMsgMulti = 1,
+ k_EGCMsgGenericReply = 10,
+ k_EGCMsgSystemBase = 50,
+ k_EGCMsgAchievementAwarded = 51,
+ k_EGCMsgConCommand = 52,
+ k_EGCMsgStartPlaying = 53,
+ k_EGCMsgStopPlaying = 54,
+ k_EGCMsgStartGameserver = 55,
+ k_EGCMsgStopGameserver = 56,
+ k_EGCMsgWGRequest = 57,
+ k_EGCMsgWGResponse = 58,
+ k_EGCMsgGetUserGameStatsSchema = 59,
+ k_EGCMsgGetUserGameStatsSchemaResponse = 60,
+ k_EGCMsgGetUserStatsDEPRECATED = 61,
+ k_EGCMsgGetUserStatsResponse = 62,
+ k_EGCMsgAppInfoUpdated = 63,
+ k_EGCMsgValidateSession = 64,
+ k_EGCMsgValidateSessionResponse = 65,
+ k_EGCMsgLookupAccountFromInput = 66,
+ k_EGCMsgSendHTTPRequest = 67,
+ k_EGCMsgSendHTTPRequestResponse = 68,
+ k_EGCMsgPreTestSetup = 69,
+ k_EGCMsgRecordSupportAction = 70,
+ k_EGCMsgGetAccountDetails_DEPRECATED = 71,
+ k_EGCMsgReceiveInterAppMessage = 73,
+ k_EGCMsgFindAccounts = 74,
+ k_EGCMsgPostAlert = 75,
+ k_EGCMsgGetLicenses = 76,
+ k_EGCMsgGetUserStats = 77,
+ k_EGCMsgGetCommands = 78,
+ k_EGCMsgGetCommandsResponse = 79,
+ k_EGCMsgAddFreeLicense = 80,
+ k_EGCMsgAddFreeLicenseResponse = 81,
+ k_EGCMsgGetIPLocation = 82,
+ k_EGCMsgGetIPLocationResponse = 83,
+ k_EGCMsgSystemStatsSchema = 84,
+ k_EGCMsgGetSystemStats = 85,
+ k_EGCMsgGetSystemStatsResponse = 86,
+ k_EGCMsgSendEmail = 87,
+ k_EGCMsgSendEmailResponse = 88,
+ k_EGCMsgGetEmailTemplate = 89,
+ k_EGCMsgGetEmailTemplateResponse = 90,
+ k_EGCMsgGrantGuestPass = 91,
+ k_EGCMsgGrantGuestPassResponse = 92,
+ k_EGCMsgGetAccountDetails = 93,
+ k_EGCMsgGetAccountDetailsResponse = 94,
+ k_EGCMsgGetPersonaNames = 95,
+ k_EGCMsgGetPersonaNamesResponse = 96,
+ k_EGCMsgMultiplexMsg = 97,
+ k_EGCMsgMultiplexMsgResponse = 98,
+ k_EGCMsgWebAPIRegisterInterfaces = 101,
+ k_EGCMsgWebAPIJobRequest = 102,
+ k_EGCMsgWebAPIJobRequestHttpResponse = 104,
+ k_EGCMsgWebAPIJobRequestForwardResponse = 105,
+ k_EGCMsgMemCachedGet = 200,
+ k_EGCMsgMemCachedGetResponse = 201,
+ k_EGCMsgMemCachedSet = 202,
+ k_EGCMsgMemCachedDelete = 203,
+ k_EGCMsgMemCachedStats = 204,
+ k_EGCMsgMemCachedStatsResponse = 205,
+ k_EGCMsgMasterSetDirectory = 220,
+ k_EGCMsgMasterSetDirectoryResponse = 221,
+ k_EGCMsgMasterSetWebAPIRouting = 222,
+ k_EGCMsgMasterSetWebAPIRoutingResponse = 223,
+ k_EGCMsgMasterSetClientMsgRouting = 224,
+ k_EGCMsgMasterSetClientMsgRoutingResponse = 225,
+ k_EGCMsgSetOptions = 226,
+ k_EGCMsgSetOptionsResponse = 227,
+ k_EGCMsgSystemBase2 = 500,
+ k_EGCMsgGetPurchaseTrustStatus = 501,
+ k_EGCMsgGetPurchaseTrustStatusResponse = 502,
+ k_EGCMsgUpdateSession = 503,
+ k_EGCMsgGCAccountVacStatusChange = 504,
+ k_EGCMsgCheckFriendship = 505,
+ k_EGCMsgCheckFriendshipResponse = 506,
+ k_EGCMsgGetPartnerAccountLink = 507,
+ k_EGCMsgGetPartnerAccountLinkResponse = 508,
+ k_EGCMsgDPPartnerMicroTxns = 512,
+ k_EGCMsgDPPartnerMicroTxnsResponse = 513,
+ k_EGCMsgVacVerificationChange = 518,
+ k_EGCMsgAccountPhoneNumberChange = 519,
+ k_EGCMsgInviteUserToLobby = 523,
+ k_EGCMsgGetGamePersonalDataCategoriesRequest = 524,
+ k_EGCMsgGetGamePersonalDataCategoriesResponse = 525,
+ k_EGCMsgGetGamePersonalDataEntriesRequest = 526,
+ k_EGCMsgGetGamePersonalDataEntriesResponse = 527,
+ k_EGCMsgTerminateGamePersonalDataEntriesRequest = 528,
+ k_EGCMsgTerminateGamePersonalDataEntriesResponse = 529,
+ k_EGCMsgRecurringSubscriptionStatusChange = 530,
+ k_EGCMsgDirectServiceMethod = 531,
+ k_EGCMsgDirectServiceMethodResponse = 532,
+};
DumpSource2/schemas/client/EGCToGCMsg.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+enum EGCToGCMsg : uint32_t
+{
+ k_EGCToGCMsgMasterAck = 150,
+ k_EGCToGCMsgMasterAckResponse = 151,
+ k_EGCToGCMsgRouted = 152,
+ k_EGCToGCMsgRoutedReply = 153,
+ k_EMsgUpdateSessionIP = 154,
+ k_EMsgRequestSessionIP = 155,
+ k_EMsgRequestSessionIPResponse = 156,
+ k_EGCToGCMsgMasterStartupComplete = 157,
+};
DumpSource2/schemas/client/EHapticPulseType.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum EHapticPulseType : uint32_t
+{
+ VR_HAND_HAPTIC_PULSE_LIGHT = 0,
+ VR_HAND_HAPTIC_PULSE_MEDIUM = 1,
+ VR_HAND_HAPTIC_PULSE_STRONG = 2,
+};
DumpSource2/schemas/client/EHitGroup.h
added • +13 / -0 • changes: 13
Show patch
@@ -0,0 +1,13 @@
+enum EHitGroup : uint32_t
+{
+ EHG_Generic = 0,
+ EHG_Head = 1,
+ EHG_Chest = 2,
+ EHG_Stomach = 3,
+ EHG_LeftArm = 4,
+ EHG_RightArm = 5,
+ EHG_LeftLeg = 6,
+ EHG_RightLeg = 7,
+ EHG_Gear = 8,
+ EHG_Miss = 9,
+};
DumpSource2/schemas/client/EInitSystemResult.h
added • +12 / -0 • changes: 12
Show patch
@@ -0,0 +1,12 @@
+enum EInitSystemResult : uint32_t
+{
+ k_EInitSystemResult_Invalid = 0,
+ k_EInitSystemResult_Success = 1,
+ k_EInitSystemResult_None = 2,
+ k_EInitSystemResult_NotFound = 3,
+ k_EInitSystemResult_Existing = 4,
+ k_EInitSystemResult_FailedOpen = 5,
+ k_EInitSystemResult_Mismatch = 6,
+ k_EInitSystemResult_FailedInit = 7,
+ k_EInitSystemResult_Max = 8,
+};
DumpSource2/schemas/client/ENPCBehaviorOverride_t.h
removed • +0 / -5 • changes: 5
Show patch
@@ -1,5 +0,0 @@
-enum ENPCBehaviorOverride_t : uint32_t
-{
- eKeepExisting = 0,
- eTakeOver = 1,
-};
DumpSource2/schemas/client/ENetworkDisconnectionReason.h
added • +124 / -0 • changes: 124
Show patch
@@ -0,0 +1,124 @@
+enum ENetworkDisconnectionReason : uint32_t
+{
+ NETWORK_DISCONNECT_INVALID = 0,
+ NETWORK_DISCONNECT_SHUTDOWN = 1,
+ NETWORK_DISCONNECT_DISCONNECT_BY_USER = 2,
+ NETWORK_DISCONNECT_DISCONNECT_BY_SERVER = 3,
+ NETWORK_DISCONNECT_LOST = 4,
+ NETWORK_DISCONNECT_OVERFLOW = 5,
+ NETWORK_DISCONNECT_STEAM_BANNED = 6,
+ NETWORK_DISCONNECT_STEAM_INUSE = 7,
+ NETWORK_DISCONNECT_STEAM_TICKET = 8,
+ NETWORK_DISCONNECT_STEAM_LOGON = 9,
+ NETWORK_DISCONNECT_STEAM_AUTHCANCELLED = 10,
+ NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED = 11,
+ NETWORK_DISCONNECT_STEAM_AUTHINVALID = 12,
+ NETWORK_DISCONNECT_STEAM_VACBANSTATE = 13,
+ NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE = 14,
+ NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT = 15,
+ NETWORK_DISCONNECT_STEAM_DROPPED = 16,
+ NETWORK_DISCONNECT_STEAM_OWNERSHIP = 17,
+ NETWORK_DISCONNECT_SERVERINFO_OVERFLOW = 18,
+ NETWORK_DISCONNECT_TICKMSG_OVERFLOW = 19,
+ NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW = 20,
+ NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW = 21,
+ NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW = 22,
+ NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW = 23,
+ NETWORK_DISCONNECT_SNAPSHOTOVERFLOW = 24,
+ NETWORK_DISCONNECT_SNAPSHOTERROR = 25,
+ NETWORK_DISCONNECT_RELIABLEOVERFLOW = 26,
+ NETWORK_DISCONNECT_BADDELTATICK = 27,
+ NETWORK_DISCONNECT_NOMORESPLITS = 28,
+ NETWORK_DISCONNECT_TIMEDOUT = 29,
+ NETWORK_DISCONNECT_DISCONNECTED = 30,
+ NETWORK_DISCONNECT_LEAVINGSPLIT = 31,
+ NETWORK_DISCONNECT_DIFFERENTCLASSTABLES = 32,
+ NETWORK_DISCONNECT_BADRELAYPASSWORD = 33,
+ NETWORK_DISCONNECT_BADSPECTATORPASSWORD = 34,
+ NETWORK_DISCONNECT_HLTVRESTRICTED = 35,
+ NETWORK_DISCONNECT_NOSPECTATORS = 36,
+ NETWORK_DISCONNECT_HLTVUNAVAILABLE = 37,
+ NETWORK_DISCONNECT_HLTVSTOP = 38,
+ NETWORK_DISCONNECT_KICKED = 39,
+ NETWORK_DISCONNECT_BANADDED = 40,
+ NETWORK_DISCONNECT_KICKBANADDED = 41,
+ NETWORK_DISCONNECT_HLTVDIRECT = 42,
+ NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA = 43,
+ NETWORK_DISCONNECT_PURESERVER_MISMATCH = 44,
+ NETWORK_DISCONNECT_USERCMD = 45,
+ NETWORK_DISCONNECT_REJECTED_BY_GAME = 46,
+ NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR = 47,
+ NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR = 48,
+ NETWORK_DISCONNECT_BAD_SERVER_PASSWORD = 49,
+ NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION = 50,
+ NETWORK_DISCONNECT_CONNECTION_FAILURE = 51,
+ NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS = 52,
+ NETWORK_DISCONNECT_RECONNECTION = 53,
+ NETWORK_DISCONNECT_LOOPSHUTDOWN = 54,
+ NETWORK_DISCONNECT_LOOPDEACTIVATE = 55,
+ NETWORK_DISCONNECT_HOST_ENDGAME = 56,
+ NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE = 57,
+ NETWORK_DISCONNECT_CREATE_SERVER_FAILED = 58,
+ NETWORK_DISCONNECT_EXITING = 59,
+ NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE = 60,
+ NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY = 61,
+ NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL = 62,
+ NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP = 63,
+ NETWORK_DISCONNECT_CLIENT_NO_MAP = 64,
+ NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP = 65,
+ NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM = 66,
+ NETWORK_DISCONNECT_STEAM_DENY_MISC = 67,
+ NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 68,
+ NETWORK_DISCONNECT_SERVER_SHUTDOWN = 69,
+ NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 71,
+ NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 72,
+ NETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 73,
+ NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS = 74,
+ NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY = 75,
+ NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG = 76,
+ NETWORK_DISCONNECT_LOCALPROBLEM_OTHER = 77,
+ NETWORK_DISCONNECT_REMOTE_TIMEOUT = 79,
+ NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING = 80,
+ NETWORK_DISCONNECT_REMOTE_OTHER = 81,
+ NETWORK_DISCONNECT_REMOTE_BADCRYPT = 82,
+ NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED = 83,
+ NETWORK_DISCONNECT_UNUSUAL = 84,
+ NETWORK_DISCONNECT_INTERNAL_ERROR = 85,
+ NETWORK_DISCONNECT_REJECT_BADCHALLENGE = 128,
+ NETWORK_DISCONNECT_REJECT_NOLOBBY = 129,
+ NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP = 130,
+ NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER = 131,
+ NETWORK_DISCONNECT_REJECT_HIDDEN_GAME = 132,
+ NETWORK_DISCONNECT_REJECT_LANRESTRICT = 133,
+ NETWORK_DISCONNECT_REJECT_BADPASSWORD = 134,
+ NETWORK_DISCONNECT_REJECT_SERVERFULL = 135,
+ NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION = 136,
+ NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL = 137,
+ NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY = 138,
+ NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY = 139,
+ NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH = 140,
+ NETWORK_DISCONNECT_REJECT_OLDPROTOCOL = 141,
+ NETWORK_DISCONNECT_REJECT_NEWPROTOCOL = 142,
+ NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION = 143,
+ NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN = 144,
+ NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN = 145,
+ NETWORK_DISCONNECT_REJECT_STEAM = 146,
+ NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 147,
+ NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 148,
+ NETWORK_DISCONNECT_REJECT_BANNED = 149,
+ NETWORK_DISCONNECT_KICKED_TEAMKILLING = 150,
+ NETWORK_DISCONNECT_KICKED_TK_START = 151,
+ NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 152,
+ NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 153,
+ NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 154,
+ NETWORK_DISCONNECT_KICKED_TEAMHURTING = 155,
+ NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 156,
+ NETWORK_DISCONNECT_KICKED_VOTEDOFF = 157,
+ NETWORK_DISCONNECT_KICKED_IDLE = 158,
+ NETWORK_DISCONNECT_KICKED_SUICIDE = 159,
+ NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 160,
+ NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 161,
+ NETWORK_DISCONNECT_KICKED_INPUTAUTOMATION = 162,
+ NETWORK_DISCONNECT_KICKED_VACNETABNORMALBEHAVIOR = 163,
+ NETWORK_DISCONNECT_KICKED_INSECURECLIENT = 164,
+};
DumpSource2/schemas/client/EProtoDebugVisiblity.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum EProtoDebugVisiblity : uint32_t
+{
+ k_EProtoDebugVisibility_Always = 0,
+ k_EProtoDebugVisibility_Server = 70,
+ k_EProtoDebugVisibility_ValveServer = 80,
+ k_EProtoDebugVisibility_GC = 90,
+ k_EProtoDebugVisibility_Never = 100,
+};
DumpSource2/schemas/client/EQueryCvarValueStatus.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+enum EQueryCvarValueStatus : uint32_t
+{
+ eQueryCvarValueStatus_ValueIntact = 0,
+ eQueryCvarValueStatus_CvarNotFound = 1,
+ eQueryCvarValueStatus_NotACvar = 2,
+ eQueryCvarValueStatus_CvarProtected = 3,
+};
DumpSource2/schemas/client/ESOMsg.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+enum ESOMsg : uint32_t
+{
+ k_ESOMsg_Create = 21,
+ k_ESOMsg_Update = 22,
+ k_ESOMsg_Destroy = 23,
+ k_ESOMsg_CacheSubscribed = 24,
+ k_ESOMsg_CacheUnsubscribed = 25,
+ k_ESOMsg_UpdateMultiple = 26,
+ k_ESOMsg_CacheSubscriptionCheck = 27,
+ k_ESOMsg_CacheSubscriptionRefresh = 28,
+};
DumpSource2/schemas/client/ESceneRequestState_t.h
removed • +0 / -7 • changes: 7
Show patch
@@ -1,7 +0,0 @@
-enum ESceneRequestState_t : uint32_t
-{
- INACTIVE = 0,
- ACTIVE = 1,
- FINISHED = 2,
- FAILED = 3,
-};
DumpSource2/schemas/client/ESource2PlayStatsFieldType.h
added • +21 / -0 • changes: 21
Show patch
@@ -0,0 +1,21 @@
+enum ESource2PlayStatsFieldType : uint32_t
+{
+ Source2PlayStats_Invalid = 0,
+ Source2PlayStats_UInt64 = 1,
+ Source2PlayStats_UInt32 = 2,
+ Source2PlayStats_UInt16 = 3,
+ Source2PlayStats_UInt8 = 4,
+ Source2PlayStats_Int64 = 5,
+ Source2PlayStats_Int32 = 6,
+ Source2PlayStats_Int16 = 7,
+ Source2PlayStats_Int8 = 8,
+ Source2PlayStats_Float64 = 9,
+ Source2PlayStats_Float32 = 10,
+ Source2PlayStats_Bool = 11,
+ Source2PlayStats_String = 12,
+ Source2PlayStats_LowCardinalityString = 13,
+ Source2PlayStats_UTCDateTime = 14,
+ Source2PlayStats_SteamIDTrustBucket = 15,
+ Source2PlayStats_SteamIDTrustBucketMin = 16,
+ Source2PlayStats_SteamID = 17,
+};
DumpSource2/schemas/client/ESplitScreenMessageType.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum ESplitScreenMessageType : uint32_t
+{
+ MSG_SPLITSCREEN_ADDUSER = 0,
+ MSG_SPLITSCREEN_REMOVEUSER = 1,
+};
DumpSource2/schemas/client/ETEProtobufIds.h
added • +26 / -0 • changes: 26
Show patch
@@ -0,0 +1,26 @@
+enum ETEProtobufIds : uint32_t
+{
+ TE_EffectDispatchId = 400,
+ TE_ArmorRicochetId = 401,
+ TE_BeamEntPointId = 402,
+ TE_BeamEntsId = 403,
+ TE_BeamPointsId = 404,
+ TE_BeamRingId = 405,
+ TE_BubblesId = 408,
+ TE_BubbleTrailId = 409,
+ TE_DecalId = 410,
+ TE_WorldDecalId = 411,
+ TE_EnergySplashId = 412,
+ TE_FizzId = 413,
+ TE_ShatterSurfaceId = 414,
+ TE_GlowSpriteId = 415,
+ TE_ImpactId = 416,
+ TE_MuzzleFlashId = 417,
+ TE_BloodStreamId = 418,
+ TE_ExplosionId = 419,
+ TE_DustId = 420,
+ TE_LargeFunnelId = 421,
+ TE_SparksId = 422,
+ TE_PhysicsPropId = 423,
+ TE_SmokeId = 426,
+};
DumpSource2/schemas/client/ETeam.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+enum ETeam : uint32_t
+{
+ ET_Unknown = 0,
+ ET_Spectator = 1,
+ ET_Terrorist = 2,
+ ET_CT = 3,
+};
DumpSource2/schemas/client/EUnlockStyle.h
added • +9 / -0 • changes: 9
Show patch
@@ -0,0 +1,9 @@
+enum EUnlockStyle : uint32_t
+{
+ k_UnlockStyle_Succeeded = 0,
+ k_UnlockStyle_Failed_PreReq = 1,
+ k_UnlockStyle_Failed_CantAfford = 2,
+ k_UnlockStyle_Failed_CantCommit = 3,
+ k_UnlockStyle_Failed_CantLockCache = 4,
+ k_UnlockStyle_Failed_CantAffordAttrib = 5,
+};
DumpSource2/schemas/client/EWeaponType.h
added • +15 / -0 • changes: 15
Show patch
@@ -0,0 +1,15 @@
+enum EWeaponType : uint32_t
+{
+ EWT_Knife = 0,
+ EWT_Pistol = 1,
+ EWT_SubMachineGun = 2,
+ EWT_Rifle = 3,
+ EWT_Shotgun = 4,
+ EWT_SniperRifle = 5,
+ EWT_MachineGun = 6,
+ EWT_C4 = 7,
+ EWT_Grenade = 8,
+ EWT_Equipment = 9,
+ EWT_StackableItem = 10,
+ EWT_Unknown = 11,
+};
DumpSource2/schemas/client/EngineCountdownTimer.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = null
class EngineCountdownTimer
{
float32 m_duration;
DumpSource2/schemas/client/EntityDissolveType_t.h
renamed • +1 / -1 • changes: 2
Show patch
@@ -1,4 +1,4 @@
-enum EntityDisolveType_t : uint32_t
+enum EntityDissolveType_t : uint32_t
{
ENTITY_DISSOLVE_INVALID = -1,
ENTITY_DISSOLVE_NORMAL = 0,
DumpSource2/schemas/client/EntityRenderAttribute_t.h
modified • +11 / -0 • changes: 11
Show patch
@@ -1,3 +1,14 @@
+// MGetKV3ClassDefaults = {
+// "_class": "EntityRenderAttribute_t",
+// "m_ID": <HIDDEN FOR DIFF>,
+// "m_Values":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ]
+//}
class EntityRenderAttribute_t
{
CUtlStringToken m_ID;
DumpSource2/schemas/client/EventBugBugComplete_t.h
added • +4 / -0 • changes: 4
Show patch
@@ -0,0 +1,4 @@
+class EventBugBugComplete_t
+{
+ EventBugBug_t* m_pPayload;
+};
DumpSource2/schemas/client/EventBugBug_t.h
added • +3 / -0 • changes: 3
Show patch
@@ -0,0 +1,3 @@
+class EventBugBug_t
+{
+};
DumpSource2/schemas/client/ExternalAnimGraph_t.h
removed • +0 / -8 • changes: 8
Show patch
@@ -1,8 +0,0 @@
-class ExternalAnimGraph_t
-{
- ExternalAnimGraphHandle_t m_hExtGraphHandle;
- CGlobalSymbol m_sExternalGraphSlotID;
- CStrongHandleCopyable< InfoForResourceTypeCNmGraphDefinition > m_hGraphDefinition;
- CHandle< CBaseAnimGraph > m_hExternalGraphOwner;
- ExternalAnimGraphInactiveBehavior_t m_nInactiveBehavior;
-};
DumpSource2/schemas/client/GCClientLauncherType.h
added • +7 / -0 • changes: 7
Show patch
@@ -0,0 +1,7 @@
+enum GCClientLauncherType : uint32_t
+{
+ GCClientLauncherType_DEFAULT = 0,
+ GCClientLauncherType_PERFECTWORLD = 1,
+ GCClientLauncherType_STEAMCHINA = 2,
+ GCClientLauncherType_SOURCE2 = 3,
+};
DumpSource2/schemas/client/GCConnectionStatus.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum GCConnectionStatus : uint32_t
+{
+ GCConnectionStatus_HAVE_SESSION = 0,
+ GCConnectionStatus_GC_GOING_DOWN = 1,
+ GCConnectionStatus_NO_SESSION = 2,
+ GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3,
+ GCConnectionStatus_NO_STEAM = 4,
+};
DumpSource2/schemas/client/GCProtoBufMsgSrc.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum GCProtoBufMsgSrc : uint32_t
+{
+ GCProtoBufMsgSrc_Unspecified = 0,
+ GCProtoBufMsgSrc_FromSystem = 1,
+ GCProtoBufMsgSrc_FromSteamID = 2,
+ GCProtoBufMsgSrc_FromGC = 3,
+ GCProtoBufMsgSrc_ReplySystem = 4,
+};
DumpSource2/schemas/client/GC_BannedWordType.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum GC_BannedWordType : uint32_t
+{
+ GC_BANNED_WORD_DISABLE_WORD = 0,
+ GC_BANNED_WORD_ENABLE_WORD = 1,
+};
DumpSource2/schemas/client/GameAnimEventIndex_t.h
modified • +20 / -7 • changes: 27
Show patch
@@ -30,11 +30,24 @@ enum GameAnimEventIndex_t : uint32_t
AE_ENABLE_PLATFORM_PLAYER_FOLLOWS_YAW = 27,
AE_ENABLE_PLATFORM_PLAYER_IGNORES_YAW = 28,
AE_DESTRUCTIBLE_PART_DESTROY = 29,
- AE_CL_WEAPON_TRANSITION_INTO_HAND = 30,
- AE_SV_ATTACH_SILENCER_COMPLETE = 31,
- AE_SV_DETACH_SILENCER_COMPLETE = 32,
- AE_CL_EJECT_MAG = 33,
- AE_WPN_COMPLETE_RELOAD = 34,
- AE_WPN_HEALTHSHOT_INJECT = 35,
- AE_GRENADE_THROW_COMPLETE = 36,
+ AE_VEHICLE_ENTER_FINISHED = 30,
+ AE_VEHICLE_EXIT_FINISHED = 31,
+ AE_SCRIPT_FIRE_EVENT_01 = 32,
+ AE_SCRIPT_FIRE_EVENT_02 = 33,
+ AE_SCRIPT_FIRE_EVENT_03 = 34,
+ AE_SCRIPT_FIRE_EVENT_04 = 35,
+ AE_SCRIPT_FIRE_EVENT_05 = 36,
+ AE_SCRIPT_FIRE_EVENT_06 = 37,
+ AE_SCRIPT_FIRE_EVENT_07 = 38,
+ AE_SCRIPT_FIRE_EVENT_08 = 39,
+ AE_SCRIPT_FIRE_EVENT_09 = 40,
+ AE_SCRIPT_FIRE_EVENT_10 = 41,
+ AE_CL_WEAPON_TRANSITION_INTO_HAND = 42,
+ AE_SV_ATTACH_SILENCER_COMPLETE = 43,
+ AE_SV_DETACH_SILENCER_COMPLETE = 44,
+ AE_CL_EJECT_MAG = 45,
+ AE_WPN_COMPLETE_RELOAD = 46,
+ AE_WPN_HEALTHSHOT_INJECT = 47,
+ AE_GRENADE_THROW_COMPLETE = 48,
+ AE_COUNT = 49,
};
DumpSource2/schemas/client/IClientAlphaProperty.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class IClientAlphaProperty
{
};
DumpSource2/schemas/client/INavPathCostAreaFilter.h
added • +4 / -0 • changes: 4
Show patch
@@ -0,0 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
+class INavPathCostAreaFilter
+{
+};
DumpSource2/schemas/client/ISkeletonAnimationController.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class ISkeletonAnimationController
{
};
DumpSource2/schemas/client/InteractionPassive_t.h
removed • +0 / -6 • changes: 6
Show patch
@@ -1,6 +0,0 @@
-enum InteractionPassive_t : uint32_t
-{
- INTERACT_PASSIVE_NONE = 0,
- INTERACT_PASSIVE_LOOKAT = 1,
- INTERACT_PASSIVE_SPEAK = 2,
-};
DumpSource2/schemas/client/InteractionPriority_t.h
removed • +0 / -8 • changes: 8
Show patch
@@ -1,8 +0,0 @@
-enum InteractionPriority_t : uint32_t
-{
- INTERACT_PRIORITY_NONE = 0,
- INTERACT_PRIORITY_PASSIVE = 1,
- INTERACT_PRIORITY_LOW = 2,
- INTERACT_PRIORITY_MED = 3,
- INTERACT_PRIORITY_HIGH = 4,
-};
DumpSource2/schemas/client/IntervalTimer.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = null
class IntervalTimer
{
GameTime_t m_timestamp;
DumpSource2/schemas/client/NET_Messages.h
added • +16 / -0 • changes: 16
Show patch
@@ -0,0 +1,16 @@
+enum NET_Messages : uint32_t
+{
+ net_NOP = 0,
+ net_Disconnect_Legacy = 1,
+ net_SplitScreenUser = 3,
+ net_Tick = 4,
+ net_StringCmd = 5,
+ net_SetConVar = 6,
+ net_SignonState = 7,
+ net_SpawnGroup_Load = 8,
+ net_SpawnGroup_ManifestUpdate = 9,
+ net_SpawnGroup_SetCreationTick = 11,
+ net_SpawnGroup_Unload = 12,
+ net_SpawnGroup_LoadCompleted = 13,
+ net_DebugOverlay = 15,
+};
DumpSource2/schemas/client/P2P_Messages.h
added • +10 / -0 • changes: 10
Show patch
@@ -0,0 +1,10 @@
+enum P2P_Messages : uint32_t
+{
+ p2p_TextMessage = 256,
+ p2p_Voice = 257,
+ p2p_Ping = 258,
+ p2p_VRAvatarPosition = 259,
+ p2p_WatchSynchronization = 260,
+ p2p_FightingGame_GameData = 261,
+ p2p_FightingGame_Connection = 262,
+};
DumpSource2/schemas/client/PARTICLE_MESSAGE.h
added • +45 / -0 • changes: 45
Show patch
@@ -0,0 +1,45 @@
+enum PARTICLE_MESSAGE : uint32_t
+{
+ GAME_PARTICLE_MANAGER_EVENT_CREATE = 0,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE = 1,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD = 2,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION = 3,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK = 4,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENT = 5,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET = 6,
+ GAME_PARTICLE_MANAGER_EVENT_DESTROY = 7,
+ GAME_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING = 8,
+ GAME_PARTICLE_MANAGER_EVENT_RELEASE = 9,
+ GAME_PARTICLE_MANAGER_EVENT_LATENCY = 10,
+ GAME_PARTICLE_MANAGER_EVENT_SHOULD_DRAW = 11,
+ GAME_PARTICLE_MANAGER_EVENT_FROZEN = 12,
+ GAME_PARTICLE_MANAGER_EVENT_CHANGE_CONTROL_POINT_ATTACHMENT = 13,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION = 14,
+ GAME_PARTICLE_MANAGER_EVENT_SET_FOW_PROPERTIES = 15,
+ GAME_PARTICLE_MANAGER_EVENT_SET_TEXT = 16,
+ GAME_PARTICLE_MANAGER_EVENT_SET_SHOULD_CHECK_FOW = 17,
+ GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_MODEL = 18,
+ GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_SNAPSHOT = 19,
+ GAME_PARTICLE_MANAGER_EVENT_SET_TEXTURE_ATTRIBUTE = 20,
+ GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_GENERIC_FLAG = 21,
+ GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_TINT_AND_DESAT = 22,
+ GAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED = 23,
+ GAME_PARTICLE_MANAGER_EVENT_SKIP_TO_TIME = 24,
+ GAME_PARTICLE_MANAGER_EVENT_CAN_FREEZE = 25,
+ GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT = 26,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM = 27,
+ GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE = 28,
+ GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING = 29,
+ GAME_PARTICLE_MANAGER_EVENT_ADD_MODELLIST_OVERRIDE_ELEMENT = 30,
+ GAME_PARTICLE_MANAGER_EVENT_CLEAR_MODELLIST_OVERRIDE = 31,
+ GAME_PARTICLE_MANAGER_EVENT_CREATE_PHYSICS_SIM = 32,
+ GAME_PARTICLE_MANAGER_EVENT_DESTROY_PHYSICS_SIM = 33,
+ GAME_PARTICLE_MANAGER_EVENT_SET_VDATA = 34,
+ GAME_PARTICLE_MANAGER_EVENT_SET_MATERIAL_OVERRIDE = 35,
+ GAME_PARTICLE_MANAGER_EVENT_ADD_FAN = 36,
+ GAME_PARTICLE_MANAGER_EVENT_UPDATE_FAN = 37,
+ GAME_PARTICLE_MANAGER_EVENT_SET_CLUSTER_GROWTH = 38,
+ GAME_PARTICLE_MANAGER_EVENT_REMOVE_FAN = 39,
+ GAME_PARTICLE_MANAGER_EVENT_CREATE_SMOKE_GRID = 40,
+ GAME_PARTICLE_MANAGER_EVENT_SET_OVERRIDE_TEXTURE = 41,
+};
DumpSource2/schemas/client/ParticleNode_t.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,7 +4,7 @@ class ParticleNode_t
ParticleIndex_t m_iIndex;
GameTime_t m_flStartTime;
float32 m_flGrowthDuration;
- Vector m_vecGrowthOrigin;
+ VectorWS m_vecGrowthOrigin;
float32 m_flEndcapTime;
bool m_bMarkedForDelete;
};
DumpSource2/schemas/client/PhysObjectHeader_t.h
modified • +1 / -1 • changes: 2
Show patch
@@ -4,7 +4,7 @@ class PhysObjectHeader_t
PhysInterfaceId_t type;
CHandle< C_BaseEntity > hEntity;
CUtlSymbolLarge fieldName;
- int32 nObjects;
+ bool bSaveObject;
CUtlSymbolLarge modelName;
AABB_t bbox;
physics_save_sphere_t sphere;
DumpSource2/schemas/client/PhysicsRagdollPose_t.h
modified • +7 / -0 • changes: 7
Show patch
@@ -1,3 +1,10 @@
+// MGetKV3ClassDefaults = {
+// "_class": "PhysicsRagdollPose_t",
+// "m_Transforms":
+// [
+// ],
+// "m_hOwner": null
+//}
class PhysicsRagdollPose_t
{
C_NetworkUtlVectorBase< CTransform > m_Transforms;
DumpSource2/schemas/client/PrefetchType.h
added • +4 / -0 • changes: 4
Show patch
@@ -0,0 +1,4 @@
+enum PrefetchType : uint32_t
+{
+ PFT_SOUND = 0,
+};
DumpSource2/schemas/client/PreviewCharacterBannerAnimation.h
modified • +11 / -10 • changes: 21
Show patch
@@ -19,14 +19,15 @@ enum PreviewCharacterBannerAnimation : uint32_t
BANNER_4SHOT_D = 15,
CELEBRATE_STRETCH_NOWEAP_IDLE0 = 16,
BANNER_BOMB_PLANT = 17,
- BANNER_BOMB_DEFUSAL_VER = 18,
- BANNER_FIRE = 19,
- BANNER_BOMB_BLAST_TOSS = 20,
- BANNER_BOMB_BLAST01 = 21,
- BANNER_BOMB_BLAST02 = 22,
- BANNER_BOMB_BLAST03 = 23,
- BANNER_CELEBRATE_01 = 24,
- BANNER_CELEBRATE_02 = 25,
- BANNER_CELEBRATE_03 = 26,
- BANNER_CELEBRATE_04 = 27,
+ BANNER_BOMB_DEFUSAL_VER1 = 18,
+ BANNER_BOMB_DEFUSAL_VER2 = 19,
+ BANNER_FIRE = 20,
+ BANNER_BOMB_BLAST_TOSS = 21,
+ BANNER_BOMB_BLAST01 = 22,
+ BANNER_BOMB_BLAST02 = 23,
+ BANNER_BOMB_BLAST03 = 24,
+ BANNER_CELEBRATE_01 = 25,
+ BANNER_CELEBRATE_02 = 26,
+ BANNER_CELEBRATE_03 = 27,
+ BANNER_CELEBRATE_04 = 28,
};
DumpSource2/schemas/client/QuestType.h
added • +5 / -0 • changes: 5
Show patch
@@ -0,0 +1,5 @@
+enum QuestType : uint32_t
+{
+ k_EQuestType_Operation = 1,
+ k_EQuestType_RecurringMission = 2,
+};
DumpSource2/schemas/client/RagdollCreationParams_t.h
modified • +5 / -0 • changes: 5
Show patch
@@ -1,3 +1,8 @@
+// MGetKV3ClassDefaults = {
+// "m_bForceCurrentWorldTransform": false,
+// "m_bUseLRURetirement": true,
+// "m_nHealthToGrant": 0
+//}
class RagdollCreationParams_t
{
// MNotSaved
DumpSource2/schemas/client/ReplayEventType_t.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum ReplayEventType_t : uint32_t
+{
+ REPLAY_EVENT_CANCEL = 0,
+ REPLAY_EVENT_DEATH = 1,
+ REPLAY_EVENT_GENERIC = 2,
+ REPLAY_EVENT_STUCK_NEED_FULL_UPDATE = 3,
+ REPLAY_EVENT_VICTORY = 4,
+};
DumpSource2/schemas/client/RequestPause_t.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum RequestPause_t : uint32_t
+{
+ RP_PAUSE = 0,
+ RP_UNPAUSE = 1,
+ RP_TOGGLEPAUSE = 2,
+};
DumpSource2/schemas/client/ResponseParams.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "odds": 100,
+// "flags": 0
+//}
class ResponseParams
{
int16 odds;
DumpSource2/schemas/client/SVC_Messages.h
added • +34 / -0 • changes: 34
Show patch
@@ -0,0 +1,34 @@
+enum SVC_Messages : uint32_t
+{
+ svc_ServerInfo = 40,
+ svc_FlattenedSerializer = 41,
+ svc_ClassInfo = 42,
+ svc_SetPause = 43,
+ svc_CreateStringTable = 44,
+ svc_UpdateStringTable = 45,
+ svc_VoiceInit = 46,
+ svc_VoiceData = 47,
+ svc_Print = 48,
+ svc_Sounds = 49,
+ svc_SetView = 50,
+ svc_ClearAllStringTables = 51,
+ svc_CmdKeyValues = 52,
+ svc_BSPDecal = 53,
+ svc_SplitScreen = 54,
+ svc_PacketEntities = 55,
+ svc_Prefetch = 56,
+ svc_Menu = 57,
+ svc_GetCvarValue = 58,
+ svc_StopSound = 59,
+ svc_PeerList = 60,
+ svc_PacketReliable = 61,
+ svc_HLTVStatus = 62,
+ svc_ServerSteamID = 63,
+ svc_FullFrameSplit = 70,
+ svc_RconServerDetails = 71,
+ svc_UserMessage = 72,
+ svc_Broadcast_Command = 74,
+ svc_HltvFixupOperatorStatus = 75,
+ svc_UserCmds = 76,
+ svc_NextMsgPredicted = 77,
+};
DumpSource2/schemas/client/SVC_Messages_LowFrequency.h
added • +4 / -0 • changes: 4
Show patch
@@ -0,0 +1,4 @@
+enum SVC_Messages_LowFrequency : uint32_t
+{
+ svc_dummy = 600,
+};
DumpSource2/schemas/client/SceneInterestTags_t.h
removed • +0 / -4 • changes: 4
Show patch
@@ -1,4 +0,0 @@
-class SceneInterestTags_t
-{
- CUtlVector< CUtlString > m_Tags;
-};
DumpSource2/schemas/client/SceneOpportunityHandle_t.h
removed • +0 / -5 • changes: 5
Show patch
@@ -1,5 +0,0 @@
-// MIsBoxedIntegerType
-class SceneOpportunityHandle_t
-{
- int32 m_Value;
-};
DumpSource2/schemas/client/SceneRequestHandle_t.h
removed • +0 / -5 • changes: 5
Show patch
@@ -1,5 +0,0 @@
-// MIsBoxedIntegerType
-class SceneRequestHandle_t
-{
- int32 m_Value;
-};
DumpSource2/schemas/client/ShatterGlassEntityPoolState_t.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum ShatterGlassEntityPoolState_t : uint32_t
+{
+ ENTITY_POOL_STATE_INVALID = 0,
+ ENTITY_POOL_STATE_AVAILABLE = 1,
+ ENTITY_POOL_STATE_IN_USE = 2,
+};
DumpSource2/schemas/client/SignonState_t.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+enum SignonState_t : uint32_t
+{
+ SIGNONSTATE_NONE = 0,
+ SIGNONSTATE_CHALLENGE = 1,
+ SIGNONSTATE_CONNECTED = 2,
+ SIGNONSTATE_NEW = 3,
+ SIGNONSTATE_PRESPAWN = 4,
+ SIGNONSTATE_SPAWN = 5,
+ SIGNONSTATE_FULL = 6,
+ SIGNONSTATE_CHANGELEVEL = 7,
+};
DumpSource2/schemas/client/SolidType_t.h
modified • +2 / -1 • changes: 3
Show patch
@@ -8,5 +8,6 @@ enum SolidType_t : uint8_t
SOLID_POINT = 5,
SOLID_VPHYSICS = 6,
SOLID_CAPSULE = 7,
- SOLID_LAST = 8,
+ SOLID_CYLINDER = 8,
+ SOLID_LAST = 9,
};
DumpSource2/schemas/client/SpawnGroupFlags_t.h
added • +11 / -0 • changes: 11
Show patch
@@ -0,0 +1,11 @@
+enum SpawnGroupFlags_t : uint32_t
+{
+ SPAWN_GROUP_LOAD_ENTITIES_FROM_SAVE = 1,
+ SPAWN_GROUP_DONT_SPAWN_ENTITIES = 2,
+ SPAWN_GROUP_SYNCHRONOUS_SPAWN = 4,
+ SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP = 8,
+ SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES = 16,
+ SPAWN_GROUP_BLOCK_UNTIL_LOADED = 64,
+ SPAWN_GROUP_LOAD_STREAMING_DATA = 128,
+ SPAWN_GROUP_CREATE_NEW_SCENE_WORLD = 256,
+};
DumpSource2/schemas/client/StanceType_t.h
modified • +1 / -1 • changes: 2
Show patch
@@ -1,6 +1,6 @@
enum StanceType_t : uint32_t
{
- // MPropertySuppressEnumerator
+ // MPropertyFriendlyName = "Current"
STANCE_CURRENT = -1,
// MPropertyFriendlyName = "Default"
STANCE_DEFAULT = 0,
DumpSource2/schemas/client/SummaryTakeDamageInfo_t.h
modified • +97 / -0 • changes: 97
Show patch
@@ -1,3 +1,100 @@
+// MGetKV3ClassDefaults = {
+// "nSummarisedCount": 0,
+// "info":
+// {
+// "_class": "CTakeDamageInfo",
+// "m_vecDamageForce":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecDamagePosition": null,
+// "m_vecReportedPosition": null,
+// "m_vecDamageDirection":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_hInflictor": null,
+// "m_hAttacker": null,
+// "m_hAbility": null,
+// "m_flDamage": 0.000000,
+// "m_flTotalledDamage": 0.000000,
+// "m_bitsDamageType": "",
+// "m_iDamageCustom": 0,
+// "m_iAmmoType": "",
+// "m_flOriginalDamage": 0.000000,
+// "m_bShouldBleed": false,
+// "m_bShouldSpark": false,
+// "m_nDamageFlags": "",
+// "m_iHitGroupId": "HITGROUP_INVALID",
+// "m_nNumObjectsPenetrated": 0,
+// "m_flFriendlyFireDamageReductionRatio": 1.000000,
+// "m_bStoppedBullet": false,
+// "m_DestructibleHitGroupRequests":
+// [
+// ]
+// },
+// "result":
+// {
+// "m_pOriginatingInfo":
+// {
+// "_class": "CTakeDamageInfo",
+// "m_vecDamageForce":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_vecDamagePosition": null,
+// "m_vecReportedPosition": null,
+// "m_vecDamageDirection":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "m_hInflictor": null,
+// "m_hAttacker": null,
+// "m_hAbility": null,
+// "m_flDamage": 0.000000,
+// "m_flTotalledDamage": 0.000000,
+// "m_bitsDamageType": "",
+// "m_iDamageCustom": 0,
+// "m_iAmmoType": "",
+// "m_flOriginalDamage": 0.000000,
+// "m_bShouldBleed": false,
+// "m_bShouldSpark": false,
+// "m_nDamageFlags": "",
+// "m_iHitGroupId": "HITGROUP_INVALID",
+// "m_nNumObjectsPenetrated": 0,
+// "m_flFriendlyFireDamageReductionRatio": 1.000000,
+// "m_bStoppedBullet": false,
+// "m_DestructibleHitGroupRequests":
+// [
+// ]
+// },
+// "m_DestructibleHitGroupRequests":
+// [
+// ],
+// "m_nHealthLost": 0,
+// "m_nHealthBefore": 0,
+// "m_flDamageDealt": 0.000000,
+// "m_flPreModifiedDamage": 0.000000,
+// "m_vDamagePosition": null,
+// "m_nTotalledHealthLost": 0,
+// "m_flTotalledDamageDealt": 0.000000,
+// "m_flTotalledPreModifiedDamage": 0.000000,
+// "m_flNewDamageAccumulatorValue": 0.000000,
+// "m_nDamageFlags": "",
+// "m_bWasDamageSuppressed": false,
+// "m_bSuppressFlinch": false,
+// "m_nOverrideFlinchHitGroup": "HITGROUP_INVALID"
+// },
+// "hTarget": null
+//}
class SummaryTakeDamageInfo_t
{
int32 nSummarisedCount;
DumpSource2/schemas/client/TimedEvent.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "m_TimeBetweenEvents": -1.000000,
+// "m_fNextEvent": 0.000000
+//}
class TimedEvent
{
float32 m_TimeBetweenEvents;
DumpSource2/schemas/client/VPhysicsCollisionAttribute_t.h
modified • +14 / -0 • changes: 14
Show patch
@@ -1,3 +1,17 @@
+// MGetKV3ClassDefaults = {
+// "_class": "VPhysicsCollisionAttribute_t",
+// "m_nInteractsAs": 0,
+// "m_nInteractsWith": 0,
+// "m_nInteractsExclude": 0,
+// "m_nEntityId": 0,
+// "m_nOwnerId": 0,
+// "m_nHierarchyId": 0,
+// "m_nDetailLayerMask": 0,
+// "m_nDetailLayerMaskType": 0,
+// "m_nTargetDetailLayer": 0,
+// "m_nCollisionGroup": 0,
+// "m_nCollisionFunctionMask": 0
+//}
class VPhysicsCollisionAttribute_t
{
uint64 m_nInteractsAs;
DumpSource2/schemas/client/VoiceDataFormat_t.h
added • +6 / -0 • changes: 6
Show patch
@@ -0,0 +1,6 @@
+enum VoiceDataFormat_t : uint32_t
+{
+ VOICEDATA_FORMAT_STEAM = 0,
+ VOICEDATA_FORMAT_ENGINE = 1,
+ VOICEDATA_FORMAT_OPUS = 2,
+};
DumpSource2/schemas/client/WrappedPhysicsJoint_t.h
modified • +2 / -0 • changes: 2
Show patch
@@ -1,3 +1,5 @@
+// MGetKV3ClassDefaults = {
+//}
class WrappedPhysicsJoint_t
{
// MPhysPtr
DumpSource2/schemas/client/audioparams_t.h
modified • +19 / -1 • changes: 20
Show patch
@@ -1,6 +1,24 @@
+// MGetKV3ClassDefaults = {
+// "_class": "audioparams_t",
+// "localSound":
+// [
+// null,
+// null,
+// null,
+// null,
+// null,
+// null,
+// null,
+// null
+// ],
+// "soundscapeIndex": 0,
+// "localBits": 0,
+// "soundscapeEntityListIndex": 0,
+// "soundEventHash": 0
+//}
class audioparams_t
{
- Vector[8] localSound;
+ VectorWS[8] localSound;
int32 soundscapeIndex;
uint8 localBits;
int32 soundscapeEntityListIndex;
DumpSource2/schemas/client/constraint_hingeparams_t.h
modified • +10 / -1 • changes: 11
Show patch
@@ -1,6 +1,15 @@
+// MGetKV3ClassDefaults = {
+// "worldPosition": null,
+// "worldAxisDirection":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ]
+//}
class constraint_hingeparams_t
{
- Vector worldPosition;
+ VectorWS worldPosition;
Vector worldAxisDirection;
// MNotSaved
constraint_axislimit_t hingeAxis;
DumpSource2/schemas/client/eRollType.h
added • +8 / -0 • changes: 8
Show patch
@@ -0,0 +1,8 @@
+enum eRollType : uint32_t
+{
+ ROLL_NONE = -1,
+ ROLL_STATS = 0,
+ ROLL_CREDITS = 1,
+ ROLL_LATE_JOIN_LOGO = 2,
+ ROLL_OUTTRO = 3,
+};
DumpSource2/schemas/client/entitytable_t.h
modified • +2 / -2 • changes: 4
Show patch
@@ -12,7 +12,8 @@
// 0.000000,
// 0.000000,
// 0.000000
-// ]
+// ],
+// "m_pPrecacheEntityKeys": null
//}
class entitytable_t
{
@@ -25,6 +26,5 @@ class entitytable_t
CUtlSymbolLarge globalname;
CUtlSymbolLarge entityname;
Vector landmarkModelSpace;
- // MKV3TransferSaveOpsForField = "GetEntityKeyValuesSaveRestoreOps"
CEntityKeyValues* m_pPrecacheEntityKeys;
};
DumpSource2/schemas/client/fogparams_t.h
modified • +35 / -0 • changes: 35
Show patch
@@ -1,3 +1,38 @@
+// MGetKV3ClassDefaults = {
+// "_class": "fogparams_t",
+// "dirPrimary":
+// [
+// 1.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "colorPrimary":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "colorSecondary":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "start": 0.000000,
+// "end": 0.000000,
+// "farz": 0.000000,
+// "maxdensity": 0.000000,
+// "exponent": 0.000000,
+// "HDRColorScale": 0.000000,
+// "duration": 0.000000,
+// "blendtobackground": 0.000000,
+// "scattering": 0.000000,
+// "locallightscale": 1.000000,
+// "enable": false,
+// "blend": false
+//}
class fogparams_t
{
Vector dirPrimary;
DumpSource2/schemas/client/globalentity_t.h
modified • +6 / -2 • changes: 8
Show patch
@@ -1,8 +1,12 @@
+// MGetKV3ClassDefaults = {
+// "state": "GLOBAL_OFF",
+// "counter": 0
+//}
class globalentity_t
{
- // MSaveOpsForField = "GetGlobalSymbolDataOps"
+ // MKV3TransferSaveOpsForField = "GetGlobalSymbolDataOps"
CUtlSymbol name;
- // MSaveOpsForField = "GetGlobalSymbolDataOps"
+ // MKV3TransferSaveOpsForField = "GetGlobalSymbolDataOps"
CUtlSymbol levelName;
GLOBALESTATE state;
int32 counter;
DumpSource2/schemas/client/globalentitydatabase_t.h
added • +9 / -0 • changes: 9
Show patch
@@ -0,0 +1,9 @@
+// MGetKV3ClassDefaults = {
+// "m_list":
+// [
+// ]
+//}
+class globalentitydatabase_t
+{
+ CUtlVector< globalentity_t > m_list;
+};
DumpSource2/schemas/client/hudtextparms_t.h
modified • +20 / -0 • changes: 20
Show patch
@@ -1,3 +1,23 @@
+// MGetKV3ClassDefaults = {
+// "color1":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "color2":
+// [
+// 0,
+// 0,
+// 0,
+// 0
+// ],
+// "effect": 0,
+// "channel": 0,
+// "x": 0.000000,
+// "y": 0.000000
+//}
class hudtextparms_t
{
Color color1;
DumpSource2/schemas/client/levellist_t.h
modified • +2 / -7 • changes: 9
Show patch
@@ -2,12 +2,7 @@
// "m_sMapName": "",
// "m_sLandmarkName": "",
// "m_hEntLandmark": null,
-// "m_vecLandmarkOrigin":
-// [
-// 0.000000,
-// 0.000000,
-// 0.000000
-// ],
+// "m_vecLandmarkOrigin": null,
// "m_vecLandmarkAngles":
// [
// 0.000000,
@@ -20,6 +15,6 @@ class levellist_t
CUtlString m_sMapName;
CUtlString m_sLandmarkName;
CEntityHandle m_hEntLandmark;
- Vector m_vecLandmarkOrigin;
+ VectorWS m_vecLandmarkOrigin;
QAngle m_vecLandmarkAngles;
};
DumpSource2/schemas/client/physics_save_sphere_t.h
modified • +3 / -0 • changes: 3
Show patch
@@ -1,3 +1,6 @@
+// MGetKV3ClassDefaults = {
+// "radius": 0.000000
+//}
class physics_save_sphere_t
{
float32 radius;
DumpSource2/schemas/client/ragdoll_t.h
modified • +13 / -0 • changes: 13
Show patch
@@ -1,3 +1,16 @@
+// MGetKV3ClassDefaults = {
+// "list":
+// [
+// ],
+// "hierarchyJoints":
+// [
+// ],
+// "boneIndex":
+// [
+// ],
+// "allowStretch": false,
+// "unused": false
+//}
class ragdoll_t
{
CUtlVector< ragdollelement_t > list;
DumpSource2/schemas/client/ragdollelement_t.h
modified • +11 / -0 • changes: 11
Show patch
@@ -1,3 +1,14 @@
+// MGetKV3ClassDefaults = {
+// "originParentSpace":
+// [
+// 0.000000,
+// 0.000000,
+// 0.000000
+// ],
+// "parentIndex": 0,
+// "m_flRadius": 0.000000,
+// "m_nHeight": 0
+//}
class ragdollelement_t
{
Vector originParentSpace;
DumpSource2/schemas/client/ragdollhierarchyjoint_t.h
modified • +4 / -0 • changes: 4
Show patch
@@ -1,3 +1,7 @@
+// MGetKV3ClassDefaults = {
+// "parentIndex": -1,
+// "childIndex": -1
+//}
class ragdollhierarchyjoint_t
{
int32 parentIndex;
DumpSource2/schemas/client/sky3dparams_t.h
modified • +2 / -1 • changes: 3
Show patch
@@ -1,7 +1,8 @@
+// MGetKV3ClassDefaults = null
class sky3dparams_t
{
int16 scale;
- Vector origin;
+ VectorWS origin;
// MNotSaved
bool bClip3DSkyBoxNearToWorldFar;
// MNotSaved
DumpSource2/schemas/client/sndopvarlatchdata_t.h
modified • +9 / -1 • changes: 10
Show patch
@@ -1,8 +1,16 @@
+// MGetKV3ClassDefaults = {
+// "_class": "sndopvarlatchdata_t",
+// "m_iszStack": "",
+// "m_iszOperator": "",
+// "m_iszOpvar": "",
+// "m_flVal": 0.000000,
+// "m_vPos": null
+//}
class sndopvarlatchdata_t
{
CUtlSymbolLarge m_iszStack;
CUtlSymbolLarge m_iszOperator;
CUtlSymbolLarge m_iszOpvar;
float32 m_flVal;
- Vector m_vPos;
+ VectorWS m_vPos;
};
DumpSource2/schemas/client/thinkfunc_t.h
modified • +6 / -0 • changes: 6
Show patch
@@ -1,3 +1,9 @@
+// MGetKV3ClassDefaults = {
+// "m_think": "",
+// "m_nContext": "",
+// "m_nNextThinkTick": null,
+// "m_nLastThinkTick": null
+//}
class thinkfunc_t
{
BASEPTR m_think;
DumpSource2/schemas/entity2/CEntityAttributeTable.h
modified • +2 / -2 • changes: 4
Show patch
@@ -1,5 +1,5 @@
class CEntityAttributeTable
{
- CUtlOrderedMap< CUtlStringToken, Attribute_t > m_Attributes;
- CUtlOrderedMap< CUtlStringToken, CUtlString > m_Names;
+ CUtlOrderedMap< CUtlStringTokenNoRegistration, Attribute_t > m_Attributes;
+ CUtlOrderedMap< CUtlStringTokenNoRegistration, CUtlString > m_Names;
};
DumpSource2/schemas/entity2/CEntityIdentity.h
modified • +1 / -0 • changes: 1
Show patch
@@ -1,3 +1,4 @@
+// MGetKV3ClassDefaults = Could not parse KV3 Defaults
class CEntityIdentity
{
// MNotSaved
DumpSource2/schemas/entity2/CScriptComponent.h
modified • +3 / -0 • changes: 3
Show patch
@@ -1,3 +1,6 @@
+// MGetKV3ClassDefaults = {
+// "_class": "CScriptComponent"
+//}
class CScriptComponent : public CEntityComponent
{
// MNotSaved
8.7.2026, 22.54.05
Item/game definitions updated (items_game.txt changed). Likely tweaks to skins, stickers, or item config.
Files changed: 253 • +34873 / -16548
itemsscriptsuilocalizationassetsmisccontent-change
Changed files
Protobufs/clientmessages.proto
modified • +0 / -5 • changes: 5
Show patch
@@ -5,7 +5,6 @@ enum EBaseClientMessages {
CM_DevPaletteVisibilityChanged = 283;
CM_WorldUIControllerHasPanelChanged = 284;
CM_RotateAnchor = 285;
- CM_ListenForResponseFound = 286;
CM_MAX_BASE = 300;
}
@@ -47,7 +46,3 @@ message CClientMsg_WorldUIControllerHasPanelChangedEvent {
message CClientMsg_RotateAnchor {
optional float angle = 1;
}
-
-message CClientMsg_ListenForResponseFound {
- optional int32 player_slot = 1 [default = -1];
-}
Protobufs/cs_prediction_events.proto
modified • +8 / -0 • changes: 8
Show patch
@@ -3,10 +3,18 @@ import "prediction_events.proto";
enum ECSPredictionEvents {
CSPE_DamageTag = 1;
+ CSPE_PlayerTeleport = 3;
}
message CCSPredictionEvent_DamageTag {
optional float flinch_mod_small = 1;
optional float flinch_mod_large = 2;
optional float friendly_fire_damage_reduction_ratio = 3;
}
+
+message CCSPredictionEvent_PlayerTeleport {
+ optional bool relative = 1;
+ optional .CMsgVector origin = 2;
+ optional .CMsgQAngle angles = 3;
+ optional .CMsgVector velocity = 4;
+}
Protobufs/cs_usercmd.proto
modified • +9 / -0 • changes: 9
Show patch
@@ -1,17 +1,24 @@
+import "valveextensions.proto";
import "networkbasetypes.proto";
import "usercmd.proto";
message CSGOInterpolationInfoPB {
+ option (codegen_delta_encoder) = true;
+
optional int32 src_tick = 1 [default = -1];
optional int32 dst_tick = 2 [default = -1];
optional float frac = 3 [default = 0];
}
message CSGOInterpolationInfoPB_CL {
+ option (codegen_delta_encoder) = true;
+
optional float frac = 3 [default = 0];
}
message CSGOInputHistoryEntryPB {
+ option (codegen_delta_encoder) = true;
+
optional .CMsgQAngle view_angles = 2;
optional int32 render_tick_count = 4;
optional float render_tick_fraction = 5;
@@ -30,6 +37,8 @@ message CSGOInputHistoryEntryPB {
}
message CSGOUserCmdPB {
+ option (codegen_delta_encoder) = true;
+
optional .CBaseUserCmdPB base = 1;
repeated .CSGOInputHistoryEntryPB input_history = 2;
optional int32 attack1_start_history_index = 6 [default = -1];
Protobufs/cstrike15_gcmessages.proto
modified • +7 / -0 • changes: 7
Show patch
@@ -111,6 +111,7 @@ enum ECsgoGCMsg {
k_EMsgGCCStrike15_v2_RecurringMissionSchema = 9226;
k_EMsgGCCStrike15_v2_VolatileItemClaimReward = 9227;
k_EMsgGCCStrike15_v2_VolatileShopSubscribe = 9228;
+ k_EMsgGCCStrike15_v2_SetClanId = 9229;
}
enum ECsgoSteamUserStat {
@@ -681,6 +682,7 @@ message CMsgGCCStrike15_v2_ServerNotificationForUserPenalty {
optional uint32 reason = 2;
optional uint32 seconds = 3;
optional bool communication_cooldown = 4;
+ optional uint32 cheating_penalty_level = 5;
}
message CMsgGCCStrike15_v2_ClientReportPlayer {
@@ -1246,6 +1248,7 @@ message CSOPersonaDataPublic {
optional bool elevated_state = 3;
optional uint32 xp_trail_timestamp_refresh = 4;
optional uint32 xp_trail_level = 5;
+ optional uint32 clan_id = 6;
}
message CSOAccountRecurringMission {
@@ -1440,6 +1443,10 @@ message CMsgGCCStrike15_v2_ClientAccountBalance {
optional string url = 2;
}
+message CMsgGCCStrike15_v2_SetClanId {
+ optional uint32 clan_id = 1;
+}
+
message CMsgGCCStrike15_v2_ClientPartyJoinRelay {
optional uint32 accountid = 1;
optional uint64 lobbyid = 2;
Protobufs/cstrike15_usermessages.proto
modified • +1 / -0 • changes: 1
Show patch
@@ -240,6 +240,7 @@ message CCSUsrMsg_WeaponSound {
optional string sound = 5;
optional float game_timestamp = 6;
optional fixed32 source_soundscapeid = 7;
+ optional bool stealth = 8;
}
message CCSUsrMsg_WeaponMagDrop {
Protobufs/gameevents.proto
modified • +21 / -0 • changes: 21
Show patch
@@ -14,6 +14,8 @@ enum EBaseGameEvents {
GE_SosSetSoundEventParams = 210;
GE_SosSetLibraryStackFields = 211;
GE_SosStopSoundEventHash = 212;
+ GE_ClothStiffenAnimEvent = 213;
+ GE_ClothEffectAnimEvent = 214;
}
message CMsgVDebugGameSessionIDEvent {
@@ -36,6 +38,7 @@ message CMsgPlaceDecalEvent {
optional uint64 material_id = 11;
optional uint32 sequence_name = 12;
optional .CMsgVector position_objectspace = 14;
+ optional .CMsgVector normal_objectspace = 15;
}
message CMsgClearWorldDecalsEvent {
@@ -119,3 +122,21 @@ message CMsgSosSetLibraryStackFields {
optional fixed32 stack_hash = 1;
optional bytes packed_fields = 5;
}
+
+message CMsgClothStiffenAnimEvent {
+ optional int32 source_entity_index = 1 [default = -1];
+ optional int32 vertex_set_hash = 2;
+ optional float intensity = 3;
+ optional float length = 4;
+ optional float speed_in = 5;
+ optional float speed_out = 6;
+}
+
+message CMsgClothEffectAnimEvent {
+ optional int32 source_entity_index = 1 [default = -1];
+ optional int32 effect_name_hash = 2;
+ optional int32 operation = 3;
+ optional int32 flags = 4;
+ optional string tags = 5;
+ optional .CMsgVector pte = 6;
+}
Protobufs/netmessages.proto
modified • +3 / -1 • changes: 4
Show patch
@@ -427,12 +427,13 @@ message CSVCMsg_UpdateStringTable {
message CSVCMsg_VoiceData {
optional .CMsgVoiceAudio audio = 1;
- optional int32 client = 2 [default = -1];
+ optional int32 client_deprecated = 2 [default = -1];
optional bool proximity = 3;
optional fixed64 xuid = 4;
optional int32 audible_mask = 5;
optional uint32 tick = 6;
optional int32 passthrough = 7;
+ optional int32 entity = 8 [default = -1];
}
message CSVCMsg_PacketReliable {
@@ -641,6 +642,7 @@ message CMsgServerUserCmd {
optional int32 player_slot = 3 [default = -1];
optional int32 server_tick_executed = 4;
optional int32 client_tick = 5;
+ optional bytes delta_data = 6;
}
message CSVCMsg_UserCommands {
Protobufs/networkbasetypes.proto
modified • +13 / -0 • changes: 13
Show patch
@@ -1,3 +1,4 @@
+import "valveextensions.proto";
import "google/protobuf/descriptor.proto";
import "network_connection.proto";
@@ -44,37 +45,49 @@ enum SpawnGroupFlags_t {
}
message CMsgVector {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
optional float w = 4;
}
message CMsgVector2D {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
}
message CMsgQAngle {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
}
message CMsgQuaternion {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
optional float w = 4;
}
message CMsgTransform {
+ option (codegen_delta_encoder) = true;
+
optional .CMsgVector position = 1;
optional float scale = 2;
optional .CMsgQuaternion orientation = 3;
}
message CMsgRGBA {
+ option (codegen_delta_encoder) = true;
+
optional int32 r = 1;
optional int32 g = 2;
optional int32 b = 3;
Protobufs/prediction_events.proto
modified • +1 / -0 • changes: 1
Show patch
@@ -10,6 +10,7 @@ message CPredictionEvent_Teleport {
optional .CMsgVector origin = 1;
optional .CMsgQAngle angles = 2;
optional float drop_to_ground_range = 3;
+ optional .CMsgVector velocity = 4;
}
message CPredictionEvent_StringCommand {
Protobufs/source2_steam_stats.proto
modified • +1 / -0 • changes: 1
Show patch
@@ -207,4 +207,5 @@ message CUserMessage_UserSentBugBug {
optional uint32 build_id = 4;
optional int32 osversion = 5;
optional string command_logs = 6;
+ optional int32 bugbug_no = 7;
}
Protobufs/usercmd.proto
modified • +11 / -0 • changes: 11
Show patch
@@ -1,12 +1,17 @@
+import "valveextensions.proto";
import "networkbasetypes.proto";
message CInButtonStatePB {
+ option (codegen_delta_encoder) = true;
+
optional uint64 buttonstate1 = 1;
optional uint64 buttonstate2 = 2;
optional uint64 buttonstate3 = 3;
}
message CSubtickMoveStep {
+ option (codegen_delta_encoder) = true;
+
optional uint64 button = 1;
optional bool pressed = 2;
optional float when = 3;
@@ -17,10 +22,14 @@ message CSubtickMoveStep {
}
message CBaseUserCmdExecutionNotes {
+ option (codegen_delta_encoder) = true;
+
optional string ignored_reason = 1;
}
message CBaseUserCmdPB {
+ option (codegen_delta_encoder) = true;
+
optional int32 legacy_command_number = 1;
optional int32 client_tick = 2;
optional uint32 prediction_offset_ticks_x256 = 17;
@@ -43,5 +52,7 @@ message CBaseUserCmdPB {
}
message CUserCmdBasePB {
+ option (codegen_delta_encoder) = true;
+
optional .CBaseUserCmdPB base = 1;
}
Protobufs/usermessages.proto
modified • +5 / -22 • changes: 27
Show patch
@@ -2,8 +2,6 @@ import "networkbasetypes.proto";
enum EBaseUserMessages {
UM_AchievementEvent = 101;
- UM_CloseCaption = 102;
- UM_CloseCaptionDirect = 103;
UM_CurrentTimescale = 104;
UM_DesiredTimescale = 105;
UM_Fade = 106;
@@ -52,13 +50,13 @@ enum EBaseUserMessages {
UM_NotifyResponseFound = 165;
UM_PlayResponseConditional = 166;
UM_UserSentBugBug = 167;
+ UM_UsageReport = 168;
UM_MAX_BASE = 200;
}
enum EBaseEntityMessages {
EM_PlayJingle = 136;
EM_ScreenOverlay = 137;
- EM_RemoveAllDecals = 138;
EM_PropagateForce = 139;
EM_DoSpark = 140;
EM_FixAngle = 141;
@@ -127,20 +125,6 @@ message CUserMessageAchievementEvent {
optional uint32 achievement = 1;
}
-message CUserMessageCloseCaption {
- optional fixed32 hash = 1;
- optional float duration = 2;
- optional bool from_player = 3;
- optional int32 ent_index = 4 [default = -1];
-}
-
-message CUserMessageCloseCaptionDirect {
- optional fixed32 hash = 1;
- optional float duration = 2;
- optional bool from_player = 3;
- optional int32 ent_index = 4 [default = -1];
-}
-
message CUserMessageCloseCaptionPlaceholder {
optional string string = 1;
optional float duration = 2;
@@ -305,11 +289,6 @@ message CEntityMessageScreenOverlay {
optional .CEntityMsg entity_msg = 2;
}
-message CEntityMessageRemoveAllDecals {
- optional bool remove_decals = 1;
- optional .CEntityMsg entity_msg = 2;
-}
-
message CEntityMessagePropagateForce {
optional .CMsgVector impulse = 1;
optional .CEntityMsg entity_msg = 2;
@@ -872,3 +851,7 @@ message CUserMessage_PlayResponseConditional {
optional float pre_delay = 5;
optional int32 mix_priority = 6;
}
+
+message CUserMessage_UsageReport {
+ optional string usage = 1;
+}
Protobufs/valveextensions.proto
modified • +5 / -0 • changes: 5
Show patch
@@ -1,10 +1,15 @@
import "google/protobuf/descriptor.proto";
+extend .google.protobuf.MessageOptions {
+ optional bool codegen_delta_encoder = 61000 [default = false];
+}
+
extend .google.protobuf.FieldOptions {
optional bool valve_map_field = 61000 [default = false];
optional bool valve_map_key = 61001 [default = false];
optional int32 diff_encode_field = 61002 [default = 0];
optional bool delta_ignore = 61003 [default = false];
+ optional int32 untrusted_delta_max = 61008 [default = 256];
optional uint32 steamml_max_entries = 61004 [default = 0];
optional bool steamml_is_timestamp = 61005 [default = false];
optional uint32 steamlearn_count = 61006 [default = 0];
content/csgo/maps/editor/zoo/scripts/point_script.d.ts
modified • +13 / -9 • changes: 22
Show patch
@@ -78,6 +78,16 @@ declare module "cs_script/point_script"
/** Set when the OnThink callback should next be run. The exact time will be on the tick nearest to the specified time, which may be earlier or later. */
SetNextThink(time: number): void;
+ /**
+ * Queue up a callback to be invoked once, after all entities have executed their think functions this tick (eg. player input has been handled, projectiles have moved).
+ * This can be useful for delaying until a clean moment when an entity isn't mid-computation and might ignore or misinterpret.
+ * This can be useful for delaying until the world is in a consistent state.
+ * Callbacks queued up during a post entity think callback will be invoked in the same tick.
+ * @experimental This method is experimental and may experience breaking changes.
+ * Please send feedback to CSGOTeamFeedback@valvesoftware.com with "cs_script Feedback" in the subject line.
+ */
+ QueueAfterThinks( callback: () => void ): void;
+
/** Called when the point_script entity is activated */
OnActivate(callback: () => void): void;
/** Called when input RunScriptInput is triggered on the point_script entity with a parameter value that matches name. */
@@ -139,6 +149,8 @@ declare module "cs_script/point_script"
* This will be called for all impacts of a bullet before any player damage events are called.
*/
OnBulletImpact(callback: (event: { weapon: CSWeaponBase, position: Vector, hitEntity: Entity }) => void): void;
+ /** Called when a weapon is dropped. */
+ OnWeaponDrop(callback: (event: { weapon: CSWeaponBase }) => void): void;
/** Called when a grenade is thrown. `projectile` is the newly created grenade projectile. */
OnGrenadeThrow(callback: (event: { weapon: CSWeaponBase, projectile: Entity }) => void): void;
/** Called when a grenade bounces off a surface. `bounces` is the number of bounces so far. */
@@ -551,6 +563,7 @@ declare module "cs_script/point_script"
export class CSWeaponBase extends BaseModelEntity {
GetData(): CSWeaponData;
GetOwner(): CSPlayerPawn | undefined;
+ GetOriginalOwner(): CSPlayerPawn | undefined;
GetClipAmmo(): number;
SetClipAmmo(ammo: number): void;
GetReserveAmmo(): number;
@@ -645,12 +658,3 @@ declare module "cs_script/point_script"
/** @deprecated This enum will be removed in a future update */
export enum CSDamageType { }
}
-
-/**
- * @deprecated This unreleased feature will be removed in a future update as will the ability to load vts assets.
- */
-declare module "server/serverpointentity" { }
-/**
- * @deprecated This unreleased feature will be removed in a future update as will the ability to load vts assets.
- */
-declare module "server/cspointscript" { }
content/csgo/maps/editor/zoo/scripts/setup.js
modified • +11 / -1 • changes: 12
Show patch
@@ -1,4 +1,4 @@
-import { CSDamageFlags, Instance } from "cs_script/point_script";
+import { CSDamageFlags, CSDamageTypes, Instance } from "cs_script/point_script";
Instance.ServerCommand("sv_cheats 1");
Instance.ServerCommand("mp_warmup_offline_enabled 1");
@@ -19,3 +19,13 @@ Instance.OnModifyPlayerDamage(({ player }) => {
return { damageFlags: CSDamageFlags.PREVENT_DEATH };
}
});
+
+Instance.OnPlayerDamage((event) => {
+ if (event.damageTypes == CSDamageTypes.SLASH) {
+ Instance.QueueAfterThinks(() => {
+ const velocity = event.player.GetAbsVelocity();
+ velocity.z += 500;
+ event.player.Teleport({ velocity });
+ });
+ }
+});
game/bin/assettypes_common.txt
modified • +1 / -1 • changes: 2
Show patch
@@ -1238,7 +1238,7 @@
m_nAssetTypeVersion = 1
m_LimitToMods =
[
- "csgo","csgo_lv"
+ "csgo","csgo_lv","tf"
]
m_Blocks =
[
game/bin/built_from_cl.txt
modified • +1 / -1 • changes: 2
Show patch
@@ -1 +1 @@
-10800193
+10808792
game/bin/win64/Qt5Core_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -16202,7 +16202,6 @@ Z{Z}Z
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
-\n\t\n\n\n\v\n\f\n\r\n
\niscii-gjr
\niscii-ori
\ntmN
game/bin/win64/Qt5Gui_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -31517,7 +31517,6 @@ ZoomOut
\n?count@QBitArray@@QEBAHXZ
\n?count@QByteArray@@QEBAHD@Z
\n\n?closingDown@QCoreApplication@@SA_NXZ
-\n\t\n\n\n\v\n\f\n\r\n
\n\t\n\t\t\t\n\t\n\t\t
\nendstream\n
\nendstream\nendobj\n
game/bin/win64/Qt5Widgets_strings.txt
modified • +0 / -1 • changes: 1
Show patch
@@ -16623,7 +16623,6 @@ Z{pWU~
\n\?setToIdentity@QMatrix4x4@@QEAAXXZ
\n\f?data@QStringListModel@@UEBA?AVQVariant@@AEBVQModelIndex@@H@Z
\n\n?closingDown@QCoreApplication@@SA_NXZ
-\n\t\n\n\n\v\n\f\n\r\n
\n\tactiveGestures:
\n\tcanceled:
\n\tfinished:
game/bin/win64/SDL3_strings.txt
modified • +172 / -47 • changes: 219
Show patch
@@ -11,6 +11,8 @@
(timestamp=%I64u which=%d axis=%u value=%d)
(timestamp=%I64u which=%d ball=%u xrel=%d yrel=%d)
(timestamp=%I64u which=%d button=%u state=%s)
+ (timestamp=%I64u which=%d button_id='%s')
+ (timestamp=%I64u which=%d capsense=%u state=%s)
(timestamp=%I64u which=%d data[0]=%f data[1]=%f data[2]=%f data[3]=%f data[4]=%f data[5]=%f)
(timestamp=%I64u which=%d hat=%u value=%u)
(timestamp=%I64u which=%d sensor=%d data[0]=%f data[1]=%f data[2]=%f)
@@ -43,6 +45,7 @@
Pen
System Control
Thelio
+!"2D textures must have a layer count of 1"
!"Alpha-to-coverage enabled but no color targets present!"
!"Blit destination texture must be created with the COLOR_TARGET usage flag"
!"Blit destination texture must be non-NULL"
@@ -99,7 +102,6 @@
!"For any texture: usage cannot contain both GRAPHICS_STORAGE_READ and SAMPLER"
!"For any texture: width, height, and layer_count_or_depth must be >= 1"
!"For array textures: sample_count must be SDL_GPU_SAMPLECOUNT_1"
-!"For array textures: usage must not contain DEPTH_STENCIL_TARGET"
!"For cube array textures: layer_count_or_depth must be a multiple of 6"
!"For cube array textures: sample_count must be SDL_GPU_SAMPLECOUNT_1"
!"For cube array textures: the format is unsupported for the given usage"
@@ -190,7 +192,6 @@
$E4A(
%.2x%.2x%.2x%.2x
%.2x-%.2x-%.2x-%.2x-%.2x-%.2x
-%02hhX
%I64d
%S (0x%.4x/0x%.4x)
%d,%d,%d,%d
@@ -231,6 +232,7 @@ $E4A(
(>sdr_white_point
(Standard system devices)
)98&F
+)UUU
*/EZFRD64.DLL
*7Asig
*c36
@@ -240,8 +242,6 @@ $E4A(
,DIT
,hint:SDL_GAMECONTROLLER_USE_BUTTON_LABELS:=1
,hint:SDL_GAMECONTROLLER_USE_GAMECUBE_LABELS:=1
--\\.\pipe\HID#VID_045E&PID_028E&IG_00#%*X&%*X&%*X#%d#%*u
--gameinput.dll
. In Accept Drag and Drop, window %u, %s Fallback WM_DROPFILES
. In Accept Drag and Drop, window %u, disabled Full OLE IDropTarget
. In Accept Drag and Drop, window %u, enabled Full OLE IDropTarget
@@ -270,6 +270,7 @@ $E4A(
.\D3D12\
.color_scale
.dx.countersS
+.fptable
/MND
0 SeE
000000000000
@@ -575,11 +576,14 @@ $E4A(
03000000fa1900000706000000000000,Team 5,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,
03000000fa190000f0ff000000000000,Acteck AGJ-3200,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,
03000000fa2d00000100000000000000,3DRUDDER,leftx:a0,lefty:a1,rightx:a5,righty:a2,
+03000000ff1100003133000000000000,Oklick W-2,crc:2004,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:+a1,leftx:a0,paddle1:b7,paddle2:b6,rightshoulder:b5,rightstick:b11,righttrigger:-a1,start:b9,x:b0,y:b1,
+03000000ff1100003133000000000000,Oklick W-2,crc:faf6,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:+a1,leftx:a0,paddle1:b7,paddle2:b6,rightshoulder:b5,rightstick:b11,righttrigger:-a1,start:b9,x:b0,y:b1,
03000000ff1100003133000000000000,SVEN X-PAD,a:b2,b:b3,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a4,start:b5,x:b0,y:b1,
03000000ff1100004133000000000000,USB Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a4,righty:a2,start:b9,x:b3,y:b0,
03000000ffff00000000000000000000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,
+03wR
0>3n
-0@OPENGL32.DLL
+0@SDL_OPENGL_ES_DRIVER
0KP\rG
0KP\rG z
0P18
@@ -597,7 +601,7 @@ $E4A(
28O0b`
2>X94>
2@Q0b
-2\vp(g
+2\vpl\
2scRGB_output
3-bit IMA ADPCM currently not supported
3333
@@ -621,8 +625,8 @@ $E4A(
4r`M
4ur%
504944564944
+53tk
55BODXIL
-56tk
5G7A ,"tex_norm
5dbpm
6 De
@@ -653,21 +657,34 @@ $E4A(
8BitDo SF30 Pro
8BitDo SN30 Pro
8BitDo Tech Ltd
+8Bitdo Pro 2 Controller
+8Bitdo Pro 3 Controller
+8Bitdo SF30 Controller
+8Bitdo SN30 Controller
+8Bitdo Ultimate 2 Wireless Controller
8]W5#
:333?
-:PS4 Controller
:dx.entryPointsS
:dx.shaderModelS
:dx.viewIdStateS
<&UVLeftTop
+<8bunz8
+<action content="%s" activationType="foreground" arguments="%s"/>
<unspecified>
+<x5a
>cs{og>
-?Out of device-local memory, allocating buffers on host-local memory, expect degraded performance!
+?4\fZ2
+?<TUUUU
+?NUY
+?VK_ERROR_OUT_OF_HOST_MEMORY
?VK_SUCCESS
+?XXVx
?ff>6fg
?ff>ff?
?fooff?
-@Paz@
+?hPK
+?i!VPCr(
+?nWr
@entryPointOutput
@entryPointOutput.color
@entryPointOutput.pointSize
@@ -756,7 +773,6 @@ BCoInitialize() failed
BL\fE\f
BMP file with bad dimensions (%dx%d)
BP\f1\f
-BSDL_JOYSTICK_HIDAPI_PS4
BTJq
B\fp\v0
Backbone One
@@ -911,6 +927,7 @@ Corrupt JPEG
Corrupt PNG
Could not acquire swapchain!
Could not allocate space to read DB into memory
+Could not bind EGL API
Could not create D3D12CommandQueue
Could not create D3D12Device
Could not create DXGIFactory
@@ -1035,7 +1052,7 @@ Couldn't load GLES2 function %s: %s
Couldn't load GetOpenFileName/GetSaveFileName from library
Couldn't load an overriding SDL library. Please fix or remove the SDL3_DYNAMIC_API environment variable. Using the default SDL.
Couldn't load stick calibration
-Couldn't locate our .exe
+Couldn't locate module
Couldn't locate our prefpath
Couldn't lock clipboard data
Couldn't obtain language info
@@ -1045,7 +1062,6 @@ Couldn't open given URL.
Couldn't override SDL library. Using a newer SDL build might help. Please fix or remove the SDL3_DYNAMIC_API environment variable. Using the default SDL.
Couldn't parse %s
Couldn't parse GUID from %s
-Couldn't parse Xbox report descriptor: %s
Couldn't parse name from %s
Couldn't query controller info
Couldn't query controller status
@@ -1066,6 +1082,7 @@ Couldn't set up raw input handling
Couldn't setup USB mode
Couldn't start USB reports
Couldn't update tray entry label
+Couldn't write capabilities_packet packet
Couldn't write feature report
Couldn't write init packet
CrSel
@@ -1189,6 +1206,7 @@ Device lost and couldn't be recovered
Device not found
Device not supported by the lg4ff hidapi haptic driver
Device was already lost and can't accept new opens
+DeviceHotplugThread
DialogBoxIndirectParamW
Direct3DCreate9
Direct3DCreate9Ex
@@ -1217,6 +1235,7 @@ DragQueryFileW
DrawTextW
Driving Force EX
Dropping back to a slower method.
+DualSense Edge Wireless Controller
DualSense Wireless Controller
DuplicateHandle()
DwmEnableBlurBehindWindow
@@ -1251,7 +1270,6 @@ EGL_KHR_gl_colorspace
EGL_KHR_surfaceless_context
EGL_NOT_INITIALIZED
EGL_SUCCESS
-EGt1
ERROR:
EXECUTION
Effect data must at least contain a command byte
@@ -1383,12 +1401,13 @@ Failed to retrieve swapchain descriptor!
Failed to send ID_DONGLE_GET_WIRELESS_STATE request
Failed to serialize RootSignature: %s
File dialog driver unsupported
+File is not a JPEG file
File is not a PNG file
-File is not a Windows BMP file
File length did not exactly match the destination length
FillRect
Find
FlashWindowEx
+FlsGetValue2
Flydigi Apex 2
Flydigi Apex 3
Flydigi Apex 4
@@ -1446,7 +1465,6 @@ GL 3.x is not supported
GLES2_CreatePalette
GLES2_CreateRenderer
GLES2_CreateTexture
-GLES2_DestroyRenderer
GLES2_RenderReadPixels
GLES2_RunCommandQueue
GLES2_UpdatePalette
@@ -1482,6 +1500,7 @@ GL_INVALID_VALUE
GL_NO_ERROR
GL_OES_EGL_image_external
GL_OES_surfaceless_context
+GL_OES_texture_npot
GL_OUT_OF_MEMORY
GL_RenderReadPixels
GL_RunCommandQueue
@@ -1492,20 +1511,20 @@ GL_UpdatePalette
GL_UpdateTexture
GL_UpdateTextureNV
GL_UpdateTextureYUV
-GSDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS
GW'WF
-GameInput QueryInterface failed
+G\r%Gt
GameInputCreate
GameInputCreate failed
+GameInputInitialize
GamePad-
GamePad-%d
GameSir
GameSir Controller
-GameSir-G7 Pro (HID)
-GameSir-G7 Pro 8K (HID)
-GameSir: Device detected - G7 Pro 8K HID mode (PID 0x%04X)
-GameSir: Device detected - G7 Pro HID mode (PID 0x%04X)
+GameSir-G7 Pro 8K
+GameSir: Device detected - G7 Pro 8K mode (PID 0x%04X)
+GameSir: failed to send SDL mode switch command (0xA2, 0x01)
Gamepad %u not found
+Gamesir Xbox Controller
Gcoeff
GenerateConsoleCtrlEvent
GetAsyncKeyState
@@ -1517,6 +1536,7 @@ GetClipboardData
GetClipboardFormatNameA
GetClipboardSequenceNumber
GetCurrentDirectoryW failed
+GetCurrentPackageFullName
GetCursorPos
GetDIBits
GetDefaultStride failed
@@ -1532,6 +1552,8 @@ GetEraseBackgroundModeHint: invalid value for SDL_HINT_WINDOWS_ERASE_BACKGROUND_
GetFileTime
GetFileVersionInfoA
GetFileVersionInfoSizeA
+GetFileVersionInfoSizeW
+GetFileVersionInfoW
GetFocus
GetICMProfileW
GetIoRingInfo
@@ -1556,6 +1578,12 @@ GetPointerDeviceRects
GetPointerPenInfo
GetPointerType
GetPresentParameters()
+GetProcAddress failed for RoActivateInstance
+GetProcAddress failed for RoGetActivationFactory
+GetProcAddress failed for WindowsCreateString
+GetProcAddress failed for WindowsCreateStringReference
+GetProcAddress failed for WindowsDeleteString
+GetProcAddress failed for WindowsGetStringRawBuffer
GetPropW
GetQueueStatus
GetRawInputBuffer
@@ -1566,7 +1594,9 @@ GetRenderTargetData()
GetSaveFileNameW
GetSurfaceLevel()
GetSwapChain()
+GetSystemDirectoryW
GetSystemPowerStatus
+GetTempFileNameW
GetTextExtentPoint32A
GetTextMetricsW
GetThreadDpiAwarenessContext
@@ -1641,6 +1671,7 @@ Haptic: Updating effect type is illegal.
Hb$E
Hb$E\v
Help
+HiUL
HidD_FreePreparsedData
HidD_GetAttributes
HidD_GetFeature
@@ -1707,7 +1738,7 @@ IDAT
IDAT section larger than 2^30 bytes
IDXGIDevice1::SetMaximumFrameLatency
IDXGIFactory2::CreateSwapChainForHwnd
-IDXGIFactory6::EnumAdapterByGPUPreference
+IDXGIFactory6::EnumAdapterByGpuPreference
IDXGISwapChain1::QueryInterface
IDXGISwapChain1::SetRotation
IDXGISwapChain3::SetColorSpace1
@@ -1977,6 +2008,7 @@ LoadCursorW
LoadIconW
LoadLibraryW
Loaded vendored D3D12Core.dll
+LocalAlloc
LockRect()
Logitech ChillStream
Logitech Driving Force GT
@@ -2071,10 +2103,10 @@ Negative swap interval unsupported in this GL
Nhubh4!
Nintendo
Nintendo Co., Ltd.
+Nintendo Family Computer Controller (1)
+Nintendo Family Computer Controller (2)
Nintendo GameCube Controller
Nintendo GameCube WaveBird controllers do not support rumble
-Nintendo HVC Controller (1)
-Nintendo HVC Controller (2)
Nintendo N64 Controller
Nintendo NES Controller (L)
Nintendo NES Controller (R)
@@ -2121,10 +2153,13 @@ Not a PNG
Not enough data in queue
Not enough data in queue (resample)
Not enough resources to create thread
+Notifications must have a title
+Notifications require Windows 10 or higher
Null surface in frame %i
Number of buttons exceeds limit of %d
Numlock
OLEAUT32.dll
+OPENGL32.DLL
OSG1
OSG12
OSG14
@@ -2153,6 +2188,7 @@ Oper
Operation invalid on popup windows
Out of BAR memory, allocating uniform buffers on host-local memory, expect degraded performance!
Out of bounds reading report data
+Out of device-local memory, allocating buffers on host-local memory, expect degraded performance!
Out of device-local memory, allocating textures on host-local memory!
Out of memory
Out of memory - aborting
@@ -2217,6 +2253,7 @@ PNG not supported: unsupported color depth
POSITION
PRESSURE
PS3 Controller
+PS4 Controller
PSV0
PSV04
PSV0L
@@ -2261,6 +2298,7 @@ Public share unavailable on Windows
QANBA USA, LLC
QANBA USA,LLC
QEAD
+QW@3
Q\n%Wv3
Qanba
QkkXa
@@ -2277,17 +2315,21 @@ RESOURCE_MANIPULATION
RIFF form type is not WAVE (not a Waveform file)
RIFF size truncates chunk
ROTATION
-RSDS|
+RSDS
RTS0
RTS0$
RTS0H
+Raw input thread exiting, unexpected wait result: %lu
Rcoeff
Read timed out
Reading from
Reading past end of flushed track
Reading past end of incomplete track
+RegDeleteKeyValueW
+RegGetValueW
RegOpenKeyExW
RegQueryValueExW
+RegSetKeyValueW
RegisterClassExW
RegisterClassW
RegisterClipboardFormatW
@@ -2327,8 +2369,11 @@ Right Hyper
Right Meta
Right Shift
Right Windows
+RoActivateInstance
+RoGetActivationFactory
RtlGetVersion
Rumble failed, device disconnected
+Rumble is disabled because the adapter is not at least of firmware 0x7
Running the effect
S16BE
S16LE
@@ -2479,7 +2524,7 @@ SDL generic title storage driver
SDL generic user storage driver
SDL offscreen video driver
SDL revision: %s
-SDL-release-3.4.0-265-g31404a9dc
+SDL-release-3.4.0-1051-g0fa422231
SDL.app.metadata.copyright
SDL.app.metadata.creator
SDL.app.metadata.identifier
@@ -2568,6 +2613,16 @@ SDL.joystick.cap.player_led
SDL.joystick.cap.rgb_led
SDL.joystick.cap.rumble
SDL.joystick.cap.trigger_rumble
+SDL.notification.action_count
+SDL.notification.actions
+SDL.notification.header_icon
+SDL.notification.image
+SDL.notification.message
+SDL.notification.priority
+SDL.notification.replaces
+SDL.notification.sound
+SDL.notification.title
+SDL.notification.transient
SDL.process.background
SDL.process.create.args
SDL.process.create.background
@@ -2725,6 +2780,7 @@ SDL.window.create.win32.pixel_format_hwnd
SDL.window.shape
SDL.window.win32.hdc
SDL.window.win32.instance
+SDL2_COMPAT
SDL3_DYNAMIC_API
SDLAudio%c%d
SDLCamera%d
@@ -2983,6 +3039,7 @@ SDL_EGL_LIBRARY
SDL_EGL_LoadLibraryOnly() has not been called or has failed.
SDL_EGL_SetAttributeCallbacks
SDL_ENABLE_SCREEN_KEYBOARD
+SDL_ENABLE_STEAM_SCREEN_KEYBOARD
SDL_EVENT_AUDIO_DEVICE_ADDED
SDL_EVENT_AUDIO_DEVICE_FORMAT_CHANGED
SDL_EVENT_AUDIO_DEVICE_REMOVED
@@ -3015,6 +3072,8 @@ SDL_EVENT_GAMEPAD_ADDED
SDL_EVENT_GAMEPAD_AXIS_MOTION
SDL_EVENT_GAMEPAD_BUTTON_DOWN
SDL_EVENT_GAMEPAD_BUTTON_UP
+SDL_EVENT_GAMEPAD_CAPSENSE_RELEASE
+SDL_EVENT_GAMEPAD_CAPSENSE_TOUCH
SDL_EVENT_GAMEPAD_REMAPPED
SDL_EVENT_GAMEPAD_REMOVED
SDL_EVENT_GAMEPAD_SENSOR_UPDATE
@@ -3046,6 +3105,7 @@ SDL_EVENT_MOUSE_BUTTON_UP
SDL_EVENT_MOUSE_MOTION
SDL_EVENT_MOUSE_REMOVED
SDL_EVENT_MOUSE_WHEEL
+SDL_EVENT_NOTIFICATION_ACTION_INVOKED
SDL_EVENT_PEN_AXIS
SDL_EVENT_PEN_BUTTON_DOWN
SDL_EVENT_PEN_BUTTON_UP
@@ -3097,6 +3157,7 @@ SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED
SDL_EVENT_WINDOW_RESIZED
SDL_EVENT_WINDOW_RESTORED
SDL_EVENT_WINDOW_SAFE_AREA_CHANGED
+SDL_EVENT_WINDOW_SETTINGS_CHANGED
SDL_EVENT_WINDOW_SHOWN
SDL_EndGPUComputePass
SDL_EndGPUComputePass_REAL
@@ -3111,6 +3172,17 @@ SDL_EnumerateStorageDirectory
SDL_EventEnabled
SDL_FILE_DIALOG_DRIVER
SDL_FORCE_RAISEWINDOW
+SDL_FORMFACTOR_CAR
+SDL_FORMFACTOR_CONSOLE
+SDL_FORMFACTOR_DESKTOP
+SDL_FORMFACTOR_HANDHELD
+SDL_FORMFACTOR_HEADSET
+SDL_FORMFACTOR_LAPTOP
+SDL_FORMFACTOR_PHONE
+SDL_FORMFACTOR_TABLET
+SDL_FORMFACTOR_TV
+SDL_FORMFACTOR_UNKNOWN
+SDL_FORMFACTOR_WATCH
SDL_FRAMEBUFFER_ACCELERATION
SDL_FillSurfaceRect
SDL_FillSurfaceRect(): dst
@@ -3135,8 +3207,10 @@ SDL_GAMECONTROLLER_SENSOR_FUSION
SDL_GAMECONTROLLER_USE_BUTTON_LABELS
SDL_GAMECONTROLLER_USE_GAMECUBE_LABELS
SDL_GDKResumeGPU
+SDL_GDKResumeRenderer
SDL_GDKSuspendComplete
SDL_GDKSuspendGPU
+SDL_GDKSuspendRenderer
SDL_GL_CreateContext
SDL_GL_DestroyContext
SDL_GL_ExtensionSupported
@@ -3170,6 +3244,7 @@ SDL_GamepadConnected
SDL_GamepadEventsEnabled
SDL_GamepadHasAxis
SDL_GamepadHasButton
+SDL_GamepadHasCapSense
SDL_GamepadHasSensor
SDL_GamepadSensorEnabled
SDL_GenerateMipmapsForGPUTexture
@@ -3226,6 +3301,8 @@ SDL_GetDaysInMonth
SDL_GetDefaultAssertionHandler
SDL_GetDefaultLogOutputFunction
SDL_GetDefaultTextureScaleMode
+SDL_GetDeviceFormFactor
+SDL_GetDeviceFormFactorName
SDL_GetDirect3D9AdapterIndex
SDL_GetDisplayForPoint
SDL_GetDisplayForRect
@@ -3254,6 +3331,7 @@ SDL_GetGamepadBindings
SDL_GetGamepadButtonFromString
SDL_GetGamepadButtonLabel
SDL_GetGamepadButtonLabelForType
+SDL_GetGamepadCapSense
SDL_GetGamepadConnectionState
SDL_GetGamepadFirmwareVersion
SDL_GetGamepadFromID
@@ -3538,6 +3616,7 @@ SDL_HasSSE2
SDL_HasSSE3
SDL_HasSSE41
SDL_HasSSE42
+SDL_HasSVE2
SDL_IME_IMPLEMENTED_UI
SDL_INVALID_PARAM_CHECKS
SDL_IOFromConstMem
@@ -3557,25 +3636,31 @@ SDL_IsJoystickHaptic
SDL_IsJoystickVirtual
SDL_IsMainThread
SDL_IsMouseHaptic
+SDL_IsPhone
SDL_IsTV
SDL_IsTablet
+SDL_IsUbuntuTouch
SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS
SDL_JOYSTICK_ARCADESTICK_DEVICES
SDL_JOYSTICK_ARCADESTICK_DEVICES_EXCLUDED
SDL_JOYSTICK_BLACKLIST_DEVICES
SDL_JOYSTICK_BLACKLIST_DEVICES_EXCLUDED
SDL_JOYSTICK_CHECK_EZFRD64
SDL_JOYSTICK_DIRECTINPUT
+SDL_JOYSTICK_DRUM_DEVICES
SDL_JOYSTICK_ENHANCED_REPORTS
SDL_JOYSTICK_FLIGHTSTICK_DEVICES
SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED
SDL_JOYSTICK_GAMECUBE_DEVICES
SDL_JOYSTICK_GAMECUBE_DEVICES_EXCLUDED
SDL_JOYSTICK_GAMEINPUT
+SDL_JOYSTICK_GAMEINPUT_RAW
+SDL_JOYSTICK_GUITAR_DEVICES
SDL_JOYSTICK_HAPTIC_AXES
SDL_JOYSTICK_HIDAPI
SDL_JOYSTICK_HIDAPI_8BITDO
SDL_JOYSTICK_HIDAPI_COMBINED
+SDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS
SDL_JOYSTICK_HIDAPI_FLYDIGI
SDL_JOYSTICK_HIDAPI_GAMECUBE
SDL_JOYSTICK_HIDAPI_GAMECUBE_RUMBLE_BRAKE
@@ -3589,6 +3674,7 @@ SDL_JOYSTICK_HIDAPI_LUNA
SDL_JOYSTICK_HIDAPI_NINTENDO_CLASSIC
SDL_JOYSTICK_HIDAPI_PS3
SDL_JOYSTICK_HIDAPI_PS3_SIXAXIS_DRIVER
+SDL_JOYSTICK_HIDAPI_PS4
SDL_JOYSTICK_HIDAPI_PS4_REPORT_INTERVAL
SDL_JOYSTICK_HIDAPI_PS5
SDL_JOYSTICK_HIDAPI_PS5_PLAYER_LED
@@ -3633,6 +3719,8 @@ SDL_LoadFile
SDL_LoadFileAsync
SDL_LoadFile_IO
SDL_LoadFunction
+SDL_LoadJPG
+SDL_LoadJPG_IO
SDL_LoadObject
SDL_LoadPNG
SDL_LoadPNG_IO
@@ -3689,8 +3777,7 @@ SDL_Metal_GetLayer
SDL_MixAudio
SDL_MixAudio(): unknown audio format
SDL_NO_SIGNAL_HANDLERS
-SDL_OPENGL_ES_DRIVER
-SDL_OPENGL_FORCE_SRGB_CAPABLE
+SDL_OPENGL_FORCE_SRGB_FRAMEBUFFER
SDL_OPENGL_LIBRARY
SDL_OPENXR_LIBRARY
SDL_OnApplicationDidChangeStatusBarOrientation
@@ -3757,6 +3844,8 @@ SDL_PIXELFORMAT_MJPG
SDL_PIXELFORMAT_NV12
SDL_PIXELFORMAT_NV21
SDL_PIXELFORMAT_P010
+SDL_PIXELFORMAT_P408
+SDL_PIXELFORMAT_P416
SDL_PIXELFORMAT_RGB24
SDL_PIXELFORMAT_RGB332
SDL_PIXELFORMAT_RGB48
@@ -3850,6 +3939,7 @@ SDL_ReleaseWindowFromGPUDevice
SDL_ReloadGamepadMappings
SDL_RemoveEventWatch
SDL_RemoveHintCallback
+SDL_RemoveNotification
SDL_RemovePath
SDL_RemoveStoragePath
SDL_RemoveSurfaceAlternateImages
@@ -3889,6 +3979,7 @@ SDL_RenderViewportSet
SDL_Renderer
SDL_ReportAssertion
SDL_RequestAndroidPermission
+SDL_RequestNotificationPermission
SDL_ResetAssertionReport
SDL_ResetHint
SDL_ResetHints
@@ -3905,6 +3996,7 @@ SDL_RunHapticEffect
SDL_RunOnMainThread
SDL_STORAGE_TITLE_DRIVER
SDL_STORAGE_USER_DRIVER
+SDL_SURFACE_MALLOC
SDL_SaveBMP
SDL_SaveBMP_IO
SDL_SaveFile
@@ -3950,6 +4042,9 @@ SDL_SetGPUBlendConstants_REAL
SDL_SetGPUBufferName
SDL_SetGPURenderState
SDL_SetGPURenderStateFragmentUniforms
+SDL_SetGPURenderStateSamplerBindings
+SDL_SetGPURenderStateStorageBuffers
+SDL_SetGPURenderStateStorageTextures
SDL_SetGPUScissor
SDL_SetGPUScissor_REAL
SDL_SetGPUStencilReference
@@ -4046,6 +4141,8 @@ SDL_ShouldInit
SDL_ShouldQuit
SDL_ShowAndroidToast
SDL_ShowFileDialogWithProperties
+SDL_ShowNotification
+SDL_ShowNotificationWithProperties
SDL_ShowOpenFileDialog
SDL_ShowOpenFolderDialog
SDL_ShowSaveFileDialog
@@ -4131,7 +4228,6 @@ SDL_WAVE_FACT_CHUNK
SDL_WAVE_RIFF_CHUNK_SIZE
SDL_WAVE_TRUNCATION
SDL_WINDOWS_CLOSE_ON_ALT_F4
-SDL_WINDOWS_DETECT_DEVICE_HOTPLUG
SDL_WINDOWS_DPI_AWARENESS
SDL_WINDOWS_ENABLE_MENU_MNEMONICS
SDL_WINDOWS_ENABLE_MESSAGELOOP
@@ -4140,6 +4236,7 @@ SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL
SDL_WINDOWS_INTRESOURCE_ICON
SDL_WINDOWS_INTRESOURCE_ICON_SMALL
SDL_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS
+SDL_WINDOWS_RAW_KEYBOARD_INPUTSINK
SDL_WINDOWS_USE_D3D9EX
SDL_WINDOW_ACTIVATE_WHEN_RAISED
SDL_WINDOW_ACTIVATE_WHEN_SHOWN
@@ -4185,11 +4282,11 @@ SDL_WriteU32LE
SDL_WriteU64BE
SDL_WriteU64LE
SDL_WriteU8
-SDL_XINPUT_ENABLED
SDL_abs
SDL_acos
SDL_acosf
SDL_aligned_alloc
+SDL_aligned_alloc_zero
SDL_aligned_free
SDL_app
SDL_asin
@@ -4360,6 +4457,9 @@ SDL_wcsnlen
SDL_wcsnstr
SDL_wcsstr
SDL_wcstol
+SDL_wcstoll
+SDL_wcstoul
+SDL_wcstoull
SDL_window%u-%8.8d.bmp
SDLasyncio%d
SETUPAPI.dll
@@ -4424,7 +4524,6 @@ SetLED failed, device disconnected
SetLayeredWindowAttributes
SetLayeredWindowAttributes()
SetMenuItemInfoW
-SetNamedPipeHandleState
SetNamedPipeHandleState()
SetParent
SetPixel
@@ -4481,6 +4580,7 @@ Software renderer doesn't have an output surface
Sound buffer size must be between %d and %d
Space
Steam Controller
+Steam Controller HID Write FAILED! rc: %d. SDL_Error: %s
Steam Deck
Steam cloud is disabled for this application
Steam cloud is disabled for this user
@@ -4498,7 +4598,6 @@ SteamAPI_ISteamRemoteStorage_GetQuota
SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount
SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp
SteamAPI_SteamRemoteStorage_v016
-SteamDeck
SteamRemoteStorage only supports INT32_MAX read size
SteamRemoteStorage only supports INT32_MAX write size
SteamRemoteStorage unavailable
@@ -4517,6 +4616,7 @@ Stream has no source format
SubmitIoRing
Surface already associated with window
Surface doesn't have a colorkey
+Surface doesn't use a palette
Surfaces must not be locked during blit
SwapBuffers
SwapBuffers()
@@ -4531,6 +4631,7 @@ SystemParametersInfoW
System\CurrentControlSet\Control\MediaCategories\{%02X%02X%02X%02X-%02X%02X-%02X%02X-%02X%02X-%02X%02X%02X%02X%02X%02X}
T 3K
TANGENTIAL_PRESSURE
+TBZD
TEST
TEXCOORD
TINTLGNT.IME
@@ -4545,8 +4646,9 @@ Texture doesn't have a palette
Texture format %s not supported by OpenGL
Texture format %s not supported by SDL_GPU
Texture format must be NV12, NV21, or P010
-Texture format must be YV12 or IYUV
+Texture format must be YV12, IYUV, P408, or P416
Texture format not supported
+Texture framebuffer was incomplete
Texture has no default usage mode!
Texture is not currently available
Texture isn't palettized format
@@ -4585,6 +4687,7 @@ Tj!t
TlsSetValue()
ToUnicode
Tooltip and popup menu windows must specify a parent window
+Touch
TrackMouseEvent
TrackPopupMenu
Trackpad
@@ -4760,7 +4863,6 @@ VK_ERROR_NATIVE_WINDOW_IN_USE_KHR
VK_ERROR_NOT_PERMITTED_EXT
VK_ERROR_OUT_OF_DATE_KHR
VK_ERROR_OUT_OF_DEVICE_MEMORY
-VK_ERROR_OUT_OF_HOST_MEMORY
VK_ERROR_OUT_OF_POOL_MEMORY
VK_ERROR_SURFACE_LOST_KHR
VK_ERROR_TOO_MANY_OBJECTS
@@ -4779,6 +4881,7 @@ VK_KHR_driver_properties
VK_KHR_get_memory_requirements2
VK_KHR_get_physical_device_properties2
VK_KHR_maintenance1
+VK_KHR_portability_enumeration
VK_KHR_portability_subset
VK_KHR_sampler_ycbcr_conversion
VK_KHR_surface
@@ -4808,6 +4911,7 @@ Validation layers not found, continuing without validation
Validation layers partially enabled, some warnings may not be available
Values of 'indices' out of bounds
VerQueryValueA
+VerQueryValueW
VertexShaderConstants
Very large image (corrupt?)
Vff6A
@@ -4841,6 +4945,7 @@ Vulkan is not loaded
Vulkan loader library already loaded
Vulkan: Could not create Vulkan instance
Vulkan: Failed to determine a suitable physical device
+Vulkan: Failed to load OpenXR: %s
Vulkan: SDL_Vulkan_LoadLibrary failed!
W6A
WARN
@@ -4886,7 +4991,8 @@ Window must be created with SDL_WINDOW_TRANSPARENT
Window must have a parent to enable the modal state; use SDL_SetWindowParent() to set the parent first.
Window not claimed by this device
Window surface is invalid, please call SDL_GetWindowSurface() to get a new surface
-Windows error, CommDlgExtendedError: %ld
+Windows does not support custom notification sounds outside an MSIX package
+Windows error, CommDlgExtendedError: %lu
Windows-style path separators ('\') not permitted, use '/' instead.
Windows.Xbox.Input.ArcadeStick
Windows.Xbox.Input.Chatpad
@@ -4895,6 +5001,10 @@ Windows.Xbox.Input.Gamepad
Windows.Xbox.Input.Headset
Windows.Xbox.Input.NavigationController
Windows.Xbox.Input.Wheel
+WindowsCreateString
+WindowsCreateStringReference
+WindowsDeleteString
+WindowsGetStringRawBuffer
Wireless Gamepad
Wireless HORIPAD For Steam
Wj\r/5bp
@@ -4920,25 +5030,26 @@ XInputGetCapabilities
XInputGetState
XInputSetState
XInputSetState() failed
+XJSr
+XM`8q
XR_APILAYER_LUNARG_core_validation
XR_KHR_D3D12_enable
XR_KHR_vulkan_enable2
XTILT
XXXX PNG chunk not known
X\f=1=IM
+X\vty
Xbox
Xbox 360 Controller
Xbox 360 Wireless Controller
+Xbox 360 Wireless Racing Wheel
Xbox Adaptive Controller
Xbox One Chatpad
Xbox One Controller
Xbox One Elite 2 Controller
Xbox One Elite Controller
Xbox One S Controller
-Xbox One report descriptor: size = %d
Xbox Series X Controller
-Xbox report descriptor missing expected usages, ignoring
-Xbox report descriptor not available
Xbox360
XboxOne
Y + U + V would overflow
@@ -4947,7 +5058,7 @@ YTILT
YUV textures require a Vulkan device that supports VK_KHR_sampler_ycbcr_conversion
YUY2!
YV12!
-YV12, IYUV, NV12, NV21 textures only support full surface locks
+YV12, IYUV, P408, P416, NV12, NV21 textures only support full surface locks
YVYU!
Yoffset
You are using the SDL disk i/o audio driver!
@@ -4957,6 +5068,7 @@ You must specify an out pointer for the OpenXR system ID
You probably don't have a working Vulkan driver installed. %s %s %s(%d)
Ypitch
Yplane
+ZUIKI EVOTOP
ZUIKI MASCON PRO
ZvfkJ
[DXIL\f
@@ -4966,12 +5078,12 @@ ZvfkJ
[slot %d]
\6s{o6
\B1L
+\\.\pipe\HID#VID_045E&PID_028E&IG_00#%*X&%*X&%*X#%d#%*u
\\?\HID#VID_28DE&PID_11FF&IG_0%d
\f<3h>2LayerOrDepth
\fB0bp
\fCC8
\fc=Ac
-\fp\vPHc
\fzP\nqa
\n%.2d:
\n\nSDL assertion report.\n
@@ -4986,8 +5098,10 @@ ZvfkJ
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\v60JA
_SDL_WAKEUP
+__preserve_none
` aCcY
`0mF
+`UUUUU
a 4mC
a 80
a:b0,b:b1,back:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,lefttrigger:a4,leftx:a0,lefty:a1,misc1:b11,misc2:b4,rightshoulder:b10,righttrigger:b7,start:b6,x:a5,y:b2,
@@ -5018,6 +5132,7 @@ a_position
a_texCoord
abort
abxy
+acosf
adapterIndex
aligning pitch would overflow
altivec
@@ -5078,7 +5193,7 @@ desc
desc missing sensor descriptions
desc missing touchpad descriptions
destination
-dialogg
+dialog
direct-to-disk audio
direct3d
direct3d11
@@ -5104,6 +5219,7 @@ dst_spec->freq
dummy
dxgi.dll
dxgidebug.dll
+e<bN
eW|T
eglBindAPI
eglChooseConfig
@@ -5220,7 +5336,6 @@ glEnableVertexAttribArray
glEnd
glFinish
glFramebufferTexture2D
-glFramebufferTexture2D() failed
glFramebufferTexture2DEXT
glFramebufferTexture2DEXT() failed
glGenBuffers
@@ -5288,6 +5403,7 @@ glVertex3fv
glVertexAttribPointer
glVertexPointer
glViewport
+gpio_ir_recv
graphicsPipelineCreateInfo
graphics_pipeline
guide
@@ -5299,6 +5415,7 @@ h6%O
h;uO
hC@L
hDXIL`
+hOy'=
h\vKs#BU
handle
haptic
@@ -5349,6 +5466,7 @@ k_eControllerType_
key already exists and replace is disabled
ksI#+s
kz#+c
+l,kg<i
laIO
lasx
latin_letters
@@ -5382,8 +5500,9 @@ misc%d
misc1
misc1:b11,
misc1:b11,misc2:b12,
-misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15
misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,
+misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,touchpad:b17,misc2:b16
+misc1:b11,paddle1:b13,paddle2:b12,misc2:b14,misc3:b15,
misc2
misc2:b15,misc3:b16,
misc3
@@ -5395,6 +5514,7 @@ mouse_input
n/zX
n33>0
n33>0x
+n5SDL_XINPUT_ENABLED
n;3n
nC@L
ncolors
@@ -5435,10 +5555,9 @@ p\v|0b
paddle1
paddle1:b11,paddle2:b12,
paddle1:b11,paddle2:b12,paddle3:b13,paddle4:b14,
-paddle1:b11,paddle2:b12,paddle3:b13,paddle4:b14,misc2:b15,misc3:b16,
paddle1:b11,paddle2:b13,paddle3:b12,paddle4:b14,
paddle1:b12,paddle2:b11,paddle3:b14,paddle4:b13,
-paddle1:b13,paddle2:b12,paddle3:b15,paddle4:b14,misc2:b11,misc3:b16,misc4:b17
+paddle1:b13,paddle2:b12,paddle3:b15,paddle4:b14,misc1:b11
paddle1:b14,paddle2:b13,
paddle1:b16,paddle2:b15,paddle3:b14,paddle4:b13,
paddle2
@@ -5457,6 +5576,7 @@ platform:
point
points
poweroff
+powf
pressed
projectionAndView
ps_2_0
@@ -5478,6 +5598,7 @@ qYVYU
queue
quiet
r,s,d
+rX0p
raw mouse input
read size overflow
realloc_func
@@ -5513,6 +5634,7 @@ sensor
sig_ld4
sig_st
sig_stD
+silent
size_indices
skip
slot_index exceeds MAX_UNIFORM_BUFFERS_PER_STAGE
@@ -5543,12 +5665,12 @@ stream
streams
strict
surface
+sve2
swapchain_texture
switchpro
system
t0P18r
t0bp
-t:DualSense Edge Wireless Controller
tex%d
texel_size
text/plain
@@ -5905,12 +6027,14 @@ vkUnmapMemory
vkUpdateDescriptorSets
vkWaitForFences
vkWaitForFences()
+vmg$9
vulkan
vulkan-1.dll
w0_row
w0bp
w1_row
w2_row
+wFile is not a Windows BMP file
waitevent
wasapi
wglChoosePixelFormatARB
@@ -5928,6 +6052,7 @@ wglSwapIntervalEXT
wglSwapIntervalEXT()
width * 4 would overflow
width * bpp would overflow
+width * height * bpp would overflow
width * height would overflow
width + 1 would overflow
window
game/bin/win64/animationsystem_strings.txt
modified • +288 / -96 • changes: 384
Show patch
@@ -10,7 +10,7 @@
+ WeightList[%d] :: %s\n
%i bytes : %s %f : (%s)\n
%i bytes : %s : (%s)\n
- C%d:I%-2d {F=%-10d,V=%-10d}
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -26,25 +26,30 @@
%s : Animations loaded but no animation data found\n
%s : animtable hash too small: %d elements / %d buckets\n
%s : seqtable hash too small: %d elements / %d buckets\n
- (08@HPX`jP
- (08@HPZP
- (08@JP
+ (08@HPX`jp
+ (08@HPXbp
+ (08@HPZp
+ (08@HRp
+ (08@Jp
+ (0X`hpzp
* %d WeightLists\n
* ScaleSet[%d] :: %s\n
* WeightList[%d] :: %s\n
** Entrypoint For Method '%s'
- (Additive)
<-- Arg '%s'
<-- Retval '%s'
- B0=q
+ Aconst char *__cdecl Reflection::Internal::GetFuncName<class CEmitTagActionUpdater>(void)
Vector b
[*OBSERVABLE*]
+ \tV_coshf
\t\n\r@()[]{}=&,:*|;'!
"Limit Count: " + m_nLimitCount
#################################\n
#Angle
#Position
#Scale
+#\tV_exp2f
#data
%d CallInfos:\n
%d Cells:\n
@@ -80,51 +85,60 @@
%d.Transform( %s, Vector( %.2f, %.2f, %.2f ), DegreeEuler( %.2f %.2f %.2f ) )\n
%d.Worldspace( %s, %d, %.2f )
%d.Worldspace( %s, %d, %.2f )\n
+%s %s: %s - %s - %s\n
%s '%s' (%s)
%s (%.2f, %.2f, %.2f)
-%s (%d) - %s\n
%s (Color)
%s (Material)
%s - %.1f%%, %.2fs, frame %.1f %s
%s : param %s %s : %f\n
%s Target
%s follows %s
+%s%02d:%02d
%s::%s (%u)
%s::%s (Entity Output Handler)
%s\n%2.f - Pos: %.2f, Orient: %.2f
%s_color
%s_matgrp
'Play reversed' has no effect when used with time synchronization!
(%f, %f, %f)
-(1It
-(1wt
-(9Et
-(9Ot
-(AHt
-(Azt
+(1iw
+(5hw
+(92w
+(AFw
(Blend1D):m_flBlendValue
(Blend1D):m_resetCount
-(I1t
-(I6t
-(Myt
-(Q8t
-(QBt
-(QLt
-(Qft
-(Qxt
-(YXt
-(ast
-(eRt
-(q7t
-(qEt
-(uzt
+(I4w
+(Ikw
+(M0w
+(Mtw
+(QZw
+(UJw
+(Ugw
+(YPw
+(aCw
+(anw
+(aqw
+(e1w
+(e5w
+(fPgb
+(ipw
+(ivw
+(mew
+(myw
+(y7w
+(yBw
+(yLw
** Invalid ID **
*** Test failure: "%s"
***\nShared activity collision with private activity! %s<->%s [%i]\n***\n
***\nShared<->Private Activity collision!\n***\n
***\nShared<->Private Event collision!\n***\n
*>PlayerInputAnimMotorInstance
- Scripted Sequence:
+.0Ob
+.0ab
+.0lb
.?AU?$ArrayWrapper@V?$CUtlVector@UCWeightPreview@@HV?$CUtlVectorMemory_Growable@UCWeightPreview@@H$0A@@@@@@Detail@Reflection@@
.?AU?$ArrayWrapper@V?$CUtlVector@V?$CSmartPtr@VCAnimComponentInstance@@VCRefCountAccessor@@@@HV?$CUtlVectorMemory_Growable@V?$CSmartPtr@VCAnimComponentInstance@@VCRefCountAccessor@@@@H$0A@@@@@@Detail@Reflection@@
.?AU?$ArrayWrapper@V?$CUtlVector@V?$CSmartPtr@VCAnimMotorInstance@@VCRefCountAccessor@@@@HV?$CUtlVectorMemory_Growable@V?$CSmartPtr@VCAnimMotorInstance@@VCRefCountAccessor@@@@H$0A@@@@@@Detail@Reflection@@
@@ -446,6 +460,7 @@
.?AUCFootMotionStatus@@
.?AUCMorphSetData@@
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AUCSequenceGroupData@@
.?AUCWeightPreview@@
@@ -455,6 +470,7 @@
.?AUIStringAccessor@?$StringAttrBase@VObjectName@Attribute@@@Detail@Attribute@@
.?AUIStringAccessor@?$StringAttrBase@VObjectUserData@Attribute@@@Detail@Attribute@@
.?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCAimMatrixUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCAimMatrixUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCAnimStateMachineUpdater@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@PEBVCAnimStateMachineUpdater@@P83@EBAXAEAVCAnimUpdateContext@@H@Z@Z@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCAnimationLayer@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@V?$CPackedDataOffset@VCAnimationLayer@@@@P8CAnimationLayer@@EAAXAEAVCAnimUpdateContext@@H@Z@Z@
@@ -479,13 +495,13 @@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCSelectorUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCStateMachineUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCStateMachineUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@
.?AV<lambda_1>@?1???$MakeNetVarCallback@VCTargetSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCTargetSelectorUpdateNode@@P83@EBAXAEAVCAnimUpdateContext@@E@Z@Z@
+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@
.?AV<lambda_1>@CAnimParameterInstance@@
.?AV<lambda_1>@CConcreteAnimParameter@@
.?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
.?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
-.?AV?$CAnimNetVarDataOps@V?$CAnimNetVar@I@@$0CF@@@
-.?AV?$CAnimNetVarDataOps@V?$CAnimNetVar@M@@$00@@
.?AV?$CBaseAppSystem@VIAnimationSystem@@@@
.?AV?$CBaseConcreteToolAttr@EVCEnumAnimParameter@@@@
.?AV?$CBaseConcreteToolAttr@HUIKSolverSettings_t@@@@
@@ -1305,6 +1321,7 @@
.?AV?$_Func_base@_NPEBVCAnimComponentInstance@@@std@@
.?AV?$_Func_base@_NPEBVCAnimParameterBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAimMatrixUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCAimMatrixUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAnimStateMachineUpdater@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@PEBVCAnimStateMachineUpdater@@P84@EBAXAEAVCAnimUpdateContext@@H@Z@Z@XAEAV5@H@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCAnimationLayer@@H@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@H@Z@std@@V?$CPackedDataOffset@VCAnimationLayer@@@@P8CAnimationLayer@@EAAXAEAVCAnimUpdateContext@@H@Z@Z@XAEAV6@H@std@@
@@ -1329,9 +1346,11 @@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCSelectorUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCStateMachineUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCStateMachineUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$MakeNetVarCallback@VCTargetSelectorUpdateNode@@E@@YA?AV?$function@$$A6AXAEAVCAnimUpdateContext@@E@Z@std@@PEBVCTargetSelectorUpdateNode@@P84@EBAXAEAVCAnimUpdateContext@@E@Z@Z@XAEAV5@E@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@CAnimParameterInstance@@VColor@@PEBV2@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@CConcreteAnimParameter@@VColor@@PEBVCAnimParameterBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V?$_Mem_fn@P8CActionComponentInstance@@EBAAEBVCUtlString@@XZ@std@@AEBVCUtlString@@PEBVCActionComponentInstance@@@std@@
@@ -2042,13 +2061,29 @@
.?AVUseReflectionEditor@AnimGraph@Attribute@@
.?AVUsesCustomCurrentValue@MotionMatching@Attribute@@
.?AVUsesCustomSampleInterpolation@MotionMatching@Attribute@@
+.PLb
+.PMb
+.PPb
+.Pjb
+.pDb
+.pKb
+.pMb
+.pjb
.vagrp_c/.vanim_c mismatch :: %s :: %s\n
-08@HRP
-08BP
+08@HRp
+08@Jp
+08Bp
180_recovery
-2\vpD
2_BONE_IK
-8@JP
+6 Fb
+6 gb
+6P>b
+6pFb
+6pYb
+6p^b
+8!ww
+8@Jp
+8Fpcb
::embedded_animation
:NetworkedCycle:CycleZeroTime
:NetworkedCycle:CyclesPerSecond
@@ -2073,18 +2108,36 @@
<Invalid State>
<map_key>
<map_value>
+<non-RTTI type>
<none>\n
<pair_a>
<pair_b>
== PulseGraphDef ==\n
========================================\nNew Pose Recipe Max Size\nNumOps: %i\nBuffer Used: %i\nPose Operations:\n
+=CConstraintTarget
=CNmTransitionNode::CDefinition
+>0Vb
+>0fb
+>P8b
+>PFb
>fff?
+>pgb
+?AnimVectorSource
?CMotionDataSet
?MGetKV3ClassDefaults
-?Move Heading
+?const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)
?expf
?m_flPosition
+@08N
+@6P9b
+@6P;b
+@6p]b
+@>0Bb
+@HPX`hv0Rb
+@N@Sb
+@Referenced graph resource failed to load or is invalid: %s
+@V@const char *__cdecl Reflection::Internal::GetFuncName<class IPathAnimMotorInstance>(void)
+@const char *__cdecl Reflection::Internal::GetFuncName<class IPairedSequenceComponentInstance>(void)
@fff>fff>fff>fff>
A string associated with this Cursor, to use later for remote Kill or Wait requests. Cursors can have any number of Tags associated with them.
ACT_NEUTRAL_REF_POSE
@@ -2137,7 +2190,6 @@ AE_WPN_NEXTCLIP_TO_POSEPARAM
AE_WPN_PLAYWPNSOUND
AE_ZOMBIE_POPHEADCRAB event format missing velocity parameter! Usage: event AE_ZOMBIE_POPHEADCRAB "<BoneName> <Speed>" \n
ATTACHMENT_INFLUENCE_FLAGS_NONE
-A\v:0h
Abs Float
Abs Int
Absolute value (float)
@@ -2147,18 +2199,21 @@ Active
Active Motor
Active Motor Index
Actual Target
+Add Flags
Add R%d <- R%d + R%d
+Add flags to the given value.
Add the array 'b' to the end of 'a'.
AddSequence( %s, %.3f ) : %.3f
Adding %d ScaleSets SequenceGroup[%d] :: %s\n
Adding %d WeightLists SequenceGroup[%d] :: %s\n
Additive Blend
Additive Blend (Masked): %.2f%%
Additive Blend: %.2f%%
+AdditiveBlendTask - Trying to perform an additive blend using a parent space pose
Adjusted foot position; offset: %.2f
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
AllocateAndLoad failed for '%s' (%s)\n
AllocateAndLoad failed for '%s'\n
-Always
And R%d <- R%d && R%d
Anim Clip
AnimGraph
@@ -2205,27 +2260,32 @@ Array Remove Invalid Elements
Array Set Count
Array Shuffle
Assert True
-Async Fire C%d:I%d
+AssetBrowse( %s )
+AssetBrowse()
+Async Call Method (Child Cursor) C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
Attempting to perform a global blend without a bone mask! This is not supported so falling back to a local blend!
Attribute
BLEND_PREALIGNED|
Bad FLC data for resource '%s': %s\n
Bad KV3 data for resource '%s': %s\n
Bad KV3 data in control block for '%s': %s\n
Bad block type for embedded animation data\n
-Bad count in ArraySetCount (%d)
Bad data block index for vagrp embedded animation data (%d)\n
Bad max in ArrayFirstNElements (%d)
Bad reinterpret on ArrayAppend
Bad reinterpret on ArrayInsert
Bad reinterpret on ArrayRemoveElementMatching
Base-10 logarithm
Base-2 logarithm
+Basic string support.
Begin testing a condition composed of Observable values. Continues checking until canceled.
Begin testing a condition composed of Observable variable references. Continues checking until true.
Blend (Masked): %.2f%%
Blend: %.2f%%
BlendNode
+BlendTask - Trying to perform an blend with mismatched pose types (additive/parent-space)
Block Selection
Bm_Plane
BodyGroup: %s => %d
@@ -2240,7 +2300,11 @@ BoneConstraintRbf :: input bone count %d != input pose count %d :: %s\n
BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\n
C:\buildworker\csgo_rel_win64\build\_build_\animationsystem\_vpc_animationsystem\unity\win64\_msvc_\Retail\animationsystem.pdb
C:\buildworker\csgo_rel_win64\build\src\animationsystem\animationsystem.cpp
+C:\buildworker\csgo_rel_win64\build\src\animlib\animpose.cpp
+C:\buildworker\csgo_rel_win64\build\src\animlib\animskeleton.cpp
C:\buildworker\csgo_rel_win64\build\src\animlib\graph\animgraph_instance.cpp
+C:\buildworker\csgo_rel_win64\build\src\animlib\graph\nodes\animgraphnode_chainlookat.cpp
+C:\buildworker\csgo_rel_win64\build\src\animlib\tasksystem\tasks\animtask_chainlookat.cpp
C:\buildworker\csgo_rel_win64\build\src\public\mathlib\range.h
CAnimNetVar
CAnimValue
@@ -2299,12 +2363,18 @@ CModelBodyGroupName
CModelBoneName
CModelMaterialGroupName
CMotionTransform
+CNmChainLookatNode::CDefinition::InstantiateNode
+CNmChainLookatTask::CNmChainLookatTask
+CNmFloatChannelData
+CNmFloatChannelData::ChannelSettings_t
+CNmFloatChannelSet_t
CNmGraphDefinition::KV3TransferPostLoadFn failed to FindDeclaredClass( '%s' )
CNmGraphInstance::CNmGraphInstance
CNmGraphInstance::EvaluateGraph
CNmGraphInstance::GetCurrentGraphTimingInfo
+CNmPose::DrawDebug
+CNmSkeleton::DrawDebug
CPPScript Component
-CPairedSequenceInstanceData
CParentAttachmentName
CParticleCollectionBindingInstance::HACK_UnusedBinding
CParticleNamedValueRef
@@ -2320,9 +2390,9 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -2332,26 +2402,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
CPulseCell_PickBestOutflowSelector::ProcessSelector
CPulseCell_Step_CallExternalMethod '%s'
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseMathlib::AbsFloat
CPulseMathlib::AbsInt
CPulseMathlib::ArcCos
@@ -2388,6 +2460,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -2417,16 +2490,21 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseTestScriptLib::AssertTrue
CPulseTestScriptLib::IndicateTestFailure
CPulseTestScriptLib::IsInTestMode
CPulseTestScriptLib::RegisterTestCheckpoint
CPulseTestScriptLib::TestModeAssertTrue
+CREATE_CHILD_CURSOR_OUTFLOW
CRelativeArray
CResourceName
CResourceNameTyped
@@ -2441,6 +2519,7 @@ CURVE_TANGENT_MIRROR
CURVE_TANGENT_SINE
CURVE_TANGENT_SPLINE
CUtlBinaryBlock
+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount
CUtlDict<class CAttachment,class CDefFastCaselessStringLess>::Insert
CUtlDict<class CHitBoxSet,class CDefFastCaselessStringLess>::Insert
CUtlDict<class IParamLookupHelper const *,class CDefFastCaselessStringLess>::Insert
@@ -2452,6 +2531,7 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CGlobalSymbol,int,class CMemAl
CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CMaterialDrawDescriptor,int,class CMemAllocAllocator>,class CMaterialDrawDescriptor,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CMeshletDescriptor,int,class CMemAllocAllocator>,class CMeshletDescriptor,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CNmBoneWeightList,int,class CMemAllocAllocator>,class CNmBoneWeightList,int>::InsertBeforeGetPtr
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<class CNmFloatChannelSet_t,int,class CMemAllocAllocator>,class CNmFloatChannelSet_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct AABB_t,int,class CMemAllocAllocator>,struct AABB_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CConstraintSlave,int,class CMemAllocAllocator>,struct CConstraintSlave,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CMaterialDrawDescriptor::RigidMeshPart_t,int,class CMemAllocAllocator>,struct CMaterialDrawDescriptor::RigidMeshPart_t,int>::InsertBeforeGetPtr
@@ -2461,8 +2541,10 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDrawDescriptor_t,int,class CMemAllocAllocator>,struct CSceneObjectData::RTProxyDrawDescriptor_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CGlobalSymbol,struct CPPScriptParamHandle,class CDefEquals<class CGlobalSymbol>,struct DefaultHashFunctor<class CGlobalSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CGlobalSymbol,struct CPPScriptParamHandle,class CDefEquals<class CGlobalSymbol>,struct DefaultHashFunctor<class CGlobalSymbol>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlString,struct VertexColor_t,class CDefEquals<class CUtlString>,struct DefaultHashFunctor<class CUtlString>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlString,struct VertexColor_t,class CDefEquals<class CUtlString>,struct DefaultHashFunctor<class CUtlString>,int>::HashBucket_t,int>::AddMultipleToTail
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct NmBoneMaskSetDefinition_t,int,class CMemAllocAllocator>,struct NmBoneMaskSetDefinition_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,3,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,4,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CGlobalSymbol,5,int,class CMemAllocAllocator>,class CGlobalSymbol,int>::InsertBeforeGetPtr
@@ -2482,11 +2564,11 @@ CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CNmStateNode::Ti
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,10,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,30,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,8,int,class CMemAllocAllocator>,unsigned char,int>::InsertBeforeGetPtr
+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage
+CUtlStringToken
CUtlVectorFixedGrowable
CWeakHandle
Call C%d:I%d (%s)
-Cancel
-Cancel observing.
Cannot allocate abstract class
Cannot construct abstract class
Cannot convert KV3 type '%s' (%u) to a string token
@@ -2506,8 +2588,8 @@ Cannot register variable %s more than once
Cannot register variable %s: it has no components
Cannot register variable %s: only float variables can have multiple components
Cant find specified alignment bone ID ('%s') for target warp node
-Cant find specified bone ID ('%s') for chain end
Cant find specified bone IDs or there are not enough bones in the specified chains ('%s, %s') for two bone effector node
+Cant find specified effector bone ID ('%s') for lookat
Ceiling - round float up to nearest integer)
Ceiling Float
Chain Lookat
@@ -2523,8 +2605,9 @@ Clamp value to range (float)
Clamp value to range (int)
Class does not allow allocation from its schema binding
Class does not allow construction from its schema binding
+Clip Selector: Failed to select a valid option!
Commit Step
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
Completed
Computes 2 ( 2.71...) raised to a power
Computes e ( 2.71...) raised to a power
@@ -2541,7 +2624,6 @@ Convert radians (0-pi) to degrees (0-180)
Copy 'element' to the end of 'a', increasing its count by one.
Copy R%d <- R%d
Cosine of angle. Input in radians, output in radians
-Couldn't find bone mask with ID: %s
Couldn't load KV3 for resource: %s
Count the number of codepoints in the string (unicode-aware). If you want rendered glyphs, you probably want to consider using Panorama.
Creating Bone Masks for Skeleton: Could find secondary skeleton for bone mask: %s\n
@@ -2558,6 +2640,8 @@ Cursor Has Tag
Cursors Allowed To Run Parallel
Cursors Allowed To Wait
CycleControlClipNode
+Cylinder - Centered (SLOW PERF)
+Cylinder - Ground (SLOW PERF)
DOT_TO_MORPH
Damped Value Component
DampedPathAnimMotorInstance
@@ -2582,6 +2666,7 @@ Domain: %s\n
Dot Product Vector
Dot Product of Vector a
Down
+DualHull
ENUM_
Effector: %s
Element Access R%d <- R%d[R%d]
@@ -2626,9 +2711,9 @@ Entity Attribute Base
Entity Attribute Float
Entity Attribute Int
EntityName
+Enum support.
Eq R%d <- R%d == R%d
Error in SolveCubic\n
-Error: %s (%d) - %s\n
Evaluate the curve at the specified input position
Evaluate the gradient at a position between 0 and 1
EvaluateGraph
@@ -2650,12 +2735,13 @@ FLAG_MESH|
FLAG_PHYSICS|
FLAG_PROCEDURAL|
FLAG_RIGIDLENGTH|
+F`fb
Face Down Path
Face Look Target
Facing Mode
Fail Outflow
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to apply FLC data to resource '%s': %s\n
Failed to call CBaseIntrospectedToKV3TypeManager::Init
Failed to compile Fuse script: %s\n
@@ -2666,7 +2752,9 @@ FeetSettings
Final pivot orientation
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find first element 'a' which compare equal to 'element' and return its index.
+Fired
Fixed Section
Float Curve (%s)
Float To Game Time
@@ -2688,6 +2776,8 @@ FootAdjustmentNode
FootLock:m_resetCount
FootPinning:ResetCount
Force Facing
+Format Duration String From Seconds
+Fp-b
Frac
Fractional component (ie. returns 0.34 for 12.34)
FrameUpdate
@@ -2718,42 +2808,45 @@ GetVar R%d <- V%d (%s)
GetVar R%d <=MOVE*V%d (%s)
GlobalSymbol
Gradient()
+Graph
GraphNodes
GridBlendNode
HAC K Unused Binding
HELPER_BONE
+Has All Flags
+Has Any Flags
HasPath
Hinge Axis
HitReact:m_hitCount
HitReact:m_resetCount
+ID Selector: Failed to select a valid option for ID: %s!
IK Target: %s
IKChainDataPoleVectorForAxis::X
IKChainDataPoleVectorForAxis::Y
IKChainDataPoleVectorForAxis::Z
IKV3TransferInterface_AllowRawStringTokenTransfer
IKV3TransferInterface_ResourceSave
-IKV3TransferInterface_UtlSymbolLarge
IND)ind)"
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If specified, each wait interval will vary randomly between WaitInterval this value
If this cursor spawns other work via Fire And Forget, should this Tag be inherited?
Ignoring mismatched anim :: %s :: %s\n
Indicate Test Failure
Indicate that a checkpoint has been reached.
Indicates a test failure if Value is false.
Indicates a test failure if value is false; only tested when running unit tests
+Info
Initial tilt bone orientation.
Insert 'element' in the given index in 'a', increasing its count by one and moving the elements after index.
Integer Divide
Integer division - unlike the divide (/) node, this will truncate any remainder (floor) and return an integer.
Intercept point.
-Invalid chain end bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request
Invalid component specifier ".%s" used on variable "%s"
Invalid effector bone ID ('%s') specified in input target
Invalid effector bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request
Invalid input detected for target selector
+Invalid input target bone ID ('%s') specified
Invalid left effector bone ID ('%s') specified, there are not enough bones in the chain to solve the IK request
Invalid number of parameters. Specify a flag you want to toggle.
Invalid property specification
@@ -2776,14 +2869,22 @@ KV3 save transfer failed: %s
KeyValues3
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
Km_IKChains
LOD %i
LOD Component
LOD Off
LabelledDebugHelperDebug
LeanMatrixNode
Leap to Chunk C%d
+LegacyAnimFieldType_t::BOOLEAN
+LegacyAnimFieldType_t::COLOR32
+LegacyAnimFieldType_t::FLOAT32
+LegacyAnimFieldType_t::INT32
+LegacyAnimFieldType_t::QUATERNION
+LegacyAnimFieldType_t::SCALE32
+LegacyAnimFieldType_t::VECTOR2D
+LegacyAnimFieldType_t::VECTOR3D
+LegacyAnimFieldType_t::VECTOR4D
Length (magnitude) of Vector
Length (magnitude) of Vector2D
Length Vector
@@ -2805,9 +2906,12 @@ Look Pitch (World)
Low LOD
MAlternateSemanticName
MAtomicTransfersAsPlainString
+MESH_BUFFER_USAGE_VERTEX_EMISSIVE
MFgdHelper
MIsStringAndTokenType
MKV3TransferName
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MModelGameData
MORPH
MPropertyArrayElementNameKey
@@ -2820,18 +2924,21 @@ MPropertySortPriority
MPropertySuppressField
MPulseExpressionAlias
MPulseFunctionHiddenInTool
+MPulseTypeRestriction
MVDataRoot
Make Angle
Make Angle From Forward Vector
Make Color
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -2870,6 +2977,7 @@ ModelAttachmentName()
ModelBodyGroupName()
ModelBoneName()
ModelMaterialGroupName()
+ModelSpaceBlendTask - Trying to perform a model-space blend using an additive pose
MorphChannel
MotionMatching:SelectionChangeCount
MotionMatching:clipIndex.index
@@ -2889,6 +2997,7 @@ MoveData
Movement Component
MoverNode
Mul R%d <- R%d * R%d
+N@Bad count in ArraySetCount (%d)
NULL CELL
Natural logarithm (base e)
Neg R%d <- -R%d
@@ -2903,18 +3012,19 @@ No DATA block for resource\n
No ID Set
No Orientation Warp Event Found!
No effector bone ID specified in input target
+No input target bone ID specified
No valid warp events detected! Either no events present or start time is after warp events.
NodeID %d port '%s' called from C%d:I%d
Normalize Vector a
Not R%d <- !R%d
Not Set
+Not enough bones, there are not enough bones in the chain to achieve the requested chain length, chain is limited to %d bones
Not safe to 'new' this class due to alignment requirements
ORIENT
On Interval
On True
OnInterval
Only wrote %d (of %d) values when saving map!
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Or R%d <- R%d || R%d
Orientation Warp failed since there is not enough time left to warp or we're past the warp event!
@@ -2929,21 +3039,30 @@ Outflow List
Overlay Blend
Overlay Blend (Masked): %.2f%%
Overlay Blend: %.2f%%
+OverlayBlendTask - Trying to perform an overlay blend with mismatched pose types ( additive/parent-space )
OverlayProjectionDirection
-P08J
+P08@Jp
+P08J
+P08N
+P6pLb
+P6plb
PARENT
+PF_TYPE_CONTROL_POINT_IS_SET
POSE_SPACE_BONE
POSE_SPACE_MORPH
Packed data buffer overflow: %d > %d\n
-PackedBlobNormal
Paired Sequence Component
PairedSeq:m_hSequence
PanelID
ParamList
+Parameterized Clip Selector: Failed to select a valid option!
+Parameterized Selector: Failed to select a valid option!
Parameters
Parent
Parent Map: %s\n
+Parent VData
ParentAttachmentName()
+Particle (%s) (%s)
Particle Binding
Particle Binding (Real)
ParticleParamID_t
@@ -2962,23 +3081,25 @@ Position progress\t\t\t[%f]
PrevActive
Previous normal
Prl Eval
+Proceed Immediately
Process Selector
Program has invalid instruction %i
Program uses more temp variables than are supported. Needs %i, max is %i
PropWorldOrigin
Pulse domain which enables particle content to query leaf code to introspect game state.
+PulseDurationStringFormat_t
QAngle
Quaternion
QuaternionStorage
R Sqrt
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RESOURCE_TYPE_ANIMATION_GROUP_INTERNAL
RESOURCE_TYPE_ANIMATION_INTERNAL
RESOURCE_TYPE_NM_CLIP
RESOURCE_TYPE_NM_GRAPH
RESOURCE_TYPE_NM_SKELETON
RESOURCE_TYPE_SEQUENCE_GROUP_INTERNAL
ROTATION
-R\vp!F
R\vp!y
Rad2 Deg
Ragdoll Component
@@ -2990,15 +3111,16 @@ Read Cached Pose
Reciprocoal square root (1/sqrt)
Reference Pose Task
Referenced clip resource failed to load or is invalid: %s
-Referenced graph resource failed to load or is invalid: %s
Register Test Checkpoint
Reinterpret Instance %s R%d <- %s R%d
Remap Clamped Float
Remap Value Component
Remap and clamp input value from input range to output range (float)
+Remove Flags
Remove Tag From Cursor
Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
Requested next step
@@ -3029,6 +3151,7 @@ Scale INV R%d <- R%d / R%d
Scale R%d <- R%d * R%d
Script Component
Selected Option
+Selector: Failed to select a valid option!
SelectorNode
Sequence out of range: %d
Sequence( %s, %.3f ) : %.3f
@@ -3076,19 +3199,19 @@ Start a timer with the specified duration, fire the OnInterval output
State Machine Component
StateMachineNode
Steps Remaining
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
String Length
Strings Are Equal Case Sensitive
Sub R%d <- R%d - R%d
Symbol
+Synchronous - Wait for this node to fully complete before proceeding.
TAG_
THEM
TILT_TWIST
TWIST
-T\tV_log2f
Tag Cursor
Tag Self When Complete
+TagActionStatus
TagStatus
TanFrameQuat
Tangent of angle. Input in radians, output in radians
@@ -3102,9 +3225,12 @@ Target Warp: XY warp curve blowout detected! Falling back to LERP!
Target Warp: trying to XY warp a section with no displacement, falling back to LERP!
Target Warp: trying to XY warp to under the distance threshold, falling back to LERP!
Target warp exceed accurate sampling error threshold! Switching to inaccurate sampling!
+TargetCastForModify
TargetSelectorNode
+Task
Test Mode Assert True
TestCheckpoint: %s
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
Tilt bone after tilt.
Tilt delta from up offset
Time Remaining
@@ -3113,12 +3239,20 @@ ToPivot
Tried to load a polymorphic pointer with no '%s' key
Tried to load resource reference '%s' from a value without a resource reference specific type.
Trying to set an offset on an unset node!
+Turn a time in seconds into a display string. NOT localized.
TurnHelperNode
Two Bone IK
TypeManager
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
Unable to parse AE_SV_DUSTTRAIL event "%s"\n
Unknown Morph Control :: %s WeightList :: %s Model :: %s\n
Unknown binary operator
+Unknown format type
Unknown function "%s"
Unknown unary operator
Unknown variable "%s"
@@ -3129,7 +3263,13 @@ Unnamed Tag
Unsupported use of property accessor "%s.%s", property accessors can only be used variables
Unsupported version %d for resource '%s' (Expected %d)\n
UpdateContext
+UpscalerType_t
Used to flag a test as having failed.
+V@jb
+VDATA
+VDataChoice( %s )
+VDataChoice()
+VPkb
Value 0-1 how far along duration (always 0 if duration is -1)
Variable "%s" has %i components, a specific component must be specified, for example use: "%s.x"
Variable '%s' is referenced but not declared in this system (%s). Adding a fallback now.\n
@@ -3147,7 +3287,7 @@ Virtual Parameter
WARNING: Failed to convert introspected block for file: %s\n
WARNING: Invalid resource version (%d): %s\n
Wait Complete
-Warning: %s (%d) - %s\n
+Wake Cursors With Tag
Warp
Warp XY
Warp XYZ
@@ -3156,14 +3296,17 @@ Warp attempted for animation with invalid warp events!
Warping orientation progress %f
Weight: %.2f%%
Weights
-When False
-When True
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
+While False
+While True
World Vector To Vector
World space tilt normal
Write Cached Pose
X (Red / Forward)
X to the Y power
-X`hrP
+X`hrp
+Xf0db
Y (Green / Left)
Yield, Resume=%s
Z (Blue / Up)
@@ -3179,44 +3322,42 @@ Zero input vector for info node!
[NOP]
[RETURN R%d]
[RETURN]
-\n\tV_atanf
+\f\tV_acosd
+\nOww
\rRESOURCE_TYPE_ANIMGRAPH
+\r\nnexttoken
\t%d (%d) : %s %s %s %s\n
\t%d:%d - %s (agrp vs agrp flag mismatch) %s:%s (promoted to match existing) %s:%s\n
\t%d:%d - %s (match)\n
\t%d:%d - %s (skipped)\n
\t%d:%d - %s\n
\tError\n
-\tV_acosd
\tV_asind
+\tV_atand
+\tV_atanf
\tV_cosd
-\tV_coshf
-\tV_exp2f
\tV_tand
\tV_tanhf
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_FindGlobalSymbolByHash
-\tg_bUpdateStringTokenDatabase
-\tnexttoken
_CustomCommand
_CustomCommand%d
+_\tV_log2f
__CursorQueue__
__FireCursorsParent__
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
______________________
__current_metadata_table_stack
_autoreset
-`apt
-`qot
-`qqt
-`uft
+`6p;b
+`6p<b
+`Q6w
+`ixw
a:fulltype
a:typeparam
-a\tV_powd
acosf
+allflags
allowed_api_features
allowed_requirements
always_run
@@ -3225,7 +3366,7 @@ anim_data_block
animationsystem.dll
animgraphlib
animlib
-animnetvar
+anyflags
attachment_point
attachment_point_cp1
attachment_type_cp1
@@ -3234,6 +3375,7 @@ bInherit
bValue
bentnormal
biased
+binary
bindPose
bind_pose
blend_anim_events
@@ -3309,7 +3451,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CAnimGraphNetworkSet
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimGraphSettingsGroup>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimInputDamping>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance*>(void)
-const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimNodeInstanceBase>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimParameterBase>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CAnimParameterInstance*>(void)
@@ -3361,7 +3502,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CDirectPlaybackAnimN
const char *__cdecl Reflection::Internal::GetFuncName<class CDirectPlaybackUpdateNode>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CDirectionalBlendUpdateNode>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CDistanceRemainingMetricEvaluator>(void)
-const char *__cdecl Reflection::Internal::GetFuncName<class CEmitTagActionUpdater>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CEnumAnimParameter>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CEnumAnimParameterInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CExpressionActionUpdater>(void)
@@ -3433,7 +3573,6 @@ const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollAnimTag>(voi
const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollComponentInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollComponentUpdater>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CRagdollUpdateNode>(void)
-const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CRemapValueComponentUpdater>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CRootUpdateNode>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class CSelectorUpdateNode>(void)
@@ -3519,9 +3658,7 @@ const char *__cdecl Reflection::Internal::GetFuncName<class IMotionGraphPreviewN
const char *__cdecl Reflection::Internal::GetFuncName<class IMotionMatchingAnimNodeInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IMotionMetricInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IMovementComponentInstance>(void)
-const char *__cdecl Reflection::Internal::GetFuncName<class IPairedSequenceComponentInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IParticleAnimTag>(void)
-const char *__cdecl Reflection::Internal::GetFuncName<class IPathAnimMotorInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IPlayerInputAnimMotorInstance>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IRagdollAnimTag>(void)
const char *__cdecl Reflection::Internal::GetFuncName<class IRagdollComponentInstance>(void)
@@ -3552,14 +3689,19 @@ cycle
deg2rad
detach_from_owner
domain_scope
+eCenteredCylinder
+eGroundCylinder
e_action_desired_shared
e_movement_type_desired_shared
element
-elems
embedded_animation
emptyanimwithnoeffect
exp2
+expression_type
+f 2b
+f@const char *__cdecl Reflection::Internal::GetFuncName<class CAnimMotorInstance>(void)
fSpeedScale
+f`Vb
fast
fetched: %s : %.3f\n
ffffff
@@ -3581,6 +3723,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -3611,27 +3754,33 @@ game:tools/images/animgraph_editor/animgraph_icon_statemachine.png
game:tools/images/animgraph_editor/animgraph_parameter_base.png
game:tools/images/animgraph_editor/animgraph_parameter_virtual_base.png
game:tools/images/animgraph_editor/animgraph_tag_base.png
-h]et
+ground_offset
handshakeTypes
+hpzp
hsequence
idiv
instantly
is_selector
kAnimGraphSaveRestoreVersion
keyvalues
kv3:ParticleParamID_t
+l\tV_powd
length2d
length3d
lerp
log2
lowprecisionuv
lowprecisionuv1
+m_BoneMergeLinks
m_EndEffectorFixedOffsetAttachment
m_Format
m_HingeAxis
+m_Metadata
m_ParentJoint
m_PoleVectorForAxis
+m_SequencePoint
m_Stops
+m_TagStatus
m_TagValue
m_attachments
m_bBakedTwoSided
@@ -3648,25 +3797,51 @@ m_bParentJointRequiresAlignment
m_bUseCompressedNormalTangent
m_bUseNewPoleVectorForAxis
m_bUseShadowFastPath
+m_chainWeights
+m_channelIDs
+m_channelSettings
+m_compressedOffsets
m_deltaTransform\t\t\t\t[%f] [%s]
m_eRbfType
-m_externalMethodTargetGraph
+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_enabledNodeIdx
+m_endEffectorBoneID
+m_endEffectorForwardAxis
+m_endEffectorOffset
+m_fEmissiveFactor
m_flMaxRadians
m_flMinRadians
m_flSlopeIncoming
m_flSlopeOutgoing
+m_flTagStartAnimTime
+m_floatChannelData
+m_floatChannelSets
+m_hCursorOnOtherGraph
m_hGraphDefinition->m_instanceRequiredMemory > 0
m_hitboxsets
m_influenceFlags
+m_materialGroupToken
m_morphSet
+m_nChainLength > 1 && m_nChainLength < 8
+m_nChildNode
m_nCurrStackSize
m_nCurrentWakeIndex
+m_nCursorID
m_nGraphID
-m_nSequenceTagIndex
+m_nParentHash
+m_nSrcDrawIndex
+m_nVertexEmissiveFormat
+m_nVertexEmissiveOffset
+m_nVertexEmissiveStride
+m_nVertexEmissiveVB
+m_nYieldToken
m_pIsHandshakeDisabled
+m_params.m_nNumBonesInChain < 8
m_qFixupRotation
m_rbfParameters
-m_sLastSequenceName
+m_rootBvhNodes
+m_setID
m_stack
matrix3x4_t
matrix3x4a_t
@@ -3677,19 +3852,27 @@ model bone %d is out of bounds, probably attempting to use an animation from dif
modellib
morph_texture
nDenominator
+nFormat
nKillPriority
nMaxElements
nNumerator
+nRemainderDigits
+nRemainderNoiseDigits
nValue
+nWakePriority
+n`ob
no samples
numframes
-o\tV_sind
offBeforeFinished
offWhenFinished
optionallycompressedtangentframe
-p0j
+options.m_pBoneWeights->Count() >= m_boneIDs.Count()
+options.m_pBoneWeights->Count() >= m_pSkeleton->GetNumBones()
+p08@H^
+p6`Bb
pCheckpointName
pDescription
+pFp-b
pTagName
parameters
parent to constrained
@@ -3703,7 +3886,6 @@ propattr_force_readonly
pulse_node_custom_attributes
pulse_runtime_lib
r>BoneSetup
-r\tV_sinhf
r\vp!4
rad2deg
random_position
@@ -3718,6 +3900,7 @@ round
rsqrt
saturate
scriptsToRun
+select
self
sequence_tag_spans
sign
@@ -3727,11 +3910,12 @@ solidCollisionAtZeroWeight
sound_base
speedFunction
std::pair
+stiffen
stop_on_layer_seq_change
stop_on_layer_seq_change_instantly
stop_on_seq_change_instantly
strValue
-tBSheetSequenceIntegerId_t
+tBRenderBufferFlags_t
tagCount
tagValue
tangent
@@ -3740,6 +3924,7 @@ texcoord
to constrain
tools/images/pulse_editor/cursor_kill.png
tools/images/pulse_editor/kill_cursor_with_tag.png
+type_restriction_is_enum_flags
use_layer_sequence
vForward
vJOnPlane2
@@ -3748,12 +3933,19 @@ vJOnPlane4
vLookTarget
vMsTargetPosition\t\t\t[%f] [%s]
vVOnPlane1
+value:fulltype
vecValue
vecValueA
vecValueB
very_fast
+vpSb
weaponType
whileCurrent
worldrelative
zDconst char *__cdecl Reflection::Internal::GetFuncName<class CFootPinningPoseOperation>(void)
+z\tV_sind
zero dir
+{ item_factory = 'IntervalTimer' }
+}\rPAb
+}\tV_sinhf
+~0Mb
game/bin/win64/assetbrowser_strings.txt
modified • +104 / -96 • changes: 200
Show patch
@@ -1,4 +1,4 @@
- C%d:I%-2d {F=%-10d,V=%-10d}
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -109,6 +109,7 @@
#\f?focusNextPrevChild@QTextEdit@@MEAA_N_N@Z
#\n?columnCount@QSortFilterProxyModel@@UEBAHAEBVQModelIndex@@@Z
#\r?hide@QWidget@@QEAAXXZ
+#\tV_exp2f
#have
$#?windowIcon@QWidget@@QEBA?AVQIcon@@XZ
$[?setRange@QDoubleValidator@@UEAAXNNH@Z
@@ -154,6 +155,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
%s File
%s [optional]
%s [specificity: %d]
+%s%02d:%02d
%s%s: DynamicWidget: %s\n
%s: %s [Incremental=%s, HasSentBegin=%s] (%p)\n
%s: Initialize (%p) for [ m_bInIncrementalUpdate -> false ]\n
@@ -236,6 +238,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
-> Success (%d attempts)\n
.#?windowTitle@QWidget@@QEBA?AVQString@@XZ
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AUVDataInitInfo_t@@
.?AV<lambda_10>@?BM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
@@ -256,6 +259,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AV<lambda_17>@?CI@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_18>@?CM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_19>@?CN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
@@ -277,6 +281,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AV<lambda_27>@?DJ@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_28>@?DM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_29>@?DN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
.?AV<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@
@@ -495,6 +500,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AV?$_Func_impl_no_alloc@V<lambda_17>@?CI@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_18>@?CM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_19>@?CN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?2???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
@@ -516,6 +522,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AV?$_Func_impl_no_alloc@V<lambda_27>@?DJ@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_28>@?DM@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_29>@?DN@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CBindableCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@C2DCanvasCamera@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?3???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CLightingControlRig@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
@@ -602,11 +609,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AVCBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CQToolSceneWidget@@SAPEAVCBindTargetDescriptorBase@@XZ@
.?AVCDeleteWorkingSetsPromptDialog@@
.?AVCEmptySequence@@
-.?AVCFolderItemAsset@@
-.?AVCFolderItemBase@@
-.?AVCFolderItemCollector@@
-.?AVCFolderItemFiles@@
-.?AVCFolderItemFolder@@
.?AVCGCStylePropInfo@@
.?AVCGlobalHotkeyCommands@@
.?AVCGraphCanvasDragOperation@@
@@ -676,7 +678,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AVCQAssetSelectionWidget@@
.?AVCQAssetTable@@
.?AVCQAssetTagSelectWidget@@
-.?AVCQAssetTreeModel@@
.?AVCQAssetTypeSelectWidget@@
.?AVCQAssetViewBase@@
.?AVCQAttributeEditor_AssetBrowse@@
@@ -764,7 +765,8 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
.?AVCQNoDeleteWidgetAction@@
.?AVCQOffscreenGraphCanvasView@@
.?AVCQPoolableWidget@@
-.?AVCQRichItemListPicker@@
+.?AVCQRichItemListPickerDialog@@
+.?AVCQRichItemListPickerWidget@@
.?AVCQScreenCaptureOverlay@@
.?AVCQScrollableWidgetList@@
.?AVCQSelectionListItemDelegate@@
@@ -957,6 +959,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
/\r?hideEvent@QScrollBar@@MEAAXPEAVQHideEvent@@@Z
/\v?event@QAbstractScrollArea@@MEAA_NPEAVQEvent@@@Z
/]?size@QImage@@QEBA?AVQSize@@XZ
+0oNj
0x%1
0x%p = %s '%s'
1"?updateGeometry@QWidget@@QEAAXXZ
@@ -1015,7 +1018,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
1OnAddTagClicked()
1OnAllSelected()
1OnAlphaChanged()
-1OnAssetListModelChanged()
1OnAssetPanelDoubleClicked(int)
1OnAssetSelectionChanged()
1OnBrowse()
@@ -1161,7 +1163,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
1SetShowDependingOnMe(bool)
1SetShowHiddenAssets(bool)
1SetShowRejectedAssets(bool)
-1SetThumbnailBackground(QString)
1ShowAssetInfo()
1ShowOptionsDialog()
1ShowSubassetDefinitions()
@@ -1323,6 +1324,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
8\f?focusOutEvent@QTextBrowser@@MEAAXPEAVQFocusEvent@@@Z
8\v?event@QCompleter@@MEAA_NPEAVQEvent@@@Z
8]?size@QPixmap@@QEBA?AVQSize@@XZ
+9>-memory-
9\f?focusOutEvent@QTextEdit@@MEAAXPEAVQFocusEvent@@@Z
: Add
:\f?focusOutEvent@QWidget@@MEAAXPEAVQFocusEvent@@@Z
@@ -1338,6 +1340,7 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
<DESCRIPTION>\n
<Match any value>
<NONE>
+<SceneSystem
<\f?deallocate@QArrayData@@SAXPEAU1@_K1@Z
<\f?focusPolicy@QWidget@@QEBA?AW4FocusPolicy@Qt@@XZ
<\v?event@QDockWidget@@MEAA_NPEAVQEvent@@@Z
@@ -1352,8 +1355,8 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
<local only>
<missing file>
<no p4>
+<non-RTTI type>
<none>\n
-<texcoord
= (During)
== PulseGraphDef ==\n
=ACTIVITY WEIGHTS
@@ -1853,7 +1856,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
?closeEvent@QDialog@@MEAAXPEAVQCloseEvent@@@Z
?closeEvent@QDockWidget@@MEAAXPEAVQCloseEvent@@@Z
?closeEvent@QWidget@@MEAAXPEAVQCloseEvent@@@Z
-?collapse@QTreeView@@QEAAXAEBVQModelIndex@@@Z
?collapseAll@QTreeView@@QEAAXXZ
?column@QTableWidgetItem@@QEBAHXZ
?columnCount@QGridLayout@@QEBAHXZ
@@ -3134,7 +3136,6 @@ $\r?end@QString@@QEBAPEBVQChar@@XZ
@#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z
@Palette
@Palette '%s' already defined!
-@\tV_isinfd
@\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z
@fff>fff>fff>fff>
A compound list that matches if any parts matches
@@ -3155,13 +3156,16 @@ Absolute value (int)
Accept
AcceptColorInternal
AcceptIfItemPicked
+Accepted
Actions
ActivateAllAssetsTab
Active Window Widget
+Add Flags
Add R%d <- R%d + R%d
Add Tag
Add Tag...
Add another filter criteria
+Add flags to the given value.
Add implicit assets to working set
Add the array 'b' to the end of 'a'.
AddAssets
@@ -3174,6 +3178,7 @@ Additional filter from tool context:<pre> "%1" </pre>(Click to toggle)
Additional pixel spacing between children
Addr
Address
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
AfterDataModelsUpdated
Alignment of STRETCH will be ignored due to FixedSize property
AllSelected
@@ -3251,7 +3256,9 @@ AssetStats
Assets
Assets:\n
AssetsRightClicked
-Async Fire C%d:I%d
+Async Call Method (Child Cursor) C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
Attempted a typeid of nullptr pointer!
Attempted to pop off of an empty CUtlQueue. Please check before using this method.
Attempting to register the command %s for context %s multiple times\n
@@ -3278,7 +3285,6 @@ Backspace
BackwardPortContainer
Bad Path
Bad checkstate (expected eg. 'PartiallyChecked')
-Bad count in ArraySetCount (%d)
Bad horizontalPolicy "%s"
Bad max in ArrayFirstNElements (%d)
Bad number '%s'
@@ -3294,6 +3300,7 @@ Base-2 logarithm
BasePort
BasePortContainer
Base_Palette
+Basic string support.
BeforeDataModelsUpdated
Begin mouse capture [%i]: %s\n
Begin testing a condition composed of Observable values. Continues checking until canceled.
@@ -3341,11 +3348,11 @@ CBufferString
CColorGradient
CDeleteWorkingSetsPromptDialog
CEntityNameString
+CFailed to allocate an instance of a class of type '%s'
CGenericFilterDomain::IListener
CGlobalHotkeyCommands
CGlobalSymbol
CGlobalSymbolCaseSensitive
-CIKV3TransferInterface_ResourceLoad
CInputBindManager::HandleInputCode recursion depth got too deep.\n
CKV3MemberNameSet
CKV3MemberNameWithStorage
@@ -3372,9 +3379,9 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -3384,26 +3391,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
CPulseCell_PickBestOutflowSelector::ProcessSelector
CPulseCell_Step_CallExternalMethod '%s'
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseMathlib::AbsFloat
CPulseMathlib::AbsInt
CPulseMathlib::ArcCos
@@ -3440,6 +3449,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -3469,11 +3479,15 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseTestScriptLib::AssertTrue
CPulseTestScriptLib::IndicateTestFailure
CPulseTestScriptLib::IsInTestMode
@@ -3508,8 +3522,6 @@ CQAssetSelectionWidget
CQAssetTable
CQAssetTagSelectWidget
CQAssetTagSelectWidget*
-CQAssetTree
-CQAssetTreeModel
CQAssetTypeSelectWidget
CQAssetTypeSelectWidget*
CQAssetViewBase
@@ -3600,9 +3612,9 @@ CQGraphCanvasView
CQGraphCanvasViewMiniMap
CQHeaderViewWithCheckboxes
CQHeaderViewWithStretchFactors
-CQHierarchyItemDelegate
CQHoverButton
CQHoverHideToolButton
+CQIndexedButton
CQInputBindEditor
CQInputBindManager
CQInputBindManager_BindableWidgetInfo
@@ -3620,12 +3632,14 @@ CQMenuOperationAction
CQMoveToChangelistInterface
CQMultiSelectWidget
CQResizableMiniMapFrame
-CQRichItemListPicker
+CQRichItemListPickerDialog
+CQRichItemListPickerWidget
CQRichItemListPicker_Choice_Internal*
CQRichItemListPicker_Group_Internal*
CQScreenCaptureOverlay
CQScrollableWidgetList
CQSharedToolsMenu
+CQSimpleNumericInput
CQSlider
CQSlider::wheelEvent - blend towards cursor/default
CQSliderLineEditFloat
@@ -3645,14 +3659,14 @@ CQTagWidget
CQTagWidget { \tbackground-color : rgb( %1 ); \tborder: 2px solid rgb( %2 ); \tborder-radius: %3px; } QLabel { \tcolor: rgb( %4 ); \tfont: bold 11px; }
CQToolSceneSettingsPopup
CQToolSceneWidget
-CQTreeTagItemDelegate
CQTreeWidgetWithArrowEvents
CQTreeWidgetWithHover
CQWidgetDebugHighlight
CQWidgetDebugger
CQWorkingSetTreeView
CQWorkingSetsModel
CQWorkingSetsWidget
+CREATE_CHILD_CURSOR_OUTFLOW
CRenameWorkingSetDialog
CRenderOptionsPopupUI
CSocketConnection.WriteToEndpoint Failed\n
@@ -3675,7 +3689,6 @@ CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::G
CUtlDict<struct CQInputBindEditor::BindingContextInfo_t *,class CDefFastCaselessStringLess>::Insert
CUtlHashtable<IAssetDir*>*
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator>::EnsureCapacity
-CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
@@ -3688,22 +3701,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CM
CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage
CUtlQueue<int,class CUtlLeanVector<struct CUtlQueueNode_t<int>,int,class CMemAllocAllocator> >::RemoveAtTail
-CUtlRBTree<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class CUtlString>,class CDefLess<class CGlobalSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CGlobalSymbol,class CGCPalette::CVariable<class Color>,class CDefLess<class CGlobalSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,class CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CToolSceneNode *,struct CToolScene::Empty_t,class CDefLess<class CToolSceneNode *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class QStandardItemModel *,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct CQGenericFilterCompleter::CompleterModel_t,class CDefLess<class CUtlSymbolLarge>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAsset *,class CFolderItemAsset *,class CDefLess<class IAsset *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IAssetType *,int,class CDefLess<class IAssetType *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::Node_t,class CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IWorkingSet *,class CAssetTreeData *,class CDefLess<class IWorkingSet *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CGraphCanvasStyleLayer *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CToolSceneLightRig *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,class CGlobalSymbol,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,class CGraphCanvasStyleLayer const *,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,struct GCVarLookupInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,class CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum GCStyleProp,struct GraphCanvasOriginInfo_t,class CDefLess<enum GCStyleProp>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbol,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct CQHeaderViewWithCheckboxes::CustomSection_t,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlVector<IAsset*>
CUtlVector<IAsset*>*
CUtlVector<IAssetType*>
@@ -3712,7 +3709,6 @@ Call C%d:I%d (%s)
CameraLookAtSelection
Can't connect to perforce server.
Cancel
-Cancel observing.
CancelClicked
Cannot Debug
Cannot add multiple root layouts to the same widget
@@ -3729,7 +3725,6 @@ CapToggle
Caps
Ceiling - round float up to nearest integer)
Ceiling Float
-Cgraphcanvas_debug_layout
Changelist
Changelist description
Check Requirement
@@ -3766,7 +3761,6 @@ Close the group automatically after a short wait (good for 'success' messages)
Close the group automatically when the associated parent process exits (good for sticky 'error' messages)
CloseWorkingSetTab
Collapse All
-Collapsed
Color Picker
Color of the background. Can be specified as hex, [r, g, b, a], or a predefined color.
Color of the border. Can be specified as hex, [r, g, b, a], or a predefined color.
@@ -3777,7 +3771,7 @@ Command Name
Command.%s.%s
Command:\n%1\nWorking Directory:\n%2
Commit Step
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
Compile Dependency (Content)
Compile Dependency (Game)
Completed
@@ -3850,7 +3844,6 @@ Cursors Allowed To Wait
Custom Color
Custom Colors
DELETE
-D\tV_isvalidhex
Data_Branch1xy
Data_Branch1zBranch2x
Data_Branch2yz
@@ -3919,6 +3912,7 @@ DragStarted
DragUpdated
DrawBoneNamesChanged
DrawSkyboxChanged
+DualHull
DummyNoOp
Duplicate Tab
Duplicate tab
@@ -3966,6 +3960,7 @@ EnsureModsVisibleForAssets
EnsureTypesVisible
Enter
EntityName
+Enum support.
Eq R%d <- R%d == R%d
Error (problem that prevents task success)
EscapePressed
@@ -3981,7 +3976,6 @@ ExitAndResetToolSettings
ExitTools
Exp2
Expand All
-Expanded
Expanding
Expected '%s'
Expected SizePolicy to be a table or array
@@ -3998,7 +3992,6 @@ FLT_MAX
FY?setDevicePixelRatio@QPixmap@@QEAAXN@Z
F\v?event@QGroupBox@@MEAA_NPEAVQEvent@@@Z
Fail Outflow
-Failed to allocate an instance of a class
Failed to convert value '%s' to enum/flags '%s' (expecting eg. '%s')
Failed to create widget %s
Failed to determine mod name for file:<br>%1
@@ -4013,16 +4006,15 @@ Fast Asset Search
FastAssetPicked
FatColor_t
File '%1'
-File Hierarchy
Files Belonging to Selected Assets
-Files:
Fill the thumbnail cache for all assets.
FillRect
Filter Part
-Filter name/description:
Filter paths
+Filter type/description:
Filter:
Filter:
+FilterApplied
FilterBar
FilterChanged
FilterEdited
@@ -4032,6 +4024,7 @@ Fimage
Find
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find first element 'a' which compare equal to 'element' and return its index.
Find:
FindItemsOverlapping
@@ -4069,6 +4062,7 @@ Foreground color. Either text or curve.
Foreground width for curves
Foreground_Color
Foreground_Width
+Format Duration String From Seconds
ForwardPortContainer
Frac
Fractional component (ie. returns 0.34 for 12.34)
@@ -4120,12 +4114,13 @@ HKEY_CLASSES_ROOT\
HKEY_CURRENT_USER\
HKEY_CURRENT_USER\Software\Valve\Tools
HKEY_LOCAL_MACHINE\
+Has All Flags
+Has Any Flags
HeaderCheckStateChanged
Hex:
Hide cursor during camera manipulation
Hide unless error/warning occurs
HideCoreMod
-Hierarchy
Highlight '%1' In %2
History
History - %s
@@ -4170,7 +4165,6 @@ I\r?hitButton@QCheckBox@@MEBA_NAEBVQPoint@@@Z
Identity
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If checked, all tool windows will render continuously, if not checked, only the tool window with focus will render
If specified, each wait interval will vary randomly between WaitInterval this value
If this cursor spawns other work via Fire And Forget, should this Tag be inherited?
@@ -4234,6 +4228,7 @@ Jump to Instr I%d
K ?toggled@QAbstractButton@@QEAAX_N@Z
KV3 Pointer
K\r?hitButton@QRadioButton@@MEBA_NAEBVQPoint@@@Z
+K\tV_isinfd
K\v?event@QLineEdit@@UEAA_NPEAVQEvent@@@Z
Key Bindings
KeyState
@@ -4242,7 +4237,6 @@ KeyValues3
KeyValues3*
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
LMouse
LMouseDoubleClick
LT?pixel@QImage@@QEBAIHH@Z
@@ -4300,11 +4294,14 @@ M?globalY@QMouseEvent@@QEBAHXZ
MATERIALTOFACESELECTION
MAtomicTransfersAsPlainString
MENU
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MMouse
MMouseDoubleClick
MPropertyFlattenIntoParentRow
MPulseExpressionAlias
MPulseFunctionHiddenInTool
+MPulseTypeRestriction
MWheelDn
MWheelLeft
MWheelRight
@@ -4318,12 +4315,14 @@ Make Color
Make Graph Root
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -4409,6 +4408,7 @@ N?height@QPaintDevice@@QEBAHXZ
N?height@QPixmap@@QEBAHXZ
N?horizontalAdvance@QFontMetrics@@QEBAHAEBVQString@@H@Z
N?index@QStandardItemModel@@UEBA?AVQModelIndex@@HHAEBV2@@Z
+N@Bad count in ArraySetCount (%d)
NO COMMAND TARGET
NO_UI
NT?pixelColor@QImage@@QEBA?AVQColor@@HH@Z
@@ -4488,6 +4488,7 @@ NumToggle
OP?isNull@QIcon@@QEBA_NXZ
OR List
OR: This group will match if ANY of the parts match\n(Click to toggle to AND)
+O\tV_isvalidhex
Oa?width@QImage@@QEBAHXZ
OkClicked
On Interval
@@ -4590,6 +4591,7 @@ OnNamePartChanged
OnNewFilterChanged
OnNodeClicked
OnNotToggled
+OnNumericInputChanged
OnOptionChanged
OnOptionsChanged
OnP4EditChecked
@@ -4708,7 +4710,6 @@ OpenRoot
OpenSelectedInTools
OpenVConsole
OpenWorkingSet
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Options...
Or R%d <- R%d || R%d
@@ -4730,7 +4731,6 @@ P?item@QStandardItemModel@@QEBAPEAVQStandardItem@@HH@Z
P?itemData@QStandardItemModel@@UEBA?AV?$QMap@HVQVariant@@@@AEBVQModelIndex@@@Z
P?jumpToNextImage@QImageReader@@QEAA_NXZ
P\f?font@QTableWidgetItem@@QEBA?AVQFont@@XZ
-PackedBlobNormal
Padding
Padding_Bottom
Padding_Left
@@ -4752,6 +4752,7 @@ PanoramaStyle
PanoramaVideo
Parent Asset(s)
Parent Map: %s\n
+Parent VData
Parent or child assets
ParentChildAssetHovered
ParentChildAssetSelected
@@ -4815,6 +4816,7 @@ Preview Anim Slider Enabled
Preview Menu Enabled
Preview Model Vertex Framing
Previous
+Proceed Immediately
Process Selector
PropEdModifyType_t
PropEdSpecificAttr_t
@@ -4829,6 +4831,7 @@ Pseudo-Classes
Pull From Global Browser
PullSelectionFromGlobalBrowser
Pulse domain which enables particle content to query leaf code to introspect game state.
+PulseDurationStringFormat_t
Push Material to Blender
Push Model to Blender
Push To Global Browser
@@ -4945,6 +4948,7 @@ Remap Clamped Float
Remap and clamp input value from input range to output range (float)
Remove
Remove All
+Remove Flags
Remove From Most Recently Used
Remove From Working Set
Remove From Working Set (selected assets are implicit)
@@ -4953,6 +4957,7 @@ Remove Tag
Remove Tag From Cursor
Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
RemoveColor
@@ -5012,9 +5017,7 @@ RichItemList_Accept
RichItemList_Reject
Right Mouse (Average)
RightClick
-RightClickHierarchy
RightClickSelectedAssets
-Root Files:
RootAsset
RotateAboutTarget3D
RotateLights
@@ -5065,7 +5068,6 @@ Scale INV R%d <- R%d / R%d
Scale R%d <- R%d * R%d
Scan for assets that require specific attention.
SceneCameraChanged
-SceneSystem
ScrLk
ScrToggle
Search Inside Files
@@ -5135,7 +5137,6 @@ SetTabStyleBar
SetTabStyleBrick
SetTabStyleLine
SetTabStyleNone
-SetThumbnailBackground
SetValueCenter
SetValueHidden
SetValueLeft
@@ -5233,8 +5234,7 @@ Standin Dock
Start a timer with the specified duration, fire the OnInterval output
StartSendingCameraTo
Statistics...
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
StopSendingCameraTo
String Length
Strings Are Equal Case Sensitive
@@ -5250,6 +5250,7 @@ Subasset references
Subassets:\n
Switch to 'All Assets'
SwitchToEngineWindow
+Synchronous - Wait for this node to fully complete before proceeding.
T?parent@QStandardItemModel@@UEBA?AVQModelIndex@@AEBV2@@Z
T?pos@QCursor@@SA?AVQPoint@@XZ
T?pos@QDropEvent@@QEBA?AVQPoint@@XZ
@@ -5259,7 +5260,6 @@ TT?pixelSize@QFont@@QEBAHXZ
TW?restoreOverrideCursor@QGuiApplication@@SAXXZ
T\n?doubleClickInterval@QApplication@@SAHXZ
T\t?canFetchMore@QSortFilterProxyModel@@UEBA_NAEBVQModelIndex@@@Z
-T\tV_log2f
T\v?event@QOpenGLWidget@@MEAA_NPEAVQEvent@@@Z
Tab name:
TabStyle_t
@@ -5283,6 +5283,7 @@ The following files were included but are out-of-date. They should be recompiled
The selected set has a lot of assets (%1) are you sure you want to copy to clipboard?
The visible item with the highest interaction priority will react to hover/click at a given pixel. By default an item is not interactive.
This asset has tags that indicate it's been rejected for shipping - avoid use!
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
Thumbnails
Time since the start of the timer
Tint property on the image or background image.
@@ -5314,6 +5315,7 @@ Total files for this asset in all search paths
Track Mouse & Focus
TriggerSettingsSave
TrySendVNotify - SendKV3 failed\n
+Turn a time in seconds into a display string. NOT localized.
TypeSelectionChanged
U?qt_metacall@QIntValidator@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z
U?qt_metacall@QRegularExpressionValidator@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z
@@ -5333,6 +5335,7 @@ Uncompiled files
UnderMouse
Unexpected trailing tokens
Unhandled/unrecognized child entry (Must have a _class, or be a special entry like: vbox=[] hbox=[] grid=[[],[]] flowing=[] spacing=NUM stretch=NUM
+Unknown format type
Unknown property '%s'
Unknown protocol.
Unnamed Search
@@ -5381,6 +5384,7 @@ V?removeColumns@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z
V?removeRows@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z
VAlign
VConsole
+VDATA
VData:%s
VNOTIFY_DISABLE
VNotify
@@ -5439,6 +5443,7 @@ WARNING: unhandled command '%s'\n
WIDGET DEBUGGER DELETING widget: 0x%p\n
WP?isNull@QTextCursor@@QEBA_NXZ
Wait Complete
+Wake Cursors With Tag
WarnAboutMissingFiles
WarnAboutUncompiledFiles
WarnTrailingWhitespace
@@ -5452,8 +5457,6 @@ Warning: The following files are included in the list but are missing, or not fr
Warning: This text ends with whitespace
Warning:\nThe following paths were referenced but are not present on disk!\nThey will not appear in the revision helper file listing:\n\n
Weak Ref
-When False
-When True
Where a child should be aligned on the horizontal axis:
Where a child should be aligned on the vertical axis:
Where an item should be laid out relative to its parent:
@@ -5463,6 +5466,10 @@ Whether an item can be selected when the user draws a box on the canvas or not.
Whether the background image repeats and how
Whether the hittest region for an item should include its margin.
Whether this item should propagate clicks to its ancestor items even when the click is outside their bounds. (Useful for flyout buttons)
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
+While False
+While True
Widget Debugger
Widget Properties
WidgetAssetAcceptedByListener
@@ -5529,7 +5536,6 @@ Z?setPixelSize@QFont@@QEAAXH@Z
Z?setPlainText@QTextDocument@@QEAAXAEBVQString@@@Z
Z?setPointSize@QFont@@QEAAXH@Z
ZX?setBackground@QTextFormat@@QEAAXAEBVQBrush@@@Z
-Z\tV_modfd
Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z
ZoomAllCamerasIn
ZoomAllCamerasOut
@@ -5605,7 +5611,6 @@ ZoomOutFromMiniMap
\f?disconnectNotify@QObject@@MEAAXAEBVQMetaMethod@@@Z
\f?dispose@QListData@@QEAAXXZ
\f?dispose@QListData@@SAXPEAUData@1@@Z
-\f?dropMimeData@QAbstractItemModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z
\f?dropMimeData@QAbstractListModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z
\f?dropMimeData@QSortFilterProxyModel@@UEAA_NPEBVQMimeData@@W4DropAction@Qt@@HHAEBVQModelIndex@@@Z
\f?dynamicMetaObject@QObjectData@@QEBAPEAUQMetaObject@@XZ
@@ -5647,6 +5652,7 @@ ZoomOutFromMiniMap
\f\n?cmp@QVariant@@QEBA_NAEBV1@@Z
\f\n?deselect@QLineEdit@@QEAAXXZ
\f\r?heightForWidth@QFormLayout@@UEBAHH@Z
+\f\tV_acosd
\n-------------\n
\n?arcTo@QPainterPath@@QEAAXAEBVQRectF@@NN@Z
\n?bits@QImage@@QEAAPEAEXZ
@@ -5696,6 +5702,7 @@ ZoomOutFromMiniMap
\nYou are invoking a costly operation involving %1 Assets.\nAre you sure?\n
\nYour selection will open the %1 that may create up to %2 instances.\nAre you sure?\n
\n\r?heightForWidth@QBoxLayout@@UEBAHH@Z
+\ng_flConfigMaxCoord
\r?darker@QColor@@QEBA?AV1@H@Z
\r?data@QStandardItem@@UEBA?AVQVariant@@H@Z
\r?data@QStandardItemModel@@UEBA?AVQVariant@@AEBVQModelIndex@@H@Z
@@ -5752,18 +5759,15 @@ ZoomOutFromMiniMap
\t?defaultWidget@QWidgetAction@@QEBAPEAVQWidget@@XZ
\tQToolButton { \t\tbackground-color : rgb( 100, 100, 100 ); \t\tborder: 2px solid rgb( 200, 200, 200 ); \t\tborder-radius: %2px; \t\tbackground-image: url(game:tools/images/common/tag_add.png); \t\tbackground-repeat: no-repeat; \t\tbackground-position: center center; \t\tmargin: 3px; \t} \tQToolButton:hover:!pressed { \t\tbackground-color : rgb( 0, 0, 0 ); \t\tborder-color : rgb( 255, 255, 255 ); \t}
\tT?parent@QWindow@@QEBAPEAV1@XZ
-\tV_acosd
\tV_asind
+\tV_atand
\tV_cosd
-\tV_exp2f
\tV_tand
\t\f?data@QString@@QEBAPEBVQChar@@XZ
\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tw
\t_V_StringAfterPrefixCaseSensitive
\t_V_strcspn
-\tg_flConfigMaxCoord
\v ?willGrow@QHashData@@QEAA_NXZ
\v?brush@QPainter@@QEBAAEBVQBrush@@XZ
\v?brush@QPalette@@QEBAAEBVQBrush@@W4ColorRole@1@@Z
@@ -5785,7 +5789,6 @@ ZoomOutFromMiniMap
\v?exec@QDialog@@UEAAHXZ
\v?exec@QMenu@@QEAAPEAVQAction@@AEBVQPoint@@PEAV2@@Z
\v?exec@QMenu@@QEAAPEAVQAction@@XZ
-\v?expand@QTreeView@@QEAAXAEBVQModelIndex@@@Z
\v?expandAll@QTreeView@@QEAAXXZ
\v?expandingDirections@QBoxLayout@@UEBA?AV?$QFlags@W4Orientation@Qt@@@@XZ
\v?expandingDirections@QFormLayout@@UEBA?AV?$QFlags@W4Orientation@Qt@@@@XZ
@@ -5814,16 +5817,16 @@ _?texture@QBrush@@QEBA?AVQPixmap@@XZ
_AssetMenuHelper
_Q?lightness@QColor@@QEBAHXZ
_\r?horizontalOffset@QTreeView@@MEBAHXZ
+_\tV_log2f
_\v?event@QSlider@@UEAA_NPEAVQEvent@@@Z
__AllKeys__
__CursorQueue__
__FireCursorsParent__
__IsValveCQTabbedStyle
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
__standin_dock
-_baked/*
+_bakeresourcecache.vpk
`?validate@QDoubleValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z
`?validate@QIntValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z
`?validate@QRegularExpressionValidator@@UEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z
@@ -5840,10 +5843,12 @@ active_view
aliceblue
align
all_properties
+allflags
allowed_api_features
allowed_requirements
and %d more...
antiquewhite
+anyflags
application/x-source2-assetname
aqua
aquamarine
@@ -5861,7 +5866,6 @@ attr_factory
automatic_quiet_import
azure
bAccepted
-bAscending
bClear
bContentOnly
bDeleteLocalFiles
@@ -5883,10 +5887,10 @@ background
background-color: #22b14c
backgroundEnabled
backgroundFill
-backgroundName
backgroundStyle
beige
bentnormal
+binary
bisque
black
blanchedalmond
@@ -5980,13 +5984,15 @@ dont_remind_today_checkbox
e"?validate@QSpinBox@@MEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z
e\f?foregroundRole@QWidget@@QEBA?AW4ColorRole@QPalette@@XZ
e\n?dragEnterEvent@QAbstractItemView@@MEAAXPEAVQDragEnterEvent@@@Z
+e\tV_modfd
edit_filter
editingFinished
element
end_as_info
end_group
even
exclude
+expression_type
f\n?dragEnterEvent@QAbstractScrollArea@@MEAAXPEAVQDragEnterEvent@@@Z
f\r?horizontalScrollbarAction@QAbstractItemView@@MEAAXH@Z
fast
@@ -6027,6 +6033,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -6172,6 +6179,7 @@ graphcanvas_cache_item_pixmap_max_render
graphcanvas_cache_item_pixmap_max_render_debug
graphcanvas_cache_item_pixmap_zoom_scale
graphcanvas_cache_item_pixmap_zoom_step
+graphcanvas_debug_layout
graphcanvas_hover_item_info
graphcanvas_random_background_color
graphcanvas_threaded_find_items_overlapping
@@ -6193,7 +6201,6 @@ h\v?event@QTabWidget@@MEAA_NPEAVQEvent@@@Z
ha?window@QPalette@@QEBAAEBVQBrush@@XZ
hbox
hcenter
-helper
hidden_types
hittest
honeydew
@@ -6289,25 +6296,19 @@ m\n?dragEnterEvent@QPlainTextEdit@@MEAAXPEAVQDragEnterEvent@@@Z
m_Bindings
m_Context
m_InputMacros
+m_Metadata
+m_SequencePoint
m_Stops
m_TagValue
-m_bBakedTwoSided
-m_bCanBatchWithDynamicShaderConstants
m_bConditionValue
-m_bDrawLast
m_bFirstEvaluate
-m_bHasBakedLightingFromLightMap
-m_bHasBakedLightingFromVertexStream
-m_bIsNotMatchedToMaterial
-m_bNoShadow
-m_bOnlyShadow
-m_bUseCompressedNormalTangent
-m_bUseShadowFastPath
-m_externalMethodTargetGraph
m_flSlopeIncoming
m_flSlopeOutgoing
+m_hCursorOnOtherGraph
m_nCurrentWakeIndex
+m_nCursorID
m_nGraphID
+m_nYieldToken
m_tail != QUEUE_ITERATOR_INVALID
magenta
mapped
@@ -6364,7 +6365,6 @@ mistyrose
moccasin
mod_selection
modelIndex
-modelSortOrderChanged
modeldoc_editor
modeldoc_utils
models/editor/axis_helper_thick.vmdl
@@ -6373,10 +6373,10 @@ monitor_pid
nAlpha
nAssetCount
nCol
-nColumn
nDelayInMS
nDenominator
nEngineToolID
+nFormat
nGroup
nKillPriority
nLogicalIndex
@@ -6386,13 +6386,16 @@ nModifiers
nMouseButton
nNumerator
nOptionIndex
+nRemainderDigits
+nRemainderNoiseDigits
nRow
nSecondaryId
nTabIndex
nTagHandle
nToolID
nToolId
nValue
+nWakePriority
nX?setBold@QFont@@QEAAX_N@Z
n\n?dragEnterEvent@QTextEdit@@MEAAXPEAVQDragEnterEvent@@@Z
n\v?event@QToolButton@@MEAA_NPEAVQEvent@@@Z
@@ -6405,7 +6408,6 @@ nth-child
nth-last-child
num_items
o\n?dragEnterEvent@QWidget@@MEAAXPEAVQDragEnterEvent@@@Z
-o\tV_sind
o\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z
offsetDelta
oldlace
@@ -6470,6 +6472,7 @@ peachpuff
peru
pet_preview_gravity
pet_preview_underwater
+pet_preview_wind
pickedColor
pink
plum
@@ -6558,8 +6561,6 @@ spacing
springgreen
stacked
stacked_one
-std::optional
-std_optional
steelblue
strValue
stretch
@@ -6583,6 +6584,9 @@ toggleViewAction
tomato
too_many_assets
toolSpecificUI
+tool_request_args
+tool_request_text
+tool_request_tool
toolbarArea
toolhud_enable
tools/colors/shared_colors.txt
@@ -6631,6 +6635,7 @@ transparent
tree
turquoise
typeList
+type_restriction_is_enum_flags
uT?pointAtPercent@QPainterPath@@QEBA?AVQPointF@@N@Z
uV?read@QStandardItem@@UEAAXAEAVQDataStream@@@Z
u\n?connect@QObject@@SA?AVConnection@QMetaObject@@PEBV1@PEBD01W4ConnectionType@Qt@@@Z
@@ -6646,6 +6651,7 @@ user_tab_name
vForward
vT?pointSize@QFont@@QEBAHXZ
v\v?eventFilter@QAbstractScrollArea@@MEAA_NPEAVQObject@@PEAVQEvent@@@Z
+value:fulltype
valueChanged
valueChangedByEdit
valueChangedBySlider
@@ -6686,9 +6692,11 @@ yellow
yellowgreen
zU?qt_metacall@QDrag@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z
z\n?dragLeaveEvent@QTextEdit@@MEAAXPEAVQDragLeaveEvent@@@Z
+z\tV_sind
z\v?customEvent@QObject@@MEAAXPEAVQEvent@@@Z
z\v?eventFilter@QDialog@@MEAA_NPEAVQObject@@PEAVQEvent@@@Z
{ "%1",\t{ %2, %3 },\t\t{ %4, %5 }\t },\n
+{ item_factory = 'IntervalTimer' }
{ColNo}
{ContentFolder}
{FileFolder}
game/bin/win64/assetpreview_strings.txt
modified • +320 / -226 • changes: 546
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/assetrename_strings.txt
modified • +662 / -416 • changes: 1078
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/assetsystem_strings.txt
modified • +25 / -33 • changes: 58
Show patch
@@ -188,7 +188,6 @@
#P0_?G0
#Q7z
#\t#\v#'#)#/#3#5#E#Q#S#Y#c#k#
-#\tV_fgets
#\v+(bF&drJ:x#
#k+ka\T
#lyj
@@ -203,6 +202,7 @@ $HypYkf
$J6"t
$JXsZ
$XI(6
+$\tV_expd
$d`D-laM
$f;Zv9l\r
$g#8lu#
@@ -286,6 +286,7 @@ $prefix_element$
%lu: Row out of range, max %lu
%lu: Sample out of range, max %lu
%lu:%s:%s:%d:%s\n
+%oNj
%s %2d %02d:%02d:%02d %d%s
%s %2d %02d:%02d:%02d%.*s %d%s
%s %s HTTP/1.0\r\n
@@ -478,6 +479,7 @@ $prefix_element$
,Reason=
,ShfPQ
,ZFDGn
+,\tV_fgets
,fQM(
,h11]
,hmQ#
@@ -509,7 +511,6 @@ $prefix_element$
-l34
-mB:t
-readonlyexceptleafiest
--restricted_write_include
-saveonlyleafiestassets
-savereadonlyassets
-~T\viMOb
@@ -869,7 +870,6 @@ $prefix_element$
.?AVIUndoElement@@
.?AVIVDataResourceListener@@
.?AVIWorkingSet@@
-.?AVVisitor@CDirTreeWatchManager@@
.HCK\v
.Q.Ol
.\crypto\asn1\a_bitstr.c
@@ -1164,7 +1164,6 @@ $prefix_element$
0pp@5tqE?|sO541
0tU+xc:
0x%llx
-0|44
0}dV
1!1'1-191C1E1K1]1a1g1m1s1
11nN
@@ -1206,6 +1205,7 @@ $prefix_element$
2\fWQx
2\nP!E
2\rlhp
+2\vpD
2^pV
2a"l
2bT~
@@ -1238,7 +1238,6 @@ $prefix_element$
474E4U4W4c4i4m4
4<Td
4@AA
-4CC:\buildworker\csgo_rel_win64\build\src\public\vpklib\packedstore.h
4Ch;
4F0I
4Mv8
@@ -1409,6 +1408,7 @@ $prefix_element$
<YGr+
<YVtV&
<multi-typed>
+<non-RTTI type>
<unsupported>
=!=-=3=7=?=C=o=s=u=y={=
=&sf9
@@ -1926,6 +1926,7 @@ BlackLevelDeltaV
BlackLevelRepeatDim
BlockingReloadCompileReplacementBufferAndChildren
BoX5
+Bp|I
BrowInV
Bs'n
Bu 5
@@ -2004,7 +2005,7 @@ CAssetSystem::InitializeAssetSystem
CAssetSystem::NotifyResourceStatusChange( %s ) - %s\n
CAssetSystem::ProcessFileChanges unable to acquire the file change suspension cross-process mutex.
CAssetSystem::Test_PreRecompileResourceAsset
-CAssetSystem::UpdateAllAssetFileCRCs(), C:\buildworker\csgo_rel_win64\build\src\assetsystem\assetsystem.cpp:4605
+CAssetSystem::UpdateAllAssetFileCRCs(), C:\buildworker\csgo_rel_win64\build\src\assetsystem\assetsystem.cpp:4454
CAssetSystemTest::RunTests
CAssetSystemTestSetup::DiscardInMemoryReplacement
CAssetSystemTestSetup::EnsureAssetIsUpToDate
@@ -2013,6 +2014,7 @@ CAsyncLoadResourceHeaderPromise::IsHeaderValid
CAsyncLoadResourceHeaderPromise::StartNewReadRequest
CBI]6
CBufferString
+CC:\buildworker\csgo_rel_win64\build\src\public\vpklib\packedstore.h
CCITT Group 3
CCITT Group 4
CCITT RLE
@@ -2299,14 +2301,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<stru
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned char,64,int,class CMemAllocAllocator>,unsigned char,int>::AddMultipleToTail
CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CAssetTagInfo *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlSortVector<struct ChunkHashFraction_t,class CUtlSortVectorDefaultLess<struct ChunkHashFraction_t::SortKey_t>,class CUtlVector<struct ChunkHashFraction_t,int,class CUtlVectorMemory_Growable<struct ChunkHashFraction_t,int,0> > >::Find
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
CVDataAutoTagger
@@ -3189,8 +3183,8 @@ FV|FgUV
F\rH'4
Facial Animation File
Factory for element type '%s' already exists (Check your IMPLEMENT_ELEMENT_FACTORY macros for duplicate lookupNames)\n
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to allocate field info array
Failed to allocate memory for %s (%ld elements of %ld bytes each)
Failed to compute channel layout.\n
@@ -3310,9 +3304,7 @@ GRAPHICSTRING
GTsW
GXqN
GXy{
-Game
Game (%s)
-GameOther
GeneralNames
GeneralString
Generator (compressed):
@@ -3442,6 +3434,7 @@ ISSUING_DIST_POINT
ITU-T
IV block
I\tHA\t981G'dc
+If enabled, the up direction will be evaluated in world space, such that the object orientation does not affect the surface slope filtering. Additionally if Orient To Surface is 0, then and world space up is enabled, then the object orientation will not affect the rotation of detail model.
IgnoreCompiledState set for type (%s)
Ignoring already-handled file change: %s\n
Ignoring failure to traverse directory and/or watch for changes: %s\n
@@ -4252,7 +4245,6 @@ Proxy Certificate Information
Public Key
Public-Key
Public-Key: (%d bit)\n
-P|44
P|iC\r
Q*hd
Q/xtJ2
@@ -4406,7 +4398,7 @@ RSA_verify_PKCS1_PSS
RSA_verify_PKCS1_PSS_mgf1
RSDSd
R\r1>Vp
-R\vp|44
+R\vpD
R]Di
R_T5Y
Radius Random
@@ -4819,7 +4811,6 @@ TS_VERIFY_CERT
TS_VERIFY_CTX_new
TXJw^{
TYPE=
-T\tV_log2f
Tag
Tag %d
Tag Update Failed
@@ -4926,7 +4917,6 @@ UTF8String
UUUUUUUUUUUUUU<o(
UUUUUUUUUUUa\f\v
U\8h(
-U\tV_logd
U^Pg
Ugi<
Unable to create unknown element %s!\n
@@ -4968,6 +4958,7 @@ Updating asset dependency information...
Updating dependencies: %d%% (%s/%s) - %s
Usage: "assetsystem_dump_table <table_name>" where table_name is either * (for all) or one of:\n
Usage: assetsystem_check_compile_state <asset_name>\n
+Use World Space Up
Use old behavior of calling ProcessFileChanges() immediately after recompiling a resource
Using rule file '%s'\n
Ut]<E
@@ -5057,8 +5048,6 @@ W3fp
W3i+,
W>peSp>9
WARN: Discarding tags for unknown asset '%s'\n
-WARNING: -AssetTargetGameRoot directory '%s' does not exist\n
-WARNING: -assetmergegameother directory '%s' does not exist\n
WARNING: Asset '%s' refers to dependency '%s' from nonexistent mod '%s' (file '%s')\n
WARNING: Asset database '%s' - FindOrCreateAssetByAssetCanonicalPathSymbols failed for '%s'.\n
WARNING: Asset database '%s' - LoadPersistentInfo failed for '%s'.\n
@@ -5091,7 +5080,6 @@ WARNING: Reading dependencies from very old VPK: %s\n
WARNING: Suppressing on-demand recompile of asset %s - already tried with this fingerprint.\n
WARNING: VNotify abandoned after too many attempts:\n%s\n
WARNING: drive-relative paths like '%s' are not allowed\n
-WARNING: unrecognized extension '%s' used with -restricted_write_include\n
WD%g"0Q-)
WDG,r3
WIN32_BIND_FUNC
@@ -5413,7 +5401,6 @@ Z~wl
\n%12s%s
\n5a=Z
\n:82H
-\nP|44
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
\n\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
@@ -5451,7 +5438,7 @@ Z~wl
\tLa0+
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
\tV_atan2d
-\tV_expd
+\tV_sscanf_s
\t\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StrSubst
\t_V_StringAfterPrefixCaseSensitive
@@ -5467,7 +5454,6 @@ Z~wl
\v\vTSG
\vj0k
\vjC7
-\vp|44
]1h=bfz
]FhSD}
]GT7]
@@ -5488,6 +5474,8 @@ _TIFFSetupFieldInfo
_TIFFVGetField
_TIFFVSetField
_YWL
+_\tV_log2f
+__IN_MEMORY
__injected_test_value
_bakeresourcecache
_buildcubemaps
@@ -5511,6 +5499,7 @@ _}eOk
`H(hqA1p
`ITS
`VX:H
+`\tV_logd
`fPw.\vM
`h9T~
`o_je
@@ -5547,7 +5536,6 @@ aRWZ5
aRecord
aSRP
aXvC
-a\tV_powd
a]?xG
aaControls
ac-auditEntity
@@ -5669,7 +5657,6 @@ asset_diagnostic: HandleFileChange -> UpdateRelatedFile\n
asset_diagnostic: HandleNewPossibleAssetFileSymbolParts "%s" "%s"\n
asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> AddAsset\n
asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreAssetDirectory\n
-asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreByRestrictedWrite\n
asset_diagnostic: HandleNewPossibleAssetFileSymbolParts -> IgnoreNewPossibleAssetFile\n
asset_diagnostic: LoadPersistentInfo "%s"\n
asset_diagnostic: LoadPersistentInfo -> Assigning new slot (%d)\n
@@ -5873,6 +5860,7 @@ bie.+
bignum out of range
bignum routines
bignum too long
+binary
binary_array
binary_seqids
binary_v
@@ -7595,6 +7583,7 @@ l7@J
lC57
lDcW
lM2p
+l\tV_powd
language
last octet invalid
lastModifiedBy
@@ -7691,9 +7680,12 @@ m_SubassetDefinitions
m_SubassetReferences
m_UserData
m_WeakReferenceList
+m_bAllowDefinitions
+m_bAllowReferences
m_bFileExists
m_bIsGameFile
m_bOptional
+m_bWorldSpaceOrientation
m_ePromiseState != EPromiseState::Unresolved
m_fMoveTo
m_nFileCRC
@@ -8485,7 +8477,6 @@ publiccontent_
pvk data too short
pvk too short
pzKD)
-p|44
q not prime
q&A\nn
q/\rg2
@@ -8526,7 +8517,6 @@ rRfKR
rX&O0
rZ1VwGf5
rZPM
-r\fp|44
r\vDi
radiusScale
radius_random
@@ -9463,6 +9453,9 @@ too large
too long
too many iterations
too many temporary variables
+tool_request_args
+tool_request_text
+tool_request_tool
tools/assettags
tools/images/assetbrowser/filter_tags_empty.png
tools/images/common/document_sm.png
@@ -9904,7 +9897,6 @@ z>Hz
zF):O4
zG2m8
zRXU
-z\tV_sscanf_s
zlVO
zlib compression
zone
game/bin/win64/bugreporter_filequeue_strings.txt
modified • +4 / -5 • changes: 9
Show patch
@@ -1,15 +1,14 @@
%s%c%04i%02i%02i-%02i%02i%02i-%s
%s%cbug.txt
--\tV_fread
.?AVCBugReporter@@
.?AVIBugReporter@@
-2\vph
+2\vpH
+6\tV_fread
<<Invalid>>
Area
BugReporter005
Build
C:\buildworker\csgo_rel_win64\build\_build_\utils\bugreporter_filequeue\_vpc_bugreporter_filequeue\default\win64\_msvc_\Retail\bugreporter_filequeue.pdb
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,class CUtlVector<class CUtlSymbol,int,class CUtlVectorMemory_Growable<class CUtlSymbol,int,0> > *,struct CBugReporter_UtlSymbol_LessThan,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
Category
DriverInfo
Level
@@ -18,7 +17,7 @@ Misc
Names
OptionsFile
Owner
-R\fph
+R\fpH
Savegame
Screenshot
Source2
@@ -37,7 +36,7 @@ config_file
crashdump_user_name
json
netmask
-r\vph
+r\vpH
resource/bugreporter.res
source2
username
game/bin/win64/cs2_build_econ_items_workshop.exe_strings.txt
modified • +5 / -1 • changes: 6
Show patch
@@ -4,7 +4,8 @@
.CRT$XCAA
.CRT$XIAA
.CRT$XIAC
-2\vpt
+2\vpd
+2\vpp
<<ECONITEM_INSERT_COUPON_LOOTLIST>>
<<ECONITEM_INSERT_EVERYTHING_SOURCE2_BUILD_HERE>>
AppSystemInitFailed\n
@@ -40,6 +41,8 @@ Including: '%s'\n
Inert VModuleMetadata
Loading: '%s'\n
RSDS\r
+R\fpp
+R\vpp
SCHEMA_
Saved Debug KV3: %s\n
WARNING:
@@ -101,6 +104,7 @@ paint_kits
paint_kits_rarity
pedestal_display_model
prefabs
+r\vpp
reserved_item_index
revolving_loot_lists
scripts/items/items_game.txt
game/bin/win64/cs_mdl_import.exe_strings.txt
modified • +379 / -258 • changes: 637
Show patch
@@ -15,7 +15,7 @@
-weapon_anim_prefab <path> : Path to a prefab to be included. Path relative to 'output path'.\n
-write_weapon_anim_prefab : Write sequences & weighlists into a prefab. \n
Bad Fax Lines: %lu\n
- C%d:I%-2d {F=%-10d,V=%-10d}
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -84,7 +84,9 @@
# of channels is zero.\n
#CfU7
#This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\n
+#\tV_exp2f
$ModelPath$/transmission
+$\tV_expd
$cloth%d_%s
$cloth%d_r%dc%d
$modelname$
@@ -151,6 +153,7 @@ $prefix_element$
%s on any hitboxes or physics bodies. This part won't be destructible by damage.
%s on physics bodies (exists on hitboxes though). Destroying this part will still leave collision active.
%s references unknown mesh: '%s'
+%s%02d:%02d
%s%s: FGD Parse error: %s %s\n
%s(%d) : %s\n
%s(%s) = %s
@@ -362,7 +365,6 @@ $prefix_element$
.?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -442,7 +444,6 @@ $prefix_element$
.?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -665,6 +666,7 @@ $prefix_element$
.?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -897,6 +899,7 @@ $prefix_element$
.?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1076,6 +1079,7 @@ $prefix_element$
.?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1162,6 +1166,7 @@ $prefix_element$
.?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1244,6 +1249,7 @@ $prefix_element$
.?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1619,13 +1625,17 @@ $prefix_element$
.?AUCAttr_no_member@?L@??GetStaticAttributes@CModelDocIKChain@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCMorphSetData@@
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AUCScaleBiasFilter@CModelDocClothProxyMeshFile@@
.?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@
.?AV<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@
+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@
.?AV<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@
.?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@
.?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
.?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
@@ -1668,6 +1678,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@
@@ -1790,6 +1801,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@
@@ -1973,7 +1985,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -1985,7 +1996,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2163,6 +2173,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -2375,6 +2386,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@
@@ -2497,6 +2509,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@
@@ -2642,7 +2655,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -2654,7 +2666,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2832,6 +2843,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -3044,6 +3056,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@
+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@
@@ -3166,6 +3179,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@
+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@
@@ -3349,7 +3363,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@
@@ -3361,7 +3374,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@
@@ -3539,6 +3551,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@
.?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@
.?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@
+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@
.?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@
.?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@
.?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@
@@ -3783,6 +3796,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@
+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@
@@ -3904,6 +3918,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@
@@ -4045,7 +4060,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -4056,7 +4070,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -4226,6 +4239,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -4435,6 +4449,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@
@@ -4555,6 +4570,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@
@@ -4726,7 +4742,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@
-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@
@@ -4910,6 +4925,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@
@@ -5381,6 +5397,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@
+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@
@@ -5502,6 +5519,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@
@@ -5643,7 +5661,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -5654,7 +5671,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -5824,6 +5840,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -6000,7 +6017,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@
.?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@
-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@
.?AV?$CTypedLogLayerSampleData@E@@
.?AV?$CTypedLogLayerSampleData@H@@
@@ -6193,6 +6209,7 @@ $prefix_element$
.?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6254,6 +6271,7 @@ $prefix_element$
.?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6300,12 +6318,17 @@ $prefix_element$
.?AV?$IToolAttr_TypedValue@W4SpawnEntity_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttr_TypedValue@W4TransferMorphsVertexSelectionMode_t@@@@
.?AV?$IToolAttr_TypedValue@_N@@
+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@
.?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
@@ -6584,7 +6607,6 @@ $prefix_element$
.?AVCModelDocAnimatedMaterialAttributeColor@@
.?AVCModelDocAnimatedMaterialAttributeValue@@
.?AVCModelDocAnimationList@@
-.?AVCModelDocAssociatedPulseGraph@@
.?AVCModelDocAtom@@
.?AVCModelDocAttachment@@
.?AVCModelDocAttachmentBase@@
@@ -7041,11 +7063,13 @@ $prefix_element$
.CRT$XCAA
.CRT$XIAA
.CRT$XIAC
+.P6AXPEBDPEAVCBufferString@@@Z
.cloth
.dmx
.dx90.vtx
.exr
.fgd
+.oNj
.pfm
.phy
.phy file contains entries for its collisionText. Add support\n
@@ -7060,56 +7084,57 @@ $prefix_element$
.vpk:
.vvd
.webp
-00I@
-05I@
-05T@
-06I@
+02V@
+04I@
+04R@
+06A@
06U@
-076@
-079@
-07U@
-07b@
-08I@
-0AI@
-0AT@
-0DI@
-0F4@
-0FO@
-0FV@
-0JI@
-0JN@
-0KM@
-0MC@
-0MI@
-0My@
-0NA@
-0NS@
-0PI@
-0PN@
-0Pc@
-0R5@
+06k@
+0>Ym
+0B7@
+0Cy@
+0D7@
+0E9@
+0EV@
+0JO@
+0JU@
+0KQ@
+0P7@
+0QM@
0R6@
-0T9@
-0U3@
-0U5@
-0X9@
-0YR@
+0SU@
+0V2@
+0VV@
+0WS@
+0YB@
+0ZC@
+0ZI@
0\r%0t
-0\tV_frexpf
-0by@
-0d6@
-0dI@
-0eC@
-0f5@
-0gI@
-0hI@
-0iR@
-0oI@
-0qL@
-0v3@
-0ww@
+0aH@
+0b3@
+0b6@
+0bS@
+0cQ@
+0cV@
+0dT@
+0eL@
+0ez@
+0f4@
+0h9@
+0hQ@
+0k3@
+0kQ@
+0l6@
+0l7@
+0pK@
+0r5@
+0sO@
+0sU@
+0tz@
+0u5@
+0v9@
+0vI@
0x%llx
-0y3@
16-byte data pool
180_recovery
1D Blend Has No Referenced Animations
@@ -7122,13 +7147,10 @@ $prefix_element$
2DBlend
2DBlendEditor
2DBlendFromAnimation
-2\vpH
2_BONE_IK
4-byte data pool
-4PYX
4\r54t
5;FJ$,XEK4<
-5a\v6;
5sfm_v8
64 283 0
7&F|If
@@ -7138,6 +7160,7 @@ $prefix_element$
8-byte data pool
969p
9>No data
+9\tV_frexpf
:: <NO TARGET BONE>
; tris:
;side
@@ -7148,6 +7171,7 @@ $prefix_element$
<font color="red">Face is connected to itself, cannot dissolve</font>
<font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>
<font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.
+<non-RTTI type>
<none>\n
<p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>
<pair_a>
@@ -7156,7 +7180,7 @@ $prefix_element$
=(None)
== PulseGraphDef ==\n
=CAnimFoot
->Hull
+>PushBack
?CurveEditor()
?DmeChannelsClip
?catmullrom_normalize_x
@@ -7165,11 +7189,9 @@ $prefix_element$
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
-@APhysics
@Integer overflow in %s
@fff>fff>fff>fff>
@idle
-@m_vCenter
@unnamed_%d
A bone named %s already exists.
A box shape which cloth collides with.
@@ -7376,6 +7398,7 @@ Add Bones To Render Mesh
Add Center Vertex
Add Curvature
Add Extra Boundary Voxels
+Add Flags
Add Margin
Add R%d <- R%d + R%d
Add Radius
@@ -7386,6 +7409,7 @@ Add a bone to the bindpose skeleton
Add a hold to shorter animations in the blend to match frame counts on all blends
Add a voronoi plane mesh primitive.
Add box mesh primitive.
+Add flags to the given value.
Add noise
Add plane mesh primitive.
Add self amount for combined additive and alpha blended
@@ -7408,6 +7432,7 @@ Affect Edges
Affect Faces
Affect Parents
Affect Vertices
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
AggregateRenderMesh
Aggressive
Aim Offset
@@ -7449,7 +7474,7 @@ Alpha blend weight for sequence 1
Alpha decoder initialization failed.
Also Missing Exclusive Detail Layers
Also select faces using any of these additional materials.
-Always
+Am_nParticle
Ambient Occlusion Map
Ambient Occlusion Map Power
Amount of accumulated force to preserve
@@ -7626,9 +7651,10 @@ AsShotPreProfileMatrix
AsShotWhiteXY
Assert True
Asserts (fails compilation) if selection criteria is not met.
+AssetBrowse( %s )
AssetBrowse( vnmclip )
AssetBrowse( vnmgraph )
-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )
+AssetBrowse()
Assign A Channel
Assign B Channel
Assign Bone Parent
@@ -7645,10 +7671,11 @@ Assign to All Faces
Assigns a color value to a material attribute over a frame range.
Assigns a floating point value to a material attribute over a frame range.
Assigns all vertex weights to the specified bone.
-AssociatedPulseGraph
Associates a semantic identifier with an animgraph2 used by this model.
-Async Fire C%d:I%d
-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
+Async Call Method (Child Cursor) C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
Attach Point
Attach to Morphing Base Mesh
AttachedSoundEvent
@@ -7706,15 +7733,13 @@ BC4_UNORM
BC5_SNORM
BC5_TYPELESS
BC5_UNORM
-BPl7@
Back-solve Joints
Back-solve Joints Drive Meshes
Back-solve Min Weight
Bad bodygroup name '%s'
Bad class description
Bad code word
Bad config reference '%s'
-Bad count in ArraySetCount (%d)
Bad input/output type '%s'
Bad max in ArrayFirstNElements (%d)
Bad metadata for %s
@@ -7768,6 +7793,7 @@ BaseTextureGenerator
BaselineExposure
BaselineNoise
BaselineSharpness
+Basic string support.
BayerGreenSplit
BeenSimplified
Begin testing a condition composed of Observable values. Continues checking until canceled.
@@ -7799,9 +7825,12 @@ Blend Weights Per Vertex
BlendLayersUsingTimeSelection
Blur Radius
Bm_Plane
+Bodies are ordered by bone depth (root bone body is first)
+Bodies are ordered the way their shapes appear in the shape list
Body Collection
Body Group Choice
Body Group Name
+Body Order
BodyGroupList
Bodygroup error %s\n
Bone '%s' already existed in the bind pose
@@ -7814,9 +7843,11 @@ Bone 1
Bone 2
Bone 3
Bone Cull Type
+Bone Depth
Bone Influence Filter
Bone Influence Filter Threshold
Bone Input ::
+Bone Merge (Ex)
Bone Names
Bone Rename failed, results in duplicate bone '%s' in this animation
Bone Rename failed, results in duplicate bones in this animation
@@ -7828,6 +7859,7 @@ Bone flags markup data
Bone name
Bone names must differ
Bone or Attachment
+Bone-Direct
BoneConstraintRbf :: Cannot find input bone "%s" :: %s\n
BoneConstraintRbf :: Cannot find output bone "%s" :: %s\n
BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\n
@@ -7836,6 +7868,7 @@ BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\n
BoneMarkup
BoneMarkupList
BoneName
+BoneOverlay
BonePrefix
BoneRelativeNode
BoneReplacements
@@ -7852,8 +7885,6 @@ Bounds Hull
Bounds Maxs
Bounds Mins
Bounds View
-BoundsOffset
-BoundsScale
Box De-Select (
Box Dimensions
Box Primitive
@@ -8069,7 +8100,6 @@ CModelDocAnimatedMaterialAttribute
CModelDocAnimatedMaterialAttributeColor
CModelDocAnimatedMaterialAttributeValue
CModelDocAnimationList
-CModelDocAssociatedPulseGraph
CModelDocAtom
CModelDocAttachment
CModelDocAttachmentBase
@@ -8250,7 +8280,7 @@ CModelDocModelModifier_FoliageVertexNormals
CModelDocModelModifier_FoliageVertexNormals: Computing...
CModelDocModelModifier_FoliageVertexNormals: Computing...\n
CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\n
-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1147
+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1148
CModelDocModelModifier_GenerateDecalUVs
CModelDocModelModifier_RenameBone
CModelDocModelModifier_ReplaceResourceReferenceSubstring
@@ -8326,7 +8356,6 @@ CModelDocVSNAPParticle
CModelDocWristBone
CModelMaterialGroupName
CModelMesh Index Buffer
-CModelMeshBufferData_t
CModelMeshRenderData::BuildVertexBuffersForMaterialGroups(732):
CModelMeshVertexBuffer
CONTENTS_AREAPORTAL
@@ -8382,9 +8411,9 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -8394,26 +8423,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
CPulseCell_PickBestOutflowSelector::ProcessSelector
CPulseCell_Step_CallExternalMethod '%s'
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseMathlib::AbsFloat
CPulseMathlib::AbsInt
CPulseMathlib::ArcCos
@@ -8450,6 +8481,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -8479,17 +8511,23 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseTestScriptLib::AssertTrue
CPulseTestScriptLib::IndicateTestFailure
CPulseTestScriptLib::IsInTestMode
CPulseTestScriptLib::RegisterTestCheckpoint
CPulseTestScriptLib::TestModeAssertTrue
+CREATE_CHILD_CURSOR_OUTFLOW
CRenderMeshSimplifyParams
+CRenderMeshSlotType_t
CResourceArray< ModelReference_t >
CResourceExtReference< CWeakHandle< InfoForResourceTypeCModel > >
CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > >
@@ -8522,6 +8560,7 @@ CUndoDestroyElement
CUndoManager::Redo
CUndoManager::Undo
CUtlBlockVector<class Vec2D<float>,int,class CMemAllocAllocator>::GrowCount
+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct StoredTriangleVertexPositions_t,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator>::GrowCount
@@ -8575,53 +8614,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr
CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage
+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
+CUtlStringToken
CUtlStringTokenWithStorage
CUtlVectorFixedGrowable
CVisibilityMgr
@@ -8658,8 +8664,6 @@ Can Player Pickup Piece
Can not read scanlines from a tiled image
Can't find bone named '%s'.
Can't find this node in the list of all groom group nodes.
-Cancel
-Cancel observing.
Cannot Find "%s" Stream On Mesh
Cannot Find "%s" Vertex Map On Mesh
Cannot Find Bone Parent Stream For Bone :: %s, Parent :: %s
@@ -8910,7 +8914,7 @@ Combine Owner + Part Name
Combine_Strider.mdl
Commit Step
CommonToolEvent_DocumentModifiedFlagChanged_t
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
Compiled GUI file
Completed
Complex Cloth Chain
@@ -9080,13 +9084,14 @@ Cursors Allowed To Wait
Curvature
Curvature Drop Amount
Curvature Drop Distance
-CurveEditor
CurveEditor( { extended=true input_name="Frame" output_name="Value" } )
Cut Max
Cut Min
Cycle Start Frame
Cycle Type
Cylinder
+Cylinder - Centered (SLOW PERF)
+Cylinder - Ground (SLOW PERF)
Cylinder: %s
D16_UNORM
D24_UNORM_S8_UINT
@@ -9126,6 +9131,7 @@ Default (No RGB Tint)
Default Gravity Scale
Default Root Bone Name
Default offset for cp1 relative to cp0 if cp1 not set
+Default to old body ordering for now
Default: %s
DefaultAnimGraph2
DefaultCropOrigin
@@ -9458,8 +9464,10 @@ End Frame
End Frame Number
End Loop
End dot product value for fading as the particle normal becomes aligned with the view vector
+EnsureCapacity
Entity Class Override
EntityName
+Enum support.
EnumArray
Eq R%d <- R%d == R%d
Equal to
@@ -9499,6 +9507,7 @@ Euler XYZ
Evaluate the curve at the specified input position
Evaluate the gradient at a position between 0 and 1
Event %u layer %i at time %i type %s\n
+Event Class
Exact
Exclude Bones With Exact Flags
Exclude Bones With Flags
@@ -9629,8 +9638,8 @@ Fade Out Time
Fade Time
Fail Outflow
Fail on empty
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to allocate field info array
Failed to allocate memory for %s (%ld elements of %ld bytes each)
Failed to allocate mesh edges for mesh, maximum edge count %i has been reached.\n
@@ -9689,6 +9698,7 @@ Final animation consists of A, Crossfade, B
Find String
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find and replace in resource references across the document (NOTE: Some references like materialgroups may be missed with the current implementation.)
Find another Mesh Operation node by name in this document and run it as if it were a child of this node.
Find first element 'a' which compare equal to 'element' and return its index.
@@ -9734,9 +9744,9 @@ Flip Direction
Flip Percentage
Flip the forward (x) axis direction of bones
Float To Game Time
-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\n
-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\n
+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\n
Floating point "Predictor" not supported with %d data format
Floor - round float down to nearest integer
Floor Float
@@ -9768,6 +9778,7 @@ Force this external piece to spawn motion-disabled regardless of the VMDL propda
Force to apply
ForceRealignBone
ForceUnweightedBindposeBonePositions
+Format Duration String From Seconds
Format error!
Fourth Control Point Location
Fourth Control Point Number
@@ -9889,7 +9900,9 @@ HalftoneHints
Hammer temp export
HammerEntityPicker()
Hard Lock
+Has All Flags
Has Angle Constraint
+Has Any Flags
Has Base Spring
Has Collision
Has Pitch Constraint
@@ -9906,7 +9919,7 @@ Height Target
Height Tolerance
Height of the primitive to project normals from.
Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.
-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\n
+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\n
Hidden
Hide Materialgroup in Tools
Hide Render Color in Tools
@@ -9942,7 +9955,9 @@ How many iterations this solvers hould use.
How much the joint tries to drive back to bind pose
How much to consider facing angle in occlusion.
How quickly the elasticity target pose changes to match the current pose
+How should the bodies, created by these shapes, be ordered in the final model
How the end effector should be rotated after the solve.
+Hull
Hull Per Element
Hull Per Mesh
Hull Too Complex for Runtime (%d verts, %d edges, %d faces)
@@ -9964,7 +9979,6 @@ INVALID SUBTYPE!
ISO JBIG
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If Lerp Type is Full Frame Range, this is the fixed scale value applied, the curve is used otherwise
If animation has been subtracted in ModelDoc to create an additive animation to be used with AnimGraph, set this to true
If any faces with a given material are selected, expand the selection to include ALL faces using those materials.
@@ -10202,7 +10216,6 @@ KeychainMarkupLocator
Keyframe animation data
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
Kochanek-Bartels
Kochanek-Bartels Early
Kochanek-Bartels Late
@@ -10235,6 +10248,7 @@ Latency CP
Latency CP field
Layer %d: adding key at time %d [%d -> %d], value
Leader Bone
+Leader Type
Leaf Only
Leaking %i elements\n
Leap to Chunk C%d
@@ -10386,18 +10400,22 @@ MATERIAL_ATTRIBUTE:%s_%i
MAlternateSemanticName
MAtomicTransfersAsMap
MAtomicTransfersAsPlainString
+MESH_BUFFER_USAGE_VERTEX_EMISSIVE
MEntitySubclassScopeFile
MFgdHelper
MHideInPolymorphicClassList
MIsStringAndTokenType
MKV3TransferName
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MModelGameData
MORPH
MPropertyArrayElementNameKey
MPropertyAttributeEditorOverride
MPropertyAutoExpandSelf
MPropertyColorPlusAlpha
MPropertyCustomEditor
+MPropertyFGDFromAssetKeysFromOtherField
MPropertyFlattenIncludeLabel
MPropertyFlattenIntoParentRow
MPropertyFlattenStretchFactor
@@ -10415,6 +10433,7 @@ MPropertySuppressBaseClassField
MPropertySuppressField
MPulseExpressionAlias
MPulseFunctionHiddenInTool
+MPulseTypeRestriction
MResourceTypeForInfoType
MVDataAnonymousNode
MVDataAssociatedFile
@@ -10451,12 +10470,14 @@ Make Angle From Forward Vector
Make Color
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -10547,11 +10568,11 @@ Mesh Min/Max :: %8.4f, %8.4f R :: %8.4f %8.4f C :: %8.4f %8.4f\n
Mesh & Skeleton
Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s
Mesh Operation Stack
-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s
+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s
Mesh contains %d blend weights per vertex; truncating to %d\n
Mesh has %i > %i floats of attributes, unable to apply all weightings.
Mesh node name
-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s
+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s
MeshDrawOrder
MeshFileReferenceEditor
MeshID
@@ -10693,6 +10714,7 @@ Must call InitModelDocLib before using the library.
Must supply -o for output files\n
Mutually Exclusive Cloth Effects
My Subclass Name
+N@Bad count in ArraySetCount (%d)
NO TARGET
NOT
NOT_ARRAY_MEMBERS
@@ -10757,6 +10779,7 @@ No bone named %s to rename.
No bone named :: %s in modeldoc, CSkeletonpose mismatch?
No but transfer UVs
No component selection made; node will have no effect.
+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!
No edges selected by length threshold.
No faces selected by facing angle.
No faces selected.
@@ -10788,6 +10811,7 @@ No valid .phy for %s\n
No vertex attribute name specified
No vertices selected by index and weight threshold.
NoCollapse
+NoEditor()
Node '%s' not allowed in this document type (%s)
Node Name
Node cannot be added with invalid name: %s
@@ -10824,7 +10848,6 @@ Normal Attribute Simplification Weight
Normal Lock to Control Point
Normal Modify Offset Random
Normal texture scroll rate
-NormalBias
Normalize Output
Normalize Vector a
NoseV
@@ -10887,7 +10910,6 @@ Optimize for Keychains
Optimize for rope and cloth simulation
Optional bone to use as the root transform.
Optional pattern for attribute names (* for wildcards.) Note that this matches against non-display (ie. raw view) attribute names.
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Options:\n
Or R%d <- R%d || R%d
@@ -10948,6 +10970,7 @@ Override Vector
Override all mesh normals with a specific vector.
Override bone scale information on an animation
Override model bounds.
+Override sound is invalid.
Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)
Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)
Override the mass this embedded piece will spawn with regardless of the VMDL propdata.
@@ -10957,52 +10980,52 @@ Overrides the target VSNAP resource (defaults to "particles/models/%model_name%/
Overwrite all bone data
Overwrite existing flags only
Overwriting existing wrinkle map data on mesh
-P0L@
-P0V@
-P1Q@
-P6I@
-P7U@
-P9I@
-P9T@
-PA1@
+P2V@
+P2e@
+P3R@
+P4V@
+P4m}
+P5O@
+P5V@
+P6f@
PARENT
-PB8@
-PBI@
-PBU@
-PD2@
-PDO@
-PEA@
-PEI@
-PEV@
-PF4@
-PF9@
-PFS@
+PBQ@
+PBy@
+PD7@
+PD8@
+PFQ@
PF\n%d %d\n-1.000000\n
+PF_TYPE_CONTROL_POINT_IS_SET
PHY Import: Invalid solid index %d in keyvalues\n
PHY Import: Solid with index %d is defined twice!\n
-PKI@
-PKN@
+PIH@
+PLT@
+PLU@
PMO@
-PNA@
-PNI@
POSE_SPACE_BONE
POSE_SPACE_MORPH
-PSI@
-PSc@
-PT9@
-PTN@
+POU@
+PP7@
+PPS@
+PQ8@
+PSU@
PURH
-PUS@
-PV5@
-PY6@
-PYI@
-Pa5@
-PaI@
+PUT@
+PVU@
+PVV@
+PVz@
+PWI@
+PXQ@
+PXS@
+PYB@
+PYU@
+PZy@
+Pa6@
+PaQ@
PackBits
PackBitsDecode: Not enough data for scanline %ld
PackBitsDecode: discarding %ld bytes to avoid buffer overrun
PackToSharedVB
-PackedBlobNormal
Packing Material Particle System
Packing Material Volume scale - to have more or less contents
PageName
@@ -11027,6 +11050,7 @@ Parent Node
Parent Node Name
Parent Reaction
Parent Rotation
+Parent VData
Parent bone '%s' specified by define bone could not be found.
Parent node type is not a valid node type for this node
Parent of Chain Requires Alignment
@@ -11044,6 +11068,11 @@ ParticleImport
ParticleParamID_t
ParticlesLib
Pass Outflow
+Pb6@
+Pc3@
+PcS@
+Pcy@
+PdO@
Peak Cycle
Peak Frame
Peak Frame Number
@@ -11054,12 +11083,15 @@ Perforce
Perform a set of parametric mesh modification operations.
Persistent
Perturb vertex positions using sine waves.
+Pf4@
+PfQ@
+PfV@
Pf\n%d %d\n-1.000000\n
-Pg8@
Photometric tag is missing, assuming data is YCbCr
Photometric tag value assumed incorrect, assuming data is YCbCr instead of RGB
PhotometricInterpretation
Photoshop
+Physics
Physics Joint Modification Mode
Physics Particle
Physics Prop
@@ -11093,6 +11125,8 @@ PhysicsShapeHullPrimitive
PhysicsShapeList
PhysicsShapeReplacements
PhysicsSurfaceProperties
+Pi7@
+PiU@
Pick 3 target cloth nodes
Pick Target Cloth Nodes:
Pick the IK Chain to lock:
@@ -11134,7 +11168,10 @@ Pitch Yaw Roll
Pitch Yaw Roll Max
PivotPaint
PixarLog
+PjI@
+Pk7@
PkI@
+Pkz@
PlI@
Place On Attachment
Place On Bone
@@ -11151,9 +11188,9 @@ Plane Primitive
Plastic
Plasticity
Play End Cap Effect
+PmI@
PmU@
-PoI@
-PoR@
+Pn6@
Point 0
Point 1
Point Bones At
@@ -11202,8 +11239,10 @@ Positions in grid
PosterSettings
Posture
Power scale for applying the supplemental ambient occlusion map.
-Pr6@
-PrT@
+Pp5@
+PpL@
+PrI@
+PrK@
Pre-Age Noise
Pre-Clear Selection
Precision Degrees
@@ -11217,6 +11256,7 @@ PredictorEncodeTile
PredictorSetup
Prefab
Prefab [%s]
+Prefab target file '%s' not found
PrefabList
Prefix element cannot contain element or element_array attributes. ('%s')
Prefix to Match
@@ -11248,32 +11288,34 @@ Primitive Radius
Primitive type to project vertex normals from.
Prismatic joint.
Procedural
+Proceed Immediately
Process Selector
Project From Primitive
Project on Characters
Project on Water
Project on World
Projected Primitive
-Prop Group for Physics Particles
-Prop group for spawned physics particles
PropWorldOrigin
Prune pieces < error threshold
+Ps5@
PsI@
+PtQ@
+Pu5@
+PuO@
Pull towards control point
-Pulse Graph
Pulse domain which enables particle content to query leaf code to introspect game state.
+PulseDurationStringFormat_t
Push Out
Push mesh faces outward along their local normal. Optionally build shell geometry.
-PushBack
-PvU@
-PwR@
-PwU@
-Px5@
-Py6@
+Py9@
+PzG@
+Pze@
+Pzz@
QAngle
Quad Bend Tolerance
Quadratic
Quadric Error Metric
+Quantize the transform centroid position to the given modulus.
Quaternion
QuaternionStorage
Quickhull got into an impossible state and failed
@@ -11338,6 +11380,7 @@ R8_TYPELESS
R8_UNORM
R9G9B9E5_SHAREDEXP
RBF Based Anim Constraint
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RGB blend weight for sequence 0
RGB blend weight for sequence 1
ROTATION
@@ -11391,7 +11434,6 @@ Redo\n======\n
Reduce how bouncy the joint is
ReductionMatrix1
ReductionMatrix2
-Reference to a Pulse file to be run on this model entity.
Reference to a content file that will append its contents to a parent render mesh file node.
Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)
Reference to a content file that will resolve to one or more bone nodes to define a skeleton.
@@ -11473,6 +11515,7 @@ Remap distance to line between 2 control points to scalar
Remap distance to line between 2 control points to vector
Remap the trace result value relative to this range.
Remove Behind
+Remove Flags
Remove Front
Remove Small Components
Remove Tag From Cursor
@@ -11481,6 +11524,7 @@ Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
Remove all values from the list
Remove bones that are not present in this allow-list.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
Remove vertices behind the slice plane.
@@ -11624,6 +11668,7 @@ SSAOBias
SSAORadius
SSAOStrength
Safeguard against producing a model outside budgetary limits.
+Same Model (In)
Sample Count
Sample Rays
Sample bitmap data using input UV channel and bake it to the output face vertex data channel.
@@ -11786,6 +11831,7 @@ Sets all elements in a vector (or float) stream to a single value
Setting up field info failed
Settings for the character's speeds in different situations and movement settings for the nav system and animgraph
ShadowScale
+Shape List
Shapes
Shapes controlled by this incremental control
Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>
@@ -11850,6 +11896,7 @@ Smooth Iterations
Smooth Normals Across UV Seams
Smooth Rate
Smooth Vertex Normals
+Snap to grid
SnapshotVertexExtraction
Soft Link
Softbody
@@ -11976,8 +12023,7 @@ Stiffness on Ragdoll
StoNits
Stop Effect after Duration
Stop On Sequence Change
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
Stores metadata for groom meshes.
Stray Boundary Radius
Stray Boundary Spring
@@ -12026,6 +12072,7 @@ Swing Limit
Swing Offset Angle
Switch Threshold
Symbol table: %d entries %llu bytes\n
+Synchronous - Wait for this node to fully complete before proceeding.
THEM
TIFFAppendToStrip
TIFFClientOpen
@@ -12050,7 +12097,6 @@ TIFFVStripSize
TIFFVTileSize
TILT_TWIST
TWIST
-T\tV_log2f
Tag
Tag %d
Tag Cursor
@@ -12070,6 +12116,7 @@ Target Hair Count
Target Name
Target Triangle Percent
Target layer ID for rendering
+TargetCastForModify
TargetPrinter
Team1
Team2
@@ -12172,7 +12219,10 @@ This is Work-In-Progress Content
This is a BigTIFF file. This format not supported\nby this version of libtiff.
This is an Euler Rotation in degrees in XYZ order.
This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
This model will fail to compile outside a development environment.
+This value is optional. Click to set.
+This value is optional. Click to unset.
This value is set when the morph control is created via mesh loading and not explictly created by the user
ThreadStretch
Threshholding
@@ -12245,6 +12295,7 @@ Treat Warnings as Errors
Tried to load a polymorphic pointer with no '%s' key
Tried to rename from '%s' to '%s', but '%s' already exists\n
Truncated header.
+Turn a time in seconds into a display string. NOT localized.
Turn off animation compression for this animation.<p><span style="color:#aa0000"><b>NOTE</b></span>: This significantly increases the size of the animation data.<p>Normally it should be false but if there are obvious compression artifacts, typically in tiny rotations, disabling compression may fix those.
Twist Relax
Two Sided
@@ -12256,6 +12307,12 @@ UI Camera Yaw/Pitch
UICameraRotation
UL Offset in FLU local space
UL control point number
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
UR Offset in FLU local space
UR control point number
UV Attribute Simplification Weight
@@ -12266,7 +12323,6 @@ UV Map Planar
UV Map Planar Custom
UV Mapping
U\8h(
-U\tV_logd
Un-inertial Rods
Unable to add anim events to %s of type "%s". Only "AnimFile" nodes are valid.\n
Unable to add mtl %d for lod %d model has only %d mtls
@@ -12310,6 +12366,7 @@ Unknown class '%s' specified by @exclude
Unknown compression type.
Unknown data format %d for LogLuv compression
Unknown encoding %d for LogLuv compression
+Unknown format type
Unknown interpolation type %d\n
Unknown mesh '%s'
Unknown parent bone '%s'.
@@ -12336,6 +12393,7 @@ Unsupported mix of opaque and translucent materials in thie groom group. Render
Up Type
Up Vector
UpdateLights
+UpscalerType_t
Usage: cs_mdl_import -o <path> [options] <filespecs...>\n
Use Block Solver
Use Child Offset Attachment
@@ -12346,6 +12404,7 @@ Use Eye Orientation
Use Flat Color
Use For Collision
Use For Occlusion
+Use High Precision Blend Weights
Use High Precision/Expensive Texcoords
Use Layer Sequence
Use Local Space
@@ -12358,6 +12417,7 @@ Use UV2 for Lightmap Charting
Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.
Use additive blending
Use distance to an infinite line instead of a finite line segment
+Use for faces
Use max-luminance blending for sequence 0
Use max-luminance blending for sequence 1
Use radius for Per Particle Trace Length
@@ -12372,6 +12432,9 @@ User-picks require a name
User-specified color/materialgroup requires a node name
Using 16-bit blend indices\n
Using deprecated 'base=prefix' syntax for adding a prefix to a base class
+VDATA
+VDataChoice( %s )
+VDataChoice()
VDataModelVersion001
VDmElementFrameworkVersion001
VDmSerializers001
@@ -12474,6 +12537,7 @@ WARNING: No 'models_ModelDocGameData' FGD was specified in the 'ModelDoc' sectio
WARNING: Unable to load the FGD file '%s'.\n
WDG,r3
Wait Complete
+Wake Cursors With Tag
Warning! MDL %s body part %s failed CreateNode bodyPart\n
Warning! MDL %s mstudioikchain_t %s has %d mstudioiklink_t's expecting 3 - ignoring ik chain\n
Warning! MDL %s mstudioikchain_t %s has a linktype of %d expecting 0\n
@@ -12504,8 +12568,6 @@ What material this object is made of. Used for mass calculations, impact effects
What to replace matches with
What type of object this is.
Wheel joint.
-When False
-When True
When picking between random choices, determines odds this choice is picked compared to others. (eg. a weight of 2 is twice as likely to be picked as weight of 1)
When this breakpiece breaks, should it be able to intersect with the parent that spawned it?
When this model is loaded preserve vertex data in CPU memory.
@@ -12514,10 +12576,15 @@ Whether the local hierarchy will use ease in/out values or just automatically ap
Whether the to use the curve or just a set value for the entire frame range
Whether this distance field contributes to AO.
Whether this distance field is a collider for certain effects such as hair simulation.
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
Which solver to use for positioning the IK chain. Required.
+While False
+While True
WhiteLevel
WhitePoint
Width Target
+Will use the second uv channel in the model to generate lightmap uvs. This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.
Wind Speed, mph
Windage Normal
Windage Tangent
@@ -12591,14 +12658,15 @@ ZIPVSetField
[choices
[cloth] | [procedural]
[procedural]
-\fPYX
+\f\tV_acosd
\instances\
\maps\
\materialsrc\
\ndummyfilename.tif
\ng default\n
\prefabs\
\rModelDoc
+\r\nnexttoken
\sound\
\t"%s" "%f"\n
\t"emptyanimwithnoeffect" "%d"\n
@@ -12607,18 +12675,14 @@ ZIPVSetField
\t"worldrelative" "%d"\n
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
-\tV_acosd
\tV_asind
\tV_atan2d
+\tV_atand
\tV_cosd
-\tV_exp2f
-\tV_expd
+\tV_sscanf_s
\tV_tand
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StringAfterPrefixCaseSensitive
-\tg_bUpdateStringTokenDatabase
-\tnexttoken
_CustomCommand
_CustomCommand%d
_InFrameSpine
@@ -12630,11 +12694,11 @@ _TIFFMergeFieldInfo
_TIFFSetupFieldInfo
_TIFFVGetField
_TIFFVSetField
+_\tV_log2f
__CACHED_editcontext_provider_lookup
__CursorQueue__
__FireCursorsParent__
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
__autoskinned
__bone_%d
@@ -12681,9 +12745,9 @@ _temp_tangent
_volumeatlas_
_wjb
_zero
+`\tV_logd
a:fulltype
a:typeparam
-a\tV_powd
a_lean_override_
a_lean_override_0
a_lean_override_1
@@ -12741,6 +12805,7 @@ align_to_frame_type
align_tx
align_ty
align_tz
+allflags
allow_flex_length
allow_none
allow_nonmatching_bones
@@ -12820,6 +12885,7 @@ animgraph_incompatible
animturn
anklebone
antishrink
+anyflags
aoB>"
ao_map
ao_power
@@ -12832,14 +12898,14 @@ apply_fast_sweep
applymodelspacetranslation
are_effects_mutually_exclude
assetTag
+asset_specific_keys_source
assign_a
assign_b
assign_g
assign_r
assign_to_all
assign_to_all_faces
associated_key
-associated_vpulse
ati_compress_wrapper.dll
attach_material
attach_mesh
@@ -12921,6 +12987,7 @@ best_fit_atlas
bezier
bias_to_center
biased
+binary
binary_array
binary_seqids
binary_v
@@ -12953,6 +13020,7 @@ body_collection
body_group_choice
body_group_count
body_group_name
+body_order
bodygroup_choice_%d
bodygroup_name_%d
bodygroup_preset
@@ -12966,6 +13034,7 @@ bone_3
bone_attrs
bone_count
bone_cull_type
+bone_depth
bone_index0
bone_index1
bone_index2
@@ -13412,6 +13481,8 @@ draw_wireframe
durationTime
duration_info
dynamic_attributes
+eCenteredCylinder
+eGroundCylinder
ease_in_and_out
ease_in_key
ease_is_duration
@@ -13530,6 +13601,7 @@ export_reference_type
export_root
exportsystem
exporttags
+expression_type
extra_border_points
extra_boundary_voxels
extra_data
@@ -13614,6 +13686,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -13710,6 +13783,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png
game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png
+game:tools/images/propertyeditor/eye_hidden.png
+game:tools/images/propertyeditor/eye_visible.png
gameSoundName
game_data_list
gamedata_searchable_keys
@@ -13748,8 +13823,6 @@ goal_strength
goal_strength_bias
gradient
graphCurve
-graph_keys
-graph_name
gravity_grab_priority
gravity_scale
gravity_z
@@ -13761,6 +13834,7 @@ gridnav
gridspacing
groom
ground_friction
+ground_offset
groupColor
group_id
group_name
@@ -13807,10 +13881,12 @@ hide_if_child_selected
hide_materialgroup_in_tools
hide_rendercolor_in_tools
high_high_precision_texcoords
+high_precision_blendweights
high_priority
high_quality
hinge_axis
hinge_vector
+hit_group
hitbox
hitbox_maxs
hitbox_mins
@@ -13983,10 +14059,12 @@ kochanek_early
kochanek_late
kv3:ParticleParamID_t
l2_regularization
+l\tV_powd
ladder
last_frame
layers
leader_bone
+leader_type
lean
leave_body_collision_unmodified
left
@@ -14094,6 +14172,7 @@ lowprecisionuv1
m_AdditionalInputDependencies
m_AdditionalRelatedFiles
m_ArgumentDependencies
+m_BoneMergeLinks
m_ChildResourceList
m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation
m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNamePosition
@@ -14109,6 +14188,7 @@ m_HingeAxis
m_InputDependencies
m_Int
m_IntArray
+m_Metadata
m_ParameterType
m_ParentJoint
m_PartsData
@@ -14118,6 +14198,7 @@ m_RelativeFilename
m_RootRelativePath
m_SearchPath
m_SearchableUserData
+m_SequencePoint
m_Special
m_SpecialDependencies
m_SpecialInputDependencies
@@ -14173,7 +14254,9 @@ m_bUseNewPoleVectorForAxis
m_bUseShadowFastPath
m_capabilities
m_eRbfType
-m_externalMethodTargetGraph
+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_fEmissiveFactor
m_fMoveTo
m_flAddCurvature
m_flAddNoise
@@ -14192,14 +14275,17 @@ m_flSlopeIncoming
m_flSlopeOutgoing
m_flTextureScrollRate
m_flTextureSize
+m_hCursorOnOtherGraph
m_hitboxsets
m_influenceFlags
+m_materialGroupToken
m_morphSet
m_nAxis
m_nCP1Parent
m_nCP2Parent
m_nCP3Parent
m_nCP4Parent
+m_nChildNode
m_nControlPoint0
m_nControlPoint00
m_nControlPoint01
@@ -14209,6 +14295,7 @@ m_nControlPoint5
m_nControlPoint6
m_nControlPoint7
m_nCurrentWakeIndex
+m_nCursorID
m_nDesiredEndPoint
m_nDesiredStartPoint
m_nFileCRC
@@ -14218,10 +14305,18 @@ m_nGraphID
m_nIterations
m_nNumCols
m_nNumRows
+m_nParentHash
+m_nSrcDrawIndex
m_nUserData
+m_nVertexEmissiveFormat
+m_nVertexEmissiveOffset
+m_nVertexEmissiveStride
+m_nVertexEmissiveVB
+m_nYieldToken
m_pVertexData
m_qFixupRotation
m_rbfParameters
+m_rootBvhNodes
m_vControlPoint1DefaultOffsetRelativeToControlPoint0
m_vLocalOffset00
m_vLocalOffset01
@@ -14445,11 +14540,15 @@ must be either LogLUV or LogL
mute
n$Kx
nDenominator
+nFormat
nKillPriority
nLayoffState
nMaxElements
nNumerator
+nRemainderDigits
+nRemainderNoiseDigits
nValue
+nWakePriority
name_mode
name_prompt
name_remap_table
@@ -14509,7 +14608,6 @@ numsides_key
o KPBf
oOffset
oY.o<
-o\tV_sind
offsetTime
offset_angles
offset_origin
@@ -14535,6 +14633,7 @@ operator_mode
operators
opqMU
optimization_algorithm
+optional_toggle_cmd
optionallycompressedtangentframe
orientation
orientationChannel
@@ -14546,6 +14645,7 @@ oscillate_scalar
oscillate_vector
out_frame
outerconeangle
+outliner_icon
output is scalar of current value
output is scalar of initial random range
output_A
@@ -14568,43 +14668,45 @@ override_help_id
override_value
override_vector
overrideclass
+overridesound
overwrite_existing
overwrite_existing_flags_only
ownerlog
owns_polymorphic_data
-p0I@
-p4V@
+p0V@
+p1y@
+p2R@
p4lib
-p54@
-p7I@
-p8T@
-p8x@
-p96@
-p9U@
-pA7@
-pB8@
-pBU@
-pCI@
+p4m}
+p5V@
+p6e@
+p7T@
+p7z@
+p9R@
+pAB@
pCheckpointName
-pD8@
+pD9@
+pDO@
pDescription
-pF4@
-pFI@
-pFK@
-pMN@
-pMi@
-pNA@
-pOy@
-pQ6@
-pQI@
-pR4@
+pIR@
+pKO@
+pKV@
+pLU@
+pP6@
+pP7@
+pPQ@
+pQU@
+pQe@
+pRM@
+pTS@
+pTU@
pTagName
-pVI@
-pW9@
-pYN@
-pYX@
-paI@
-paQ@
+pW2@
+pWI@
+pY9@
+pYB@
+pYU@
+paV@
panorama_image
panorama_layout
panorama_style
@@ -14647,8 +14749,10 @@ pathclass
pathnode
pathnodeclass
pattern
-pe6@
-peI@
+pd3@
+pdQ@
+pdS@
+pdz@
peak
peak_attr
peak_cycle
@@ -14657,7 +14761,10 @@ per particle
per_material_options
permissive
pervertexlighting
-ph8@
+pez@
+pf4@
+pgy@
+phO@
phonememap
phys
physicsSimplificationError
@@ -14678,6 +14785,7 @@ physicsjoint_weld
physicsjoint_wheel
physicspreview
physicspreviewrendermesh
+piQ@
pick_type
picks_expected
piece
@@ -14692,7 +14800,11 @@ pitch_friction
pitch_stiffness
pivotOffset
pixelAspectRatio
-pkR@
+pjC@
+pjz@
+pl6@
+pl7@
+plV@
place_on_floor
placementOrigin
placementattachment
@@ -14702,9 +14814,9 @@ plane
plastic
plasticity
playerclip
-pmT@
-pmU@
-poU@
+ply@
+plz@
+pnU@
point
point0_key
point1_key
@@ -14748,9 +14860,6 @@ postprocessing
posture
posture_nohands
posxyz
-pqA@
-prL@
-prP@
preMerge face 0
preMerge face 1
precision_degrees
@@ -14795,18 +14904,25 @@ propattr_force_readonly
propattr_stretch_editor_into_label_column
propdataname
prune
-prw@
-psI@
-psO@
+psM@
pseudo-
-psw@
+pt1@
+pt5@
+ptI@
pulse_node_custom_attributes
pulse_runtime_lib
pushout_strength
-pvT@
+pvC@
+pvI@
pvTarget
-pvU@
-pvc@
+pwN@
+pwO@
+pxQ@
+pxz@
+py6@
+py9@
+pz9@
+pzN@
qangle log
qangle_array
quad
@@ -14993,7 +15109,6 @@ scriptlist
scripts/activity_modifier_weights.txt
scripts/collision_detail_layers.vdata
scripts/physics_particles.vdata!%s
-scripts/physics_particles.vdata!hlx_physics_particle_spawner
searchable_key
searchable_key_fields
second sequence animation rate
@@ -15004,6 +15119,7 @@ segments_v
segments_x
segments_y
segments_z
+select
select_all
select_all_children
select_border
@@ -15061,6 +15177,7 @@ shadow_secondary_color_night
shadowtextureheight
shadowtexturewidth
shape
+shape_list
shapes
shared
sharpStartAngle
@@ -15121,6 +15238,7 @@ smooth_normals_across_uv_seams
smoothiterations
smoothscale
smoothscale_vector
+snap_to_grid
snappable
snapshot
snapshotOverride
@@ -15223,6 +15341,7 @@ sticker_index
sticker_markup_preview
stiff_hinge
stiff_hinge_angle
+stiffen
stiffness
stiffness_on_ragdoll
stop_distance_range
@@ -15269,8 +15388,7 @@ swing_offset_angle
switch_threshold
syncEngineFramerate
synched
-t7U@
-tBSheetSequenceIntegerId_t
+tBRenderBufferFlags_t
tagValue
tag_list
tag_list_dynamic
@@ -15637,7 +15755,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png
tools/images/modeldoc_editor/outliner_icon_texture_generator.png
tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png
tools/images/modeldoc_editor/outliner_icon_transfermorphs.png
-tools/images/modeldoc_editor/outliner_icon_vpulse.png
tools/images/modeldoc_editor/outliner_icon_vsnap.png
tools/images/modeldoc_editor/outliner_icon_vsnap_file.png
tools/images/modeldoc_editor/outliner_icon_vsnap_list.png
@@ -15689,6 +15806,7 @@ twistJoints
twist_back_relax
twist_relax
two_sided
+type_restriction_is_enum_flags
t|AO
ui_order
uicamerarotation
@@ -15744,6 +15862,7 @@ uvmapcylinder
v %f %f %f\n#%d ComponentIndex %d, queue %d, angle %.1f; ring:
vForward
vIK \f3
+value:fulltype
valueDeltaRotation
valueOrientation
valuePivot
@@ -15794,6 +15913,7 @@ velocity_smooth_iterations
velocity_smooth_rate
velocity_tolerance
verify
+verify_override_sound_foot_choice
vertexFormat
vertexPaintBlendParams
vertexPaintTintColor
@@ -15915,12 +16035,13 @@ yfriction
ymax
ymin
zDStatic
-z\tV_sscanf_s
+z\tV_sind
zero dir
zero_unselected
zfriction
zmax
zmin
+{ item_factory = 'IntervalTimer' }
{ uninitialized }
{error}
~CModelInstance destructor: leaking softbody because physics world disappeared\n
game/bin/win64/csgocfg.exe_strings.txt
modified • +23 / -12 • changes: 35
Show patch
@@ -152,7 +152,8 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCQLineEditWithArrowEvents@@
.?AVCQLogDetailsDialog@@
.?AVCQNewAddOnDialog@@
-.?AVCQRichItemListPicker@@
+.?AVCQRichItemListPickerDialog@@
+.?AVCQRichItemListPickerWidget@@
.?AVCQSelectionListItemDelegate@@
.?AVCQSplitter@@
.?AVCQSplitterHandle@@
@@ -162,11 +163,11 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCToolAttrHost@@
.?AVCToolAttrPropertyDomain@@
.?AVCToolEditContextQuery_Base@@
+.?AVCToolEditContextQuery_ExpressionGlobal@@
.?AVCToolEditContextQuery_String@@
.?AVIBaseToolAttr@@
.?AVIKV3FGDTargetResolver@@
.?AVIPropertyEditDomain@@
-.?AVIToolAttrExpressionGlobals@@
.?AVIToolAttrHost@@
.?AVIToolAttr_Array@@
.?AVIToolAttr_KV3@@
@@ -220,7 +221,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.CRT$XIAC
.fgd
/e,/select,"
-15:36:35
+14:11:36
1AcceptIfItemPicked()
1OnAccept()
1OnAddonDoubleClicked()
@@ -256,8 +257,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
2\f?focusOutEvent@QLabel@@MEAAXPEAVQFocusEvent@@@Z
2\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z
2\v?event@QAction@@MEAA_NPEAVQEvent@@@Z
-2\vp$9
-2\vpDp
+2\vpdt
2accepted()
2clicked()
2customContextMenuRequested( const QPoint & )
@@ -285,6 +285,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
<\f?deallocate@QArrayData@@SAXPEAU1@_K1@Z
<map_key>
<map_value>
+<non-RTTI type>
<unnamed>
??0QAction@@QEAA@AEBVQIcon@@AEBVQString@@PEAVQObject@@@Z
??0QAction@@QEAA@AEBVQString@@PEAVQObject@@@Z
@@ -948,6 +949,7 @@ A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z
ARRAY_MEMBERS_VIA_PARENT
ARRAY_PARENT_ONLY
AcceptIfItemPicked
+Accepted
Active
Already running on this machine. Only one instance at a time is allowed.
AlternateBase
@@ -959,6 +961,7 @@ Applies to array parents or non-array items (just not array members)
AssetBrowse( %s )
AssetBrowse( vnmclip )
AssetBrowse( vnmgraph )
+AssetBrowse()
Attribute.%s.%s
B`?translate@QPainter@@QEAAXAEBVQPointF@@@Z
Bad class description
@@ -1011,7 +1014,8 @@ CQEditAddonInfoDialog
CQLineEditWithArrowEvents
CQLogDetailsDialog
CQNewAddOnDialog
-CQRichItemListPicker
+CQRichItemListPickerDialog
+CQRichItemListPickerWidget
CQRichItemListPicker_Choice_Internal*
CQRichItemListPicker_Group_Internal*
CQSmartTextEdit
@@ -1022,13 +1026,12 @@ CQTabbedStyle
CQTabbedStyle_ToolButton_Stealthy
CQTabbedToolButton
CQTreeWidgetWithArrowEvents
+CToolAttrPropertyDomain
CToolAttrPropertyDomain::GetVDataChoiceFriendlyNameForValue
-CUtlRBTree<struct CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::Node_t,class CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum CQTabbedStyle::ColorRole,class CStyleColorData_Item,class CDefLess<enum CQTabbedStyle::ColorRole>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CheckmarkPossible
Could not load color map %s: %s\n
Counter-Strike 2 Workshop Submission
Courier
-CurveEditor
Dark
DarkSplitter
DarkSplitterHandle
@@ -1083,9 +1086,9 @@ Expecting numbers 'min_x' 'min_y' 'min_z'
Expecting tag name
FGD Variable %s has bad default value %d (has bits set that are not valid choices)
F\v?event@QGroupBox@@MEAA_NPEAVQEvent@@@Z
-Failed to allocate an instance of a class
+Failed to allocate an instance of a class of type '%s'
Failed to map from %s to game-path\n
-Filter name/description:
+Filter type/description:
Flag sets do not have long names
FlatSelection
GetVDataChoiceFriendlyNameForValue
@@ -1143,6 +1146,7 @@ NOT_ARRAY_MEMBERS
N\v?event@QMainWindow@@MEAA_NPEAVQEvent@@@Z
New Item Type
No %s specified. Expected '=' '[' <%s> ']'
+NoEditor()
NoRole
OP?isNull@QIcon@@QEBA_NXZ
O\r?hitTestComplexControl@QCommonStyle@@UEBA?AW4SubControl@QStyle@@W4ComplexControl@3@PEBVQStyleOptionComplex@@AEBVQPoint@@PEBVQWidget@@@Z
@@ -1176,7 +1180,6 @@ OnShowItemsContextMenu
OnTextDownArrow
OnTextUpArrow
OnToggleOrientationAction
-Optional properties not fully supported in property editor (text editor required)
P?isValid@QColor@@QEBA_NXZ
P?isValid@QTextCharFormat@@QEBA_NXZ
P\f?font@QTableWidgetItem@@QEBA?AVQFont@@XZ
@@ -1200,7 +1203,7 @@ R?metaObject@QRegExpValidator@@UEBAPEBUQMetaObject@@XZ
R?metaObject@QTextDocument@@UEBAPEBUQMetaObject@@XZ
R\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z
R\r?hitTestComplexControl@QProxyStyle@@UEBA?AW4SubControl@QStyle@@W4ComplexControl@3@PEBVQStyleOptionComplex@@AEBVQPoint@@PEBVQWidget@@@Z
-R\vpDp
+R\vpdt
Reset to Default
RichItemList_Accept
RichItemList_Reject
@@ -1218,8 +1221,11 @@ T?pos@QCursor@@SA?AVQPoint@@XZ
TW?restoreOverrideCursor@QGuiApplication@@SAXXZ
TabBarBackgroundNotSelected
TabTextInactive
+TargetCastForModify
TestKeyForAddon
This value is currently inherited from a base node.
+This value is optional. Click to set.
+This value is optional. Click to unset.
This value is overriding a base node.
To the left of the attribute label
To the right of the attribute editor
@@ -1254,6 +1260,7 @@ UpdateUIForSelectedAddon
UpperLine
Using deprecated 'base=prefix' syntax for adding a prefix to a base class
VDataChoice( %s )
+VDataChoice()
Va?width@QPixmap@@QEBAHXZ
Variable %s has bad default value %s (no choices with that name or value)
ViewportBackground
@@ -1414,6 +1421,7 @@ animgraph2_identifier
animgraph_enum
applicable_to
assetTag
+asset_specific_keys_source
associated_key
autoexpand_self
autoexpand_self_class
@@ -1473,6 +1481,8 @@ game:tools/images/propertyeditor/attr_reset.png
game:tools/images/propertyeditor/attr_reset_hover.png
game:tools/images/propertyeditor/extra_attr_remove.png
game:tools/images/propertyeditor/extra_attr_remove_hover.png
+game:tools/images/propertyeditor/eye_hidden.png
+game:tools/images/propertyeditor/eye_visible.png
game:tools/images/propertyeditor/overlay_inherit.png
game:tools/images/propertyeditor/overlay_inherit_hover.png
game:tools/images/propertyeditor/overlay_override.png
@@ -1575,6 +1585,7 @@ npcclass
o\n?dragEnterEvent@QWidget@@MEAAXPEAVQDragEnterEvent@@@Z
o\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z
open
+optional_toggle_cmd
override_attr
override_description
override_help_context_name
game/bin/win64/dmxconvert.exe_strings.txt
modified • +5 / -10 • changes: 15
Show patch
@@ -287,6 +287,8 @@ $prefix_element$
.vmat
0x%llx
16-byte data pool
+2\vp4
+2\vp8
4-byte data pool
5sfm_v8
64 283 0
@@ -392,13 +394,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
CVisibilityMgr
Cannot unserialize a prefix element here (type "$prefix_element$")
@@ -603,7 +598,6 @@ Operator cycle found during dependency graph traversal!\n
Orient Rotation to 2D Direction
Oscillate Scalar
Oscillate Vector
-P2p}\v
Particle Configuration File
Position Along Path Random
Position Along Path Sequential
@@ -656,7 +650,6 @@ Serialize: File encoding '%s' is undefined!\n
Serialize: Format %s expects to be written to a binary format, but the buffer is a text-format buffer\n
StereoFlip
Symbol table: %d entries %llu bytes\n
-T\tV_log2f
Texture Configuration File
TongueCurl
TongueD
@@ -708,8 +701,10 @@ World Node Files
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
\tSupported DMX file encodings:\n
\tSupported DMX file formats:\n
+\tV_sscanf_s
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StringAfterPrefixCaseSensitive
+_\tV_log2f
_light
_linked_type_
_name
@@ -754,6 +749,7 @@ baseMapToOverride
baseName
baseStates
basic_movement
+binary
binary_array
binary_seqids
binary_v
@@ -1291,4 +1287,3 @@ wrinkle
wrinkle$0
wrinkle$0Indices
wrinkleIndices
-z\tV_sscanf_s
game/bin/win64/engine2_strings.txt
modified • +276 / -315 • changes: 591
Show patch
@@ -5,6 +5,7 @@
%d stashed, +%11s bytes\n
%s\n
bytes class entind Packed\n
+ packet size unpacked size\ndelta%15s%15s\nfull%16s%15s\n
%3d %3d %3d %3d %3d %3d %3d %3d
%4u %4u %4u %4u %4u %4u %4u %4u
%s\n
@@ -150,14 +151,11 @@
%4u stashed frames = %12s bytes
%i refs\n
(08@HPX`hpx
- (08@HPX`jpJ
- (08@HPXb
- (08@HPZpJ
- (08@HR
- (08@JpJ
- (0X`hpz
+ (08@HPX`j@E
+ (08@HPXb@
+ (08@HPZ@E
+ (0X`hpz@
(Start:
- (Texture)
(default = .tga + .wav file)\n
(fallback, started with
(from CL)
@@ -171,6 +169,7 @@
-component "%s"
-noscreenshot
-product "%s"
+ .phG
2r6
3CQ`p
7Me}
@@ -286,10 +285,8 @@
!8F[q
!AxU
!NPE.2
-!\tV_fflush
!engine_frametime_warnings_enable
!fE+15
-!link
!mA@D
!m_bNeedsSort
" because it is missing required fields:
@@ -339,7 +336,6 @@
"#GameUI_ServerRejectInvalidCertLen
"$&')*+,-.//123456779:;<=>??ABCDEFGG(
"$0" does not declare $1 as an extension number.
-"$\n\fCMsgVector2D
"%s" %s %s %d %d %d %d\n
"%s" %s 0 0 0 %d 0\n
"%s" +url_execute "%%1"
@@ -352,13 +348,13 @@
") is not compatible with this reflection object (which is for type "
") to start from the outermost scope.
"). Note that the exact same class is required; not just the same descriptor.
+"*\n\fCMsgVector2D
", another member of oneof "
", but only
", field number
", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".
", which is not imported by "
",3000<
-"-\n\nCMsgQAngle
". To use it here, please add the necessary import.
". If this is intended, set 'option allow_alias = true;' to the enum definition.
". This appears to be a value from a sibling type.
@@ -368,6 +364,7 @@
"0x" must be followed by hex digits.
"2CScs
"3Hau
+"3\n\nCMsgQAngle
"7?NWlv
"<\n CNETMsg_SpawnGroup_LoadCompleted
">Kav
@@ -383,9 +380,9 @@
"\nis running without a known mod!\n\nSet the VMOD environment variable or run with -game to set the mod name.\n
"\v\n\tCDemoStop"0\n\fCDemoUserCmd
"^\n\fOneofOptions
-"c\n\rCMsgTransform
"e" must be followed by exponent.
"e?<<<<<<l?
+"i\n\rCMsgTransform
"k\n"CNETMsg_SpawnGroup_SetCreationTick
"v\n\rCDemoFileInfo
"z\n,CSource2Metrics_RecordPlayStats_Notification
@@ -491,7 +488,6 @@ $Ib?s
$\n\fsignon_state
$\n\rresource_type
$\n\vorientation
-$\tV_fileno
$lZT
$schemasystem/schema_enable_defines.h
$tI(knN
@@ -585,7 +581,7 @@ $tI(knN
%>>C@;Li_=)
%Y-%m-%d-%H_%M_%S
%\n!eQueryCvarValueStatus_ValueIntact
-%\tV_fmodd
+%\tV_expf
%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v%\v
%c%c%c%c%c%s
%cIy
@@ -611,7 +607,6 @@ $tI(knN
%d/%d [not started]
%d/%d: '%s' %s
%d: rgb(%d, %d, %d) : hsv( %g, %g, %g ) : %s%s\n
-%f %f %f %f
%f FRAME end %d server ticks, %d client ticks (%.2fms elapsed)\n
%f FRAME end %d ticks (%.2fms elapsed)\n
%f FRAME start %d server ticks %d client ticks\n
@@ -639,6 +634,7 @@ $tI(knN
%llx,%llx,%d:
%s % 2i : %s\n
%s %f %d %d\n
+%s %s %s %s
%s %s the game (pause group %d)\n
%s %s: adding %d:'%s' (%d total) userdata %d\n
%s %s: updating %d:'%s' (%d total) userdata %d\n
@@ -833,7 +829,7 @@ $tI(knN
&Sgw
&\n"SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP
&\n"eQueryCvarValueStatus_CvarNotFound
-&\tV_fmodf
+&\tV_fclose
&final
'#GameUI_Disconnect_BadSpectatorPassword
'#GameUI_Disconnect_DifferentClassTables
@@ -852,7 +848,7 @@ $tI(knN
'\n#eQueryCvarValueStatus_CvarProtected
'\n#k_EProtoDebugVisibility_ValveServer
'\n\fworldgroupid
-'\tV_fopen
+'\tV_fdopen
'k|7O
(#GameUI_Disconnect_LoopLevelLoadActivate
(#GameUI_Disconnect_RemoteProblem_BadCert
@@ -880,7 +876,7 @@ $tI(knN
(\t"9\n\fCCLCMsg_Move
(\t"<\n\fCSVCMsg_Menu
(\t"\r\n\vCNETMsg_NOP"'\n
-(\tV_fopenUTF8
+(\tV_feof
(\v2 .ProtoFlattenedSerializerField_t:
(\v2 .google.protobuf.DescriptorProto
(\v2!.CSVCMsg_GameSessionConfiguration
@@ -930,7 +926,6 @@ $tI(knN
(channel =
(dump took %.1fms)\n
(end of input).\n\t This indicates a poorly specified lexer RULE\n\t or unterminated input element such as: "STRING["]\n
-(f 0G
(merge
(no landmark)
(no reason given)
@@ -953,7 +948,6 @@ $tI(knN
)7ESbp
)BIV_o
)\n%Source2PlayStats_LowCardinalityString
-)\tV_fpclassifyd
)yIx
)yto
* *\n
@@ -978,7 +972,7 @@ $tI(knN
*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f*\f
*\n"host_computationtime_std_deviation
*\n&Source2PlayStats_SteamIDTrustBucketMin
-*\tV_fprintf
+*\tV_fflush
*h\n\vDIALOG_TYPE
*zvC
++CBaseSpawnGroup
@@ -992,6 +986,7 @@ $tI(knN
+[V~jHZ
+\n'SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES
+\n\rReservedRange
++\tV_fgetc
+alt
+bugvoice
+ctrl
@@ -1035,7 +1030,7 @@ $tI(knN
--CNetworkGameClientBase
--CNetworkGameServerBase
--forward-all-args--
---single-literal--
+--old-connection-literal--
--startmovie
-5?KYks
-> Reservation cookie %llx: reason %s\n
@@ -1047,18 +1042,18 @@ $tI(knN
-\n%polymorphic_field_serializer_name_sym
-\n\fplayer_index
-\n\fsystem_specs
+-\tV_fileno
-all
-applaunch %d
-auto -title "auto_bug %04d-%02d-%02d %02d:%02d:%02d"
-bugvoice
-component
-con_logfile
+-concommandpipe requires -insecure
-consoleapp
-consolelog
-diff
-dx11
--dxlevel
--dxlevel %s: %s
-empty
-end of input-(
-inf
@@ -1078,8 +1073,9 @@ $tI(knN
../src/shaders
..\content
.00cfg
-.0AG
-.0CG
+.01G
+.0WG
+.0cG
.9GXdx
.>\rfJBGo
.?AU?$Container@VUnknownFieldSet@protobuf@google@@@InternalMetadata@internal@protobuf@google@@
@@ -1120,7 +1116,11 @@ $tI(knN
.?AV<lambda_1>@?N@??FillAttr@CSOAContainer@@QEAAXHM@Z@
.?AV<lambda_1_>@InputAudioStreamParams_t@@
.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorCancelPriority_t@@@@
+.?AV<lambda_2>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@2@@Z@
.?AV<lambda_2>@?BD@??WriteScreenshotToFile@CScreenshotService@@AEAA_NPEBD0AEAVCUtlBuffer@@_N22@Z@
+.?AV<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@
+.?AV<lambda_3>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@2@@Z@
+.?AV<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@
.?AV<lambda_5a9ef80d79df7873994019ff15dceae5>@@
.?AV<lambda_60c5de84e69e46aa92419d47e2f3ad51>@@
.?AV<lambda_713ee8bbd6b08550d59c52695cab5ce3>@@
@@ -1372,6 +1372,7 @@ $tI(knN
.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC6h@URGBA8888_t@@$00@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC6h@URGBA8888_t@@$00@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@
.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC7@UBGRA8888_t@@@ImageLoader@@YA_NPEBEPEAUBGRA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC7@UBGRA8888_t@@@ImageLoader@@YA_NPEBEPEAUBGRA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@
.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???$ConvertFromBC7@URGBA8888_t@@@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@@@YAXHHPEBD$$QEAV1?1???$ConvertFromBC7@URGBA8888_t@@@ImageLoader@@YA_NPEBEPEAURGBA8888_t@@HH@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@
+.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?1???R<lambda_2>@?1??WriteToBufferBC6H_ispctexcomp_highest_quality_tweaked@FloatBitMap_t@@IEBA_NPEAX_K@Z@QEBA@XZ@@@YAXHHPEBD$$QEAV1?1???R<lambda_2>@?1??WriteToBufferBC6H_ispctexcomp_highest_quality_tweaked@FloatBitMap_t@@IEBA_NPEAX_K@Z@QEBA@XZ@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@
.?AV?$CParallelLambdaJob@V<lambda_1>@?M@???$ParallelFor@$00V<lambda_1>@?M@??WriteToBufferBC6H_ispctexcomp@FloatBitMap_t@@IEBA_NPEAX_KAEBUFloatBitmapEncodeSettings_t@@@Z@@@YAXHHPEBD$$QEAV1?M@??WriteToBufferBC6H_ispctexcomp@FloatBitMap_t@@IEBA_NPEAX_KAEBUFloatBitmapEncodeSettings_t@@@Z@HHW4JobPriority_t@@@Z@@CParallelProcessLauncher@@
.?AV?$CParallelProcessorAbstract@V?$CParallelProcessor@PEAUReadPacketEntitiesWorkItem_t@@V?$CMemberFuncJobItemProcessor@PEAUReadPacketEntitiesWorkItem_t@@VCNetworkGameClient@@V2@@@$00@@@@
.?AV?$CParallelProcessorAbstract@V?$CParallelProcessor@UCrashItem_t@@V?$CFuncJobItemProcessor@UCrashItem_t@@@@$00@@@@
@@ -1560,6 +1561,7 @@ $tI(knN
.?AV?$_Func_base@I$$V@std@@
.?AV?$_Func_base@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_base@X$$V@std@@
+.?AV?$_Func_base@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV4@@std@@
.?AV?$_Func_base@XPEAVIAsyncReadRequest2@@W4AsyncRequestStatus_t@@@std@@
.?AV?$_Func_base@XPEAVIAudioInputStream@@H@std@@
.?AV?$_Func_base@XPEAVISceneView@@AEBURenderViewport_t@@PEAUHSceneViewRenderTarget__@@PEAU3@@std@@
@@ -1592,10 +1594,15 @@ $tI(knN
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?N@??FillAttr@CSOAContainer@@QEAAXHM@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1_>@InputAudioStreamParams_t@@XPEAVIAudioInputStream@@H@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorCancelPriority_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@3@@Z@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV8@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BD@??WriteScreenshotToFile@CScreenshotService@@AEAA_NPEBD0AEAVCUtlBuffer@@_N22@Z@XPEBX@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?1??AddViewsToSceneSystemForSplitScreenSlot@CRenderingWorldSession@@AEAAXAEBUSplitscreenViewParams_t@3@@Z@XPEAVCRenderGraphBuilder@@PEAVISceneView@@AEBURenderViewport_t@@PEBVCUtlStringTokenWithStorage@@_NPEBV8@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseCursorWakePriority_t@@@@I$$V@std@@
.?AV?$_Iosb@H@std@@
.?AV?$_Packaged_state@$$A6AIXZ@std@@
.?AV?$_Packaged_state@$$A6AXXZ@std@@
+.?AV?$_Ref_count_obj2@VCScreenshotServiceReadTexturePixelsCallback@@@std@@
.?AV?$_Ref_count_obj@U?$_Task_impl@E@details@Concurrency@@@std@@
.?AV?$_Ref_count_obj@U_ExceptionHolder@details@Concurrency@@@std@@
.?AV?$_Task_async_state@I$00@std@@
@@ -1652,6 +1659,7 @@ $tI(knN
.?AVCBidirMsg_RebroadcastSource_t@@
.?AVCBreakpadPassiveAssertionFailureListener@@
.?AVCBroadcastPlayer@@
+.?AVCBugBugService@@
.?AVCBugService@@
.?AVCCLCMsg_BaselineAck@@
.?AVCCLCMsg_BaselineAck_t@@
@@ -1695,7 +1703,6 @@ $tI(knN
.?AVCCreateGameClientPrerequisite@@
.?AVCDebugVisualizerAbsTime@@
.?AVCDebugVisualizerMgr@@
-.?AVCDefSaveRestoreOps@@
.?AVCDefScriptAccessorBase@@
.?AVCDefaultClientConfig@@
.?AVCDefaultServerConfig@@
@@ -1819,9 +1826,9 @@ $tI(knN
.?AVCKV3Transfer_EmptyResourceLoadInterface@@
.?AVCKeyValueCache@@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?BK@??ServerBeginSimulate@CNetworkGameServerBase@@UEAAXAEBUEventServerBeginSimulate_t@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?BK@??ServerBeginSimulate@CNetworkGameServerBase@@UEAAXAEBUEventServerBeginSimulate_t@@@Z@@Z@
-.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@
+.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?L@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??OnServerPostAdvanceTick@CNetworkServerService@@AEAAXAEBUEventServerPostAdvanceTick_t@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??OnServerPostAdvanceTick@CNetworkServerService@@AEAAXAEBUEventServerPostAdvanceTick_t@@@Z@@Z@
-.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@QEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@
+.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?BA@??LaunchAsyncBeginRenderingViewsJob@CRenderService@@UEAAXAEBUEventClientPreOutput_t@@_N@Z@@Z@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_3>@?BJ@??ProcessReadPacketEntitiesWorkItems@CNetworkGameClient@@AEAAXW4RPEStatType_t@@AEAVCEntityReadInfo@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_3>@?BJ@??ProcessReadPacketEntitiesWorkItems@CNetworkGameClient@@AEAAXW4RPEStatType_t@@AEAVCEntityReadInfo@@@Z@@Z@
.?AVCLoadAutoCompletionFunctor@@
.?AVCLoadSpawnGroupsPrerequisite@@
@@ -2257,6 +2264,7 @@ $tI(knN
.?AVIKV3TransferInterface_ResourceLoad@@
.?AVIKV3TransferInterface_Worldspace_Load@@
.?AVIKV3TransferInterface_Worldspace_Save@@
+.?AVIKV3TransferSaveRestoreOps@@
.?AVIKeyValueCache@@
.?AVILoggingListener@@
.?AVILoopMode@@
@@ -2304,7 +2312,6 @@ $tI(knN
.?AVIRenderHandler@@
.?AVIRenderReadCallback@@
.?AVIRenderService@@
-.?AVISaveRestoreOps@@
.?AVISceneViewDebugOverlaysListener@@
.?AVIScreenshotCallback@@
.?AVIServerConsoleRedirect@@
@@ -2422,7 +2429,7 @@ $tI(knN
.CGameInfo.CCSGameInfo
.CGameInfo.CDotaGameInfo
.CMsgIPCAddress
-.CMsgQuaternion"6\n
+.CMsgQuaternion:
.CMsgServerNetworkStats.Player
.CMsgServerNetworkStats.Port
.CMsgServerPeer"N\n
@@ -2467,16 +2474,20 @@ $tI(knN
.ERQLC*
.ESource2PlayStatsFieldType
.ESplitScreenMessageType
-.P4G
.P6AXPEBD@Z
+.PBG
.PEAVCEntityIdentity@@
.PLACEHOLDER_VALUE
+.PRG
+.PcG
+.PeG
.ProtoFlattenedSerializer_t
.RequestPause_t
.SignonState_t
.TBMD
.VoiceDataFormat_t:
.\n\fentity_index
+.\tV_fmodd
.arc
.arj
.bak
@@ -2509,8 +2520,9 @@ $tI(knN
.log
.los
.lzh
-.p4G
-.p9G
+.p7G
+.pVG
+.pcG
.pdata
.placeholder.proto
.rdata
@@ -2562,6 +2574,7 @@ $tI(knN
/R?jjU?
/TF<)VGy#WH
/\n\nfield_type
+/\tV_fmodf
/content/
/cwG
/game/
@@ -2582,25 +2595,23 @@ $tI(knN
0123456789abcdef
0123456789abcdefghijklmnopqrstuvwxyz
08@HP
-08@HRpJ
-08@J
-08BpJ
+08@HR@E
+08@J@
+08B@E
08\fj
-0: Force z prepass off. 1: Force on. -1: Don't force
-0: Use normals reconstructed from depth. 1: Output correct normals in z prepass.
0: run all send jobs on main thread; 1: send jobs run asynchronously (except on dedicated server); 2: send jobs asynchronously; 3: send jobs run in parallel but block to not overlap the next tick; 4: main server clients' send jobs run in parallel, then HLTV server jobs; this approximately matches pre-async profile for a single HLTV server configuration
0:<\n\fdelta_ignore
0=Off, 1=Surface Wireframe, 2=Transparent Wireframe
0=Off, 1=Visualize trace from camera, 2=Visualize occlusion, 3=Visualize far field trace from camera
+0>PUG
0B_u
0C&C
0E>X
0T.Q
0X8b?~
0\n\vserializers
-0dnF
+0\tV_fopen
0iN>/
-0lhB
0x%x,
0|t?L
0|t?uj
@@ -2613,7 +2624,7 @@ $tI(knN
1.2.11
11Y@
127.0.0.1
-15:39:27
+14:11:28
16777215"R\n\nCMsg_CVars
16777215B$
1:1: Tokens : ( T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | TOK_COLON | OPEN_BRACE | CLOSE_BRACE | OPEN_PAREN | CLOSE_PAREN | OPEN_BRACKET | CLOSE_BRACKET | SEMICOLON | OP_EQUAL | COMMA | DOUBLE_AND | NEGATIVE_TOK | DOUBLE_OR | LITERAL_TRUE | LITERAL_FALSE | POS_INTLITERAL | POS_FLOATLITERAL | SCOPE_QUALIFIER | ID | DOUBLE_QUOTED_STRING | SINGLE_QUOTED_STRING | SINGLE_LINE_COMMENT | ML_COMMENT | WS | UNRECOGNIZED );
@@ -2629,6 +2640,7 @@ $tI(knN
1\n\fsplitplayers
1\n\fvprof_report
1\r%1t
+1\tV_fopenUTF8
1h8o
1s3\t
1sAL"
@@ -2653,8 +2665,8 @@ $tI(knN
2\r%2t
2\r.PrefetchType"h\n
2\rU2t
-2\vpdnF
-2\vplhB
+2\tV_fpclassifyd
+2\vpL
2i0/
3$EE\f
3'F^7
@@ -2668,7 +2680,7 @@ $tI(knN
3C"2\t
3\f53
3\r53h
-3dSkyboxSceneWorlds
+3\tV_fprintf
3y2\t
4 uH
4*p0
@@ -2682,7 +2694,6 @@ $tI(knN
4\n\fperf_samples
4\r%4h
4\rE4h
-4\tV_ftell
5!MwJ
51>W
52F*
@@ -2695,18 +2706,21 @@ $tI(knN
5\n\vnested_type
5c;3E
5y?4
-60 G
-60)G
+6 BG
+605G
64-bit
6?k 6?t
6GQ^h~
6KT3c7
6NK>
-6P1G
+6V{G
6\fXO>\ntA
6\n\fmessage_type
6\r56t
-6\tV_fwrite
+6`7G
+6`gG
+6`kG
+6p4G
6s?fBbEcJYG[I[NYVP\B]@f;g<h<u4{,
6tmT
6uu?>
@@ -2725,15 +2739,14 @@ $tI(knN
87g}
8>0RF>
8@HP:
-8@JpJ
+8@J@E
8A3b
-8BpJ
+8B@E
8Csinf
8Smt
8W?i
8\n\textension
8\n\vdescriptors
-8\npJ
8\vu8t
8b 16-May-2010
8ke?;
@@ -2799,6 +2812,7 @@ $tI(knN
=e2m
=imb;D
=rF`JXKXWJYB[Cd;l2x(z%a+N2SNTQXKVJWGZI]J]Jm(r$u"u"
+>0MG
>0|t?z7
>5dK
>6uu
@@ -2808,10 +2822,11 @@ $tI(knN
>K7z6
>O-p?A6
>Rdx
->\tV_isdigit_str
+>\tV_ftell
>cQ6
>fff?fff?fff?fff?invalid_hitbox
>jtm}S
+>pLG
>qxs
>qxs?
>qxs?z7
@@ -2930,6 +2945,7 @@ $tI(knN
?Detach@CTSListBase@@QEAAPEAUTSLNodeBase_t@@XZ
?DevMsg@@YAXPEBDZZ
?Diff@CVirtualMemorySnapshot@@QEAAXPEBV1@0@Z
+?DoExecuteInternal@CThreadedJobWithDependencies@@AEAAXXZ
?Dump@KeyValues@@QEAA_NPEAVIKeyValuesDumpContext@@H@Z
?EncounteredComplexReadLockOperation@CThreadRWLock_FastRead@@IEAA_NI_NPEBDH@Z
?EndProcessingCommands@CCommandBuffer@@QEAAXXZ
@@ -2979,7 +2995,6 @@ $tI(knN
?GetFloat@KeyValues@@QEBAMPEBDM@Z
?GetForModify@CUtlString@@QEAAPEADXZ
?GetGameInfoBool@@YA_NPEBD_N@Z
-?GetGameInfoPlatformSpecificBool@@YA_NPEBD_N@Z
?GetIPHostByteOrder@netadr_t@@QEBAIXZ
?GetIPNetworkByteOrder@netadr_t@@QEBAIXZ
?GetId@CStableSymbolTable@@QEAAHPEBDPEA_N@Z
@@ -3155,6 +3170,7 @@ $tI(knN
?V_stristr_fast@@YAPEBDPEBD0@Z
?V_strnlen@@YAHPEBDH@Z
?Wait@CThreadSyncObject@@QEAA_NI@Z
+?Wait@CThreadedJobWithDependencies@@QEAAXXZ
?WaitForCreateComplete@CThread@@MEAA_NPEAVCThreadEvent@@@Z
?WaitOrImmediatelyExecute@CThreadedJob@@QEAAXXZ
?Write@CCircularBuffer@@QEAAHPEBXH@Z
@@ -3168,14 +3184,15 @@ $tI(knN
?ysB
@ Current : %s\n
@08@HPX`hpx
-@08N
-@2pJ
-@609G
-@60;G
+@08Nd
+@6P*G
@GetProfile_ultrafast
@HPX
@HPX&I
-@HPX`hv
+@HPX`hv@CG
+@HV QG
+@NPDG
+@\tV_fwrite
@^8U)zj
@i-kuX
A command with the specified name already exists. Cannot create an alias with the same name.\n
@@ -3212,8 +3229,6 @@ ATI_TC_CalculateBufferSize_Wrapper
ATI_TC_ConvertTexture_Wrapper
A\n!NETWORK_DISCONNECT_REJECT_NOLOBBY
A\n\nannotation
-A\tV_isnand
-Abort
Accepted SourceTV relay proxy from whitelisted IP address: %s\n
Accepting P2PSessionRequest_t from %s\n
Access violation - no RTTI data!
@@ -3234,7 +3249,6 @@ Add an IP address to the ban list.
Add an output
Add cluster # to visualization, (-1) to clear
AddBool
-AddDebugOverlayLayersFn
AddDouble
AddEnum
AddFloat
@@ -3296,6 +3310,7 @@ Amount of time the talker is silent before we infer that they are no longer talk
Amount of time we buffer outgoing audio to detect an onset.
Analytics
Angle
+Anim Sequence
AnimGraphEditorUtils001
AnimationSystemUtils_001
AnimationSystem_001
@@ -3314,15 +3329,12 @@ AppSystemDict: Attempted to add two different systems with the same interface na
AppSystemDict: Error in Connect() of interface '%s'!\n
AppSystemDict: Error in Init() of interface '%s'!\n
AppSystemDict: Interface '%s' (tier %d) depends on interface '%s' (tier %d) but is in a lower tier!\n
-Apple Intel
-Apple Intel: %s
Application
Application "
Application transferred too few scanlines
Application transferred too many scanlines
Application unable to load gameinfo.gi file from directory "%s"\n%s
ApplicationInfo
-Apr 22 2026
April
Arabic
AreFileApisANSI
@@ -3369,6 +3381,7 @@ Automatically records all games as SourceTV demos.
Av8I5
Avestan
A{v8
+B0b%
B2Bk
B5@S
B86!
@@ -3411,6 +3424,11 @@ Balinese
Bamum
Bandwidth . . . . . . . : Total:%.1fkb
Banning %s for rcon hacking attempts\n
+Base Flow Cancel After
+Base Flow Cancel Elegantly
+Base Flow Cancel Immediately
+Base Flow Wake Elegantly
+Base Flow Wake Immediately
Base Pulse Domain
Base recognizer function 'alreadyParsedRule' called by unknown parser type - provide override for this function\n
Base recognizer function 'consumeUntil' called by unknown parser type - provide override for this function\n
@@ -3489,6 +3507,7 @@ Broadcast on GOTV[%d] stopped\n
Broadcast server debug overlays
Broadcast server debug overlays traffic
Broadcast stream contained unsupported democmd %d
+BroadcastEntityVoice: Sending voice from entity: %d [ xuid %llx ]\n
BroadcastMessage: Recipient Filter for message type %s (reliable: %s) with bogus client slot (%i) in list of %i clients\n
BroadcastMessage: Init message being created after signon buffer has been transmitted\n
BroadcastMessage: Init message would overflow signon buffer!\n
@@ -3503,6 +3522,7 @@ Broadcasting\n
BudgetGroup,NumSamples, ActiveAvg,ActiveP25,ActiveP50,ActiveP95,ActiveP99, AllAvg,AllP25,AllP50,AllP95,AllP99, Max\n
Buffer passed to JPEG library is too small
Buffer size for writing string table baselines
+BugBugService001
BugReporter
BugReporter/SuppressBugSavegames
BugReporterTool
@@ -3539,7 +3559,6 @@ C2S_CONNECT_Message
C2S_CONNECT_SameProcessCheck
C5R?\t
C:\buildworker\csgo_rel_win64\build\_build_\engine2\_vpc_engine2\default\win64\_msvc_\Retail\engine2.pdb
-C:\buildworker\csgo_rel_win64\build\src\appframework\gameinfo.cpp
C:\buildworker\csgo_rel_win64\build\src\common\protobuf_helpers.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\basespawngroup.h
C:\buildworker\csgo_rel_win64\build\src\engine2\cl_demo.cpp
@@ -3562,28 +3581,29 @@ C:\buildworker\csgo_rel_win64\build\src\engine2\loopmoderemoteconnect.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\looptypeclientserver.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkclientservice.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:2663
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:3647
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:2658
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:3642
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:4297
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclient.cpp:4593
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclientbase.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclientbase.cpp:2804
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclientbase.cpp:4321
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameclientbase.cpp:4363
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserver.cpp
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserver.cpp:988
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserver.cpp:982
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:3028
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5675
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5741
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5832
-C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5838
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5698
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5764
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5853
+C:\buildworker\csgo_rel_win64\build\src\engine2\networkgameserverbase.cpp:5859
C:\buildworker\csgo_rel_win64\build\src\engine2\networkp2pservice.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkserverservice.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkstringtable.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\networkstringtableitem.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\renderingworld.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\renderservice.cpp
+C:\buildworker\csgo_rel_win64\build\src\engine2\screenshot_service.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\serversideclient.cpp
C:\buildworker\csgo_rel_win64\build\src\engine2\serversideclient.cpp:112
C:\buildworker\csgo_rel_win64\build\src\engine2\serversideclientbase.cpp
@@ -3601,6 +3621,7 @@ C:\buildworker\csgo_rel_win64\build\src\public\tier0\utllinkedlist.h
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlmap.h
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlrbtree.h
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlsortvector.h
+C:\buildworker\csgo_rel_win64\build\src\tier0_perproject\pipeutils.cpp
C:\buildworker\csgo_rel_win64\build\src\tier2\fieldpathpacker.cpp
C>YPH>z
CAppSystemDict::Connect( %-32s ) %8.3f msec
@@ -3620,6 +3641,7 @@ CBidirMsg_RebroadcastSource
CBroadcastPlayer got DEM_Stop, server tick %d\n
CBroadcastPlayer::SetDemoBuffer - bogus demo buffer?
CBroadcastPlayer::SkipToTick( %d, %u )\n
+CBugBugService
CBugService
CCIR601 sampling not implemented yet
CCLCMsg_BaselineAck
@@ -3642,6 +3664,11 @@ CChangelevelGameClientPrerequisite
CCommand::Tokenize: Encountered command which overflows the tokenizer buffer.. Skipping!\n
CConnectGameClientPrerequisite
CConnectRelayPrerequisite
+CConsoleCommandPipes::Create::<lambda_1>::operator ()
+CConsoleCommandPipes::Create::<lambda_2>::operator ()
+CConsoleCommandPipes::Create::<lambda_3>::operator ()
+CConsoleCommandPipes::Create::<lambda_4>::operator ()
+CConsoleCommandPipes::Create::<lambda_5>::operator ()
CCreateGameClientPrerequisite
CDemoAnimationData
CDemoAnimationHeader
@@ -3877,6 +3904,7 @@ CHLTVDemoRecorder::WriteFrameImmediate: Failed to serialize CSVCMsg_PacketEntiti
CHLTVDemoRecorder::WriteFrameImmediate: Failed to serialize CSVCMsg_VoiceData_t\n
CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CNETMsg_Tick_t\n
CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CSVCMsg_PacketEntities_t\n
+CHLTVDemoRecorder::WriteFullFrame: Failed to serialize CSVCMsg_UserCommands_t\n
CHLTVDemoRecorder::WriteNetMessage %s with %u bytes at %i (%d)\n
CHLTVDemoRecorder::WriteNetMessage: Failed to serialize message\n
CHLTVDemoRecorder::WriteSpawnGroupUpdateMessages AddSpawnMessageToDemoSpawnGroups tick=%d (from %d) sending message %s (spawn group %s)\n
@@ -4127,7 +4155,6 @@ CPPTYPE_UINT64
CPU In Out Uptime Users FPS Players\n%s\n
CPU brand information: %s\n
CPU the engine is running on.
-CPU_EMULATED
CPUs: %s\n
CPanoramaEngineHandler::Init
CPanoramaInputHandler
@@ -4140,6 +4167,12 @@ CPulseCell_BaseLerp
CPulseCell_BaseRequirement
CPulseCell_BaseValue
CPulseCell_BaseYieldingInflow
+CPulseCell_BaseYieldingInflow::BaseFlow_CancelAfter
+CPulseCell_BaseYieldingInflow::BaseFlow_CancelElegantly
+CPulseCell_BaseYieldingInflow::BaseFlow_CancelImmediately
+CPulseCell_BaseYieldingInflow::BaseFlow_WakeElegantly
+CPulseCell_BaseYieldingInflow::BaseFlow_WakeImmediately
+CPulseCell_FireCursors::Cancel
CPulseCell_Inflow_BaseEntrypoint
CPulseCell_Inflow_EntOutputHandler
CPulseCell_Inflow_EventHandler
@@ -4155,23 +4188,42 @@ CPulseCell_Inflow_Yield
CPulseCell_Inflow_Yield::Abort
CPulseCell_Inflow_Yield::Pause
CPulseCell_Inflow_Yield::Resume
+CPulseCell_IntervalTimer::StopTimer
CPulseCell_Outflow_CycleOrdered
CPulseCell_Outflow_CycleOrdered::Run
CPulseCell_Outflow_CycleRandom
CPulseCell_Outflow_CycleRandom::Run
CPulseCell_Outflow_CycleShuffled
CPulseCell_Outflow_CycleShuffled::Run
+CPulseCell_Outflow_ListenForAnimgraphTag::Cancel
+CPulseCell_Outflow_ListenForEntityOutput::Cancel
+CPulseCell_Outflow_NPCAccompanyEntity::Cancel
+CPulseCell_Outflow_NPCFollowTarget::Cancel
+CPulseCell_Outflow_NPCLeadPlayer::Cancel
+CPulseCell_Outflow_NPCScriptedIdle::Cancel
+CPulseCell_Outflow_NPCScriptedIdle::CancelElegantly
+CPulseCell_Outflow_NPCScriptedMoveTo::Cancel
+CPulseCell_Outflow_NPCUseScriptedAbility::Cancel
+CPulseCell_Outflow_PlaySequence::Cancel
+CPulseCell_Outflow_PlaySequence::CancelAtInterrupt
+CPulseCell_Outflow_PlayVCD::Cancel
+CPulseCell_Outflow_PlayVCD::CancelAtInterrupt
+CPulseCell_Outflow_PlayVOLine::Cancel
+CPulseCell_Outflow_ScriptedSequence::Cancel
+CPulseCell_PlaySequence::Cancel
CPulseCell_Step_CallExternalMethod
CPulseCell_Step_CallExternalMethod::Run
CPulseCell_Step_CallExternalMethod::StopWaiting
CPulseCell_Step_DebugLog
CPulseCell_Step_DebugLog::Run
CPulseCell_Step_PublicOutput
CPulseCell_Step_PublicOutput::Run
+CPulseCell_Timeline::Stop
CPulseCell_Value_RandomFloat
CPulseCell_Value_RandomFloat::Eval
CPulseCell_Value_RandomInt
CPulseCell_Value_RandomInt::Eval
+CPulseCell_WaitForObservable::Cancel
CPulseExecCursor
CPulseRuntimeMethodArg
CPulseValueFullType
@@ -4230,7 +4282,8 @@ CSVCMsg_UserMessage
CSVCMsg_VoiceData
CSVCMsg_VoiceInit
CScreenshotService
-CScreenshotService::ServiceScreenshotRequests(434):
+CScreenshotService::Con_PNG_Screenshot_f
+CScreenshotService::ServiceScreenshotRequests(435):
CScriptComponent
CScriptComponent::Storage_t
CScriptComponentReferenced
@@ -4328,31 +4381,13 @@ CUtlMemoryBlockAllocator<char,class CMemAllocAllocator>::Alloc
CUtlMemoryBlockAllocator<struct CFrameTimer::PerfSample_t,class CMemAllocAllocator>::AddPage
CUtlOrderedMap
CUtlOrderedMap<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::FindElement
-CUtlRBTree<class CSerializerHandle_t<class CFlattenedSerializer>,class CDefLess<class CSerializerHandle_t<class CFlattenedSerializer> >,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CSerializerHandle_t<class CFlattenedSerializer>,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class ConVarRefAbstract,class CLessFunc<&bool __cdecl CVarSortFunc(class ConVarRefAbstract const &,class ConVarRefAbstract const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class ConVarRefAbstract,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class ConVarRefAbstract,class CLessFunc<&bool __cdecl CVarSortLessFunc(class ConVarRefAbstract const &,class ConVarRefAbstract const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class ConVarRefAbstract,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class google::protobuf::FileDescriptor const *,class CDefLess<class google::protobuf::FileDescriptor const *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class google::protobuf::FileDescriptor const *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CIPRateLimit::iprate_s,class CLessFunc<&private: static bool __cdecl CIPRateLimit::LessIP(struct CIPRateLimit::iprate_s const &,struct CIPRateLimit::iprate_s const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CIPRateLimit::iprate_s,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CServerSerializerMeta::Entry_t,class CLessFunc<&public: static bool __cdecl CServerSerializerMeta::Entry_t::Less(struct CServerSerializerMeta::Entry_t const &,struct CServerSerializerMeta::Entry_t const &)>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CServerSerializerMeta::Entry_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,struct CDemoPlayer::fullpacketstringtableinfo_t *,class CDefStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::Node_t,class CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CNetworkStringDict::CTableItem,class CNetworkStringTableItem,class CDefLess<class CNetworkStringDict::CTableItem>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,class CUtlString,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,struct CEntityAttributeTable::Attribute_t,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,class CEntityNameList *,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::Node_t,class CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IProtobufBinding const *,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class IProtobufBinding const *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::Node_t,class CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class SchemaMetaInfoHandle_t<class CSchemaClassInfo>,class CUtlVector<struct CEventDispatcher_Base::EventListenerInfo_t,int,class CUtlVectorMemory_Growable<struct CEventDispatcher_Base::EventListenerInfo_t,int,0> >,class CDefLess<class SchemaMetaInfoHandle_t<class CSchemaClassInfo> >,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::Node_t,class CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum KV3MetatextType_t,class CBufferString,class CDefLess<enum KV3MetatextType_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,enum CGameResourceManifest::UGCState_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CNetworkClientSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CNetworkServerSpawnGroup *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,class CPVS *,class CDefLess<unsigned int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlRBTreeBase
CUtlSortVector<class CEntityIndex,class CVConsole2FlattenedSerializerListener::CEntityIndex_less,class CUtlVector<class CEntityIndex,int,class CUtlVectorMemory_Growable<class CEntityIndex,int,0> > >::Find
CUtlSortVector<int,class CUtlSortVectorDefaultLess<int>,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::InsertIfNotFound
CUtlSortVector<unsigned int,class CUtlSortVectorDefaultLess<unsigned int>,class CUtlVector<unsigned int,int,class CUtlVectorMemory_Growable<unsigned int,int,0> > >::FindAndRemove
CUtlSortVector<unsigned int,class CUtlSortVectorDefaultLess<unsigned int>,class CUtlVector<unsigned int,int,class CUtlVectorMemory_Growable<unsigned int,int,0> > >::HasElement
CUtlString
-CUtlStringToken
+CUtlStringTokenNoRegistration
CUtlSymbolLarge
CUtlSymbolTableLarge element limit of %u exceeded\n
CUtlVector
@@ -4404,7 +4439,6 @@ Can't retry, no previous SourceTV connection\n
Can't split screen connect, no network channel\n
Can't tv_stop SourceTV relay, use disconnect or quit instead.\n
Canadian_Aboriginal
-Cancel any waiting cursors.
CancelOnSucceeded
Cannot create http put: %s, %u bytes lost\n
Cannot destruct abstract class
@@ -4510,6 +4544,8 @@ ClientCommand, 0 length string supplied.\n
ClientCommandTick
ClientCommandTicks
ClientFrameSimulate
+ClientLocalServerAccess
+ClientLocalServerAccess001
ClientMoveSent
ClientOutput
ClientPollNetworkingFrame
@@ -4601,6 +4637,7 @@ Container to hold outputs published by script to game
Controls VTune's sampling.
Convar %s is already registered but not as user info value\n
Convar %s is marked as cheat and cheats are off\n
+ConvertOSFILEHANDLEFromSourceProcess::<lambda_1>::operator ()
Coptic
Copy Screenshot Data To Tracy Job
CopyEntityBaseline
@@ -4616,6 +4653,7 @@ CopyNewEntity: invalid serializer for ent %d.\n
CopyNewEntity: m_nNewEntity >= MAX_NETWORKABLE_ENTITY_COUNT
Copyright (C) 2010, Thomas G. Lane, Guido Vollbeding
CorExitProcess
+Correct behavior
Corrupt JPEG data: %u extraneous bytes before marker 0x%02x
Corrupt JPEG data: bad Huffman code
Corrupt JPEG data: bad arithmetic code
@@ -4664,11 +4702,11 @@ Current server access password
Current tick is %d, but we have received a message for tick %d. Processing all messages up to %d now.\n
Currently bound to '%s'\n
Currently storing %d client frames, %12s bytes\n
+Cursor[ ptr:%p | id:%d | graph:%p ]: Completed with result:%d\n
Cursor[ ptr:%p | id:%d | graph:%p ]: Register observer:%d\n
Curtime( %f )\nRealtime( %f )\n
Custom user info value
CustomGameServerAppID
-CustomTexture0
Cycle through specified convar values.
Cypriot
Cyrillic
@@ -4703,7 +4741,6 @@ DEM_SignonPacket
DEM_SpawnGroups
DEM_Stop
DEM_StringTables
-DEV_BUILD
DIALOG_ASKCONNECT
DIGIT
DO NOT PARSE: fields may be stripped and missing.\n
@@ -4730,6 +4767,7 @@ DebugDrawObjects
DebugInfo
DebugUI
DebugVisualizerMgr
+DebugVisualizerMgr2D
December
DeclareCurrentThreadIsMainThread
DeclareCurrentThreadIsSecondaryMainThread
@@ -4772,6 +4810,7 @@ Demo Skipping: skipping forward to demo tick %d (game tick %d) from current %d (
Demo Skipping: skipping to demo tick %d (game tick %d) from full packet %d (%d). Current playback is %d (%d)\n
Demo contents for %s:\n
Demo fast skipping disabled. Fullpackets_version != DEMOFILE_FULLPACKETS_VERSION. (%d != %d)\n
+Demo file byte sizes\n%s
Demo paused at engine time %g, demo tick %d\n
Demo playback finished ( %.1f seconds, %i render frames, %.2f fps).\n
Demo playback options:\n
@@ -4809,7 +4848,6 @@ Directory to store replays in
Disable focus based priority boost
Disable vprof
Disabling user config reading/writing due to -playtest\n
-DisallowGameInfoConditionals
Disallowed variable name: %s
DiscardMouseFocusClick
Discarding pending request '%s, %u'\n
@@ -4841,10 +4879,6 @@ Displays perf statistics information
Divide by zero!
Do not stop the current yielding node, but do not continue to the next node afterwards.
Do we invoke PostDataUpdatePreserved callbacks for entities that had no changes but are still in the PVS?
-DofApertureDiameter
-DofFocusedDistance
-DofRanges
-DofTiltToGround
Don't print stats when memtesting
Don't receive chat messages from other SourceTV spectators
Don't skip more than N messages in a row when skipping in a demo file.
@@ -4868,9 +4902,11 @@ DumpInstanceBaselineToString
Dumped stack stats struct "%s" to file "%s"\n
Duplicate engine service named "%s" registered!\n
Duplicate loop named "%s" registered!\n
+DuplicateHandle
E&'bB
E'ja
E/Co
+E1tr
E>nEA
EM6`
ENABLED
@@ -4892,8 +4928,10 @@ ERROR
ERROR: CUtlSymbolTableLarge element limit of %u exceeded\n
ERROR: Detected mismatched logging state. Expected matching LoggingSystem_PushLoggingState/LoggingSystem_PopLoggingState.\n
ERROR: No PVS at this Camera position!
-ERROR: Resource name "%s" has the incorrect extension "%s" for the specified resource type (expected "%s")!\n
ERROR: couldn't open.\n
+ERROR:NoEnum:%s:%d
+ERROR:NoEnumerator:%s:%d
+ERROR:NoFlags:%s:%d
ERROR_BADREQUEST: Code error - bad request
ERROR_FILEOPEN: File not found
ERROR_NOMEMORY: Out of memory
@@ -4942,7 +4980,6 @@ Enable the rendering of panorama UI
Enable vprof
Enable/disable clock correction on the client.
Enable/disable rcon logging.
-EnableCameraMotionBlurOverride
Enables logging to file, console, and udp < on | off >.
EncodeBC6Blocks
EncodeBC7Blocks
@@ -4993,7 +5030,6 @@ Engine_SystemInfo_Attention_LowDiskSpaceForSwapfile
Engine_SystemInfo_Attention_LowDiskSpaceForSwapfile_Title
Engine_SystemInfo_Attention_Low_System_Memory
Engine_SystemInfo_Attention_Low_System_Memory_Title
-EnsureCapacity
EnsureInstanceBaseline
EnsureInstanceBaseline: g_pFlattenedSerializers->Encode false (ent %d : %s).\n
EntComponentInfo_t
@@ -5008,8 +5044,6 @@ Entity Load Unserialize
Entity Name
Entity System
EntityDormancyType_t
-EntityIOConnectionDesc_t
-EntityIOConnection_t
EntityIOQueuePrioritizedEvent_t
EntityIOTargetType_t
Entry
@@ -5057,10 +5091,11 @@ EstimatedMaxCPUMemUsageMB
EstimatedMinGPUMemUsageMB
Ethiopic
Eval
-EvalGameInfoConditionals
Event
EventAdvanceTick_t
EventAppShutdown_t
+EventBugBugComplete_t
+EventBugBug_t
EventClientAdvanceNonRenderedFrame_t
EventClientAdvanceTick_t
EventClientFrameSimulate_t
@@ -5147,7 +5182,6 @@ Extensions to non-lite types can only be declared in non-lite files. Note that
Extra arguments given after name\n
ExtractModuleMetadata
Extraneous token
-F0/G
F>qUxv
FAIL
FALSE
@@ -5161,7 +5195,6 @@ FYLh.o
FZ?w
F\n%NETWORK_DISCONNECT_DISCONNECT_BY_USER
F\n\foptimize_for
-F\npJ
Fail to schedule the chore!
Failed
Failed To Load '%s'! VConsole Communication Disabled!\n
@@ -5292,19 +5325,19 @@ FixupResourceName: Illegal path, missing extension passed in ("%s")!\n
FlattenedSerializersVersion001
Float
Float( %f )
-FloatBitMap_t::ConvertGammaToLinear(320): Conversion not supported yet!\n
+FloatBitMap_t::ConvertGammaToLinear(518): Conversion not supported yet!\n
FloatBitMap_t::InitializeDummyRow
FloatBitMap_t::LoadFromBuffer: Received improper buffer size, skipping!\n
FloatBitMap_t::LoadFromBuffer: Unsupported color format, skipping!\n
-FloatBitMap_t::WriteToBuffer(993): Unsupported color format "%s", skipping!\n
+FloatBitMap_t::WriteToBuffer(1191): Unsupported color format "%s", skipping!\n
FloatBitMap_t::WriteToBuffer: Received improper buffer size %s (expecting %s), skipping!\n
-FloatBitMap_t::WriteToBufferBC7_bc7e(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:1680
-FloatBitMap_t::WriteToBufferBC7_ispctexcomp(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:1792
-FloatBitMap_t::WriteToBufferDXT_atitc(1051): Error! Temp texture is %d bytes when ATI's lib requires %d bytes!\n
-FloatBitMap_t::WriteToBufferDXT_atitc(1136): Unsupported output color format "%s"!\n
-FloatBitMap_t::WriteToBufferDXT_atitc(1145): Error! Allocated %llu bytes when ATI's lib requires %d bytes!\n
-FloatBitMap_t::WriteToBufferDXT_atitc(1153): Error %d returned from ATI_TC_ConvertTexture()!\n
-FloatBitMap_t::WriteToBufferETC(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:1916
+FloatBitMap_t::WriteToBufferBC7_bc7e(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:2124
+FloatBitMap_t::WriteToBufferBC7_ispctexcomp(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:2236
+FloatBitMap_t::WriteToBufferDXT_atitc(1249): Error! Temp texture is %d bytes when ATI's lib requires %d bytes!\n
+FloatBitMap_t::WriteToBufferDXT_atitc(1334): Unsupported output color format "%s"!\n
+FloatBitMap_t::WriteToBufferDXT_atitc(1343): Error! Allocated %llu bytes when ATI's lib requires %d bytes!\n
+FloatBitMap_t::WriteToBufferDXT_atitc(1351): Error %d returned from ATI_TC_ConvertTexture()!\n
+FloatBitMap_t::WriteToBufferETC(), C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp:2360
FlsAlloc
FlsFree
FlsGetValue
@@ -5335,7 +5368,6 @@ Forward
Forward command to server.
Found %d lines of sight!\n
Found existing value when inserting into dict - replacing existing value with new value. If this is intended behavior, use InsertOrReplace. If leaving existing values alone is intended, use InsertIfNotFound.
-Found existing value when inserting into tree - replacing existing value with new value. If this is intended behavior, use InsertOrReplace. If leaving existing values alone is intended, use InsertIfNotFound. If duplicate entries are intended, use InsertWithDupes.
Found invalid proto option data for:
Fractional sampling not implemented yet
Frame
@@ -5373,7 +5405,6 @@ GAME
GAMEBIN
GAMEROOT
GAME_RESOURCE_MANIFEST_HANDLE_INVALID
-GBufferNormalSpecExpTexture
GCTL
GDG_S
GDI32.dll
@@ -5417,8 +5448,6 @@ GameResourceServiceClientV001
GameResourceServiceServerV001
GameStartup
GameStartup_RayTracing
-GameStartup_SM40
-GameStartup_SM50
GameTick_t
GameTime_t
GameUI
@@ -5614,7 +5643,6 @@ HLTV:maxplayers set to %i\n
HLTVServerAsync
HLTV_CopyNewEntity: GetDynamicBaseline(%d) failed.
HSR_GAME_REMOTE_CHANGELEVEL_RECONNECT
-HUc_
HammerMapLoader001
Hangul
Hanunoo
@@ -5628,7 +5656,6 @@ HelpSystem_001
Hen\fM
Hex and octal numbers must be integers.
Hibernating
-Hid_
Hide the console.
Hides the game UI
Highest unlocked game chapter.
@@ -5674,6 +5701,7 @@ IKV3TransferInterface_EHandle_Save
IKV3TransferInterface_GameTime_Load
IKV3TransferInterface_GameTime_Save
IKV3TransferInterface_ResourceLoad
+IKV3TransferInterface_UtlSymbolLarge
IKV3TransferInterface_Worldspace_Load
IKV3TransferInterface_Worldspace_Save
IMAGE_FORMAT_IMC2
@@ -5693,6 +5721,7 @@ IPulseSystem_001
IRCU
I\n NETWORK_DISCONNECT_STEAM_DROPPED
I\n%NETWORK_DISCONNECT_REJECT_HIDDEN_GAME
+I\tV_isdigit_str
IdempotencyLevel
Idle (%s)
IdleSleep
@@ -5724,8 +5753,6 @@ Il?333333c?
Illegal jstype for int64, uint64, sint64, fixed64 or sfixed64 field:
Illegal to wait on a task in a Windows Runtime STA
Image too wide for this implementation
-Immediate Wake
-Immediately reactivate any waiting cursors regardless of how long they have been waiting.
Imperial_Aramaic
Import
Import "
@@ -5736,7 +5763,6 @@ Inactive
IncludeScript stack overflow\n
Inconsistent Client Replay state: tick without replay during replay. Force Stop Replay.\n
Inconsistent progression sequence for component %d coefficient %d
-Increase verbosity for entity packing
Increment specified convar value.
Increment the timescale by one step
Index out-of-bounds (field is empty).
@@ -5745,7 +5771,7 @@ Inherited
Init
InitOnceBeginInitialize
InitOnceComplete
-InitSteamLogin_Internal
+InitSteamLogin
InitWin32ConsoleColorContext
Initial Window
Initialize with number of outputs
@@ -5808,6 +5834,7 @@ Invalid progressive parameters at scan script entry %d
Invalid proto descriptor for file "
Invalid public dependency index.
Invalid scan script at entry %d
+Invalid screenshot path, must be under Game or Content, be under MAXPATH, and have no bad characters: %s\n
Invalid search path specified for '%s'. Search path '%s' does not contain '%s'\n
Invalid splitscreen slot %d specified for convar in '%s'.\n
Invalid strings::Substitute() format string: "
@@ -5853,10 +5880,10 @@ January
Javanese
JiYMm
Joystick
+Jul 6 2026
July
JumpOrLeap( C%d:I%d )
Jumping to random tick %d (%.2f min)\n
-Jun 1 2026
June
JustInTime Resource Spawn Group
JustInTimeManifest
@@ -5889,12 +5916,13 @@ Kick a player by name.
Kick a player by userid or uniqueid, with a message.
Kick a previously connected player with the same steamID if a replacement comes along
Kicked to free up slot
-Kill after current node.
-Kill elegantly.
-Kill immediately.
+Kill After.
+Kill Elegantly.
+Kill Immediately.
Known Peer State "%s"
Known by handlers:
KuoW
+Kx;I
L %02i/%02i/%04i - %02i:%02i:%02i: %s
L>ev
L?%OX
@@ -5925,6 +5953,7 @@ LWW>
L\n!NETWORK_DISCONNECT_HLTVRESTRICTED
L\n!NETWORK_DISCONNECT_KICKED_SUICIDE
L\n!NETWORK_DISCONNECT_LOOPDEACTIVATE
+L\tV_isnand
Label
Language
Last received command number going in reverse from server! (Out of order delivery?) %d -> (%d+%d=%d)
@@ -5944,7 +5973,6 @@ LegacyUserSettingsPathID
Lepcha
LevelLoad
Lexer encountered %d error(s)
-LightStyle with NULL value!\n
Limbu
Limits spectators to chat only every n seconds
Line:
@@ -5985,6 +6013,8 @@ Local Player
Local Slots %i, Spectators %i, Proxies %i\n
Local key name '%s' (can differ from the bind name%s)\n
LocalFree
+LocalServerClientAccess
+LocalServerClientAccess001
LocaleNameToLCID
Localize_001
Location
@@ -6055,6 +6085,7 @@ MGiI
MINIDUMP_WRAP_CODE: In __except block\n
MIsBoxedFloatType
MIsBoxedIntegerType
+MKV3TransferSaveOpsForField
MLFU
ML_COMMENT
MM/dd/yy
@@ -6085,6 +6116,8 @@ MPulseCellInflow_IsDefault
MPulseCursorTerminates
MPulseEditorCanvasItemSpecKV3
MPulseEditorHeaderIcon
+MPulseFGDSkipField
+MPulseLegacyName
MPulsePolymorphicDependentArg
MPulsePolymorphicDependentReturn
MPulseRequirementCheck
@@ -6095,7 +6128,6 @@ MQC,ARD
MSAADefaultNonVR
MSG_SPLITSCREEN_ADDUSER
MSG_SPLITSCREEN_REMOVEUSER
-MSaveOpsForField
MVDataNodeType
MVDataOverlayType
M\n"NETWORK_DISCONNECT_SERVER_SHUTDOWN
@@ -6107,6 +6139,7 @@ M\n&NETWORK_DISCONNECT_STEAM_AUTHCANCELLED
M\n'NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER
M\n(NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM
Main 3D Window
+Main Game Server is direct demo recording %s\n
MainLoop
MainLoop returning\n
MainMenu
@@ -6170,7 +6203,6 @@ Max number of ticks to simulate per frame, after which simulation will start to
Max number of times a user can fail rcon authentication before being banned
Maximum allowable entity delta size over unreliable delivery.
Maximum amount of minutes to save history (0 is unlimited).
-Maximum amount of minutes to save history on low memory (32 bit) systems (0 is unlimited).
Maximum client number on SourceTV server.
Maximum number of ticks the clock is allowed to drift before the client snaps its clock to the server's.
Maximum queries per second to respond to from a single IP address.
@@ -6236,11 +6268,9 @@ Missing/invalid pause tick number.\n
MmB_
MobileClientVersion
Mod doesn't support SourceTV. No director module found.\n
-Mod specifies 'DisallowGameInfoConditionals' but %d conditionals were evaluated
ModelDocUtils001
Monday
Mongolian
-MotionBlurStrengthScale
MountAddon: Failed to find ADDONS search path.\n
MountAddonSearchPaths: Failed to find CONTENTADDONS search path.\n
Mounting addon '%s'\n
@@ -6405,7 +6435,6 @@ Note: should use "addip" instead of "banip".\n
November
Now recording to "%s", immediate mode, recorded length so far is %s.\n
Now recording to "%s", recorded length so far is %s.\n
-Num3dSkyboxSceneWorlds
NumCols() <= V_ARRAYSIZE( s_DummyRow )
Number of immediate Steam friends: %d (all friends %d)\n
Number of immediate Steam friends: unavailable\n
@@ -6476,6 +6505,7 @@ OnEngineLevelLoadingSession
OnEngineLevelLoadingStarted
OnEngineListenServerStarted
OnEngineSplitscreenClientAdded
+OnEventBugBug
OnFrameBoundary
OnHostSetTime
OnInvalidSteamLogonErrorForClient
@@ -6540,20 +6570,22 @@ Override Fog color: %f %f %f\n
Overrides the SourceTV master root address.
Overrides the max players reported to prospective clients
Overriding minidump handler with Engine2MinidumpFunction\n
-P08@J
-P08J
-P08N
-P2pJ
+P08@J@
+P08JP
+P08Nd
+P2@E
P4File
-P6`9G
+P6P=G
+P6PgG
+P6`/G
P:S;A
P?fff?33s?{
P@HPX`hpx\f
PBDEMS2
PCRE does not support \L, \l, \N{name}, \U, or \u
PHrk
-PInstruction_t<41>::Run
PInstruction_t<42>::Run
+PInstruction_t<43>::Run
PLACEHOLDER_VALUE
PLATFORM
PLAYBACK: At end of data\n
@@ -6570,6 +6602,7 @@ PREP
PRUNE
PS_FAILED %s in sequence for %s\n
PS_SATISFIED %s in sequence for %s [%.3f msec]\n
+PVAL_ANIM_SEQUENCE
PVAL_ANY
PVAL_ARRAY
PVAL_BOOL
@@ -6600,6 +6633,7 @@ PVAL_TYPESAFE_INT
PVAL_TYPESAFE_INT64
PVAL_UNKNOWN
PVAL_VARIANT
+PVAL_VDATA_CHOICE
PVAL_VEC2
PVAL_VEC3
PVAL_VEC3_WORLDSPACE
@@ -6671,8 +6705,7 @@ Phags_Pa
Phoenician
PhysicsBuilderMgr001
Ping
-PjpJ
-PlQB
+Pj@E
Plain assert text (has prefix)\n
Plain general text (no prefix)\n
Plat_AlertUser
@@ -6728,7 +6761,6 @@ Plat_GetNumberCpusOnline
Plat_GetOSType
Plat_GetPeakCommitCharge
Plat_GetPeakRSS
-Plat_GetSteamLoginWithAccessCode
Plat_GetSystemLoad
Plat_GetTime
Plat_GetTimeString
@@ -6741,7 +6773,6 @@ Plat_HasEnteredFatalState
Plat_IgnoreContentAsserts
Plat_InitializeCOM
Plat_InstallUrlHandler
-Plat_IsCPUEmulated
Plat_IsDirectory
Plat_IsInDebugSession
Plat_IsInTestMode
@@ -6756,11 +6787,9 @@ Plat_MSTime
Plat_MessageBox
Plat_MilliSecTickDiff
Plat_MinimizeWindow
-Plat_NeedsLowFragmentation
Plat_NonFatalErrorFunc
Plat_NotifyOSAppIsNotHung
Plat_OnExecutableExitingMain
-Plat_QueueSteamLoginWithAccessCode
Plat_RefreshDPI
Plat_RegisterModule
Plat_RegistryDirectoryClose
@@ -6812,16 +6841,14 @@ Playcast Debug String: %s\n
Playcast HTTP error code: %d\n(tv_playcast_showerrors will display the following headers: %s)\n
Playcast Spawn Group %d load at %d\n
Player
-Player %d%s
+Player %d
Player %s attempting reconnect, but prior connection still active\n
Player %s reconnecting, disconnecting prior connection\n
Playing '%s'\n
Playing Broadcast (%s)
Playing Demo (%s)
Playing back demo: '%s' at tick %u\n
-PlhB
PmNk
-PnP\nG
Pointers cannot be used as numeric values
PollAndProcessInput
Poor man's restart: reload the current map from disk.
@@ -6857,7 +6884,6 @@ Print a message about problems with ticks and interpolation. 0=never, 1=warning
Print a message if network issues cause problems with server snapshots of user commands not being available when needed, if the percentage (0...100) exceeds this value. A value of 0 will cause the message to always print each time it is calculated
Print a performance report from the current data in the vprof 'lite' profiler
Print a summary report of Source2 engine networking statistics. (Ticks, netchan messages, etc.)
-Print callstack every time CNetworkGameServerBase::WriteEntityUpdate takes more than this amount of milliseconds
Print connection status
Print demo sequence list.
Print information about currently playing demo.
@@ -6876,6 +6902,8 @@ Prints server performance variables
Priority boost already disabled.\n
Priority boost already enabled.\n
Private: %s\n
+Proceed Elegantly.
+Proceed Immediately.
ProcesPacketEntitiesWorkItems_Combined
ProcesPacketEntitiesWorkItems_Combined_Sort
ProcesPacketEntitiesWorkItems_Decode
@@ -6884,6 +6912,7 @@ Process priority: %s, main thread priority: %s\n
Process32First
Process32Next
Process: %s, OS: %s\n
+ProcessBC6HResults
ProcessBaselineAck: invalid packed entity bit (%i)\n
ProcessClassInfo: can't allocate %d C_ServerClassInfos.\n
ProcessClassInfo: invalid class index (%d).\n
@@ -6915,6 +6944,7 @@ Psapi.dll
Public : %s\n
Pulse
PulseCursorCancelPriority_t
+PulseCursorWakePriority_t
PulseDebugLog: Calling external method on non-existent entity or game blackboard
PulseDebugLog: Calling external method on non-existent entity or game blackboard\n
PulseDocNodeID_t
@@ -6935,7 +6965,6 @@ Q\n&NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW
Q\n*NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL
Q\n+NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP
Q\n,NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED
-Q\tV_log10f
Qkkbal
Quantization table 0x%02x was not defined
Quantizing to %d = %d*%d*%d colors
@@ -7006,8 +7035,7 @@ RP_PAUSE
RP_TOGGLEPAUSE
RSDS
RST%d
-R\tV_log2_uint
-R\vplhB
+R\vpL
RaiseException
Random Float
Random Integer
@@ -7058,7 +7086,7 @@ Record a path to debug vis
Record commands typed at console into .dem files.
Recorded %s [%d -> %d: %d bits\n
Recording %s\n
-Recording SourceTV replay to %s...\n
+Recording SourceTV replay from %s:\nplaydemo %s\n
Recording to %s...\n
RecvMargin
Recvmargin-based usercommand pacing will not speed up or slow down command pacing by more than N% compared to realtime
@@ -7123,7 +7151,6 @@ RenderSystemOptionFlags
RenderSystemOptionRecommendationGen
RenderUtils_001
RendersampleScreenshot Job
-Rendersystem meets min DX110 feature level (changing this does not change the shader model).
Rendersystem option in use (changing this does not change the rendersystem).
Rendersystem option requested (changing this does not change the rendersystem).
Rendersystem shader model in use (changing this does not change the shader model).
@@ -7133,6 +7160,7 @@ Replay tick %d older than the oldest HLTV Server tick %d
Replay time in seconds before the highlighted event
ReplayEventType_t
Request a VProf data stream from the remote server (requires authentication)
+Request elegant wind-down of any associated work (e.g. vcd interrupt), then proceed afterwards.
Request elegant wind-down of any associated work (e.g. vcd interrupt).
RequestPause_t
Requested feature was omitted at compile time
@@ -7175,7 +7203,6 @@ Restore previously pushed convars and config values
RestoreWin32ConsoleColor
Restoring Save (%s)
Result
-Resume
Resumes demo playback.
Resumes instant replay.
Retrieve the private per-instance script-side data associated with an entity
@@ -7200,6 +7227,7 @@ Run heap check at a specified interval
Run heap check at end of every frame
RunFrame
RunPrediction
+RunSync
Runic
Running SteamAPI_RunCallbacks for first time\n
Running [%s]
@@ -7208,11 +7236,12 @@ S3: Client GetSteamIDForAuthSession doesn't match SteamID from auth blob
S3: Client SteamID %s doesn't match SteamID %s from auth blob\n
S3: Client connected doesn't match SteamID from auth blob
S3: Client connected with existing active steam auth request
-S3: Client connected with existing active steam auth request: UserID: %x\n
+S3: Client connected with existing request: UserID: %x SteamID %s Previous Result %d [ %f seconds ago ] %x New %x\n
S3: Client connected with expired ticket: UserID: %x\n
S3: Client connected with invalid ticket ( old version ): UserID: %x\n
S3: Client connected with invalid ticket: UserID: %x\n
S3: Client connected with ticket for the wrong game: UserID: %x\n
+S3: Client reconnected with recent result: UserID: %x SteamID %s Previous Result %d [ %f seconds ago ] %x New %x\n
S3: Duplicate client connection: UserID: %x SteamID %s\n
S9>H
S>$hkDh$h>[2
@@ -7224,6 +7253,7 @@ SDL [%s]: %s\n
SDL_Init( 0x%X ) failed: %s\n
SDL_VIDEO_ALLOW_SCREENSAVER
SDL_VIDEO_DRIVER
+SDL_WINDOWS_DETECT_DEVICE_HOTPLUG
SDL_WINDOWS_GAMEINPUT
SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN
SEMICOLON
@@ -7277,7 +7307,6 @@ STEAMAPPS_INTERFACE_VERSION008
STEAMAUTH: Client %s not immediately kicked because sv_steamauth_enforce=%d\n
STEAMAUTH: Client %s received failure code %d; ignoring because local connection\n
STEAMAUTH: Client %s received failure code %d\n
-STEAMHEADLESS_INTERFACE_VERSION001
STEAMHTMLSURFACE_INTERFACE_VERSION_005
STEAMHTTP_INTERFACE_VERSION003
STEAMINVENTORY_INTERFACE_V003
@@ -7351,12 +7380,10 @@ SV: Cheat command '%s' ignored. Set sv_cheats to 1 enable cheats.\n
SV: Cheat command '%s' ignored.\n
SV: Convar '%s' is cheat protected, change ignored.\n
SV: Disconnecting due to unresolved k_EAuthSessionResponseAuthTicketCanceled for %s.\n
+SV: NotifyClientDisconnect while deferred request exists
+SV: NotifyClientDisconnect while deferred request for %lld exists
SV: OnShutdownChannel called in a worker thread\n
SV: OnValidateAuthTicketResponse duplicate authentication
-SV: OnValidateAuthTicketResponse no active request
-SV: OnValidateAuthTicketResponse no active request for %lld
-SV: OnValidateAuthTicketResponse no client found
-SV: OnValidateAuthTicketResponse no client found for %lld
SV: Player %s kicked for too many failed console commands.\n
SV: ProcessMove %s on tick %d, packet had too many Move messages (expected only 1, this is %d), disconnecting user\n
SV: Queuing k_EAuthSessionResponseAuthTicketCanceled for %s.\n
@@ -7379,6 +7406,7 @@ Saturday
Saurashtra
Save convars and config values
Save the ban list to file.
+SaveRestoreSpawnKeys
Saved '%s' to SteamRemoteStorage, %d bytes OK\n
Saved user config file '%s': type %d\n
Saves current key bindings to disk.
@@ -7539,7 +7567,6 @@ Set developer message level.
Set jpeg screenshot quality. [1..100]
Set packet filtering by IP mode
Set pending disconnect %d:%s\n
-Set the debug render target to show, 0 == disable
Set the default chat group size
Set the pause state of the server.
Set the screenshot auto naming prefix.
@@ -7552,8 +7579,6 @@ Set to display headers upon error (e.g. "CF-Ray,CF-Cache-Status,Body" )
Set to lock per-frame time elapse.
Set to render debug overlays
Set to render decals
-Set to render sun shadow render targets
-Set to render sun shadow split visibility debugger
Set to use direct lighting
Set to use indirect lighting
Set to use screen-space ambient occlusion
@@ -7586,6 +7611,7 @@ SetInt64
SetIntAttr
SetLastError
SetMapMode
+SetNamedPipeHandleState
SetStdHandle
SetStretchBltMode
SetString
@@ -7604,8 +7630,6 @@ Setting %s=%d\n
Setting cl_ticks_warning_level=0 due to %s=false\n
Setting main thread priority to %d\n
Settings
-ShaderVar_WireframeDepthEnable
-ShaderVar_WireframeOverrideColor
Shavian
Shooting
Should not reach here.
@@ -7664,7 +7688,6 @@ Skips to location in demo.
Slamming client tick to server tick. abs( server tick %d - client tick %d = %d ) > ( cl_clockdrift_max_ticks %d + sim ticks %d = %d )\n
Slams viewport size to a specified value.
Sleep
-Sleep randomly 0..net_async_job_random_sleep ms in the parallel server jobs; sleep is per job
SleepAfterMainLoop
SleepConditionVariableSRW
Sleeping
@@ -7757,6 +7780,8 @@ SourceTV: RecordPacket %i bytes at %i (%d)\n
SourceTVRelay
SourceTV[%d] %s%s\n
SourceTV[%d] broadcast active.\n
+SourceTV[%d] inactive\n
+SourceTV[%d] is direct demo recording %s\n
SourceTV[%d] relay active.\n
SourceTV[%d] shutting down (%s) due to server disconnecting game.\n
Spawn
@@ -7816,14 +7841,6 @@ Steam UGC subscriptions: %u total; %u custom games\n
Steam UGC subscriptions: unavailable\n
Steam Universe is invalid, possibly asking before Steam was successfully initialized.\n
Steam Universe valid after having been requested when invalid. Universe is now %d\n
-Steam headless InitInstance failed, result %d\n
-Steam headless initialized without logon (no user name given)\n
-Steam headless logged in OK, initializing Steam engine interfaces\n
-Steam headless login call %d\n
-Steam headless module not loaded\n
-Steam headless re-logged in OK\n
-Steam headless reset embedded client token\n
-Steam headless using stored credential info\n
Steam init failed! %s\n
Steam text filtering initialized (priority one, %s) %s\n
Steam text filtering initialized (priority zero, %s) %s\n
@@ -7873,17 +7890,15 @@ SteamNetworkingMessages002
SteamNetworkingSockets012
SteamNetworkingUtils004
SteamParties002
-SteamRun
-SteamRun failed, error %d\n
SteamServersDisconnected
SteamUser023
SteamUtils010
Stop
Stop Broadcast @frag %d\n
-Stop Waiting
Stop an existing remote VProf data request
Stop looping demos (current demo will complete).
Stop recording movie frames.
+Stop the node action without any wind-down, then proceed afterwards.
Stop without any wind-down.
Stopping.\n
Stops SourceTV demo recording.
@@ -8014,6 +8029,8 @@ This soundevent is called to stop the desired soundevents when the game is disco
This value, multiplied by the tick interval, is added to cl_tickpacket_recvmargin_desired to obtain the effective desired recv margin.
This version of Windows is not supported, please upgrade to a newer version\n
Thread pool option
+ThreadCloseProcess
+ThreadCloseProcess( hSourceProcess )
ThreadGetCurrentProcessHandle
ThreadGetCurrentProcessId
ThreadGetMainThreadId
@@ -8022,6 +8039,7 @@ ThreadGetProcessPriority
ThreadInMainThread
ThreadInPrimaryOrSecondaryMainThread
ThreadNanoSleep
+ThreadOpenProcess
ThreadSetPerfSetAffinity
ThreadSetPriority
ThreadSetProcessPriority
@@ -8071,7 +8089,6 @@ ToolsAppID
ToolsStartup
ToolsStartupPreGame
ToolsStartup_RayTracing
-ToolsStartup_SM50
ToolsWireframe
Top %d (of %d) classes have %s (of %s) bytes:\n
Top %d (of %d) entities have %s (of %s) bytes:\n
@@ -8107,6 +8124,7 @@ True
TryAcquireSRWLockExclusive
Tuesday
Turn on demo debug spew.
+TvDirectDemoRecorder
Type
Type appears to be in generated pool but wasn't
Type is already registered:
@@ -8190,11 +8208,9 @@ Unable to create thread %u\n
Unable to decode custom demo data, callback "%s" not found.\n
Unable to enumerate pagefiles to evaluate free space available.
Unable to find a valid incremental demo filename for %s, try clearing the directory of %snnn.dem\n
-Unable to find headless SteamRun\n
Unable to find service "%s" which is depended on by service "%s"!\n
Unable to find service "%s" which must run before service "%s"!\n
Unable to load %s, error %d\n
-Unable to load steam headless module, error %d\n
Unable to open '%s' for writing.
Unable to open logfiles at %s, logging disabled\n
Unable to open netconsole on port %d\n
@@ -8315,19 +8331,22 @@ UserDataFixedSize exceeds size %d needs room for %d bits\n
UserSettingsFileEx
UserSettingsPathID
Using AVI will bring up a dialog for choosing the codec, which may not show if you are running the engine in fullscreen mode!\n
+UtlRBTree_FailedInsertDuplicate
UtlVectorMemory_Alloc
UtlVectorMemory_CalcNewAllocationCount
UtlVectorMemory_FailedAllocation
U}JK
U}g7x~
V/?[w8rV
+V0fG
V<@ss
V?wm\v
VApplication001
VAsyncFileSystem2_001
VAvi001
VBik001
VConComm001
+VData Choice
VENGINE_GAMEUIFUNCS_VERSION005
VEngineCvar007
VFileSystem017
@@ -8372,7 +8391,6 @@ VWebm001
V\n&NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN
V\n&NETWORK_DISCONNECT_PURESERVER_MISMATCH
V\n'NETWORK_DISCONNECT_CREATE_SERVER_FAILED
-V\tV_logf
V_AppearsToBeANumber
V_AreSlashesCorrect
V_CopyMemory3D
@@ -8408,6 +8426,7 @@ V_StringToUint64
V_StringToVector
V_StringToVector2D
V_StringToVector4D
+V_StringToVectorWS
V_StripExcessTrailingZeros
V_StripLeadingWhitespace
V_StripSurroundingQuotes
@@ -8416,8 +8435,6 @@ V_TryAndMakeFriendlyNameFromCppName
V_UInt32ToString_Unsafe
V_UInt64ToString_Unsafe
V_UnqualifiedFileName
-V`3G
-Validate each StateChanged against known offsets.
Validation stalled\n
Value must be "true" or "false" for boolean option "
Value must be identifier for boolean option "
@@ -8442,7 +8459,6 @@ Vector vPos( %.1f, %.1f, %.1f )\nout of bounds - LOS needs to pass through outsi
Vector2D
Vector4D
VendorID
-Verbose output for entity packing, set to the entindex of the entity you want verbose output for.
VerifyTest( %s ) end\n
VerifyTest( %s ) start\n
VerifyTest() vanilla result = Fail\n
@@ -8457,6 +8473,7 @@ Visibility %s.\n
Voice
VoiceDataFormat_t
Void
+Vp\G
Vrad3_001
Vu?N\t?8Ws?vGr?
Vv.q
@@ -8470,13 +8487,12 @@ WARNING: CEngineWatchdogThread is killing the process: %s
WARNING: Failed to find startup tool '%s'\n
WARNING: Failed to load startup asset '%s'\n
WARNING: Received SpawnGroup_LoadCompleted for an unknown spawngrouphandle(%s) from client '%s'\n
+WARNING: Resource name "%s" has the incorrect extension "%s" for the specified resource type (expected "%s")!\n
WARNING: Trying to create a CRenderContextPtr without a valid context.\n
WARNING: Unable to compile regex '%s', %s\n
WARNING: You are trying to mount an addon (%s) in tools mode that is different from the addon tools mode was launched with (%s).\n
WARNING: msg overflowed for %s\n
WEvF
-WIN32
-WINDOWS
WS2_32.dll
WSAEACCES
WSAEADDRINUSE
@@ -8533,6 +8549,8 @@ Waiting For Keyframe
Waiting For Live Resync
Wake Resume
WakeAllConditionVariable
+WakeElegantly
+WakeImmediate
Warning - Tick mark is locked, ignoring change.\n
Warning parsing text-format
Warning: Can't add nullptr string to table %s\n
@@ -8549,14 +8567,12 @@ When connecting to local listen server (for example, using the 'map' command), d
When enabled, changes in tv_enable convars cause immediate startup or shutdown of hltv server
When enabled, game server will quit immediately via syscall instead of running host states shutdown sequence
When enabled, open the voip audio input stream when the application launches.
-When enabled, this allows for entity packing to use the property changes for building up the data. This is many times faster, but can be disabled for error checking.
When enabled, this will collect all information for relay sending into a single datagram to ensure that the data stays together through a potentially large number of relays
When enabled, this will use a uniquely generated server code to authenticate relay connections. This code is coordinated via the GC or some external means rather than by clients directly
When enabled, this will use a uniquely generated server code to authenticate relay to relay connections. This code is coordinated via the GC or some external means rather than by clients directly
When encoding entity deltas, append on a random number of extra bytes. This happens after sv_dev_entitydeltapadding_min_size.
When encoding entity deltas, if the delta size is < N bytes, then shove in N dummy bytes. This happens before sv_dev_entitydeltapadding_extra_min/sv_dev_entitydeltapadding_extra_max
When encoding entity deltas, instead of unreliably deducing explicit deletions, actually send list of existing but not networked entities (dont_transmit list) to each client.
-When packing entities, check that recipient bits match for fast path packing.
When r_low_latency is enabled, this moves the low latency sleep on tick frames to happen after client simulation.
When receiving packets out of sequence, wait this many seconds for missing sequences to arrive
When the client is catching up in low frame rate situations, should we run client simulate more than once a frame?
@@ -8634,7 +8650,7 @@ X\n'NETWORK_DISCONNECT_BADSPECTATORPASSWORD
X\n'NETWORK_DISCONNECT_DIFFERENTCLASSTABLES
X\n'NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET
X\n(NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR
-X`hrpJ
+X`hr@E
Xn1G
Xr?9
XsBI
@@ -8651,6 +8667,7 @@ You have been kicked and banned %s by the server.\n
Your current chat group is "%s"\n
YpU_Z
Z-google.golang.org/protobuf/types/descriptorpb
+Z0b%
Z48wN39
Z6y\r?
Z?SHX?
@@ -8688,7 +8705,6 @@ Zq",9\fB
[Unreliable payload]
[Voice payload]
[\n+NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION
-[\tV_modff
[aOni*{
[client]
[demoscrub]
@@ -8726,6 +8742,7 @@ Zq",9\fB
\\n)NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA
\\n*NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE
\\n.NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY
+\\tV_log10f
\c at end of pattern
\c must be followed by an ASCII character
\cnlauncher.txt
@@ -8736,9 +8753,8 @@ Zq",9\fB
\fV0U
\fV4U
\fX\fm\vH\vH\vm\v
-\f\tV_atofloat32
-\fp\v`lhB
-\fplhB
+\f\ng_pThreadPool
+\foNj
\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
\n Actual :
\n Field type:
@@ -8859,6 +8875,7 @@ Zq",9\fB
\n\nboxed_type
\n\nclass_name
\n\ncmd_number
+\n\ndelta_data
\n\ndelta_from
\n\ndemo.proto"
\n\ndependency
@@ -8872,6 +8889,7 @@ Zq",9\fB
\n\nfakeplayer
\n\nfield_name
\n\nfriends_id
+\n\ng_pMemAlloc
\n\ngo_package
\n\nhigh_value
\n\ninput_type
@@ -8940,6 +8958,7 @@ Zq",9\fB
\n\tDEM_Error
\n\tbit_count
\n\tbool_vals
+\n\tbugbug_no
\n\tbuild_num
\n\tcmdstring
\n\tcpu_brand
@@ -9045,6 +9064,7 @@ Zq",9\fB
\ndist data: dyn %ld, stat %ld
\ndist tree: sent %ld
\ndyn trees: dyn %ld, stat %ld
+\ng_flThreadedJobWaitTimeAccumulator
\ngen_codes: max_code %d
\nh?oT
\nk>oB
@@ -9068,9 +9088,8 @@ Zq",9\fB
\r\n\tTYPE_ENUM
\r\n\tsvc_Print
\r\r\f\f\f\f\v\v\v\n\n\n\t\t\t\t\t\t
+\r\tV_acosf
\rmj>zjZ
-\rp\f`\v0lhB
-\rp\f`\vPlhB
\t The lexer was matching from line %d, offset %d, which\n\t
\t"%s" has %d known peers:\n
\t"%s" has no known peers.\n
@@ -9082,22 +9101,23 @@ Zq",9\fB
\t?\tZ\tZ\tZ\tZ\t?\tg\t\n\t
\t?\tZ\tt\tt\tt\t
\tN1a
-\tTp8J
-\tV_acosf
\tV_asinf
\tV_atan2f
+\tV_atof
+\tV_atofloat32
\tV_atoi
\tV_atoi64
\tV_atoui64
\tV_cosf
-\tV_expf
-\tV_fclose
+\tV_sscanf
+\tV_stricmp_fast
\tV_strlower_fast
\tV_strtod
\tV_strtok
\tV_tanf
\tV_tier0_strcmp
\tV_vsnprintf
+\tWait
\tWarning
\tWorldsize_Init
\t[%d]Demo playback max rate capped at %f.\n
@@ -9127,9 +9147,6 @@ Zq",9\fB
\tg_BitBuf_BitWriteMasks
\tg_Mathlib_GammaToLinearByteTable
\tg_VProfCurrentProfile
-\tg_pMemAlloc
-\tg_pScheduledFunctions
-\tg_pThreadPool
\tkE>fvw
\tnTargetServerTick:%d\n\tm_streamStartRef.nTick:%d\n\tm_nStartHostTick:%d\n\tg_pNetworkClientService->GetTotalTicks():%d\n
\u00
@@ -9145,16 +9162,17 @@ Zq",9\fB
\vSimulationTicks
\vSource
\vVyC
-\v\tV_atof
+\v\ng_pScheduledFunctions
\vbasetypes.h
\vm\vm\vm\vH\vm\vm\v
\vm\vm\vm\vm\vH\v
\vnJH
-\vplhB
\vxYT
] is an invalid data character in JavaScript compatibility mode
]\n,NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION
+]\tV_log2_uint
^<V7w
+^PUG
^RfN>
^\n*NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT
^\n*NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT
@@ -9169,7 +9187,6 @@ _RDATA
_Target
_\n,NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT
_\n-NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN
-__ExternalMethodParent__
__UNKNOWN__
___clientsideitemsplaceholder0___
___clientsideitemsplaceholder1___
@@ -9185,6 +9202,7 @@ __int16
__int32
__int64
__int8
+__m_BaseFlow_WhileActive__
__nofilter__
__pascal
__populated_from_schema_modules
@@ -9214,18 +9232,15 @@ _root_keyname
_spawngroup_logging/log_%s_group_%s.txt
_temp_mapcycle.txt
`-uRQg
-`2pJ
`3Q"X
-`6P;G
-`6P<G
+`6 eG
+`60eG
`?m'_?&~]?(
`RTTI
`adjustor{
`anonymous namespace'
-`bpJ
`copy constructor closure'
`default constructor closure'
-`dpJ
`dynamic atexit destructor for '
`dynamic initializer for '
`eh vector constructor iterator'
@@ -9238,7 +9253,6 @@ _temp_mapcycle.txt
`generic-type-
`hp\nU
`hyz
-`lhB
`local static destructor helper'
`local static guard'
`local static thread guard'
@@ -9278,6 +9292,8 @@ a numbered reference must not be zero
a&M-=Z]<i*k)n-t&q&p&|
a6>r
a?wSa?\
+aBvd
+a\tV_logf
a\v4+Wk
abcdefghijklmnopqrstuvwxyz
abortflag
@@ -9316,7 +9332,6 @@ alpha
already connected
alternate_baseline_t
alternate_baselines
-ambientColor
amnesty
an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)
analogbindings
@@ -9351,6 +9366,7 @@ auto-%04i%02i%02i-%02i%02i-%s-%s.dem
auto_bug
auto_bug : create non-interactive bug report.
auto_threads
+autoexec
autoexec.cfg
autosave
autosavedangerous
@@ -9364,7 +9380,6 @@ b#M**y`Bl+o(u,{ x$w!
b0xNA;;|E)!
b3>7
b?qq
-b\tV_powf
backColorBuffer
backDepthBuffer
backbuffer,
@@ -9477,7 +9492,6 @@ c?FA@s}
cB$$"$""""SE$4"tfFDD
cM*"K
cNDS
-c\tV_qsort
c_os
calcdelta
calcdelta with no changes
@@ -9492,12 +9506,10 @@ can't playdemo '%s', disallowed\n
can't reach here.
can't save, not in a listen server game!
can't save, not in a listen server game!\n
-canModifyOutputs
cc_enable_arenas
cc_generic_services
cdndelay
ceil
-centerShift
cfg/
cfg/%s
cfg/%s%s
@@ -9623,8 +9635,6 @@ clc_ServerStatus
clc_SplitPlayerConnect
clc_SplitPlayerDisconnect
clear
-clearColor
-clearTargets
clearall
clearalpha
cli::array<
@@ -9635,6 +9645,7 @@ client orphan %s: server class associated %s\n
client.dll
client_command_tick
client_connected
+client_deprecated
client_disconnected
client_frame_simulate
client_streaming
@@ -9654,9 +9665,9 @@ code
code %d bits %d->%d\n
codec
codegen,
+codegen_delta_encoder
cointerface
color
-colorCorrectionParams
colors
colorstatus
com.google.protobufB
@@ -9757,7 +9768,6 @@ dQy/
dRL>
d\n-NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN
d\n-NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG
-d\tV_qsort_s
data
data error
data_compressed
@@ -9772,7 +9782,6 @@ decltype(auto)
dedicated
default
default rate for relays
-defaultSceneEnabled
default_value
delay
delete
@@ -9830,7 +9839,6 @@ diff_encode_field
different names for subpatterns of the same number are not allowed
digit
digit expected after (?+
-directLighting
direct_return_value_for
directory not empty
disable_game_specific_ui
@@ -9879,7 +9887,6 @@ ehandle
empty
empty distance tree with lengths
enable
-enableRadialDistortion
enable_priority_boost
enabled
encoder
@@ -9911,8 +9918,6 @@ engine_platform_name_extended
engine_relaunch_app_before_exiting
engine_render_only
engine_rendersystem_init
-engine_rendersystem_meets_min_dx_110
-engine_rendersystem_meets_min_dx_110_simple
engine_rendersystem_shader_model
engine_rendersystem_used
engine_show_frame_dispatch
@@ -9926,6 +9931,7 @@ enginemsgs_total
english
entindex
entindex %d snaps:
+entity
entity2
entityIdentityNameChanged
entity_log_load_unserialize
@@ -9979,6 +9985,7 @@ fD>b
fDD"AUDT$t
fP~V
fWi?
+f\tV_modff
fabs
failed
failed to get memory
@@ -9992,8 +9999,8 @@ false:<\n
false:=\n
false:=\n\rvalve_map_key
false:?\n
+false:A\n
fast path %d at %d\n
-fbRG
field
field_serializer_name_sym
field_serializer_version
@@ -10025,7 +10032,6 @@ float32
float64
floor
fmod
-fnRG
fog_enable
fog_override_color
fog_override_enable
@@ -10034,7 +10040,6 @@ fog_override_exponent
fog_override_max_density
fog_override_start
for %.2f minutes
-forceZPrePass
force_assert
force_fatal_error
force_fatal_error used, %d args
@@ -10047,6 +10052,8 @@ forcing new thread crash\n
forcing parallel process non-main thread crash\n
format
found duplicate in %s\n
+fp(G
+fpGG
fps variability,
fps,
fps_max
@@ -10172,7 +10179,6 @@ hJ4%
hPU3
hTarget
h\n,NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING
-h\tV_roundd
has_observable_context
has_pvs_vis_bits_deprecated
header crc mismatch
@@ -10224,14 +10230,14 @@ hostname
hostname : %s\n
hostname_in_client_status
hostport
+hpz@
hscript
hscript_lightbinding
http Send %.3f ms ave, %.3f ms max\n
http://localhost:8080
i3V.
i91k
iController
-i\tV_roundf
i]Wb
idempotency_level
identifier removed
@@ -10255,7 +10261,6 @@ incremental
incrementvar
incrementvar: cvar "%s" not found\n
incrementvar: no varname specified\n
-indirectLighting
infinity
info reporting only
info_player_start
@@ -10281,7 +10286,6 @@ instant_replay
instant_replay_goto_tick
instant_replay_goto_tick_relative
instant_replay_history_limit
-instant_replay_history_limit_low
instant_replay_live
instant_replay_pause
instant_replay_resume
@@ -10327,7 +10331,6 @@ invalid state
invalid stored block lengths
invalid string position
invalid window size
-invalidLightMaps
invalid_bone
invalid_parameter
io error
@@ -10400,6 +10403,7 @@ k=E.x=i
k=yI
k?n_m?P
kF?j
+k\tV_open_osfhandle
k_EProtoDebugVisibility_Always
k_EProtoDebugVisibility_Always:@\n
k_EProtoDebugVisibility_GC
@@ -10452,15 +10456,15 @@ leave
left4dead2
legacy_host_loss
legacy_is_delta
+legacy_name_replacement
+legacy_names
level_load
levelload
levelname
leveltransition
lexer->mTokens(): Error: No lexer rules were added to the lexer yet!\n
lib:
libopus unknown
-lightingOnly
-lightstyles
line
line\n
list current addon info.
@@ -10507,9 +10511,12 @@ m?@Zl?~\vk?k
m?H7
mG4>
m\nXo
+m\tV_powf
m\vm\vm\vm\vm\vm\vm\vm\vm\vm\vm\v
m_Args
m_Attributes
+m_BaseFlow_OnAfterCancel
+m_BaseFlow_WhileActive
m_CScriptComponent
m_Description
m_EntryChunk
@@ -10535,13 +10542,11 @@ m_bIsOncePerFrameAsyncWorkPhase
m_bIsPublic
m_bLastTick
m_bLastTickBeforeClientUpdate
-m_bMarkedForRemoval
m_bRenderOnly
m_bScheduleSendTickPacket
m_bThreadsActive
m_designerName
m_fDataObjectTypes
-m_flDelay
m_flFireTime
m_flFrameTime
m_flRealTime
@@ -10568,17 +10573,14 @@ m_nDummy0
m_nEditorNodeID
m_nFlags
m_nInstruction
-m_nOutputID
m_nPlatWindowHeight
m_nPlatWindowWidth
m_nPriority
m_nRenderHeight
m_nRenderWidth
m_nRuntimeIndex
m_nSplitScreenSlot
-m_nTargetType
m_nTickCount
-m_nTimesToFire
m_nTotalTicks
m_nTotalTicksThisFrame
m_name
@@ -10596,16 +10598,14 @@ m_pNetworkDataReferencedDescription
m_pNetworkDataReferencedPtrPropDescription
m_pNext
m_pNextByClass
+m_pPayload
m_pPrev
m_pPrevByClass
m_pTarget
m_pTargetInput
m_paramMap
m_scriptClassName
-m_targetDesc
-m_targetInput
m_targetType
-m_valueOverride
m_variantValue
m_worldGroupId
machine
@@ -10719,19 +10719,20 @@ multvar
multvar: cvar "%s" not found\n
multvar: no varname specified!\n
mx=E
-n0,G
n03>Pu
n>sak><
n?A6
n?SZn?
+n@jG
nBits != 32
nGh>
nI9>h
nMax
nMin
+nReadHandle != UINT64_MAX
nTries < 10000000
n\n0NETWORK_DISCONNECT_KICKED_VACNETABNORMALBEHAVIOR
-n\tV_sincosf
+n\tV_qsort
n]?iJ
n`xBF|7T
name
@@ -10755,7 +10756,6 @@ net_SplitScreenUser
net_Tick
net_array
net_async_clientconnect
-net_async_job_random_sleep
net_stats_json
net_table_name
netchan timeout: %.2fs since recv
@@ -10776,7 +10776,7 @@ network down
network reset
network unreachable
network_connection.proto
-network_connection.proto"8\n\nCMsgVector
+network_connection.proto">\n\nCMsgVector
network_connection_detail_token
network_connection_token
networkable
@@ -10788,7 +10788,6 @@ next
nextdemo
nextloop_keyvalues
no buffer space
-no change
no child process
no data!\n
no error
@@ -10835,7 +10834,6 @@ not started
not supported
notes
nothing to repeat
-np.G
null
nullptr
num_bits
@@ -10854,6 +10852,7 @@ o"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
o?GS
oG!t
oI>O7
+o\tV_qsort_s
o\v3b
objc_class_prefix
objectid
@@ -10930,12 +10929,8 @@ outofpvs_entity_updates
outofpvs_entity_updates_t
output
output buffer too small for in-memory compression
-outputColor
-outputDepth
output_color_back_buffer
-output_color_texture
output_depth_back_buffer
-output_depth_texture
overflow
overlay
override_operator_name
@@ -10946,27 +10941,29 @@ overwatch
owM&
owner dead
oz>!km>
-p08@H^
+p08@H^d
p0p@
-p2pJ
+p2@E
p2p_listpeers
p2p_ping "%s"
p4edit
-p6@&G
-p>7RG
+p6@0G
p?ff
p@HPX`h\f
pClass
pClass->m_ClassID(%i) >= %i\n
pClient
pCm)
+pF ]G
pH\fy
pMessage
+pNewSet->m_readPipe.OpenPipe_Named( false, szReadPipeParam, true )
+pNewSet->m_readPipe.OpenPipe_OSFILEHANDLE( false, (OSFILEHANDLE)nReadHandle, nPipeSourcePID )
+pNewSet->m_writePipe.OpenPipe_Named( true, szWritePipeParam, true )
+pNewSet->m_writePipe.OpenPipe_OSFILEHANDLE( true, (OSFILEHANDLE)nWriteHandle, nPipeSourcePID )
pServerClass
pYa(bu
p\r0\fP
-p\r`\fPlhB
-p\tV_sinf
package
packed
packet
@@ -10991,7 +10988,7 @@ password
path
pause
paused
-pbpJ
+pb@E
pc64
peer
pending
@@ -11010,7 +11007,6 @@ phys_highlight_expensive_objects
phys_highlight_expensive_objects_strength
ping
pitch
-plQB
playback_frames
playback_ticks
playcast
@@ -11020,7 +11016,6 @@ playdemo %s\n
playdemo <demoname> [\n
player
player0_using_joystick
-playerIndex
player_network_lag_avg
player_network_lag_max
player_network_loss_avg
@@ -11035,7 +11030,6 @@ playing %s from '%s'\n
playsound
playsound
playsound <soundname>
-plhB
png
png_screenshot
pointer,
@@ -11049,13 +11043,10 @@ pos [player %d]: %.3f,%.3f,%.3f\n
position
positive_int_value
postnetupdate
-preDistortionRenderSizeFactor
predicted_by_player_slot
prediction_sync
prerequisite
-preserveColorBuffers
prev
-previewLightMaps
previouslevel
primary_target
print
@@ -11066,7 +11057,6 @@ process_uptime
profile
progress
progress_enable
-projectionArea
promise already satisfied
props
protected command line arguments (stripped from above):\n
@@ -11097,7 +11087,6 @@ pulse_system.dll
punct
purecall
push_var_values
-pvConditionalsEvaluated
py_generic_services
qIU<
qM1H
@@ -11119,7 +11108,6 @@ rA?7
rEy5
rFg7
r\tVr.>T
-r_add_views_in_pre_output
r_always_render_all_windows
r_aspectratio
r_camerapos
@@ -11141,27 +11129,22 @@ r_experimental_lag_limiter
r_extra_render_frames
r_force_engine_render_frame
r_force_render_frame_count
-r_force_zprepass
r_indirectlighting
r_render_coordination_state
r_rendersun
r_setpos
r_showdebugoverlays
-r_showdebugrendertarget
r_showsceneobjectbounds
-r_showsunshadowdebugrendertargets
-r_showsunshadowdebugsplitvis
r_size_cull_threshold
r_size_cull_threshold_fade
r_size_cull_threshold_shadow
r_skip_precache_validation_check
r_ssao
r_toggleviewportsize
r_translucent
+r_ui_update_parallel_with_server
r_vconsole_foregroundforcerender
r_viewport
-r_zprepass_normals
-radialDistortionCoefficient
radiant_team_id
radiant_team_tag
ram_physical_total_mb
@@ -11227,13 +11210,6 @@ removeip: filter removed for %s, IP %s\n
removeip: filter removed for %s\n
removeip: invalid slot %i\n
removeip: "<><><>" was unbanned by "%s" (IP "%s")\n
-render3DSkybox
-renderReflectiveObjects
-renderSky
-renderSun
-renderTime
-renderToTexture
-renderTranslucent
rendersystemdll,
rendersystemdx11.dll
rendersystemempty.dll
@@ -11304,7 +11280,7 @@ s5J5J5J5J5J5J5J5J5J5J5J5J5J5J5J5Jx
sAmTb
sHF'
sUIL\s
-s\tV_snprintf
+s\tV_roundd
satisfied
save
save LowBattery_AutoSave\n
@@ -11408,12 +11384,6 @@ shot
shot_
show frame dispatch names.
show usercmd payload sizing info for packets with more than this many usercmds
-showDebugRenderTarget
-showLPVVoxels
-showLightmapTexels
-showQuadOverdraw
-showShadingComplexity
-showShadowmapTexels
showconsole
signed
signon
@@ -11520,7 +11490,6 @@ steam_appid.txt
steam_id
steam_loggedon
steamaudio
-steamhdl
steamid
steamid : %s (%llu)\n
steamid64
@@ -11572,10 +11541,8 @@ sv_dev_entitydeltapadding_extra_min
sv_dev_entitydeltapadding_min_size
sv_disable_reliable_delta_retransmit
sv_enable_alternate_baselines
-sv_enable_delta_packing
sv_enable_donttransmit
sv_enable_removearrayelementsoutsidemetadatabounds
-sv_ents_write_alarm
sv_extra_client_connect_time
sv_filterban
sv_fps_max
@@ -11610,10 +11577,7 @@ sv_mmqueue_reservation
sv_mmqueue_reservation_extended_timeout
sv_mmqueue_reservation_timeout
sv_networkvar_perfieldtracking
-sv_networkvar_validate
sv_outofpvsentityupdates
-sv_pack_entities_really_verbose
-sv_pack_entities_verbose_entidx
sv_packstats
sv_parallel_packentities
sv_parallel_prepare_client_updates
@@ -11629,7 +11593,6 @@ sv_rcon_log
sv_rcon_maxfailures
sv_rcon_minfailures
sv_rcon_minfailuretime
-sv_recipients_check
sv_recvbuf_messages
sv_region
sv_replay_group_id
@@ -11647,6 +11610,7 @@ sv_snapshot_unlimited
sv_spewmeta
sv_spewworldgroups
sv_stats
+sv_steamauth_correct
sv_steamauth_enforce
sv_steamauth_ignore_localhost
sv_steamgroup
@@ -11700,6 +11664,7 @@ tCR;\HdY\
tL75}
tM_y
tTOw}
+t\tV_roundf
table
table %32.32s %5i\n
table_id
@@ -11783,8 +11748,6 @@ toolframework2
tools
tools/images/pulse_editor/exit_cycle_random.png
tools/images/pulse_editor/inflow_wait.png
-toolsVisMaxLightingComplexity
-toolsVisMode
total
total sec,
total ticks, network client service: %d, broadcast player: %d\n
@@ -11943,6 +11906,7 @@ unrecognized character follows \
unreserved
unsigned
unsigned
+untrusted_delta_max
unverified_lazy
update_baseline
updated
@@ -11987,7 +11951,6 @@ utcdatetime_vals
utl_vector,
utlstringtoken
uzKs@>
-v0@G
v2!L.2
vE-2
vQO+t
@@ -12032,7 +11995,6 @@ version
version : %s/%d %d %s %s%s\n
vidmem total: %0.3fMB\n
vidmemstats.txt
-viewModelFov
viewport
violence_ablood
violence_agibs
@@ -12077,7 +12039,6 @@ void
volatile
volatile
volume
-volumeFogRenderer0
vpcf
vphysics2
vpks
@@ -12112,6 +12073,7 @@ wPj}
wU9%
wXR\r
w\fg3
+w\tV_setvbuf
waC+
wait_time
waiting
@@ -12131,8 +12093,6 @@ when non-empty allows for easy vconsole connection to the dedicated server.
width
width,
wild scan
-windController
-wireframeColor
with error
wm\v?1
wn>Jj
@@ -12167,21 +12127,22 @@ y22]
y9*O
y?Zzy?
yM+7
-y\tV_sscanf
+y\tV_sincosf
yields
yiq-
yslf`ZTMGA;5.
+z0b%
z?Mbz?H5z?
-zFarCull
-zPrePassNormals
z\n8NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY
z\nB\fz
z_AMC\v
zero
zx?L
{ className = 'IsWaitNode IsControlFlowNode' item_factory = 'InflowWait' }
+{ standard_yielding_flow = true }
{%%%d.%ds} %%%d.%ds: %%-%d.%ds %%-%d.%ds: %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds %%%d.%ds [%%-%d.%ds bits]\n
{A7Dd
+{\tV_sinf
{flat}
{for
{kHw
@@ -12206,7 +12167,7 @@ zx?L
~CServerChangelevelState with non empty m_Clients, failed change level to %s!!!\n
~CSteam3ServerS1 is active at destruction - must be shut down properly in the main server shutdown sequence\n
~\naS0
-~\tV_stricmp_fast
+~\tV_snprintf
~ltvO
~szn
~wph_YSNHB<6/'
game/bin/win64/exportsystem_strings.txt
modified • +17 / -57 • changes: 74
Show patch
@@ -82,7 +82,6 @@ $prefix_element$
'?SetCount@FbxLayerElementArray@fbxsdk@@QEAA_NHW4EFbxMemoryClearMode@2@@Z
'?SetCurrentAnimationStack@FbxScene@fbxsdk@@QEAAXPEAVFbxAnimStack@2@@Z
'?SetFileName@FbxFileTexture@fbxsdk@@QEAA_NPEBD@Z
-(9T2
(?SetLegacyStyle@FbxShape@fbxsdk@@QEAAX_N@Z
(?SetLink@FbxCluster@fbxsdk@@QEAAXPEBVFbxNode@2@@Z
(?SetLinkMode@FbxCluster@fbxsdk@@QEAAXW4ELinkMode@12@@Z
@@ -801,11 +800,12 @@ $prefix_element$
.png
.tga
.vmat
+0lj'
0x%llx
16-byte data pool
2(?SetFrame@FbxTime@fbxsdk@@QEAAX_JW4EMode@12@@Z
2\nP!E
-2\vpt
+2\vplj'
4-byte data pool
5sfm_v8
64 283 0
@@ -817,7 +817,7 @@ $prefix_element$
<UNKNOWN_EXPORT_TYPE>
<\v??BFbxString@fbxsdk@@QEBAPEBDXZ
='?SetAxisSystem@FbxGlobalSettings@fbxsdk@@QEAAXAEBVFbxAxisSystem@2@@Z
-=m_bUseShadowFastPath
+=8l3
>"?IsValid@FbxProperty@fbxsdk@@QEBA_NXZ
??0FbxAMatrix@fbxsdk@@QEAA@AEBV01@@Z
??0FbxAMatrix@fbxsdk@@QEAA@XZ
@@ -964,6 +964,7 @@ $prefix_element$
?GetTextureCount@FbxScene@fbxsdk@@QEBAHXZ
?alpha
?expf
+?model_default_preview_sequence_name
?vtex
AddNewLayer
AddUndoElement '%s'\n
@@ -1151,41 +1152,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
CVisibilityMgr
CWeakHandle
@@ -1201,6 +1167,7 @@ Cleanup
ClipBoard
CloseLid
CmdLine
+Cmdl
Color Fade
Color Light From Control Point
Color Random
@@ -1411,6 +1378,7 @@ DmeXSIMakefile
DmxSemanticName
DmxSourceFile
DmxSourceFileRelative
+DualHull
ERROR: Specified full path %s does not lie under the mod search path!)\n
ERROR: Specified path %s could not be made content-relative\n
ERROR: Unable to create an attribute handle! Save, quit, restart and clean up your file to have fewer elements!\n
@@ -1472,7 +1440,6 @@ FloatBitMap_t::WriteInMemoryEXRFast(), C:\buildworker\csgo_rel_win64\build\src\b
FoldLipLo
FoldLipUp
FoliageAnimation
-G\f%G47
GenerateResourceNameFromFileName: Invalid extension specified in file name "%s"!\n
Generic DMX
Generic MovieObjects
@@ -1481,10 +1448,7 @@ GenericType
GetClipboardData
GetProfile_ultrafast
GlobalSize
-H=Q2
-H=S2
Hammer temp export
-HeP2
HemiOctAnisoRoughness_RG_BA
HemiOctIsoRoughness_RG_B
HemiOctNormal
@@ -1493,6 +1457,7 @@ I(?SetGlobalTimeMode@FbxTime@fbxsdk@@SAXW4EMode@12@N@Z
IExportSystem
IKV3TransferInterface_ResourceSave
IOSRoot
+If enabled, the up direction will be evaluated in world space, such that the object orientation does not affect the surface slope filtering. Additionally if Orient To Surface is 0, then and world space up is enabled, then the object orientation will not affect the rotation of detail model.
Inherit Velocity
Initial Repulsion Velocity
Initial Scalar Noise
@@ -1604,8 +1569,8 @@ Oscillate Vector
Output memory size is zero
OverlayProjectionDirection
P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z
+PDW'
PF\n%d %d\n-1.000000\n
-PackedBlobNormal
Particle Configuration File
PerVertexLighting
Pf\n%d %d\n-1.000000\n
@@ -1683,7 +1648,6 @@ Solved Knee
Solved Thigh
StereoFlip
Symbol table: %d entries %llu bytes\n
-T\tV_log2f
Take 001
TanFrameQuat
Texture :: %s\n
@@ -1722,6 +1686,7 @@ Unserialize: Unexpected encoding name '%s' reading file '%s' - expected encoding
Unserialize: Unexpected format '%s' reading file '%s' - expected format '%s'\n
Unsupported export type :: %s
Unsupported input file type: %s
+Use World Space Up
User Data Element
VDataModelVersion001
VDmElementFrameworkVersion001
@@ -1745,7 +1710,6 @@ WipeUndo '%s'\n
World Files
World Node Files
X)?SetRotationActive@FbxNode@fbxsdk@@QEAAX_N@Z
-X5R2
Z%?RemoveElementUV@FbxGeometryBase@fbxsdk@@QEAA_NPEAVFbxLayerElementUV@2@@Z
ZFP compression is not supported in this build
[%d] Aborting undo '%s'\n
@@ -1769,12 +1733,15 @@ ZFP compression is not supported in this build
\t??8FbxVector4@fbxsdk@@QEBA_NAEBV01@@Z
\tError\n
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
+\tV_ZSTD_decompress
+\tV_sscanf_s
\tV_strnchr
\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t\t\t\t\n\n\n\n\n\n\n\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StringAfterPrefixCaseSensitive
\t_V_StripLastDir
\v??_7FbxAnimCurveFilter@fbxsdk@@6B@
+_\tV_log2f
_basetintmask_
_colorSetNames
_detailmask_
@@ -1792,7 +1759,6 @@ _selfillummask_
_specexp_
_specmask_
_texcoordNames
-`yT2
activeBookmarkSet
adding layer %d to stack\n
addlayer: log %p lc[%d], layer %p
@@ -1849,6 +1815,7 @@ baseStates
basic_movement
bentnormal
bezier
+binary
binary_array
binary_seqids
binary_v
@@ -2214,18 +2181,12 @@ m_SubassetDefinitions
m_SubassetReferences
m_UserData
m_WeakReferenceList
-m_bBakedTwoSided
-m_bCanBatchWithDynamicShaderConstants
-m_bDrawLast
+m_bAllowDefinitions
+m_bAllowReferences
m_bFileExists
-m_bHasBakedLightingFromLightMap
-m_bHasBakedLightingFromVertexStream
m_bIsGameFile
-m_bIsNotMatchedToMaterial
-m_bNoShadow
-m_bOnlyShadow
m_bOptional
-m_bUseCompressedNormalTangent
+m_bWorldSpaceOrientation
m_fMoveTo
m_nFileCRC
m_nFingerprint
@@ -2333,7 +2294,6 @@ overrideParent
overridePos
overrideRot
ownerlog
-p>t9)
parentBindRotation
parentConstraint
pathNodeName
@@ -2352,6 +2312,7 @@ pinEnabled
pin_enabled
pivotOffset
pixelAspectRatio
+plj'
pointentityclass
poleVector
posTolerance
@@ -2676,7 +2637,6 @@ wrinkle$0Indices
wrinkleIndices
wrinkleScales
z)?SetScale@FbxTexture@fbxsdk@@QEAAXNN@Z
-z\tV_sscanf_s
{+?currentDateTimeGMT@FbxDateTime@fbxsdk@@SA?AV12@XZ
|BBoneSetup
~CGenericFilter
game/bin/win64/filesystem_stdio_strings.txt
modified • +13 / -39 • changes: 52
Show patch
@@ -28,7 +28,6 @@
T;6P/Arc
Version %s %d Embedded Chunk %d : %d Hashes %d Chunks %d \n
Xia
- \tV_ferror
^LXjt
_GDK\tZ
characters
@@ -56,10 +55,13 @@
!9iV
!AECO
!HRN
+!IsText()
!expected_len || s->s3->previous_client_finished_len
!expected_len || s->s3->previous_server_finished_len
!fUY\n
!hcK+dbF&
+!m_Byteswap.IsSwappingBytes()
+!m_Swap.IsSwappingBytes()
!m_nPackFileNumber
!s8p
"!"%"+"1"9"K"O"c"g"s"u"
@@ -223,6 +225,7 @@ $hRh
)J9o
)TpH
)Urz
+)\tV_ferror
)fuG
)haI
*%*/*O*U*_*e*k*m*s*
@@ -280,7 +283,6 @@ $hRh
-DBF
-U`5K
-\6G5
--\tV_fread
-l34
-mB:t
-~T\viMOb
@@ -666,7 +668,6 @@ $hRh
2Zq)
2\fWQx
2\rlhp
-2\tV_fseek
2^pV
2a"l
2bT~
@@ -685,7 +686,6 @@ $hRh
3Ej%Tb
3M5cWAK
3Wk1^
-3\tV_fseeki64
3\v;8BJ\nH
3icq
3ja~
@@ -715,7 +715,6 @@ $hRh
5A10K
5EwO
5N{j
-5\tV_ftelli64
5\vFuo
5b!g
5dO7
@@ -737,6 +736,7 @@ $hRh
6H,N
6O|T%
6Qd=
+6\tV_fread
6_wEX
6afD
6bX+
@@ -833,6 +833,7 @@ $hRh
;83\v\nHBJ7
;LGEW
;Qo0
+;\tV_fseek
;`Fzc
;bwP*
;xsK
@@ -857,6 +858,7 @@ $hRh
<SVX
<YGr+
<YVtV&
+<\tV_fseeki64
<unsupported>
=!=-=3=7=?=C=o=s=u=y={=
=&sf9
@@ -878,6 +880,7 @@ $hRh
?HAI\t81\t9dcG'
?HP4
?VBH;
+?\tV_ftelli64
?d86L
?dt]X
?gwL
@@ -1098,7 +1101,6 @@ Adding VPK file: %s\n
Addreffing existing VPK file: %s\n
Affiliation Changed
Ag*g*
-Alignment
Any Extended Key Usage
Any Purpose
Any language
@@ -1280,7 +1282,9 @@ C:\buildworker\csgo_rel_win64\build\src\filesystem\basefilesystem.cpp
C:\buildworker\csgo_rel_win64\build\src\filesystem\filesystem_stdio.cpp
C:\buildworker\csgo_rel_win64\build\src\public\tier0\check_cast.h
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlblockvector.h
+C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlbuffer.h
C:\buildworker\csgo_rel_win64\build\src\public\vpklib\packedstore.h
+C:\buildworker\csgo_rel_win64\build\src\public\zip\zip_utils.cpp
C:\buildworker\csgo_rel_win64\build\src\vpklib\packedstore.cpp
CA Compromise
CA Issuers
@@ -1512,13 +1516,14 @@ CT Precertificate Poison
CT Precertificate SCTs
CT Precertificate Signer
CUtlBlockVector<struct FileHandleTracker_t,int,class CMemAllocAllocator>::GrowCount
+CUtlBuffer::BGetObjectRaw
CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CZip *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlMemoryBlockAllocator<struct FileHandleTracker_t,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CZipFile::CZipEntry,class CZipFile::CZipEntryLessFunc,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CZipFile::CZipEntry,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t,class CDefLess<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct `public: virtual void __cdecl CBaseFileSystem::PrintSearchPaths(void)'::`2'::sort_search_paths_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlSortVector<struct ChunkHashFraction_t,class CUtlSortVectorDefaultLess<struct ChunkHashFraction_t::SortKey_t>,class CUtlVector<struct ChunkHashFraction_t,int,class CUtlVectorMemory_Growable<struct ChunkHashFraction_t,int,0> > >::Find
CVcn
+CZipFile::ParseFromDisk
+CZipFile::SaveDirectory
C[L6
C\lVQ
C\tD\vD
@@ -1801,7 +1806,6 @@ DYNAMIC_GET_DATA_CTX
DYNAMIC_LOAD
DYNAMIC_SET_DATA_CTX
Data Encipherment
-DataOffset
DcO/lcK+hSK
Dd g4X3
Decipher Only
@@ -1817,7 +1821,6 @@ DirName
DirName:
Directory
Directory not empty
-DirectoryEntries
DnRv
Domain
Domain error
@@ -2932,7 +2935,6 @@ Policy Qualifier CPS
Policy Qualifier User Notice
Polynomial:
Pr"V
-PreloadDirectoryEntries
Prime:
Private Key
Private-Key
@@ -3507,7 +3509,6 @@ Vemn\t
Verify error:
Verify failure\n
Verifying - %s
-Version
Vg3LE
VggjeK uO5n
Visual C++ CRT: Not enough memory to complete call to strerror.
@@ -3747,11 +3748,6 @@ Z0zd
Z7"c
Z72\v
ZH^r
-ZIP_EndOfCentralDirRecord
-ZIP_FileHeader
-ZIP_LocalFileHeader
-ZIP_PreloadDirectoryEntry
-ZIP_PreloadHeader
ZL9L
ZLIB
ZLONG
@@ -4246,7 +4242,6 @@ cast5-ecb
cast5-ofb
ccs received early
cdP%
-centralDirectorySize
cert
cert already in hash table
cert cb error
@@ -4330,21 +4325,18 @@ cofactor
command not supported
command takes input
command takes no input
-commentLength
common libcrypto routines
common ok and cancel characters
commonName
comp
compatible
compressed length too long
compressed-data
-compressedSize
compression disabled
compression failure
compression id not within private range
compression library error
compressionAlgorithm
-compressionMethod
configuration file routines
conflicting engine id
connect error
@@ -4383,7 +4375,6 @@ countersignature
countryName
cpLm
cq#p
-crc32
critical
critical,
crl already delta
@@ -4598,7 +4589,6 @@ directory services - algorithms
dirname error
disabled for fips
discriminant is zero
-diskNumberStart
distinguishedName
distpoint
distpoint already set
@@ -4848,9 +4838,7 @@ extension not found
extension setting not supported
extension value error
extensions
-externalFileAttribs
extra data in message
-extraFieldLength
eyBH_
eyj5yR
f#9i\n
@@ -4876,8 +4864,6 @@ field too large
fieldID
fieldType
file:
-fileCommentLength
-fileNameLength
filename too big
filesystem_stdio.dll
filetime
@@ -5328,7 +5314,6 @@ int_thread_get (err.c)
integer not ascii format
integer too large for long
internal list error
-internalFileAttribs
international-organizations
internationaliSDNNumber
invalid CA certificate
@@ -5571,11 +5556,9 @@ l7@J
lC57
lDcW
lM2p
-l\tV_setvbuf
language
last octet invalid
lastModifiedBy
-lastModifiedDate
lastModifiedTime
lastUpdate
lcO/<1\r=,!\r-@@@
@@ -5729,8 +5712,6 @@ n6j/
n:2C[
n@PK
nCRD
-nCentralDirectoryEntries_ThisDisk
-nCentralDirectoryEntries_Total
nSRecord
nStf,a
nSw}Z\tu
@@ -5911,8 +5892,6 @@ null parameter
null ssl ctx
null ssl method passed
number=%d, address=%08lX\n
-numberOfTheDiskWithStartOfCentralDirectory
-numberOfThisDisk
nyYn
o$g31\f
o&1m&
@@ -6275,7 +6254,6 @@ record too large
record too small
registeredAddress
reject
-relativeOffsetOfLocalHeader
relativename
removeFromCRL
renegotiate ext too long
@@ -6780,7 +6758,6 @@ sslv3 alert unexpected message
sslv3 alert unsupported certificate
sslv3 rollback attack
stLDp
-startOfCentralDirOffset
stat
stateOrProvinceName
status expired
@@ -6969,7 +6946,6 @@ unable to verify the first certificate
unacceptable policy
unauthAttrs
unauth_attr
-uncompressedSize
undefined
undefined generator
undefined order
@@ -7129,8 +7105,6 @@ value=
variable has no value
verification failure
version incompatibility
-versionMadeBy
-versionNeededToExtract
vm:u
vparams
vpk.signatures
game/bin/win64/gfsdk_aftermath_lib.x64_strings.txt
modified • +2 / -0 • changes: 2
Show patch
@@ -1088,6 +1088,7 @@ $@(2.(0f6(:b@
=5au
>global
@08B
+@08N
@20z\n
@HJP~
@HPV
@@ -5478,6 +5479,7 @@ bdver3
bdver4
beginc
bg.declare
+binary
bitcast
bitselect
bitwidth for integer type out of range!
game/bin/win64/helpsystem_strings.txt
modified • +12 / -6 • changes: 18
Show patch
@@ -370,8 +370,8 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
2\n?doItemsLayout@QListView@@UEAAXXZ
2\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z
2\v?event@QAction@@MEAA_NPEAVQEvent@@@Z
-2\vp0
-2\vp4
+2\vp E
+2\vp(C
2aboutToShow()
2anchorClicked(QUrl)
2changed()
@@ -1504,6 +1504,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
?userType@QVariant@@QEBAHXZ
?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z
@#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z
+@InputBindSystem
@\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z
A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z
A\n?document@QTextEdit@@QEBAPEAVQTextDocument@@XZ
@@ -1530,6 +1531,7 @@ COMMAND_TEXT_MODE_BUTTON
COMMAND_TEXT_MODE_ICON
COMMAND_TEXT_MODE_MENU
COMMAND_TEXT_MODE_NONE
+CPLATFORM
CQBindNameFilterWidget
CQBindableCommandAction
CQBindableCommandPushButton
@@ -1635,6 +1637,7 @@ Failed to load '%s': %s
Failed to load bindings (%s)\n
Failed to load help file '%s'.\n
Filter:
+FilterApplied
Find:
Fixed
Foc:N
@@ -1680,7 +1683,6 @@ Include Inactive
Input Binding Error
Input Debugger [%1]
Input Sequence
-InputBindSystem
InsertAssetLink
InsertBold
InsertImage
@@ -1839,10 +1841,10 @@ R?modifiers@QKeyEvent@@QEBA?AV?$QFlags@W4KeyboardModifier@Qt@@@@XZ
RMouse
RMouseDoubleClick
R\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z
-R\fp0
+R\fp E
R\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z
R\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z
-R\vp4
+R\vp(C
R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ
Really delete this widget?<br><br>***THIS MAY CRASH THE PROGRAM***<br>
Reloading...
@@ -2097,6 +2099,7 @@ asset
asset:dev/helper/testgrid.vmat
b\v?event@QSplitter@@MEAA_NPEAVQEvent@@@Z
background
+binary
bold
bold text
bottom
@@ -2221,7 +2224,7 @@ p`?type@QStandardItem@@UEBAHXZ
q\n?dragLeaveEvent@QAbstractScrollArea@@MEAAXPEAVQDragLeaveEvent@@@Z
q\v?event@QWidgetAction@@MEAA_NPEAVQEvent@@@Z
quiet
-r\vp0
+r\vp E
resource/toolhelp_%s_%s.txt
right
rowspan
@@ -2248,6 +2251,9 @@ tabs
testgrid.vmat
toggleViewAction
tokens
+tool_request_args
+tool_request_text
+tool_request_tool
toolbarArea
tools/keybindings/global_key_bindings.txt
tools/keybindings/helpsystem_key_bindings.txt
game/bin/win64/imemanager_strings.txt
modified • +3 / -1 • changes: 4
Show patch
@@ -44,6 +44,7 @@
.?AVIIMEManager@@
.?AVIMEManagerBase@@
0x%4.4x
+2\vp`Z
A previous call to CoInitializeEx specified the concurrency model for this thread as multithread apartment (MTA).\n
ABC IME
ALPHANUMERIC_FULL
@@ -232,6 +233,7 @@ QQPinyin
Quan Pin
Quan Pin 6.0
Quick
+R\fp`Z
RegEnumKeyExA
RegOpenKeyExW
RegQueryInfoKeyW
@@ -301,7 +303,6 @@ Wubi98
Zheng Ma
Zheng Ma 6.0
ZhengMa
-\nP4f
\tV_wcsicmp
`5Sf
c\t4
@@ -328,6 +329,7 @@ itABC IME v5.30
phon.ime
pintlgnt.ime
quick.ime
+r\vp`Z
sogoupy.ime
winabc.ime
winabcx.ime
game/bin/win64/inputsystem_strings.txt
modified • +0 / -5 • changes: 5
Show patch
@@ -19,7 +19,6 @@
.bmp
/cursor.res
00000409
-2\vp0
ACUTE_ACCENT
AC_BACK
AC_BOOKMARKS
@@ -87,7 +86,6 @@ CTRL
CURRENCYSUBUNIT
CURRENCYUNIT
CURRENCY_SIGN
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,enum ButtonCode_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
C_WITH_CEDILLA
CallWindowProcA
Couldn't initialize joysticks: %s\n
@@ -380,7 +378,6 @@ RIGHT_CURLY_BRACKET
RIGHT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK
RSHIFT
RWIN
-R\fp0
R_AXIS
R_AXIS_NEG
R_AXIS_POS
@@ -462,7 +459,6 @@ SDL_EVENT_JOYSTICK_REMOVED
SDL_EVENT_KEYMAP_CHANGED
SDL_EVENT_KEY_DOWN
SDL_EVENT_KEY_UP
-SDL_EVENT_LAST
SDL_EVENT_LOCALE_CHANGED
SDL_EVENT_LOW_MEMORY
SDL_EVENT_MOUSE_BUTTON_DOWN
@@ -591,7 +587,6 @@ keyc
mouse %d %s (%d) at %g %g on window %d\n
mouse motion %g %g at %g %g with buttons "%s" on window %d\n
out of focus
-r\vp0
s(KeEU
scan
shown
game/bin/win64/libavformat-58_strings.txt
modified • +1 / -0 • changes: 1
Show patch
@@ -2248,6 +2248,7 @@ bN9UQW9w>`96*i9
background
bandwidth
bandwidth of this stream to be specified in the DASH manifest.
+binary
bit rate
bitDepthChromaMinus8: %hhu\n
bitDepthLumaMinus8: %hhu\n
game/bin/win64/libfbxsdk_2020_3_1_strings.txt
modified • +3 / -1 • changes: 4
Show patch
@@ -12974,6 +12974,7 @@ $\t$\n$\v$\f$\r$
?valueAs@FbxDistance@fbxsdk@@QEBAMAEBVFbxSystemUnit@2@@Z
@&DlF4D>H4D>J4D
@08B
+@08N
@2p9'
@6 Zj
@60/k
@@ -16581,6 +16582,7 @@ Overscan Fit
P$RfP
P%luY%luM%luDT%luH%luM%.14gS
P(Pe{
+P08N
P08~
P0F&RPTZX
P2 p
@@ -18438,7 +18440,6 @@ Zrotation
\nP6J
\nPjA
\nSUUU
-\n\t\n\n\n\v\n\f\n\r\n
\npJA
\nppD
\r \r!\r"\r#\r$\r%\r&\r'\r(\r)\r*\r+\r,\r-\r.\r/\r0\r1\r2\r3\r4\r5\r6\r7\r8\r9\r:\r;\r<\r=\r>\r?\r@\rA\rB\rC\rD\rE\rF\rG\rH\rI\rJ\rK\rL\rM\rN\rO\rP\rQ\rR\rS\rT\rU\rV\rW\rX\rY\rZ\r[\r\\r]\r^\r_\r`\ra\rb\rc\rd\re\rf\rg\rh\ri\rj\rk\rl\rm\rn\ro\rp\rq\rr\rs\rt\ru\rv\rw\rx\ry\rz\r{\r|\r}\r~\r
@@ -18641,6 +18642,7 @@ allocating wildcard component
alpha channel tint
already in use
ambient
+ambientColor
an error occurred
ancestor
ancestor-or-self
game/bin/win64/libglib-2.0-0_strings.txt
modified • +1 / -0 • changes: 1
Show patch
@@ -1131,6 +1131,7 @@ bad options
be@latin
begin != NULL
big5
+binary
block_source
bookmark
bookmark != NULL
game/bin/win64/localize_strings.txt
modified • +11 / -174 • changes: 185
Show patch
@@ -3,14 +3,13 @@
%s tokens; %s instances
from file '%s'\n
has gender\n
+ has plural quantity\n
in hash as '%s'\n
language '%s'\n
no language associated\n
not from a file\n
string data: %s bytes in %s blocks\n
total memory allocated: %s bytes\n
- valid for gender lookup\n
- valid for plural lookup\n
value '%s'\n
!plural: handler %s for %s does not have quantity handling
!plural: loc token %s does not have a plural quantity
@@ -108,8 +107,6 @@
#LOC_Duration_m_s
#LOC_Duration_mmss
#LOC_Duration_s
-#NotFound:p
-#Valve_Close
#Valve_SelectLanguage_Brazilian
#Valve_SelectLanguage_Bulgarian
#Valve_SelectLanguage_Czech
@@ -139,16 +136,6 @@
#Valve_SelectLanguage_Turkish
#Valve_SelectLanguage_Ukrainian
#Valve_SelectLanguage_Vietnamese
-#Valve_TestDecimalPlurals:p
-#Valve_TestExplicitPlurals_Noun0
-#Valve_TestExplicitPlurals_Noun1
-#Valve_TestExplicitPlurals_Noun321
-#Valve_TestGenders_Adjective1:g
-#Valve_TestGenders_Noun1
-#Valve_TestGenders_Noun2
-#Valve_TestPluralGenders_Noun1:p
-#Valve_TestPlurals:p
-#Valve_TestPluralsEnglishOnly:p
$1.23
%04d
%language%
@@ -159,7 +146,8 @@ $1.23
%s(%u): Localization key '%s' is too long. Truncating.\n
%s: :g loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\n
%s: :p loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\n
-%s: unexpected language '%s'\n
+%s: contexts on loc tokens are no longer supported, use a MessageFormat string instead (token '%s')\n
+%s: invalid usage char in '%s'\n
%s_pw
(%s from %u files; %s not file-based)\n
*.txt
@@ -210,7 +198,6 @@ $1.23
<invalid duration format %d>
<invalid floating-point number format %d>
<invalid integral number format %d>
-<invalid ordinal format %d>
<invalid precision %d>
<localization entry added>
<space>
@@ -225,7 +212,6 @@ Bulgarian
C:\buildworker\csgo_rel_win64\build\_build_\localize\_vpc_localize\default\win64\_msvc_\Retail\localize.pdb
C:\buildworker\csgo_rel_win64\build\src\localize\loc_add.cpp
C:\buildworker\csgo_rel_win64\build\src\localize\loc_variables.cpp
-C:\buildworker\csgo_rel_win64\build\src\localize\loc_variants.cpp
C:\buildworker\csgo_rel_win64\build\src\localize\localize_imp.cpp
CLP$
CLocalize::AddFileImpl
@@ -236,13 +222,6 @@ CLocalize::ConstructString
CLocalize::FindSafe
CLocalize::InstallChangeCallback: Attempted to add the same callback twice!\n
CLocalize::RunInternalTest_LocVariableResolve
-CLocalize::RunInternalTest_PluralGender
-CLocalize::RunInternalTest_PluralGender_Dutch
-CLocalize::RunInternalTest_PluralGender_English
-CLocalize::RunInternalTest_PluralGender_French
-CLocalize::RunInternalTest_PluralGender_Japanese
-CLocalize::RunInternalTest_PluralGender_Russian
-CLocalize::Test_FindPluralSafeImpl
COL$
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<char const *,class LocalizeStringID_t,struct StringEqualFunctor,struct StringHashFunctor,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<char const *,class LocalizeStringID_t,struct StringEqualFunctor,struct StringHashFunctor,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<char const *,struct CLocalize::LocTokenInfo_t,struct FastCaselessStringEqualFunctor,struct FastCaselessStringHashFunctor,class LocalizeStringIndex_t>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<char const *,struct CLocalize::LocTokenInfo_t,struct FastCaselessStringEqualFunctor,struct FastCaselessStringHashFunctor,class LocalizeStringIndex_t>::HashBucket_t,int>::AddMultipleToTail
@@ -256,14 +235,10 @@ CheckLocVarConstruct
CheckLocVarResolve
CheckParseLocVars
CheckValidParseLocVar
-Close
-Compatibility context: %s\n
CompileAndConstructMFString
CompiledMFString
Czech
Danish
-DisallowPgTokens
-DisallowTokenContexts
Duplicate load of loc file '%s'\n
DuplicateFileLoadFail
DuplicateTokensAssert
@@ -283,46 +258,31 @@ Failed to read localization file %s\n
Finnish
French
Full paths not allowed in localization file specification '%s'\n
-Gemme
Generic loc var missing a type in '%.*s'\n
Generic loc var reference missing a name in '%.*s'\n
Generic loc var reference modifiers '%s' ignored\n
-Genuine
German
Hungarian
ILocalize::AddFile() failed to load file "%s".\n
Improper termination of loc variable reference\n
Indonesian
Invalid loc variable reference pointer\n
Invalid loc variable type for '%.*s' (%c)
-Invalid usage char in '%s'\n
Italian
Japanese
Korean
LOCFAIL %s: '%s' combines :f with other flags\n
-LOCFAIL %s: '%s' gives multiple variants for :l\n
-LOCFAIL %s: '%s' gives multiple variants for :n\n
+LOCFAIL %s: '%s' has multiple parts\n
LOCFAIL %s: '%s' has variants but does not have any token name variant flags (:g, :n, :p, etc.)\n
-LOCFAIL %s: '%s' indicates %u %s but needs %u valid %s\n
-LOCFAIL %s: '%s' indicates 1 plural but needs %u valid plural variants\n
LOCFAIL %s: '%s' indicates a gender specifier but doesn't provide one\n
-LOCFAIL %s: '%s' indicates a plural specifier but doesn't provide one\n
-LOCFAIL %s: '%s' indicates gender but doesn't have valid gender flags\n
-LOCFAIL %s: '%s' indicates genders but doesn't have valid gender variants\n
-LOCFAIL %s: Too many variant values for '%s'\n
LOCFAIL %s: Value for '%s' does not have required gender\n
-LOCFAIL %s: Value for '%s' does not have required plural form\n
-LOCFAIL %s: Value for '%s' has a plural form but the token doesn't have :l\n
+LOCFAIL %s: Value for '%s' has a plural quantity but the token doesn't have :l\n
LOCFAIL %s: Value for '%s' has gendered variants but the token doesn't have :g or :n\n
-LOCFAIL %s: Value for '%s' has multiple variants with the same gender\n
-LOCFAIL %s: Value for '%s' must have all language-defined gender variants\n
LOCFAIL %s: Value for '%s' must have the same gender for each variant\n
LOCFAIL %s: Value for '%s' uses a gender not valid for the value language\n
-LOCFAIL %s: Value for '%s' uses a plural form not valid for the value language\n
LOCFAIL: Ignoring unsupported encoding in localization file '%s'\n
LOCFAIL: Tried to add a loc token with '#' starting the token name ('%s')\n
LOCFAIL: Tried to add empty loc token\n
-LOCFAIL: the explicit plural flag 'l' can't be specified with the plural set flag 'p' (token %s in file %s)\n
LOCFAIL: the explicit plural flag 'l' can't be specified without the gender flag 'n' (token %s in file %s)\n
LOCWARN %s: value of '%s' matches English, possible unlocalized token\n
LOC_Date_Today
@@ -352,6 +312,7 @@ Loc variable reference doesn't start with a brace\n
Loc variable reference incomplete\n
Loc variable reference missing ':' after type\n
Loc variable reference too large (%u chars)\n
+LocTest_
Localization System
Localization stats for %s data:\n
Localization watching these dirs for changes:\n
@@ -364,10 +325,7 @@ Mex$
Norwegian
Not expecting to find a loc variable reference in '%s'\n
Not expecting to find any loc var refs in '%s'\n
-Original
-Originale
PERF WARNING: '%s' is in UTF-16 format, converting to UTF-8 will allow faster loading of it\n
-Plural context: %s\n
Polish
Portuguese
Romanian
@@ -377,8 +335,6 @@ Spanish
Swedish
Tokens
Traditional_Chinese
-Treasure
-Treasures
Turkish
Ukrainian
Unable to find localization token '%s'\n
@@ -389,69 +345,15 @@ Unknown loc variable time modifier '%c'\n
Unlocalized token '%s'\n
Usage: %s <token>\n
V_strStartsWith( pFound, pExpected )
-V_strcmp( pLocalize->FindLongestInstance( "#Valve_TestPlurals:p", nullptr ), "singular" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestExplicitPlurals_Noun0" ), "none" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestExplicitPlurals_Noun1" ), "one" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestExplicitPlurals_Noun321" ), "many" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestGenders_Adjective1:g" ), "Genuine" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestGenders_Noun1" ), "Treasure" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestGenders_Noun2" ), "Gemme" ) == 0
-V_strcmp( pLocalize->FindSafe( "#Valve_TestPlurals:p" ), "singular" ) == 0
-V_strcmp( pLocalize->FindUnsafe( "#Valve_Close" ), "Close" ) == 0
-V_strcmp( pLocalize->FindUnsafe( "#Valve_Close" ), "\xD0\x97\xD0\xB0\xD0\xBA\xD1\x80\xD1\x8B\xD1\x82\xD1\x8C" ) == 0
-V_strcmp( pLocalize->FindUnsafe( "#Valve_Close" ), "\xE9\x96\x89\xE3\x81\x98\xE3\x82\x8B" ) == 0
-V_strcmp( pLocalize->GetValueByInstanceIndex( nInstance ), "Original" ) == 0
-V_strcmp( pLocalize->GetValueByInstanceIndex( nInstance ), "Originale" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), "JP0" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), "RU0" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 0, LOC_GET_VARIANT_FOR_PLURAL ), "singular" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ), "RU1" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ), "plural" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 2, LOC_GET_VARIANT_FOR_PLURAL ), "RU2" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 3, LOC_GET_VARIANT_FOR_PLURAL ), "RU3" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, 4, LOC_GET_VARIANT_FOR_PLURAL ), "RU4" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_FEMININE, LOC_GET_VARIANT_FOR_GENDER ), "Originale" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE, LOC_GET_VARIANT_FOR_GENDER ), "Original" ) == 0
-V_strcmp( pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_NONE, LOC_GET_VARIANT_FOR_GENDER ), "Genuine" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#NotFound:p", 1 ), "#NotFound:p" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 0.1, 1 ), "seconde" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 1.0, 1 ), "seconden" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 1.0, 1 ), "seconds" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 1.001, 3 ), "seconde" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 1.0011, 4 ), "seconden" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 1.5, 1 ), "seconds" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 2.0, 1 ), "seconds" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestDecimalPlurals:p", 2.01, 2 ), "seconden" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPluralGenders_Noun1:p", 1 ), "Tr\xc3\xa9sor" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPluralGenders_Noun1:p", 1 ), "Treasure" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPluralGenders_Noun1:p", 2 ), "Tr\xc3\xa9sors" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPluralGenders_Noun1:p", 2 ), "Treasures" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", -2 ), "plural" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 1 ), "JP0" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 1 ), "RU0" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 1 ), "singular" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 1.0, 0 ), "RU0" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 1.0, 1 ), "RU4" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 11 ), "RU2" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 11000 ), "RU3" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 2 ), "plural" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPlurals:p", 22 ), "RU1" ) == 0
-V_strcmp( pLocalize->Test_FindPluralSafe( "#Valve_TestPluralsEnglishOnly:p", 11 ), "localize" ) == 0
-Valve_Test
-Valve_TestGendersEnglishOnly_A:g
-Valve_TestGendersEnglishOnly_N:n
-Valve_TestPluralsEnglishOnly:p
Vietnamese
WARNING: Duplicate string token '%s' found in %s (original in %s) - new value '%s', original value '%s'\n
-Z\tV_modfd
[!s:notavar]
[!s:notpresent]
[END]
\resource\valve_
\t_V_StringAfterPrefixCaseSensitive
\{s:foo} {s:bar}
\{s:foo} {} {,:} {s:} {s:bar} extra
-a\tV_powd
bg_BG
brazilian
bulgarian
@@ -466,6 +368,7 @@ duplicate selector case
dutch
el_GR
en_US
+ends_with_000
english]
es-419
es_419
@@ -490,13 +393,15 @@ hungarian
id_ID
indonesian
instance %d:\n
+invalid plural predicate after '='
it_IT
italian
ja_JP
japanese
ko_KR
korean
koreana
+l\tV_powd
latam
localize.dll
many
@@ -511,13 +416,10 @@ missing required '}' for plural match
missing required '}' for select
missing required comparison value for select
missing required gender category
-missing required integer after '='
+missing required integer or predicate after '='
missing required selection type (ie., 'plural') after comma
missing required substitution variable name
money
-nInstance != LOCALIZE_INVALID_INSTANCE_INDEX
-nInstance == LOCALIZE_INVALID_INSTANCE_INDEX
-nString != LOCALIZE_INVALID_STRING_INDEX
nl_NL
no vars
no vars at all
@@ -529,70 +431,9 @@ pAfter != nullptr && pAfter > pFound && pAfter[-1] == '}'
pCompiled->IsValid()
pExpected == nullptr
pLocalize->FindLocVariableReferenceText( pString ) == pFound
-pLocalize->FindUnsafe( "#Valve_Close" ) != nullptr
-pLocalize->GetCurrentELanguage() == k_Lang_Dutch
-pLocalize->GetCurrentELanguage() == k_Lang_English
-pLocalize->GetCurrentELanguage() == k_Lang_French
-pLocalize->GetCurrentELanguage() == k_Lang_Japanese
-pLocalize->GetCurrentELanguage() == k_Lang_Russian
-pLocalize->GetNumGenderVariants() == 0
-pLocalize->GetNumGenderVariants() == 2
-pLocalize->GetNumPluralGenderVariants() == 0
-pLocalize->GetNumPluralGenderVariants() == 4
-pLocalize->GetNumPluralVariants() == 1
-pLocalize->GetNumPluralVariants() == 2
-pLocalize->GetNumPluralVariants() == 5
-pLocalize->GetPluralVariant( 0 ) == 0
-pLocalize->GetPluralVariant( 0 ) == 1
-pLocalize->GetPluralVariant( 0 ) == 3
-pLocalize->GetPluralVariant( 0.0, 1 ) == 0
-pLocalize->GetPluralVariant( 0.1, 1 ) == 0
-pLocalize->GetPluralVariant( 0.11, 2 ) == 1
-pLocalize->GetPluralVariant( 0.5, 1 ) == 0
-pLocalize->GetPluralVariant( 0.5, 1 ) == 1
-pLocalize->GetPluralVariant( 1.0, 1 ) == 0
-pLocalize->GetPluralVariant( 1.0, 1 ) == 1
-pLocalize->GetPluralVariant( 1.0, 1 ) == 4
-pLocalize->GetPluralVariant( 1.001, 3 ) == 0
-pLocalize->GetPluralVariant( 1.0011, 4 ) == 1
-pLocalize->GetPluralVariant( 1.5, 1 ) == 0
-pLocalize->GetPluralVariant( 1.5, 1 ) == 1
-pLocalize->GetPluralVariant( 10 ) == 2
-pLocalize->GetPluralVariant( 100 ) == 2
-pLocalize->GetPluralVariant( 1000 ) == 3
-pLocalize->GetPluralVariant( 10000 ) == 3
-pLocalize->GetPluralVariant( 101 ) == 0
-pLocalize->GetPluralVariant( 11 ) == 2
-pLocalize->GetPluralVariant( 12 ) == 2
-pLocalize->GetPluralVariant( 13 ) == 2
-pLocalize->GetPluralVariant( 14 ) == 2
-pLocalize->GetPluralVariant( 2 ) == 0
-pLocalize->GetPluralVariant( 2 ) == 1
-pLocalize->GetPluralVariant( 2.0, 1 ) == 1
-pLocalize->GetPluralVariant( 2.01, 2 ) == 1
-pLocalize->GetPluralVariant( 2.5, 1 ) == 1
-pLocalize->GetPluralVariant( 21 ) == 0
-pLocalize->GetPluralVariant( 22 ) == 0
-pLocalize->GetPluralVariant( 22 ) == 1
-pLocalize->GetPluralVariant( 23 ) == 1
-pLocalize->GetPluralVariant( 24 ) == 1
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 0
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 1
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 2
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 3
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == 4
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == LOC_VALUE_ALL_VARIANTS
-pLocalize->GetValueVariantByInstanceIndex( nInstance ) == LOC_VALUE_NO_VARIANTS
-pLocalize->GetVariantValueByIndex( nString, 1, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr
-pLocalize->GetVariantValueByIndex( nString, 2, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr
-pLocalize->GetVariantValueByIndex( nString, 5, LOC_GET_VARIANT_FOR_PLURAL ) == nullptr
-pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE, LOC_GET_VARIANT_FOR_GENDER ) == nullptr
-pLocalize->GetVariantValueByIndex( nString, LOC_GENDER_MASCULINE_INANIMATE, LOC_GET_VARIANT_FOR_GENDER ) == nullptr
parse error: %s at position %lld (context: "%s>>>%s<<<%s")
pl_PL
plural
-plurals
-plurals*genders
polish
portuguese
pt_BR
@@ -605,12 +446,8 @@ ro_RO
romanian
ru_RU
russian
-seconde
-seconden
-seconds
select
-singular
-sors
+selectordinal
spanish
string val
sv_SE
game/bin/win64/materialsystem2_strings.txt
modified • +104 / -145 • changes: 249
Show patch
@@ -33,6 +33,7 @@
mat_print_material_info <mod\path\file.vmat>\n
mat_print_shader_info <file.vfx> [options]\n
using substring "%s"
+#\tV_exp2f
#line
%10s
%15.15s
@@ -55,7 +56,7 @@
%s_intermediate_%d.vtex
%vsB,
(On the line reading %s):\n
-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
*** Error adding variable to array!\n
*** Error masking unused parts! Equal sign not found after token "%s"! (line %d)\n
*** Error! Multiple dynamic combos are putting the same constant (%s) in different descriptor sets. This won't work correctly.\n
@@ -64,12 +65,12 @@
*** Error! Multiple dynamic combos are putting the same texure (%s) in different descriptor set slots. This won't work correctly.\n
*** Problem remapping texture reference!\n
*** UNKNOWN ***
-*** VfxInit(223): Don't call VfxInit() more than once!
-*** VfxInit(231): g_pFullFileSystem must be set up before calling VfxInit!\n
-*** VfxPopulateSourceCache(1137): Error opening file "%s"!\n\n
-*** VfxPopulateSourceCache(1145): Error opening file "%s"!\n\n
-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file "%s" missing!\n\n
-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for "%s"!\n\n
+*** VfxInit(183): Don't call VfxInit() more than once!
+*** VfxInit(191): g_pFullFileSystem must be set up before calling VfxInit!\n
+*** VfxPopulateSourceCache(1097): Error opening file "%s"!\n\n
+*** VfxPopulateSourceCache(1105): Error opening file "%s"!\n\n
+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file "%s" missing!\n\n
+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for "%s"!\n\n
, GetFont used
, LoadFont used
--------------------------------------------------
@@ -79,10 +80,10 @@
-show_used_combos
.?AUAsyncProcessResult@CBaseIntrospectedToKV3TypeManager@@
.?AUAsyncStaticComboResult_t@CMaterial2@@
-.?AV<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@
+.?AV<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@
.?AV<lambda_1>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@
.?AV<lambda_2>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@
-.?AV<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@
+.?AV<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@
.?AV?$CBaseAppSystem@VIFontManager@@@@
.?AV?$CBaseAppSystem@VIMaterialSystem2@@@@
.?AV?$CBaseAppSystem@VIMaterialSystem2Utils@@@@
@@ -109,14 +110,13 @@
.?AV?$CTypesafeIntrospectedToKV3TypeManager@$0HEHDGPHAHG@UPostProcessingResource_t@@@@
.?AV?$IOpCodeHandler@H@@
.?AV?$IOpEvaluator@H@@
-.?AV?$ITSHashConstructor@PEAVCVfx@@@@
.?AV?$_Func_base@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
.?AV?$_Func_base@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@PEAVIAsyncResourceDataRequest@@@std@@
.?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@PEAVIAsyncResourceDataRequest@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BD@??IssueAsyncLoadRequests@CMaterial2@@AEAAXAEAV?$CUtlLeanVector@UMaterialStaticComboLoadRequest_t@@HVCMemAllocAllocator@@@@V?$CWeakHandle@UInfoForResourceTypeIMaterial2@@@@W4ShaderLoadMode_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialLayer@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?CK@??SetRenderStateForRenderablePassWithCommandBuffers@CMaterialMode@@QEBAXPEBVCRenderAttributes@@0PEAVIRenderContext@@PEAURenderInputLayout_t__@@AEBUMaterialRenderablePass_t@@PEBURsStencilStateOverride_t@@PEBURsDepthBiasStateOverride_t@@HI@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
.?AV?$_Ref_count_obj2@UDecompressedComboData_t@CVfxStaticComboData@@@std@@
.?AVCAllocatorUtils@?1??AllocateAndLoad@?$CTypesafeIntrospectedToKV3TypeManager@$0HEGBGNHG@UMaterialResourceData_t@@@@UEAAPEAXAEAVCKV3TransferLoadContext@@PEBUResourceBindingBase_t@@PEAVIRD_RegisterResourceDataUtils@@@Z@
.?AVCAllocatorUtils@?1??AllocateAndLoad@?$CTypesafeIntrospectedToKV3TypeManager@$0HEHDGPHAHG@UPostProcessingResource_t@@@@UEAAPEAXAEAVCKV3TransferLoadContext@@PEBUResourceBindingBase_t@@PEAVIRD_RegisterResourceDataUtils@@@Z@
@@ -154,7 +154,6 @@
.?AVCTextLayout@@
.?AVCTextureDictionary@@
.?AVCUtlStackMachineBuilder@@
-.?AVCVfxConstructor@@
.?AVCVfxShaderBuffer@@
.?AVIAsyncProcessedDataResult@@
.?AVIFontManager@@
@@ -174,7 +173,7 @@
.?AVIRuntimeShaderCreateCallbacks@@
.?AVITextLayout@@
.?AVITextureDictionary@@
-.eB0;
+.eBVfx
.ini
.vcs
.vfont
@@ -187,33 +186,26 @@
//---------------------------------------------------------------------------//\n
//-----------------------------------\n
0123456789)"
-2\rE2t
-2\vpD
-2\vptt\r
333?+
33s?+
-5\fu54l
7\rE7h
<<unknown_mod>>\
<Unknown font>
<anon>/
<anon>:
+<non-RTTI type>
=\t ();,\n\r<>
A%mB,
-ANDROID_VULKAN
-ANDROID_VULKAN_4_0
-ANDROID_VULKAN_4_1
-ANDROID_VULKAN_5_0
A\fEA4
AddFontMemResourceEx
-AddRenderStateValueLoadToCommandBuffer(1761): Invalid data type for render state variable %s in material "%s"!\n
-AddRenderStateValueLoadToCommandBuffer(1802): Invalid data type for render state variable %s in material "%s"!\n
-AddRenderStateValueLoadToCommandBuffer(1888): Invalid data type for render state variable %s in material "%s"!\n
-AddRenderStateValueLoadToCommandBuffer(1896): Invalid variable source type for render state variable %s in material "%s"!\n
-AddRenderStateVariableToCommandBuffer(1961): Unsupported render state type in material "%s"!\n
-AddRenderStateVariableToCommandBuffer(2109): Unsupported render state in material "%s"!\n
+AddRenderStateValueLoadToCommandBuffer(1739): Invalid data type for render state variable %s in material "%s"!\n
+AddRenderStateValueLoadToCommandBuffer(1780): Invalid data type for render state variable %s in material "%s"!\n
+AddRenderStateValueLoadToCommandBuffer(1866): Invalid data type for render state variable %s in material "%s"!\n
+AddRenderStateValueLoadToCommandBuffer(1874): Invalid variable source type for render state variable %s in material "%s"!\n
+AddRenderStateVariableToCommandBuffer(1939): Unsupported render state type in material "%s"!\n
+AddRenderStateVariableToCommandBuffer(2087): Unsupported render state in material "%s"!\n
+AddSamplerStateVariableToCommandBuffer(2160): Unsupported sampler state type for "%s" in material "%s"!\n
AddSamplerStateVariableToCommandBuffer(2182): Unsupported sampler state type for "%s" in material "%s"!\n
-AddSamplerStateVariableToCommandBuffer(2204): Unsupported sampler state type for "%s" in material "%s"!\n
All Bad! Talk to Brian and Alex. g_pRenderHardwareConfig is NULL which means we won't load this material correctly: %s\n
All static combo permutations currently loaded:\n
All static combos set to zero
@@ -222,9 +214,6 @@ AllocateAndLoad failed for '%s'\n
Allow
Allow%d
Allow%d(
-Android SM 4.0 (VULKAN)
-Android SM 4.1 (VULKAN)
-Android SM 5.0 (VULKAN)
Arial
Attribute-based texture %s not bound for material "%s"! Missing render attribute "%s". Context %s\n
Attribute-based texture %s not bound for material "%s"! Missing render attribute "%s"\n
@@ -252,22 +241,22 @@ CFontTextureCache::IsCharCached
CMatSystemTexture::SetMaterial
CMatSystemTexture::SetSubTextureRGBA(256):
CMaterial2::ComputeMaterialBatchableFlags
-CMaterial2::GetMode(644): Material "%s" is requesting a bad mode "%s"!\n
+CMaterial2::GetMode(643): Material "%s" is requesting a bad mode "%s"!\n
CMaterial2::GetVertexShaderInputSignature(767): Error! Material "%s" doesn't have any valid layers to get the CVsInputSignatureVector from!\n
CMaterial2::GetVertexShaderInputSignature(799): Error! Material "%s" doesn't have a CVsInputSignatureVector!\n
CMaterial2::GetVertexShaderInputSignature(817): Error! Material "%s" has invalid signature index %d!\n
-CMaterial2::LoadShadersAndSetupModes(1616): Error creating shader %s for material %s!\n
-CMaterialLayer::ComputeWorkItemsToSetupStaticCombosForMode(3154): Failed call to FindOrLoadStaticComboData()!\n
-CMaterialSystem2::DynamicShaderCompile_UnloadAllMaterials(1084): ERROR!!! Shaders not freed before shader reload! (See spew above)\n\n
+CMaterial2::LoadShadersAndSetupModes(1598): Error creating shader %s for material %s!\n
+CMaterialMode::ComputeWorkItemsToSetupStaticCombosForMode(3037): Failed call to FindOrLoadStaticComboData()!\n
+CMaterialMode::FindOrLoadVfx(2410): DxSupportLevel %d not supported!\n
+CMaterialSystem2::DynamicShaderCompile_UnloadAllMaterials(1067): ERROR!!! Shaders not freed before shader reload! (See spew above)\n\n
CMaterialSystem2::FrameUpdate
-CMaterialSystem2::GetErrorMaterial(529): GetErrorMaterial() called when m_pMaterialTypeManager == NULL!\n
-CMaterialSystem2::Init(156): ERROR! Empty shader mode string found! Use "Default" instead!\n
-CMaterialSystem2::Init(172): ERROR! Shader mode "%s" has unsupported type "%s" specified gameinfo.gi!\n
-CMaterialSystem2::Shutdown(510): ERROR!!! Materials not released by other systems on shutdown! (See spew above)\n
-CMaterialSystem2::Shutdown(515): ERROR!!! Shaders not freed on shutdown, likely due to unreleased materials! (See spew above)\n
+CMaterialSystem2::GetErrorMaterial(505): GetErrorMaterial() called when m_pMaterialTypeManager == NULL!\n
+CMaterialSystem2::Init(153): ERROR! Empty shader mode string found! Use "Default" instead!\n
+CMaterialSystem2::Init(169): ERROR! Shader mode "%s" has unsupported type "%s" specified gameinfo.gi!\n
+CMaterialSystem2::SetRenderStateForMode
+CMaterialSystem2::Shutdown(486): ERROR!!! Materials not released by other systems on shutdown! (See spew above)\n
+CMaterialSystem2::Shutdown(491): ERROR!!! Shaders not freed on shutdown, likely due to unreleased materials! (See spew above)\n
CMaterialSystem2Utils
-CMaterialSystem2Utils::AllocateGPUCompressionTextures() - not supported by render device, fallback to CPU compression.\n
-CMaterialSystem2Utils::CompressTextureGPU() - not supported by render device, fallback to CPU compression.\n
CMaterialSystem2Utils::GenerateMipMaps: Can't get resources for compute shader, falling back to normal mipgen.\n
CMaterialSystem2Utils::RenderConvexGeometry
CMaterialSystem2Utils::RenderQuads
@@ -305,22 +294,14 @@ CUtlMemoryBlockAllocator<class CVfxStaticComboData,class CMemAllocAllocator>::Ad
CUtlMemoryBlockAllocator<struct CFontTextureCache::Page_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CFontTextureCache::CacheEntry_t,unsigned short>,class CMemAllocAllocator>::AddPage
CUtlNTree overflow!\n
-CUtlRBTree<struct CFontTextureCache::CacheEntry_t,class CLessFunc<&private: static bool __cdecl CFontTextureCache::CacheEntryLessFunc(struct CFontTextureCache::CacheEntry_t const &,struct CFontTextureCache::CacheEntry_t const &)>,unsigned short,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CFontTextureCache::CacheEntry_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CPlatformFont::abc_cache_t,class CLessFunc<&private: static bool __cdecl CPlatformFont::ExtendedABCWidthsCacheLessFunc(struct CPlatformFont::abc_cache_t const &,struct CPlatformFont::abc_cache_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CPlatformFont::abc_cache_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::Node_t,class CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CFontManager::CFontAttributes,class CFontManager::CFontInfo,class CDefLess<class CFontManager::CFontAttributes>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::Node_t,class CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlStringToken,int,class CDefLess<class CUtlStringToken>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,bool,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,struct `public: void __cdecl CVfxStaticComboData::ComputeVariablesUsedInStaticCombo(class CVfxProgramData const *)'::`2'::BindInfo_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::Node_t,class CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned short,class CFontManager::CFontDataFile,class CDefLess<unsigned short>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
-CVfx::CreateFromVcs(7834): Error opening file %s\n
-CVfx::CreateFromVcs(7867): VCS3 %s Load Failure: %s\n
-CVfx::CreateFromVcs(7880): VCS3 %s Load Failure: %s\n
-CVfx::CreateFromVcs(7909): VCS %s Unserialize hit EOF\n
+CVfx::CreateFromVcs(7750): Error opening file %s\n
+CVfx::CreateFromVcs(7783): VCS3 %s Load Failure: %s\n
+CVfx::CreateFromVcs(7796): VCS3 %s Load Failure: %s\n
+CVfx::CreateFromVcs(7825): VCS %s Unserialize hit EOF\n
CVfx::ParseResourceFileHeader
-CVfxConstructor::Construct(2435): DxSupportLevel %d not supported!\n
CVfxProgramData::CalcStaticComboIdFromValues
-CVfxProgramData::FindOrCreateStaticComboDataInCache(4448): Error! Ref count !=0 for static combo data cache entry!\n
+CVfxProgramData::FindOrCreateStaticComboDataInCache(4364): Error! Ref count !=0 for static combo data cache entry!\n
CVfxStaticComboData::Decompress
Cannot allocate abstract class
ChildOf
@@ -331,7 +312,7 @@ Combo
Command Format: mat_set_shader_quality <value> (valid values are 0 or 1)\n
Compile Target Expression
Compile Targets
-CompileComboAndGetVariables_DynamicShaderCompile(), C:\buildworker\csgo_rel_win64\build\src\materialsystem2\material2.cpp:2786
+CompileComboAndGetVariables_DynamicShaderCompile(), C:\buildworker\csgo_rel_win64\build\src\materialsystem2\material2.cpp:2662
CompileShadersForFeatureCombo
CompileTargets
Compiled
@@ -346,7 +327,6 @@ Courier New
Custom font '%s' is already registered, ignoring new registration '%s' range %d - %d\n
Custom font file '%s' should be assocated with a font name, will be ignored on Linux and Mac\n
DXBC
-D_DISPATCH_MODE
D_FADE_COLOR
DefaultFontAliasGroup
DefaultTextureBuffer
@@ -383,7 +363,7 @@ FEATURES
FIXME!
Failed to Allocate a Dynamic Index Buffer of size %u\n
Failed to Allocate a Dynamic Vertex Buffer of size %u\n
-Failed to allocate an instance of a class
+Failed to allocate an instance of a class of type '%s'
Failed to call CBaseIntrospectedToKV3TypeManager::Init
Failed to load debug font %s
Failed to load font file '%s'\n
@@ -397,39 +377,32 @@ Features
FrameUpdate
G(knN
GLSL.std.450
-G\tV_iswcntrl
Ga=UU
Geometry Shader
GetCharABCWidthsW
-GetDefaultValueFromVariableDescription(410): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
-GetDefaultValueFromVariableDescription(415): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
+GetDefaultValueFromVariableDescription(388): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
+GetDefaultValueFromVariableDescription(393): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
GetGlyphOutlineA
-GetRenderStateValue(1047): Invalid data type for render state variable %s in material "%s"!\n
-GetRenderStateValue(1100): Invalid data type for render state variable %s in material "%s"!\n
-GetRenderStateValue(1107): Error evaluating expression for render state variable %s in material "%s"!\n
-GetRenderStateValue(1113): Invalid variable source type for render state variable %s in material "%s"!\n
-GetValueFromDynamicMaterialParam(552): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
-GetValueFromDynamicMaterialParam(557): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
-GetValueFromMaterialParam(470): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
-GetValueFromMaterialParam(475): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
-GetValueFromMaterialParamAsVector4D(1461): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
-GetValueFromMaterialParamAsVector4D(1466): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
+GetRenderStateValue(1025): Invalid data type for render state variable %s in material "%s"!\n
+GetRenderStateValue(1078): Invalid data type for render state variable %s in material "%s"!\n
+GetRenderStateValue(1085): Error evaluating expression for render state variable %s in material "%s"!\n
+GetRenderStateValue(1091): Invalid variable source type for render state variable %s in material "%s"!\n
+GetValueFromDynamicMaterialParam(530): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
+GetValueFromDynamicMaterialParam(535): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
+GetValueFromMaterialParam(448): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
+GetValueFromMaterialParam(453): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
+GetValueFromMaterialParamAsVector4D(1439): Trying to set VFX_VARIABLE_TYPE_MATRIX_* but this isn't supported yet! In material "%s"\n
+GetValueFromMaterialParamAsVector4D(1444): Bad VFX_VARIABlE type for VFX_VARIABLE_SOURCE_SET_BY_ARTIST %s in material "%s"!\n
Glyph Miss: FontHandle_t:0x%8.8llx (%s), %s\n
GraphicsMisc
HEADER
HEX_DIGIT
IKV3TransferInterface_ResourceSave
-IOS_VULKAN
-IOS_VULKAN_4_0
-IOS_VULKAN_4_1
-IOS_VULKAN_5_0
ISGN
IS_DIRECTX
-IS_MOBILE
IS_PC
IS_SM_
IS_VULKAN
-ImageSize
Incorrect vpk path delimiter for shader %s\n
InvTextureDim
InvViewportSize
@@ -443,14 +416,15 @@ MainPs
MainVs
Malgun Gothic
Marlett
-MatPrintShaderInfo(3533): Error reading index!\n
-MatPrintShaders(3249): pVfx == NULL!\n
-MatPrintShaders(3298): pVfx == NULL!\n
+MatPrintShaderInfo(3504): Error reading index!\n
+MatPrintShaders(3221): pVfx == NULL!\n
+MatPrintShaders(3270): pVfx == NULL!\n
MatUtilsRenderMesh
MatUtilsRenderOutlinedRect
MatUtilsRenderPrimitives
Material %s (shader %s) nonbatchable in mode "%s" because of dynamic CB for %s. These constants are responsible:\n
Material %s is required to be batchable in mode "%s". See -batcherrors file.\n
+Material (%s) using shader(%s) is requesting a mesh shader but does not have one!
Material CPU memory: %.2f KB\n
Material Creation
Material Shader Setup
@@ -489,24 +463,9 @@ NoZPrepass
Not safe to 'new' this class due to alignment requirements
OCTAL_ESC
OSGN
-OutputBC7Texture
-OutputBC7Texture_1x1
-OutputBC7Texture_2x2
-OutputDXT5Texture
-OutputDXT5Texture_1x1
-OutputDXT5Texture_2x2
-OutputDXT5Texture_4x4
-PC SM 4.0 (D3D10)
-PC SM 4.0 (VULKAN)
-PC SM 4.1 (D3D10.1)
-PC SM 4.1 (VULKAN)
PC SM 5.0 (D3D11)
PC SM 5.0 (VULKAN)
PC SM 6.0 (VULKAN)
-PC_SM_4_0
-PC_SM_4_0_VULKAN
-PC_SM_4_1
-PC_SM_4_1_VULKAN
PC_SM_5_0
PC_SM_5_0_VULKAN
PC_SM_6_0_VULKAN
@@ -523,12 +482,14 @@ Pixel Shader
Pixel Shader Render State
Polygon too large (%d points / max %d, %d indices / max %d), ignoring
PostProcessing
+PostProcessingLocalExposureParameters_t
PostProcessingSystemManifest
Program MD5 is out of date with features! %s\n
Programmer Error! Static combo not loaded!\n
RD11<
RDEFH
RESOURCE_TYPE_MATERIAL
+R\tV_iswcntrl
RayTrace
Raytracing Shader
Remap01ScaleOffset
@@ -550,9 +511,7 @@ SUPPORTS_GS
SV_ClipDistance
SV_Position
SV_Target
-S_BINDLESS_RUNTIME
S_EXECUTION_REORDERING
-S_MOBILE
S_MOLTEN_VK
S_REVERSE_DEPTH_BUFFER
S_SHADER_QUALITY
@@ -561,15 +520,15 @@ S_SUPPORTS_CLIP_DISTANCE
S_SUPPORTS_DX_11_1
S_TOOLS_ENABLED
S_VR
-SetRenderStateValueFromVariable(1172): Unsupported render state type in material "%s"!\n
-SetSamplerStateValueFromVariable(1190): Sampler index %d out of bounds for "%s" in material "%s"!\n
-SetSamplerStateValueFromVariable(1263): Unsupported sampler state type for "%s" in material "%s"!\n
+SetRenderStateValueFromVariable(1150): Unsupported render state type in material "%s"!\n
+SetSamplerStateValueFromVariable(1168): Sampler index %d out of bounds for "%s" in material "%s"!\n
+SetSamplerStateValueFromVariable(1241): Unsupported sampler state type for "%s" in material "%s"!\n
SetSubTextureRGBA: Invalid texture id %i\n
SetTextAlign
SetTextureRGBA: Invalid texture id %i\n
-SetVariable(1346): Could not bind constant buffer "%s" because the constant buffer handle was invalid in material "%s"!\n
-SetVariable(1363): Error setting constant for REGISTER_FLOAT4 for "%s" in material "%s"! Talk to a programmer!\n
-SetVariableValue(1002): Unknown variable type for %s in material "%s"!\n
+SetVariable(1324): Could not bind constant buffer "%s" because the constant buffer handle was invalid in material "%s"!\n
+SetVariable(1341): Error setting constant for REGISTER_FLOAT4 for "%s" in material "%s"! Talk to a programmer!\n
+SetVariableValue(980): Unknown variable type for %s in material "%s"!\n
Shader %s attribute "%s" has inconsistent value or type across multiple shaders of a feature combo! [
Shader %s doesn't support compile target %s\n
Shader Quality set to %d\n
@@ -581,18 +540,14 @@ ShaderIDColor
ShaderIDColors
ShadingComplexity
Spawning %d compile jobs\n
-SrcTex_1x1
-SrcTex_2x2
SrgbGammaToLinear
SrgbLinearToGamma
-Static combo loading spun for %.5fms\n
Static combos:\n
StaticCombo
StaticComboRule
SupportsMappingDimensions
TANGENT
TEXCOORD
-T\tV_log2f
Texture %s doesn't exist in %s!\n
Texture dictionary loading texture "%s" directly\n
TextureAverageColor
@@ -676,14 +631,14 @@ WARNING: Invalid resource version (%d): %s\n
\n*** A feature alias in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A feature in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A static combo in %s doesn't start with "S_"! Aborting shader compile!\n\n
-\n*** CMaterial2::LoadShadersAndSetupModes(1548): Error! Trying to load material "%s" without any params!\n
-\n*** CVfx::ParseBoolFromFile(6414): Error opening file "%s"!\n\n
-\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file "%s"!\n\n
-\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file "%s"!\n\n
-\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file "%s"!\n\n
-\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list"%s"!\n\n
-\n*** CVfx::ParseModesFromFile(5909): Error opening file "%s"!\n\n
-\n*** CVfx::ParseVersionFromFile(6460): Error opening file "%s"!\n\n
+\n*** CMaterial2::LoadShadersAndSetupModes(1536): Error! Trying to load material "%s" without any params!\n
+\n*** CVfx::ParseBoolFromFile(6330): Error opening file "%s"!\n\n
+\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file "%s"!\n\n
+\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file "%s"!\n\n
+\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file "%s"!\n\n
+\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list"%s"!\n\n
+\n*** CVfx::ParseModesFromFile(5825): Error opening file "%s"!\n\n
+\n*** CVfx::ParseVersionFromFile(6376): Error opening file "%s"!\n\n
\n*** Combo "%s" in %s doesn't match a known combo source!\n\n
\n*** Combo "%s" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\n\n
\n*** Combo "%s" in %s has arg %s that doesn't match an existing feature!\n\n
@@ -735,21 +690,21 @@ WARNING: Invalid resource version (%d): %s\n
\n*** Unable to parse Version in HEADER section of %s!\n\n
\n*** Unknown rule "%s" in %s!\n\n
\n*** Unknown text found in FEATURES section in %s: "%s"\n\n
-\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file "%s"!\n\n
-\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file "%s"!\n\n
+\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file "%s"!\n\n
+\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file "%s"!\n\n
\n//-----------------------------------\n
-\nCMaterial2::LoadShadersAndSetupModes(1543): Error! Material "%s" is already loaded!\n
-\nCMaterial2::LoadShadersAndSetupModes(1577): Cannot find shader entry in material "%s"! Using error.vfx!\n
-\nCMaterial2::LoadShadersAndSetupModes(1620): Error creating shader %s and cannot load error.vfx instead!\n
-\nCMaterial2::LoadShadersAndSetupModes(1659): Error creating fallback shader %s for %s for material %s! A fallback shader cannot fallback to a different shader!\n
-\nCMaterial2::LoadShadersAndSetupModes(1671): Error creating fallback shader %s for %s for material %s!\n
-\nCMaterial2::LoadShadersAndSetupModes(1675): Error creating fallback shader %s for %s and cannot load error.vfx instead!\n
-\nCMaterial2::LoadShadersAndSetupModes(1702): Error creating shader %s for material %s!\n
-\nCMaterial2::LoadShadersAndSetupModes(1707): Error creating shader %s and cannot load error.vfx instead!\n
-\nCMaterial2::LoadShadersAndSetupModes(1717): Error creating static combos for shader %s and error.vfx instead!\n
-\nCMaterialLayer::CreateCommandBuffer(4446): Find a graphics programmer! Trying to bind a "%s" shader that doesn't exist! for %s\n
-\nCMaterialMode::ComputeRenderablePassesForContextInternal(3569): All bad! The error material failed in dynamic shader compile!\n
-\nCompileComboAndGetVariables_DynamicShaderCompile(2847): Dynamic shader compile failed for %s in material "%s"!\n
+\nCMaterial2::LoadShadersAndSetupModes(1531): Error! Material "%s" is already loaded!\n
+\nCMaterial2::LoadShadersAndSetupModes(1562): Cannot find shader entry in material "%s"! Using error.vfx!\n
+\nCMaterial2::LoadShadersAndSetupModes(1602): Error creating shader %s and cannot load error.vfx instead!\n
+\nCMaterial2::LoadShadersAndSetupModes(1641): Error creating fallback shader %s for %s for material %s! A fallback shader cannot fallback to a different shader!\n
+\nCMaterial2::LoadShadersAndSetupModes(1653): Error creating fallback shader %s for %s for material %s!\n
+\nCMaterial2::LoadShadersAndSetupModes(1657): Error creating fallback shader %s for %s and cannot load error.vfx instead!\n
+\nCMaterial2::LoadShadersAndSetupModes(1684): Error creating shader %s for material %s!\n
+\nCMaterial2::LoadShadersAndSetupModes(1689): Error creating shader %s and cannot load error.vfx instead!\n
+\nCMaterial2::LoadShadersAndSetupModes(1699): Error creating static combos for shader %s and error.vfx instead!\n
+\nCMaterialMode::ComputeRenderablePassesForContextInternal(3452): All bad! The error material failed in dynamic shader compile!\n
+\nCMaterialMode::CreateCommandBuffer(4331): Find a graphics programmer! Trying to bind a "%s" shader that doesn't exist! for %s\n
+\nCompileComboAndGetVariables_DynamicShaderCompile(2723): Dynamic shader compile failed for %s in material "%s"!\n
\nInitDynamicShaderCompileDLL(119): ERROR! Can't load vfx_dx dll, dynamic shader compile unavailable!\n
\nMS,\nVS_MS_RTX
\nPS_RENDER_STATE
@@ -761,16 +716,23 @@ WARNING: Invalid resource version (%d): %s\n
\n\t%02i%% (%i/%i)
\n\t\tDynamic:
\src\shaders\
-\tV_ZSTD_getFrameContentSize
-\tV_exp2f
+\tV_ZSTD_createDCtx
+\tV_ZSTD_createDDict_byReference
+\tV_ZSTD_decompress
+\tV_ZSTD_decompress_usingDDict
+\tV_ZSTD_freeDCtx
+\tV_ZSTD_getDictID_fromDDict
+\tV_ZSTD_getDictID_fromFrame
\tV_strspn
\tV_strtoui64
\tV_towupper32
\t\tStatic:
+\t\tV_ZSTD_getFrameContentSize
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_strcspn
^^^ Attribute-based texture warning is now disabled after outputting 50 warnings.\n
^^^ Constant buffer warning is now disabled after outputting 50 warnings.\n
+_\tV_log2f
__Attribute__
__Expression__
__FROM_ATTRIBUTE_OR_FEATURE__
@@ -789,7 +751,6 @@ _copy%u
_feature
_psrs
_rtx
-a\tV_powd
appendstructuredbuffer
blendStateDesc
bool2
@@ -939,17 +900,13 @@ g_vWrinkleScaleOffset
g_vXenAnimation
game_controls
gamelayer
-gs_4_0
-gs_4_1
gs_5_0
gs_6_0
iEJA+
-iOS SM 4.0 (VULKAN)
-iOS SM 4.1 (VULKAN)
-iOS SM 5.0 (VULKAN)
int2
int3
int4
+l\tV_powd
lerp
lib_6_4
log2
@@ -962,6 +919,7 @@ m_attributes
m_bAllowLayerOverride
m_bDevShader
m_bGlobalsBDA
+m_bHasLocalExposureParams
m_bHasShaderProgram
m_bIsLayerConstant
m_bStaticCB
@@ -977,6 +935,13 @@ m_dynamicComboRuleArray
m_dynamicComboVars
m_dynamicComboVarsRef
m_expr
+m_fBoostLocalContrast
+m_fHighlightOffsetEV
+m_fShadowOffsetEV
+m_fSigma
+m_fWaterDensity
+m_fWaterDepthBlurRadius
+m_fWaterScale
m_flDefault
m_flUiStep
m_hash
@@ -989,6 +954,7 @@ m_inputProcessingCommand
m_intDefault
m_intMax
m_intMin
+m_localExposureParams
m_mipProcessingCommand
m_modeArray
m_nByteCodeDataIdx
@@ -1081,8 +1047,6 @@ nBatchIndices <= 16384
nBatchIndices <= nMaxIndexCountPerPass
normalize_safe
procedural
-ps_4_0
-ps_4_1
ps_5_0
ps_6_0
psrs
@@ -1116,8 +1080,6 @@ schemasystem
setting.shaderquality
shader
shaders\vfx
-shaders_android_vulkan.vpk
-shaders_ios_vulkan.vpk
shaders_pc.vpk
shaders_vulkan.vpk
sign
@@ -1139,9 +1101,6 @@ v$G2
vfx_dx11
vfx_vulkan
vfxc
-view.bIsToolView
-vs_4_0
-vs_4_1
vs_5_0
vs_6_0
win98japanese
game/bin/win64/meshsystem_strings.txt
modified • +46 / -12 • changes: 58
Show patch
@@ -106,17 +106,20 @@
.?AVIMeshSystem@@
.?AVIMeshUtils@@
.?AVIPoseAccessor@@
+.?AVIRD_AsyncProcessDataUtils@@
.?AVIRD_RegisterResourceDataUtils@@
+.?AVIRD_ResourceExtrefUtils@@
.?AVIResourceTypeManager@@
.?AVISceneObjectDesc@@
.?AVISequence@@
.?AVIShaderReloadListener@@
.?AVIVPhysicsLegacyKeyHandler@@
.vmdl
-2\vpd
-2\vpde
+2\vpT
2_BONE_IK
8a\v6;
+;1#INF
+<non-RTTI type>
<pair_a>
<pair_b>
=3vmdlkeys4
@@ -196,11 +199,12 @@ CModelAttachmentName
CModelBodyGroupName
CModelBoneName
CModelMaterialGroupName
-CModelMeshBufferData_t
CModelTypeManager::FinalizeResource
-CModelTypeManager::GetErrorResource(117): GetErrorModel() called before error model exists!\n
+CModelTypeManager::GetErrorResource(118): GetErrorModel() called before error model exists!\n
CParentAttachmentName
-CRenderMesh::CreateBufferResources(1023):
+CRenderMesh::CreateBufferResources(1199):
+CRenderMeshSlotType_t
+CSceneObjectData::CreateMeshletResources(985):
CStrongHandle
CStrongHandleCopyable
CTransform
@@ -225,18 +229,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CRenderBufferBinding,2,int,class CMemAllocAllocator>,struct CRenderBufferBinding,int>::AddMultipleToTail
CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage
-CUtlRBTree<struct CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CRenderMesh const *,class CMeshRayTrace *,class CDefLess<class CRenderMesh const *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
Cables
Cannot allocate abstract class
Cannot deallocate abstract class
Class does not allow allocation from its schema binding
Class does not allow deallocation from its schema binding
Control block error for '%s'\n
+Cylinder - Centered (SLOW PERF)
+Cylinder - Ground (SLOW PERF)
D16_UNORM
D24_UNORM_S8_UINT
D32_FLOAT
@@ -248,10 +254,12 @@ Data_Branch2yz
DisableLODBlending
DistanceFieldList_t
DrawIndexedTriangles(145):
+DualHull
+EnsureCapacity
Expected an array with two elements when loading a std::pair.
FORCE_UINT
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to call CBaseIntrospectedToKV3TypeManager::Init
Failed to load distance field KV3 data.\n
FoliageAnimation
@@ -275,6 +283,7 @@ LoadModelSyncNoExtrefs - Model is incompatible version\n
MATERIAL_ATTRIBUTE:
MAlternateSemanticName
MAtomicTransfersAsPlainString
+MESH_BUFFER_USAGE_VERTEX_EMISSIVE
MFgdHelper
MIsStringAndTokenType
MKV3TransferName
@@ -285,6 +294,7 @@ MPropertySuppressField
Mesh needs recompiling: '%s' (invalid version: %d)\nBrowse to the corresponding model in asset browser, right click and select Full Recompile.
MeshSystem
MeshSystem/UseIndexBufferPool
+MeshSystem/UseVertexBufferPool
Missing buffers for mesh (%s: %d)\n
Missing data block for mesh (%s: %d)\n
Missing vbib block for mesh (%s: %d)\n
@@ -311,7 +321,6 @@ OverlayProjectionDirection
PARENT
POSE_SPACE_BONE
POSE_SPACE_MORPH
-PackedBlobNormal
ParentAttachmentName()
Particles
PerVertexLighting
@@ -378,10 +387,12 @@ R8_SNORM
R8_TYPELESS
R8_UNORM
R9G9B9E5_SHAREDEXP
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RESOURCE_TYPE_MODEL
RESOURCE_TYPE_MORPHSET_INTERNAL
RESOURCE_TYPE_RENDERMESH_INTERNAL
ROTATION
+R\fpL
RayTracingEnvironment::RefineNode
RayTracingEnvironment::RefineNodeJob
Rejecting load for legacy model: '%s'\n
@@ -397,10 +408,17 @@ Tried to load resource reference '%s' from a value without a resource reference
Trying to override a material with an invalid draw call index\n
Trying to override the same draw call with two different materials!\nOnly the last override will be set!\n
TypeManager
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
USAGE: print_model_bind_pose <vmdl_name> [bone_name]\n
Unable to load tools vb block (%s: %d)\n
Unable to read resource file %s!\n
Untested code path - Morph layers without morphset/flex rules. Will try to map model flex controllers directly to cloth morph layers
+UpscalerType_t
VModelError
VectorAligned
VertexElementAnnotation
@@ -414,6 +432,7 @@ Whether to support legacy (pre-modeldoc) models
X24_TYPELESS_G8_UINT
X32_TYPELESS_G8X24_UINT
[idx=%d] "%s"
+\tV_ZSTD_decompress
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
_VertexGenericIntegerData
acosf
@@ -422,7 +441,6 @@ anim_data_block
anim_graph_resource
bOwnVBAndIB == m_bOwnVBAndIB && m_pFixedMeshDataOverride
bShaderBlended
-b\vP\n0
bentnormal
blendindices
blendweight
@@ -439,6 +457,8 @@ compressedtangentframe
curvature
data_block
distancefield_data_block
+eCenteredCylinder
+eGroundCylinder
embedded_animation
embedded_distancefield
embedded_meshes
@@ -458,6 +478,7 @@ interactive
legacy_models_supported
lowprecisionuv
lowprecisionuv1
+m_BoneMergeLinks
m_Format
m_Stops
m_attachments
@@ -478,20 +499,32 @@ m_bUseShadowFastPath
m_bounds
m_distanceFields
m_eRbfType
+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_fEmissiveFactor
m_flGridCellSize
m_flMaxQuantizedDistance
m_flSurfaceBias
m_hitboxsets
m_influenceFlags
+m_materialGroupToken
m_morphSet
m_nBodyGroupChoice
m_nBodyGroupIndex
+m_nChildNode
m_nParentBoneNameHash
+m_nParentHash
m_nResX
m_nResY
m_nResZ
+m_nSrcDrawIndex
+m_nVertexEmissiveFormat
+m_nVertexEmissiveOffset
+m_nVertexEmissiveStride
+m_nVertexEmissiveVB
m_quantizedData
m_rbfParameters
+m_rootBvhNodes
materialgroup_driven_morph_list
materialgroup_name
materials/tools/show_skeleton.vmat
@@ -517,18 +550,19 @@ placementbone
posxyz
print_model_bind_pose
projectedDecal
+r\vpL
reload_model
resourcesystem
root
seqgroup_data_block
slow
std::pair
-tBSheetSequenceIntegerId_t
+tBRenderBufferFlags_t
tangent
tangentu_signv
texcoord
-tools.light_volume_boundary
tools.reference_notrace
+tools.toolsmaterial
tools_vb_block
vbib_block
very_fast
game/bin/win64/modeldoc_utils_strings.txt
modified • +229 / -133 • changes: 362
Show patch
@@ -18,7 +18,7 @@
+ Shape %3d Deltas: %5d - %s\n
- Searched %s
Bad Fax Lines: %lu\n
- C%d:I%-2d {F=%-10d,V=%-10d}
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -112,10 +112,12 @@
#?ObjectType@FbxCriteria@fbxsdk@@SA?AV12@AEBVFbxClassId@2@@Z
#CfU7
#This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\n
+#\tV_exp2f
$@RGBA8888
$DiffuseColor
$ModelPath$/transmission
$TransparentColor
+$\tV_expd
$modelname$
$modelname$_cavity
$modelname$_masks
@@ -162,6 +164,7 @@ $prefix_element$
%llx
%lu: Row out of range, max %lu
%lu: Sample out of range, max %lu
+%oNj
%s %s -> %s
%s %s decoding is not implemented
%s %s encoding is not implemented
@@ -190,6 +193,7 @@ $prefix_element$
%s on any hitboxes or physics bodies. This part won't be destructible by damage.
%s on physics bodies (exists on hitboxes though). Destroying this part will still leave collision active.
%s references unknown mesh: '%s'
+%s%02d:%02d
%s%s: FGD Parse error: %s %s\n
%s(%d) : %s\n
%s(%d): error: %s
@@ -452,7 +456,6 @@ $prefix_element$
.?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -532,7 +535,6 @@ $prefix_element$
.?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -755,6 +757,7 @@ $prefix_element$
.?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -987,6 +990,7 @@ $prefix_element$
.?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1166,6 +1170,7 @@ $prefix_element$
.?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1252,6 +1257,7 @@ $prefix_element$
.?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1334,6 +1340,7 @@ $prefix_element$
.?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1709,15 +1716,19 @@ $prefix_element$
.?AUCAttr_no_member@?L@??GetStaticAttributes@CModelDocIKChain@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCMorphSetData@@
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AUCScaleBiasFilter@CModelDocClothProxyMeshFile@@
.?AUNodeResolveInfo_t@@
.?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@
-.?AV<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NPEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@
+.?AV<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NW4LoaderDataType_t@@PEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@
.?AV<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@
+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@
.?AV<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@
.?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@
.?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
.?AV<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
@@ -1762,6 +1773,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@
@@ -1884,6 +1896,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@
@@ -2067,7 +2080,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -2079,7 +2091,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2257,6 +2268,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -2469,6 +2481,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@
@@ -2591,6 +2604,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@
@@ -2736,7 +2750,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -2748,7 +2761,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2926,6 +2938,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -3138,6 +3151,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@
+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@
@@ -3260,6 +3274,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@
+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@
@@ -3443,7 +3458,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@
@@ -3455,7 +3469,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@
@@ -3633,6 +3646,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@
.?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@
.?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@
+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@
.?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@
.?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@
.?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@
@@ -3877,6 +3891,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@
+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@
@@ -3998,6 +4013,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@
@@ -4139,7 +4155,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -4150,7 +4165,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -4320,6 +4334,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -4529,6 +4544,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@
@@ -4649,6 +4665,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@
@@ -4820,7 +4837,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@
-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@
@@ -5004,6 +5020,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@
@@ -5480,6 +5497,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@
+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@
@@ -5601,6 +5619,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@
@@ -5742,7 +5761,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -5753,7 +5771,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -5923,6 +5940,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -6099,7 +6117,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@
.?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@
-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@
.?AV?$CTypedLogLayerSampleData@E@@
.?AV?$CTypedLogLayerSampleData@H@@
@@ -6304,6 +6321,7 @@ $prefix_element$
.?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6365,6 +6383,7 @@ $prefix_element$
.?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6419,13 +6438,18 @@ $prefix_element$
.?AV?$RemapIndexFunctor@$0A@$0A@VFbxLayerElementUserData@fbxsdk@@@@
.?AV?$_Func_base@HPEBVFbxLayerElementUserData@fbxsdk@@HH@std@@
.?AV?$_Func_base@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@
+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@
.?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NPEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??LoadAnimationDataFromFile@CModelDocLoaderUtils@@AEAA_NW4LoaderDataType_t@@PEBDPEAVCModelDoc@@PEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@PEAVIModelDocErrorHandler@@@Z@PEAVCModelAnim@@W4ModelDocAnimProcessFlags_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BJ@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
@@ -6772,7 +6796,6 @@ $prefix_element$
.?AVCModelDocAnimatedMaterialAttributeColor@@
.?AVCModelDocAnimatedMaterialAttributeValue@@
.?AVCModelDocAnimationList@@
-.?AVCModelDocAssociatedPulseGraph@@
.?AVCModelDocAtom@@
.?AVCModelDocAttachment@@
.?AVCModelDocAttachmentBase@@
@@ -7272,6 +7295,7 @@ $prefix_element$
.?AVcodecvt_base@std@@
.?AVnoncopyable@v11@Util@Alembic@@
.?AVregex_error@std@@
+.P6AXPEBDPEAVCBufferString@@@Z
.ani
.animChans
.arbGeomParams
@@ -7312,11 +7336,9 @@ $prefix_element$
.webp
.xform
// FRAMERATE=%f
-0$xn
-0X`n
+0\fan
0\r%0t
-0\tV_frexpf
-0`Li
+0tzn
0x%llx
16-byte data pool
180_recovery
@@ -7332,8 +7354,7 @@ $prefix_element$
2DBlendEditor
2DBlendFromAnimation
2\n??9FbxDataType@fbxsdk@@QEBA_NAEBV01@@Z
-2\vp$xn
-2\vpt
+2\vptzn
2_BONE_IK
4-byte data pool
4\r54t
@@ -7349,6 +7370,7 @@ $prefix_element$
8-byte data pool
969p
9>powf
+9\tV_frexpf
:: <NO TARGET BONE>
:\n??9FbxProperty@fbxsdk@@QEBA_NAEBV01@@Z
; FBX %d.%d.%d
@@ -7363,6 +7385,7 @@ $prefix_element$
<font color="red">Face is connected to itself, cannot dissolve</font>
<font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>
<font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.
+<non-RTTI type>
<none>\n
<p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>
<pair_a>
@@ -7374,7 +7397,7 @@ $prefix_element$
=CAnimFoot
=fff?
>"?IsValid@FbxProperty@fbxsdk@@QEBA_NXZ
->Hull
+>PushBack
??$EvaluateValue@M@FbxProperty@fbxsdk@@QEAAMAEBVFbxTime@1@_N@Z
??0FbxAMatrix@fbxsdk@@QEAA@AEBV01@@Z
??0FbxAxisSystem@fbxsdk@@QEAA@W4EUpVector@01@W4EFrontVector@01@W4ECoordSystem@01@@Z
@@ -7476,6 +7499,8 @@ $prefix_element$
?GetControlPointIndicesCount@FbxCluster@fbxsdk@@QEBAHXZ
?GetControlPointWeights@FbxCluster@fbxsdk@@QEBAPEANXZ
?GetCount@FbxLayerElementArray@fbxsdk@@QEBAHXZ
+?GetCurrentAnimationStack@FbxScene@fbxsdk@@QEAAPEAVFbxAnimStack@2@XZ
+?GetCurve@FbxProperty@fbxsdk@@QEAAPEAVFbxAnimCurve@2@PEAVFbxAnimLayer@2@PEBD_N@Z
?GetDataName@FbxLayerElementUserData@fbxsdk@@QEBAPEBDH@Z
?GetDataType@FbxLayerElementUserData@fbxsdk@@QEBA?AVFbxDataType@2@H@Z
?GetDeformer@FbxGeometry@fbxsdk@@QEBAPEAVFbxDeformer@2@HW4EDeformerType@32@PEAVFbxStatus@2@@Z
@@ -7562,9 +7587,9 @@ $prefix_element$
?GetTargetShapeFullWeights@FbxBlendShapeChannel@fbxsdk@@QEAAPEANXZ
?GetType@FbxDataType@fbxsdk@@QEBA?AW4EFbxType@2@XZ
?Should we try to straighten two faces connected to this edge? (tangent)
-?\tV_isfinited
?catmullrom_normalize_x
?expf
+?mesh_calculate_curvature_smooth_pass_count
?sqrt
?vtex
@%s_lookFrame_0
@@ -7699,6 +7724,7 @@ Add Bones To Render Mesh
Add Center Vertex
Add Curvature
Add Extra Boundary Voxels
+Add Flags
Add Margin
Add R%d <- R%d + R%d
Add Radius
@@ -7709,6 +7735,7 @@ Add a bone to the bindpose skeleton
Add a hold to shorter animations in the blend to match frame counts on all blends
Add a voronoi plane mesh primitive.
Add box mesh primitive.
+Add flags to the given value.
Add noise
Add plane mesh primitive.
Add self amount for combined additive and alpha blended
@@ -7732,6 +7759,7 @@ Affect Edges
Affect Faces
Affect Parents
Affect Vertices
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
AggregateRenderMesh
Aggressive
Aim Offset
@@ -7783,7 +7811,6 @@ Alpha decoder initialization failed.
Already have three vertices defined for this triangle\n
Also Missing Exclusive Detail Layers
Also select faces using any of these additional materials.
-Always
Ambient Occlusion Map
Ambient Occlusion Map Power
Amount of accumulated force to preserve
@@ -7965,9 +7992,10 @@ AsShotPreProfileMatrix
AsShotWhiteXY
Assert True
Asserts (fails compilation) if selection criteria is not met.
+AssetBrowse( %s )
AssetBrowse( vnmclip )
AssetBrowse( vnmgraph )
-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )
+AssetBrowse()
Assign A Channel
Assign B Channel
Assign Bone Parent
@@ -7984,10 +8012,11 @@ Assign to All Faces
Assigns a color value to a material attribute over a frame range.
Assigns a floating point value to a material attribute over a frame range.
Assigns all vertex weights to the specified bone.
-AssociatedPulseGraph
Associates a semantic identifier with an animgraph2 used by this model.
-Async Fire C%d:I%d
-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
+Async Call Method (Child Cursor) C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
Attach Point
Attach to Morphing Base Mesh
AttachedSoundEvent
@@ -8058,7 +8087,6 @@ Bad class description
Bad code word
Bad config reference '%s'
Bad content path: %s
-Bad count in ArraySetCount (%d)
Bad input/output type '%s'
Bad max in ArrayFirstNElements (%d)
Bad metadata for %s
@@ -8114,6 +8142,7 @@ BaseTextureGenerator
BaselineExposure
BaselineNoise
BaselineSharpness
+Basic string support.
BayerGreenSplit
BeenSimplified
Begin testing a condition composed of Observable values. Continues checking until canceled.
@@ -8144,9 +8173,12 @@ Blend Weights Per Vertex
BlendLayersUsingTimeSelection
Blur Radius
Bm_Plane
+Bodies are ordered by bone depth (root bone body is first)
+Bodies are ordered the way their shapes appear in the shape list
Body Collection
Body Group Choice
Body Group Name
+Body Order
BodyGroupList
Bone "%s" parent bone %d doesn't exist. Only %d bones currently defined.\n
Bone "%s" specified as bone %d but should be bone %d\n
@@ -8160,9 +8192,11 @@ Bone 1
Bone 2
Bone 3
Bone Cull Type
+Bone Depth
Bone Influence Filter
Bone Influence Filter Threshold
Bone Input ::
+Bone Merge (Ex)
Bone Names
Bone Rename failed, results in duplicate bone '%s' in this animation
Bone Rename failed, results in duplicate bones in this animation
@@ -8174,6 +8208,7 @@ Bone flags markup data
Bone name
Bone names must differ
Bone or Attachment
+Bone-Direct
BoneConstraintRbf :: Cannot find input bone "%s" :: %s\n
BoneConstraintRbf :: Cannot find output bone "%s" :: %s\n
BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\n
@@ -8185,6 +8220,7 @@ BoneFlags data present but skipped. (If there are serious problems, experiment w
BoneMarkup
BoneMarkupList
BoneName
+BoneOverlay
BoneRelativeNode
BoneReplacements
Bonemerged
@@ -8200,8 +8236,6 @@ Bounds Hull
Bounds Maxs
Bounds Mins
Bounds View
-BoundsOffset
-BoundsScale
Box De-Select (
Box Dimensions
Box Primitive
@@ -8231,7 +8265,6 @@ C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_texture_generator.
C:\buildworker\csgo_rel_win64\build\src\movieobjects\dmelog.cpp
C:\buildworker\csgo_rel_win64\build\src\movieobjects\dmerigconstraintoperators.cpp
C:\buildworker\csgo_rel_win64\build\src\public\fbxsystem\fbxsystem.cpp
-C:\buildworker\csgo_rel_win64\build\src\public\tier0\keyvalues3.inl
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlblockvector.h
C:\buildworker\csgo_rel_win64\build\src\toolrenderutils\toolmatsysutils.cpp
C:\buildworker\csgo_rel_win64\build\src\toolrenderutils\toolstandardmodels.cpp
@@ -8400,7 +8433,6 @@ CModelDocAnimatedMaterialAttribute
CModelDocAnimatedMaterialAttributeColor
CModelDocAnimatedMaterialAttributeValue
CModelDocAnimationList
-CModelDocAssociatedPulseGraph
CModelDocAtom
CModelDocAttachment
CModelDocAttachmentBase
@@ -8581,7 +8613,7 @@ CModelDocModelModifier_FoliageVertexNormals
CModelDocModelModifier_FoliageVertexNormals: Computing...
CModelDocModelModifier_FoliageVertexNormals: Computing...\n
CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\n
-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1147
+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1148
CModelDocModelModifier_GenerateDecalUVs
CModelDocModelModifier_RenameBone
CModelDocModelModifier_ReplaceResourceReferenceSubstring
@@ -8690,9 +8722,9 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -8702,26 +8734,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
CPulseCell_PickBestOutflowSelector::ProcessSelector
CPulseCell_Step_CallExternalMethod '%s'
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseMathlib::AbsFloat
CPulseMathlib::AbsInt
CPulseMathlib::ArcCos
@@ -8758,6 +8792,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -8787,16 +8822,21 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseTestScriptLib::AssertTrue
CPulseTestScriptLib::IndicateTestFailure
CPulseTestScriptLib::IsInTestMode
CPulseTestScriptLib::RegisterTestCheckpoint
CPulseTestScriptLib::TestModeAssertTrue
+CREATE_CHILD_CURSOR_OUTFLOW
CRenderMeshSimplifyParams
CResourceArray< ModelReference_t >
CResourceExtReference< CWeakHandle< InfoForResourceTypeCModel > >
@@ -8847,6 +8887,7 @@ CStrongHandle
CStrongHandle< InfoForResourceTypeIMaterial2 >
CStrongHandleCopyable
CSubclassName
+CTRL_
CTerrainSelection
CTrajectoryPath
CTrajectoryPathNode
@@ -8869,6 +8910,7 @@ CUndoDestroyElement
CUndoManager::Redo
CUndoManager::Undo
CUtlBlockVector<class Vec2D<float>,int,class CMemAllocAllocator>::GrowCount
+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct CacheOptimizedTriangle_t,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct StoredTriangleVertexPositions_t,int,class CMemAllocAllocator>::GrowCount
CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator>::GrowCount
@@ -8925,54 +8967,20 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CSceneObjectData::RTProxyDraw
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CDmElement *,struct empty_t,class CDefEquals<class CDmElement *>,struct DefaultHashFunctor<class CDmElement *>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlSymbolLarge,struct empty_t,class CDefEquals<class CUtlSymbolLarge>,struct DefaultHashFunctor<class CUtlSymbolLarge>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr
CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage
+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class fbxsdk::FbxNode *,struct CDmFbxSerializer::DmxNodeData_t,class CDefLess<class fbxsdk::FbxNode *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
+CUtlStringToken
CUtlStringTokenWithStorage
CUtlVectorFixedGrowable
CVAimConstraint
@@ -9011,8 +9019,6 @@ Can Player Pickup Piece
Can not read scanlines from a tiled image
Can't find bone named '%s'.
Can't find this node in the list of all groom group nodes.
-Cancel
-Cancel observing.
Cannot Find "%s" Stream On Mesh
Cannot Find "%s" Vertex Map On Mesh
Cannot Find Bone Parent Stream For Bone :: %s, Parent :: %s
@@ -9278,7 +9284,7 @@ Colormap
Combine Owner + Part Name
Commit Step
CommonToolEvent_DocumentModifiedFlagChanged_t
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
CompileScript failed: Cannot compute full path to vscript "%s" in "CONTENT"
CompileScript failed: Cannot compute full path to vscript "%s" in "GAME"
CompileScript failed: Cannot read vscript "%s" from "CONTENT"
@@ -9498,14 +9504,15 @@ Cursors Allowed To Wait
Curvature
Curvature Drop Amount
Curvature Drop Distance
-CurveEditor
CurveEditor( { extended=true input_name="Frame" output_name="Value" } )
Cut Max
Cut Min
Cycle Start Frame
Cycle Type
Cyclic samples provided are greater than the time per cycle. Expected:
Cylinder
+Cylinder - Centered (SLOW PERF)
+Cylinder - Ground (SLOW PERF)
Cylinder: %s
D16_UNORM
D24_UNORM_S8_UINT
@@ -9545,6 +9552,7 @@ Default (No RGB Tint)
Default Gravity Scale
Default Root Bone Name
Default offset for cp1 relative to cp0 if cp1 not set
+Default to old body ordering for now
Default: %s
DefaultAnimGraph2
DefaultCropOrigin
@@ -9893,8 +9901,10 @@ End Frame Number
End Loop
End dot product value for fading as the particle normal becomes aligned with the view vector
EndAttachment
+EnsureCapacity
Entity Class Override
EntityName
+Enum support.
EnumArray
Eq R%d <- R%d == R%d
Equal to
@@ -9930,6 +9940,7 @@ Euler XYZ
Evaluate the curve at the specified input position
Evaluate the gradient at a position between 0 and 1
Event %u layer %i at time %i type %s\n
+Event Class
Exact
Exclude Bones With Exact Flags
Exclude Bones With Flags
@@ -10071,8 +10082,8 @@ Fade Out Time
Fade Time
Fail Outflow
Fail on empty
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to allocate animation stream for channel label "%s"
Failed to allocate animation stream for channel label "%s" :: %s
Failed to allocate field info array
@@ -10168,6 +10179,7 @@ Final animation consists of A, Crossfade, B
Find String
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find and replace in resource references across the document (NOTE: Some references like materialgroups may be missed with the current implementation.)
Find another Mesh Operation node by name in this document and run it as if it were a child of this node.
Find first element 'a' which compare equal to 'element' and return its index.
@@ -10212,9 +10224,9 @@ Flip Direction
Flip Percentage
Flip the forward (x) axis direction of bones
Float To Game Time
-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\n
-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\n
+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\n
Floating point "Predictor" not supported with %d data format
Floor - round float down to nearest integer
Floor Float
@@ -10246,6 +10258,7 @@ Force this external piece to spawn motion-disabled regardless of the VMDL propda
Force to apply
ForceRealignBone
ForceUnweightedBindposeBonePositions
+Format Duration String From Seconds
Format error!
Fourth Control Point Location
Fourth Control Point Number
@@ -10374,7 +10387,9 @@ HalftoneHints
Hammer temp export
HammerEntityPicker()
Hard Lock
+Has All Flags
Has Angle Constraint
+Has Any Flags
Has Base Spring
Has Collision
Has Pitch Constraint
@@ -10391,7 +10406,7 @@ Height Target
Height Tolerance
Height of the primitive to project normals from.
Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.
-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\n
+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\n
Hidden
Hide Materialgroup in Tools
Hide Render Color in Tools
@@ -10431,7 +10446,9 @@ How many iterations this solvers hould use.
How much the joint tries to drive back to bind pose
How much to consider facing angle in occlusion.
How quickly the elasticity target pose changes to match the current pose
+How should the bodies, created by these shapes, be ordered in the final model
How the end effector should be rotated after the solve.
+Hull
Hull Per Element
Hull Per Mesh
Hull Too Complex for Runtime (%d verts, %d edges, %d faces)
@@ -10510,7 +10527,6 @@ IXformSchema::getTimeSampling()
IXformSchema::init()
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If Lerp Type is Full Frame Range, this is the fixed scale value applied, the curve is used otherwise
If animation has been subtracted in ModelDoc to create an additive animation to be used with AnimGraph, set this to true
If any faces with a given material are selected, expand the selection to include ALL faces using those materials.
@@ -10815,7 +10831,6 @@ Jump to Instr I%d
KV3 syntax error: %s
KV3 syntax error: %s while parsing @entitygroup %s
KV3DefaultTestFnName
-KV3Helper_CheckValueNumericCast
Kaydara FBX Binary
Keep Colliders
Keep Vertices In Memory
@@ -10839,7 +10854,6 @@ KeychainMarkupLocator
Keyframe animation data
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
Kochanek-Bartels
Kochanek-Bartels Early
Kochanek-Bartels Late
@@ -10872,6 +10886,7 @@ Latency CP field
Layer %d: adding key at time %d [%d -> %d], value
LayerSequenceOverSequence() helper not supported
Leader Bone
+Leader Type
Leaf Only
Leaking %i elements\n
Leap to Chunk C%d
@@ -11045,18 +11060,22 @@ MATERIAL_ATTRIBUTE:%s_%i
MAlternateSemanticName
MAtomicTransfersAsMap
MAtomicTransfersAsPlainString
+MESH_BUFFER_USAGE_VERTEX_EMISSIVE
MEntitySubclassScopeFile
MFgdHelper
MHideInPolymorphicClassList
MIsStringAndTokenType
MKV3TransferName
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MModelGameData
MORPH
MPropertyArrayElementNameKey
MPropertyAttributeEditorOverride
MPropertyAutoExpandSelf
MPropertyColorPlusAlpha
MPropertyCustomEditor
+MPropertyFGDFromAssetKeysFromOtherField
MPropertyFlattenIncludeLabel
MPropertyFlattenIntoParentRow
MPropertyFlattenStretchFactor
@@ -11074,6 +11093,7 @@ MPropertySuppressBaseClassField
MPropertySuppressField
MPulseExpressionAlias
MPulseFunctionHiddenInTool
+MPulseTypeRestriction
MResourceTypeForInfoType
MVDataAnonymousNode
MVDataAssociatedFile
@@ -11110,12 +11130,14 @@ Make Angle From Forward Vector
Make Color
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -11214,11 +11236,11 @@ Mesh '%s'.field[%d] '%s' has a malformed name, nothing after semantic index sepa
Mesh '%s'.field[%d] '%s' has same resolved name as .field[%d]
Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s
Mesh Operation Stack
-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s
+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s
Mesh contains %d blend weights per vertex; truncating to %d\n
Mesh has %i > %i floats of attributes, unable to apply all weightings.
Mesh node name
-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s
+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s
MeshDrawOrder
MeshFileReferenceEditor
MeshID
@@ -11365,6 +11387,7 @@ Multi-take source animations not supported
Must call InitModelDocLib before using the library.
Mutually Exclusive Cloth Effects
My Subclass Name
+N@Bad count in ArraySetCount (%d)
NO TARGET
NOT
NOT_ARRAY_MEMBERS
@@ -11442,6 +11465,7 @@ No bone named %s to rename.
No bone named :: %s in modeldoc, CSkeletonpose mismatch?
No but transfer UVs
No component selection made; node will have no effect.
+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!
No edges selected by length threshold.
No faces selected by facing angle.
No faces selected.
@@ -11479,6 +11503,7 @@ No triangles defined\n
No vertex attribute name specified
No vertices selected by index and weight threshold.
NoCollapse
+NoEditor()
Node '%s' not allowed in this document type (%s)
Node '%s' resolve failure
Node '%s' resolved into a null node.
@@ -11524,7 +11549,6 @@ Normal Attribute Simplification Weight
Normal Lock to Control Point
Normal Modify Offset Random
Normal texture scroll rate
-NormalBias
Normalize
Normalize Output
Normalize Vector a
@@ -11596,7 +11620,6 @@ Optimize for Keychains
Optimize for rope and cloth simulation
Optional bone to use as the root transform.
Optional pattern for attribute names (* for wildcards.) Note that this matches against non-display (ie. raw view) attribute names.
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Or R%d <- R%d || R%d
Order of animation sequences in compiled model. Specified entries will be ordered first, unspecified entries will be added after ordered entries in an unspecified order.
@@ -11662,6 +11685,7 @@ Override Vector
Override all mesh normals with a specific vector.
Override bone scale information on an animation
Override model bounds.
+Override sound is invalid.
Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)
Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)
Override the mass this embedded piece will spawn with regardless of the VMDL propdata.
@@ -11672,21 +11696,20 @@ Overwrite all bone data
Overwrite existing flags only
Overwriting existing wrinkle map data on mesh
P'?SetBoolProp@FbxIOSettings@fbxsdk@@QEAAXPEBD_N@Z
-P(cn
PARENT
PF\n%d %d\n-1.000000\n
+PF_TYPE_CONTROL_POINT_IS_SET
PHY Import: Invalid solid index %d in keyvalues\n
PHY Import: Solid with index %d is defined twice!\n
PHY file empty, zero hulls found: %s.
POSE_SPACE_BONE
POSE_SPACE_MORPH
PURH
-PX`n
+P\fan
PackBits
PackBitsDecode: Not enough data for scanline %ld
PackBitsDecode: discarding %ld bytes to avoid buffer overrun
PackToSharedVB
-PackedBlobNormal
Packing Material Particle System
Packing Material Volume scale - to have more or less contents
PageName
@@ -11711,6 +11734,7 @@ Parent Node
Parent Node Name
Parent Reaction
Parent Rotation
+Parent VData
Parent bone '%s' specified by define bone could not be found.
Parent node type is not a valid node type for this node
Parent of Chain Requires Alignment
@@ -11899,6 +11923,7 @@ PredictorEncodeTile
PredictorSetup
Prefab
Prefab [%s]
+Prefab target file '%s' not found
PrefabList
Prefix element cannot contain element or element_array attributes. ('%s')
Prefix to Match
@@ -11929,27 +11954,28 @@ Primitive Radius
Primitive type to project vertex normals from.
Prismatic joint.
Procedural
+Proceed Immediately
Process Selector
Project From Primitive
Project on Characters
Project on Water
Project on World
Projected Primitive
-Prop Group for Physics Particles
-Prop group for spawned physics particles
PropWorldOrigin
Prune pieces < error threshold
+Ptdn
+Ptzn
Pull towards control point
-Pulse Graph
Pulse domain which enables particle content to query leaf code to introspect game state.
+PulseDurationStringFormat_t
Push Out
Push mesh faces outward along their local normal. Optionally build shell geometry.
-PushBack
QAngle
Q\v??DFbxVector4@fbxsdk@@QEBA?AV01@N@Z
Quad Bend Tolerance
Quadratic
Quadric Error Metric
+Quantize the transform centroid position to the given modulus.
Quaternion
QuaternionStorage
Quickhull got into an impossible state and failed
@@ -12015,10 +12041,10 @@ R8_TYPELESS
R8_UNORM
R9G9B9E5_SHAREDEXP
RBF Based Anim Constraint
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RGB blend weight for sequence 0
RGB blend weight for sequence 1
ROTATION
-R\fpt
R_T5Y
Rad2 Deg
Radial Basis Function Type
@@ -12072,7 +12098,6 @@ Reduce how bouncy the joint is
ReductionMatrix1
ReductionMatrix2
Reentrant initialization of CModelDocVMDLImportScript
-Reference to a Pulse file to be run on this model entity.
Reference to a content file that will append its contents to a parent render mesh file node.
Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)
Reference to a content file that will resolve to one or more bone nodes to define a skeleton.
@@ -12154,6 +12179,7 @@ Remap distance to line between 2 control points to scalar
Remap distance to line between 2 control points to vector
Remap the trace result value relative to this range.
Remove Behind
+Remove Flags
Remove Front
Remove Small Components
Remove Tag From Cursor
@@ -12162,6 +12188,7 @@ Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
Remove all values from the list
Remove bones that are not present in this allow-list.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
Remove vertices behind the slice plane.
@@ -12313,6 +12340,7 @@ SSAOBias
SSAORadius
SSAOStrength
Safeguard against producing a model outside budgetary limits.
+Same Model (In)
Sample
Sample Count
Sample Rays
@@ -12486,6 +12514,7 @@ Setting %s::%s = '%s'\n
Setting up field info failed
Settings for the character's speeds in different situations and movement settings for the nav system and animgraph
ShadowScale
+Shape List
Shapes
Shapes controlled by this incremental control
Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>
@@ -12558,6 +12587,7 @@ Smooth Iterations
Smooth Normals Across UV Seams
Smooth Rate
Smooth Vertex Normals
+Snap to grid
SnapshotVertexExtraction
Soft Link
Softbody
@@ -12684,8 +12714,7 @@ Stiffness on Ragdoll
StoNits
Stop Effect after Duration
Stop On Sequence Change
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
Stores metadata for groom meshes.
Stray Boundary Radius
Stray Boundary Spring
@@ -12730,6 +12759,7 @@ Swing Limit
Swing Offset Angle
Switch Threshold
Symbol table: %d entries %llu bytes\n
+Synchronous - Wait for this node to fully complete before proceeding.
T"?IsZero@FbxVector4@fbxsdk@@QEBA_NH@Z
THEM
TIFFAppendToStrip
@@ -12777,7 +12807,6 @@ TODO: WeightList User support missing.
TODO: cmd sequence implement CMDS! : %s
TWIST
TYPE
-T\tV_log2f
Tag
Tag %d
Tag Cursor
@@ -12797,6 +12826,7 @@ Target Hair Count
Target Name
Target Triangle Percent
Target layer ID for rendering
+TargetCastForModify
TargetPrinter
Team1
Team2
@@ -12903,7 +12933,10 @@ This is Work-In-Progress Content
This is a BigTIFF file. This format not supported\nby this version of libtiff.
This is an Euler Rotation in degrees in XYZ order.
This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
This model will fail to compile outside a development environment.
+This value is optional. Click to set.
+This value is optional. Click to unset.
This value is set when the morph control is created via mesh loading and not explictly created by the user
Threshholding
Threshold value to use when detecting if translation tracks are constant or default. In game units, i.e. inches
@@ -12981,6 +13014,7 @@ Tried to read a scalar property from a non-scalar:
Tried to read an array property from a non-array:
Tried to rename from '%s' to '%s', but '%s' already exists\n
Truncated header.
+Turn a time in seconds into a display string. NOT localized.
Turn off animation compression for this animation.<p><span style="color:#aa0000"><b>NOTE</b></span>: This significantly increases the size of the animation data.<p>Normally it should be false but if there are obvious compression artifacts, typically in tiny rotations, disabling compression may fix those.
Twist Relax
Two Sided
@@ -12993,6 +13027,12 @@ UICameraRotation
UL Offset in FLU local space
UL control point number
UPAXIS
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
UR Offset in FLU local space
UR control point number
UV Attribute Simplification Weight
@@ -13003,7 +13043,6 @@ UV Map Planar
UV Map Planar Custom
UV Mapping
U\8h(
-U\tV_logd
Un-inertial Rods
Unable to access skeleton from compiled src resource data
Unable to create AnimOrder in dst ModelDoc
@@ -13034,6 +13073,7 @@ Unexpected Index Adding "%s", Expected %d, Got %d
Unexpected end of input
Unexpected key name "%s"\n
Unexpected map type %d of %s. Please rebuild.
+Unexpected morph animation stream name :: "%s", expected "%s"
Unexpected skinning defined on mesh %s
Uniform
Uniform Scale
@@ -13051,6 +13091,7 @@ Unknown class '%s' specified by @exclude
Unknown compression type.
Unknown data format %d for LogLuv compression
Unknown encoding %d for LogLuv compression
+Unknown format type
Unknown interpolation type %d\n
Unknown mesh '%s'
Unknown parent bone '%s'.
@@ -13085,6 +13126,7 @@ Unsupported mix of opaque and translucent materials in thie groom group. Render
Up Type
Up Vector
UpdateLights
+UpscalerType_t
Use Block Solver
Use Child Offset Attachment
Use Continuous Emission
@@ -13094,6 +13136,7 @@ Use Eye Orientation
Use Flat Color
Use For Collision
Use For Occlusion
+Use High Precision Blend Weights
Use High Precision/Expensive Texcoords
Use Layer Sequence
Use Local Space
@@ -13106,6 +13149,7 @@ Use UV2 for Lightmap Charting
Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.
Use additive blending
Use distance to an infinite line instead of a finite line segment
+Use for faces
Use max-luminance blending for sequence 0
Use max-luminance blending for sequence 1
Use radius for Per Particle Trace Length
@@ -13123,6 +13167,9 @@ Using compiled model parent '%s' for bone '%s'
Using compiled skeleton for for bone '%s'
Using compiled skeleton for parent '%s' for bone '%s'
Using deprecated 'base=prefix' syntax for adding a prefix to a base class
+VDATA
+VDataChoice( %s )
+VDataChoice()
VDataModelVersion001
VDmElementFrameworkVersion001
VDmSerializers001
@@ -13228,6 +13275,7 @@ WARNING: No 'models_ModelDocGameData' FGD was specified in the 'ModelDoc' sectio
WARNING: Unable to load the FGD file '%s'.\n
WDG,r3
Wait Complete
+Wake Cursors With Tag
Warning! Couldn't convert FbxMesh "%s"\n
Warning! Couldn't create DmFileId_t for "%s"\n
Warning! Couldn't create DmeMesh for FbxMesh "%s"\n
@@ -13277,8 +13325,6 @@ What material this object is made of. Used for mass calculations, impact effects
What to replace matches with
What type of object this is.
Wheel joint.
-When False
-When True
When picking between random choices, determines odds this choice is picked compared to others. (eg. a weight of 2 is twice as likely to be picked as weight of 1)
When this breakpiece breaks, should it be able to intersect with the parent that spawned it?
When this model is loaded preserve vertex data in CPU memory.
@@ -13288,10 +13334,15 @@ Whether the script is running as part of an import process. (Returns true.)
Whether the to use the curve or just a set value for the entire frame range
Whether this distance field contributes to AO.
Whether this distance field is a collider for certain effects such as hair simulation.
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
Which solver to use for positioning the IK chain. Required.
+While False
+While True
WhiteLevel
WhitePoint
Width Target
+Will use the second uv channel in the model to generate lightmap uvs. This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.
Wind Speed, mph
Windage Normal
Windage Tangent
@@ -13367,6 +13418,8 @@ Zero skin weights on one or more vertices
[cloth] | [procedural]
[procedural]
\f$?ParseForGlobalSettings@FbxImporter@fbxsdk@@QEAAX_N@Z
+\f\tV_acosd
+\fp\v`tzn
\instances\
\maps\
\materialsrc\
@@ -13380,27 +13433,25 @@ Zero skin weights on one or more vertices
\ng default\n
\prefabs\
\rModelDoc
+\r\nnexttoken
\sound\
\t??8FbxDataType@fbxsdk@@QEBA_NAEBV01@@Z
\t??8FbxMatrix@fbxsdk@@QEBA_NAEBV01@@Z
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
-\tV_acosd
\tV_asind
\tV_atan2d
+\tV_atand
\tV_cosd
-\tV_exp2f
-\tV_expd
+\tV_sscanf_s
\tV_strnchr
\tV_tand
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_FixupPathName
\t_V_StringAfterPrefixCaseSensitive
\t_V_StripLastDir
-\tg_bUpdateStringTokenDatabase
-\tnexttoken
\v??YFbxString@fbxsdk@@QEAAAEBV01@PEBD@Z
+\vP\fan
^(.+)_[0-9A-Fa-f]{8}$
_CustomCommand
_CustomCommand%d
@@ -13413,13 +13464,13 @@ _TIFFMergeFieldInfo
_TIFFSetupFieldInfo
_TIFFVGetField
_TIFFVSetField
+_\tV_log2f
_\v??GFbxVector4@fbxsdk@@QEBA?AV01@AEBV01@@Z
__CACHED_editcontext_provider_lookup
__CursorQueue__
__FireCursorsParent__
__FlexController__
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
__autoskinned
__bone_%d
@@ -13480,9 +13531,10 @@ _temp_tangent
_volumeatlas_
_wjb
_zero
+`\tV_logd
+`tzn
a:fulltype
a:typeparam
-a\tV_powd
absolute
absorigin
absorigin_follow
@@ -13537,6 +13589,7 @@ align_to_frame_type
align_tx
align_ty
align_tz
+allflags
allow_flex_length
allow_none
allow_nonmatching_bones
@@ -13618,6 +13671,7 @@ animgraph_incompatible
animturn
anklebone
antishrink
+anyflags
aoB>"
ao_map
ao_power
@@ -13631,14 +13685,14 @@ applymodelspacetranslation
archetype_list
are_effects_mutually_exclude
assetTag
+asset_specific_keys_source
assign_a
assign_b
assign_g
assign_r
assign_to_all
assign_to_all_faces
associated_key
-associated_vpulse
ati_compress_wrapper.dll
attach_material
attach_mesh
@@ -13724,6 +13778,7 @@ best_fit_atlas
bezier
bias_to_center
biased
+binary
binary_array
binary_seqids
binary_v
@@ -13758,6 +13813,7 @@ body_collection
body_group_choice
body_group_count
body_group_name
+body_order
bodygroupchoices
boneIndicesAndWeights
boneIndicesAndWeights$0
@@ -13768,6 +13824,7 @@ bone_3
bone_attrs
bone_count
bone_cull_type
+bone_depth
bone_index0
bone_index1
bone_index2
@@ -14101,7 +14158,7 @@ cycle_type
cyclepose without cycle pose parameter on cmd sequence: %s\n
cyclestart
cylinder
-d(0P
+d(00
damage_direction_cp
damage_position_cp
damage_table
@@ -14225,6 +14282,8 @@ draw_wireframe
durationTime
duration_info
dynamic_attributes
+eCenteredCylinder
+eGroundCylinder
early exit while reading obj file containing embedded null\n
ease_in_and_out
ease_in_key
@@ -14351,6 +14410,7 @@ export_reference_type
export_root
exported_animation
exporttags
+expression_type
extra_border_points
extra_boundary_voxels
extra_data
@@ -14441,6 +14501,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -14549,6 +14610,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png
game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png
+game:tools/images/propertyeditor/eye_hidden.png
+game:tools/images/propertyeditor/eye_visible.png
gameSoundName
game_data_list
gamedata_searchable_keys
@@ -14586,8 +14649,6 @@ goal_strength
goal_strength_bias
gradient
graphCurve
-graph_keys
-graph_name
gravity_grab_priority
gravity_z
gravitygrabignoremassandsize
@@ -14599,13 +14660,14 @@ gridnav
gridspacing
groom
ground_friction
+ground_offset
groupColor
group_id
group_name
grow_or_shrink
growth time
guide_hair_count
-h+\npZi
+h+\n0Hi
hair_count
halfEdges %d,%d faces %d,%d angle %.1f deg.
halfgridsnap
@@ -14647,10 +14709,12 @@ hide_if_child_selected
hide_materialgroup_in_tools
hide_rendercolor_in_tools
high_high_precision_texcoords
+high_precision_blendweights
high_priority
high_quality
hinge_axis
hinge_vector
+hit_group
hitbox
hitbox parent bone
hitbox_maxs
@@ -14840,10 +14904,12 @@ kochanek_early
kochanek_late
kv3:ParticleParamID_t
l2_regularization
+l\tV_powd
lastFrame
last_frame
layers
leader_bone
+leader_type
leave_body_collision_unmodified
left
leftEdgeActive
@@ -14961,6 +15027,7 @@ m_Animationname
m_ArgumentDependencies
m_AutoCreateSetName
m_Bodies
+m_BoneMergeLinks
m_ChildResourceList
m_CollisionAttributes
m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation
@@ -14986,6 +15053,7 @@ m_KeyValue
m_Keywords
m_LocalBindPose
m_Loop
+m_Metadata
m_MotionFrames
m_MotionFramesRootBone
m_ParameterType
@@ -14998,6 +15066,7 @@ m_RelativeFilename
m_RootRelativePath
m_SearchPath
m_SearchableUserData
+m_SequencePoint
m_Shapes
m_Special
m_SpecialDependencies
@@ -15084,6 +15153,7 @@ m_bForceWorldCollisionOnAllNodes
m_bGetSkinningFromLod0
m_bHasBakedLightingFromLightMap
m_bHasBakedLightingFromVertexStream
+m_bHighPrecisionBlendWeights
m_bHighPrecisionTexCoords
m_bHorizontalInterleaved
m_bIgniteHalfHealth
@@ -15171,7 +15241,9 @@ m_eOffset
m_eParentBindRotation
m_eRbfType
m_eSlaveChannel
-m_externalMethodTargetGraph
+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_fEmissiveFactor
m_fMoveTo
m_fireInteractions
m_flAddCurvature
@@ -15217,12 +15289,14 @@ m_flVolumetricSolveAmount
m_folderName
m_folderNames
m_groupsize
+m_hCursorOnOtherGraph
m_hitboxsets
m_iklock
m_influenceFlags
m_influenceName
m_influences
m_lodGroups
+m_materialGroupToken
m_materialList
m_materialSearchPath
m_meshFile
@@ -15236,6 +15310,7 @@ m_nCP1Parent
m_nCP2Parent
m_nCP3Parent
m_nCP4Parent
+m_nChildNode
m_nControlPoint0
m_nControlPoint00
m_nControlPoint01
@@ -15245,6 +15320,7 @@ m_nControlPoint5
m_nControlPoint6
m_nControlPoint7
m_nCurrentWakeIndex
+m_nCursorID
m_nCutMax
m_nCutMin
m_nDesiredEndPoint
@@ -15263,13 +15339,20 @@ m_nIterations
m_nLoopRestart
m_nNumCols
m_nNumRows
+m_nParentHash
m_nSerial
m_nSmoothLoopEnd
m_nSmoothLoopStart
+m_nSrcDrawIndex
m_nSrcFrame
m_nStartframe
m_nUserData
+m_nVertexEmissiveFormat
+m_nVertexEmissiveOffset
+m_nVertexEmissiveStride
+m_nVertexEmissiveVB
m_nWidthTarget
+m_nYieldToken
m_pAlignAnimation
m_pAnimGroup
m_pAnimGroups
@@ -15302,6 +15385,7 @@ m_poseParameterArray
m_qFixupRotation
m_rbfParameters
m_reference
+m_rootBvhNodes
m_sBindPoseReference
m_sBoneMask
m_sBonename
@@ -15563,12 +15647,16 @@ must be either LogLUV or LogL
mute
n$Kx
nDenominator
+nFormat
nKillPriority
nLayoffState
nMaxElements
nNumerator
+nRemainderDigits
+nRemainderNoiseDigits
nValue
nVertices
+nWakePriority
name_mode
name_prompt
navlink
@@ -15631,7 +15719,6 @@ numsides_key
o KPBf
oOffset
oY.o<
-o\tV_sind
obj2dmx
offsetTime
offset_angles
@@ -15661,6 +15748,7 @@ operators
opqMU
optimization_algorithm
option
+optional_toggle_cmd
optionallycompressedtangentframe
orientation
orientationChannel
@@ -15673,6 +15761,7 @@ oscillate_vector
outFrame
out_frame
outerconeangle
+outliner_icon
output is scalar of current value
output is scalar of initial random range
output_A
@@ -15695,15 +15784,15 @@ override_help_id
override_value
override_vector
overrideclass
+overridesound
overwrite_existing
overwrite_existing_flags_only
ownerlog
owns_polymorphic_data
-p$xn
pCheckpointName
pDescription
pTagName
-pX`n
+p\fan
p\rP\f0
paintsplat
panorama_image
@@ -15894,6 +15983,7 @@ propattr_stretch_editor_into_label_column
propdataname
prune
pseudo-
+ptzn
pulse_node_custom_attributes
pulse_runtime_lib
pushout_strength
@@ -16099,7 +16189,6 @@ scriptlist
scripts/activity_modifier_weights.txt
scripts/collision_detail_layers.vdata
scripts/physics_particles.vdata!%s
-scripts/physics_particles.vdata!hlx_physics_particle_spawner
searchable_key
searchable_key_fields
second sequence animation rate
@@ -16111,6 +16200,7 @@ segments_v
segments_x
segments_y
segments_z
+select
select_all
select_all_children
select_border
@@ -16169,6 +16259,7 @@ shadow_secondary_color_night
shadowtextureheight
shadowtexturewidth
shape
+shape_list
shapes
shared
sharpStartAngle
@@ -16231,6 +16322,7 @@ smoothiterations
smoothscale
smoothscale_vector
snap
+snap_to_grid
snappable
snapshot
snapshotOverride
@@ -16337,6 +16429,7 @@ sticker_index
sticker_markup_preview
stiff_hinge
stiff_hinge_angle
+stiffen
stiffness
stiffness_on_ragdoll
stop_distance_range
@@ -16387,7 +16480,7 @@ swing_offset_angle
switch_threshold
syncEngineFramerate
synched
-tBSheetSequenceIntegerId_t
+tBRenderBufferFlags_t
tagValue
tag_list
tag_list_dynamic
@@ -16758,7 +16851,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png
tools/images/modeldoc_editor/outliner_icon_texture_generator.png
tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png
tools/images/modeldoc_editor/outliner_icon_transfermorphs.png
-tools/images/modeldoc_editor/outliner_icon_vpulse.png
tools/images/modeldoc_editor/outliner_icon_vsnap.png
tools/images/modeldoc_editor/outliner_icon_vsnap_file.png
tools/images/modeldoc_editor/outliner_icon_vsnap_list.png
@@ -16812,6 +16904,7 @@ twistJoints
twist_back_relax
twist_relax
two_sided
+type_restriction_is_enum_flags
t|AO
ui_order
uicamerarotation
@@ -16875,6 +16968,7 @@ uvmapcylinder
v %f %f %f\n#%d ComponentIndex %d, queue %d, angle %.1f; ring:
vForward
vIK \f3
+value:fulltype
valueDeltaRotation
valueOrientation
valuePivot
@@ -16925,6 +17019,7 @@ velocity_smooth_iterations
velocity_smooth_rate
velocity_tolerance
verify
+verify_override_sound_foot_choice
vertex mistmatch %d vs %d :: sample time :: %8.4f s :: %s
vertexFormat
vertexPaintBlendParams
@@ -17052,12 +17147,13 @@ yfriction
ymax
ymin
z>%.04f
-z\tV_sscanf_s
+z\tV_sind
zero dir
zero_unselected
zfriction
zmax
zmin
+{ item_factory = 'IntervalTimer' }
{ uninitialized }
{error}
~CModelInstance destructor: leaking softbody because physics world disappeared\n
game/bin/win64/navsystem_strings.txt
modified • +42 / -34 • changes: 76
Show patch
@@ -2,14 +2,15 @@
took %0.3f sec, produced %d polys\n
%0.2f
(Output drawable)
+***** TOO MANY NODES ADDED. SKIPPING. *****
-> Success (%d attempts)\n
... and no start position
.?AU?$default_delete@VCNavGenPolyProcessorStageBase@@@std@@
.?AUVDataInitInfo_t@@
.?AV<lambda_1>@?1???1CNavSpace@@UEAA@XZ@
.?AV<lambda_1>@?1??CalcClusters_Prepare@CNavTree@@QEAAXXZ@
.?AV<lambda_1>@?1??ForEachBlock@CNavSpace@@QEAAXAEAV?$function@$$A6A?AW4NavSearchResult_t@@AEAVCNavBlock@@@Z@std@@@Z@
-.?AV<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
+.?AV<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
.?AV<lambda_1>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
.?AV<lambda_1>@?1??IsAgentAbleToStandOnVoxelFace@CNavOrientedMesh@@AEAA_NAEBUVoxelData_t@CVoxelData@2@EMAEA_N@Z@
.?AV<lambda_1>@?1??IslandRemoval@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0_NAEBVCNavGenParams@@@Z@
@@ -25,16 +26,16 @@
.?AV<lambda_1>@?7??FilterUnwalkableVoxelsByAgentClimb@CNavOrientedMesh@@QEAAXXZ@
.?AV<lambda_1>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@
.?AV<lambda_1>@?BE@??SplitPolysByMarkup@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN@Z@
-.?AV<lambda_1>@?BI@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@
-.?AV<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
+.?AV<lambda_1>@?BI@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@
+.?AV<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
.?AV<lambda_2>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
.?AV<lambda_2>@?1??RunBuildTree@@YAXAEAVCNavTree@@HAEBUAABB_t@@AEBVIVPhysics2World@@PEAV?$CUtlHashtable@PEBVIPhysicsBody@@Uempty_t@@U?$DefaultHashFunctor@PEBVIPhysicsBody@@@@U?$DefaultEqualFunctor@PEBVIPhysicsBody@@@@V?$CUtlLeanVector@V?$CUtlHashtableEntry@PEBVIPhysicsBody@@Uempty_t@@@@HVCMemAllocAllocator@@@@$00@@@Z@
.?AV<lambda_2>@?1??RunBuildTree@CNavSpaceBuildTreeJob@@AEAAXXZ@
.?AV<lambda_2>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@
-.?AV<lambda_2>@?BM@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@
-.?AV<lambda_2>@?N@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@
+.?AV<lambda_2>@?BB@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@
+.?AV<lambda_2>@?BM@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@
.?AV<lambda_3>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
-.?AV<lambda_3>@?EF@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@
+.?AV<lambda_3>@?DP@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@
.?AV<lambda_3>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@
.?AV<lambda_4>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@
.?AV<lambda_4>@?M@??RemovePolysMarkedNoNav@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN_N@Z@
@@ -51,7 +52,7 @@
.?AV?$CTier3AppSystem@VINavSystem@@$0A@@@
.?AV?$CVDataFileManager@VCNavHullPresetVData@@@@
.?AV?$CVDataFileManager@VCNavHullVData@@@@
-.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBV4@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@
+.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBVVectorWS@@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@@std@@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@M@std@@
@@ -71,13 +72,13 @@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@N@ZPEAV3@AEBU?$_Ph@$00@2@M@std@@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EBAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV4@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@M@std@@
.?AV?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EBA_NAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@@ZPEAV3@AEBU?$_Ph@$00@2@@std@@
-.?AV?$_Func_base@V?$Vec3D@M@@AEBV1@PEBV1@@std@@
+.?AV?$_Func_base@V?$Vec3D@M@@AEBVVectorWS@@PEBV1@@std@@
.?AV?$_Func_base@VVecDouble3@@AEBV1@@std@@
.?AV?$_Func_base@W4NavSearchResult_t@@AEAVCNavBlock@@@std@@
.?AV?$_Func_base@W4NavSearchResult_t@@AEBUSpaceCell_t@CNavSpace@@H@std@@
.?AV?$_Func_base@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@@std@@
.?AV?$_Func_base@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV1@@std@@
-.?AV?$_Func_base@XAEBU?$NavIndirectDst_t@VCNavArea@@V1@@@@std@@
+.?AV?$_Func_base@XAEBUNavIndirectDst_t@@@std@@
.?AV?$_Func_base@XAEBUTreeIter_t@CNavTree@@@std@@
.?AV?$_Func_base@XH@std@@
.?AV?$_Func_base@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@AEBW4OrientedMeshSparseVoxelState_t@@@std@@
@@ -95,7 +96,7 @@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???1CNavSpace@@UEAA@XZ@W4NavSearchResult_t@@AEAVCNavBlock@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CalcClusters_Prepare@CNavTree@@QEAAXXZ@XAEBUTreeIter_t@3@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??ForEachBlock@CNavSpace@@QEAAXAEAV?$function@$$A6A?AW4NavSearchResult_t@@AEAVCNavBlock@@@Z@std@@@Z@W4NavSearchResult_t@@AEBUSpaceCell_t@3@H@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@X$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EE_N@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IsAgentAbleToStandOnVoxelFace@CNavOrientedMesh@@AEAA_NAEBUVoxelData_t@CVoxelData@3@EMAEA_N@Z@_NAEBV?$Vec3D@H@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IslandRemoval@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0_NAEBVCNavGenParams@@@Z@XH@std@@
@@ -111,22 +112,22 @@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?7??FilterUnwalkableVoxelsByAgentClimb@CNavOrientedMesh@@QEAAXXZ@_NAEBV?$Vec3D@H@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BE@??SplitPolysByMarkup@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN@Z@_NAEBVCNavGenPoly@@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BI@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XPEAV4@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBV1@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XH@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?BI@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XPEAV4@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??Generate@CNavGenOrientedMesh@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEBV?$function@$$A6A?AV?$Vec3D@M@@AEBVVectorWS@@PEBV1@@Z@std@@PEAVIThreadPool@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XH@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@AEBW4OrientedMeshSparseVoxelState_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??RunBuildTree@@YAXAEAVCNavTree@@HAEBUAABB_t@@AEBVIVPhysics2World@@PEAV?$CUtlHashtable@PEBVIPhysicsBody@@Uempty_t@@U?$DefaultHashFunctor@PEBVIPhysicsBody@@@@U?$DefaultEqualFunctor@PEBVIPhysicsBody@@@@V?$CUtlLeanVector@V?$CUtlHashtableEntry@PEBVIPhysicsBody@@Uempty_t@@@@HVCMemAllocAllocator@@@@$00@@@Z@_NAEBU4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?1??RunBuildTree@CNavSpaceBuildTreeJob@@AEAAXXZ@_NAEBUAABB_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?9??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BM@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XPEAV4@@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_2>@?N@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@X$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BB@??NavGenRunSpaceBuild@@YAXAEBVCNavGenInput@@AEBVIVPhysics2World@@PEAVCNavGenOutput@@@Z@X$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?BM@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EE_N@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_3>@?EF@??CollectAdjacentNodes@?$CNavAdjacencyList@VCNavArea@@@@QEAAXAEBVCNavArea@@I@Z@XAEBU?$NavIndirectDst_t@VCNavArea@@V1@@@@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_3>@?DP@??CollectAdjacentNodesAreas@NavAdjacency@@YAXAEBVCNavArea@@AEAV?$CUtlVectorFixedGrowable@UNavAreaAdj_t@@$0CA@H@@I@Z@XAEBUNavIndirectDst_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHAEBUVoxelSparseIndex_t@CNavOrientedMesh@@EG@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?M@??RemovePolysMarkedNoNav@CNavGenPolyProcessor@@QEAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@NNN_N@Z@_NAEBVCNavGenPoly@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?M@??RunPolyClipInternal@CNavGenPolyProcessor@@AEAAXAEBVCNavGenInput@@AEAV?$CUtlVector@V?$Vec3D@M@@HV?$CUtlVectorMemory_Growable@V?$Vec3D@M@@H$0A@@@@@AEAV?$CUtlVector@IHV?$CUtlVectorMemory_Growable@IH$0A@@@@@AEAV?$CUtlVector@UNavGenProcessorMovableMeshInput_t@@HV?$CUtlVectorMemory_Growable@UNavGenProcessorMovableMeshInput_t@@H$0A@@@@@AEAVCNavGenDebugData@@_NHPEAV?$shared_ptr@VCNavGenPolyProcessorStageBase@@@std@@H6@Z@VVecDouble3@@AEBVVecDouble3@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_5>@?1??GetOutput@CNavGenOrientedMeshTile@@QEAAXAEAUNavGenVertexData_t@@AEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@PEAV?$CUtlVector@UNavGenRecastDebugStage_t@@HV?$CUtlVectorMemory_Growable@UNavGenRecastDebugStage_t@@H$0A@@@@@@Z@XHHHHEI@std@@
-.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBV4@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@V?$Vec3D@M@@AEBV3@PEBV3@@std@@
+.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAA?AV?$Vec3D@M@@AEBVVectorWS@@PEBV4@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@V?$Vec3D@M@@AEBVVectorWS@@PEBV3@@std@@
.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@
.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@
.?AV?$_Func_impl_no_alloc@V?$_Binder@U_Unforced@std@@P8CNavGenPolyProcessor@@EAAXAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@0AEBVCNavGenParams@@N@ZPEAV3@AEBU?$_Ph@$00@2@AEBU?$_Ph@$01@2@AEBV5@M@std@@XAEAV?$CUtlVector@VCNavGenPoly@@HV?$CUtlVectorMemory_Growable@VCNavGenPoly@@H$0A@@@@@AEAV3@@std@@
@@ -181,6 +182,7 @@
.?AVrcContext@@
1\r51h
;1#INF
+<non-RTTI type>
=slow
>0 = watershed, 1 = monotone, 2 = layers
>>FLOWMAP: %d super nodes (%.0f%%)\n
@@ -204,9 +206,10 @@
>>NAVGEN: pass %d/%d: orig tris %d\n
>>NAVGEN: stage %02d / %02d:
>>NAVGEN: stage %02d / %02d: %s, disabled\n
->nav_pathfind_multithread
+>m_nHullIdx
?expf
?ffffff
+AVOID
AddJumps
Already in the goal area
Area too far
@@ -215,14 +218,12 @@ C:\buildworker\csgo_rel_win64\build\_build_\navsystem\_vpc_navsystem\default\win
C:\buildworker\csgo_rel_win64\build\src\navlib\nav_mesh.cpp
C:\buildworker\csgo_rel_win64\build\src\navlib\nav_pathfind.cpp
CNavMesh::GetGroundHeight
+CNavPathCost
CNavSpaceBuilder
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct FlowMapNode_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct FlowMapNode_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct empty_t,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct empty_t,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,struct FlowMapNode_t *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,struct FlowMapNode_t *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,struct empty_t,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,struct empty_t,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail
-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullPresetVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,class CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class VDataEntryKey_t,class CNavHullVData *,class CDefLess<class VDataEntryKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t,class CDefLess<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct `public: void __cdecl CNavFlowMapGenerator::Generate(struct NavHull_t,float)'::`2'::Scan_t,int>,int,class CMemAllocAllocator> >::Insert
CalcBlocks_IntercellConnections %d/%d\n
CalcBlocks_IntracellConnections v0 %d/%d\n
CalcBlocks_IntracellConnections v1 %d/%d\n
@@ -247,7 +248,7 @@ ERROR: Unconnected ladder bottom at ( %g, %g, %g )\n
ERROR: Unconnected ladder top at ( %g, %g, %g )\n
Error (problem that prevents task success)
FLOWMAP path find ALLPATHS duration: %llums\n
-Failed to allocate an instance of a class
+Failed to allocate an instance of a class of type '%s'
Failed with no pGoalArea and no pGoalPos
Failed with no pStartArea
FindOverlaps
@@ -285,9 +286,9 @@ GetNearestNav: Success! Returning area [%d]
GetNearestNav: [%d] Areas that failed poly test
HeQyA
Hide unless error/warning occurs
+INavPathCost
IslandRemoval
IslandRemoval - unable to find a poly near navlink location %g %g %g\n
-L=AVOID
LadderConnect
Level of validation for nav system. Higher will be slower.
LightmapUV
@@ -334,7 +335,6 @@ OpenMutexA
Oriented Mesh: %d / %d\n
Oriented Mesh: YieldWait returned false. Falling back to waiting for the next job in the sequence.\n
OverlayProjectionDirection
-PackedBlobNormal
PathFind_NavAreaBuildPath
PerVertexLighting
Physics
@@ -400,11 +400,12 @@ Warning (problem that doesn't prevent forward progress)
WeldVertices
[Default] Determine a lifespan based on the warning/error state of the group
[Default] General information
+\ng_flConfigMaxCoord
\tV_cosd
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
-\tg_flConfigMaxCoord
addEdge: Too many edges (%d/%d).
bentnormal
+binary
blendindices
blendweight
blendweights
@@ -449,16 +450,19 @@ lifespan
loud
lowprecisionuv
lowprecisionuv1
-m_bBakedTwoSided
-m_bCanBatchWithDynamicShaderConstants
-m_bDrawLast
-m_bHasBakedLightingFromLightMap
-m_bHasBakedLightingFromVertexStream
-m_bIsNotMatchedToMaterial
-m_bNoShadow
-m_bOnlyShadow
-m_bUseCompressedNormalTangent
-m_bUseShadowFastPath
+m_bAllowLadders
+m_bCanFly
+m_bCanSwim
+m_bOptimizeFlySpacePathfinds
+m_bStringPullFlySpacePathfinds
+m_bSupportsTransitions
+m_flFlyingTransitionTolerance
+m_flGroundToWaterMaxHeight
+m_flGroundToWaterTransitionDistance
+m_flTransitionPenalty
+m_flWaterToGroundMaxHeight
+m_flWaterToGroundTransitionDistance
+m_navHull
medianFilterWalkableArea: Out of memory 'areas' (%d).
medium
mergeAndFilterLayerRegions: Out of memory 'regions' (%d).
@@ -478,6 +482,7 @@ navsystem.dll
node_index
nodes
optionallycompressedtangentframe
+p\r0\fP!E
posxyz
quiet
radius used to raise/lower corners in nearby areas when raising/lowering corners.
@@ -551,6 +556,9 @@ source_file_searchpath
tangent
tangentu_signv
texcoord
+tool_request_args
+tool_request_text
+tool_request_tool
very_fast
vnotify_ui
waiting_group
game/bin/win64/networksystem_strings.txt
modified • +28 / -32 • changes: 60
Show patch
@@ -16,10 +16,14 @@
system status: %s\n
version max : %u.%u\n
version used : %u.%u\n
- !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$0
+ !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
%dms faster than direct ping of %dms
(08@HPX`j
+ (08@HPXbpq
(08@HPZ
+ (08@HRpq
+ (08@Jpq
+ (0X`hpzpq
- keeping around as cacheable shared connection
[+add recip %d]
[COMPLEX]
@@ -154,6 +158,7 @@
(NULL)
(This list may include POPs without any gameservers)\n
(compressed)
+(fpy
(stream: %s%s local: %s%s)
*pEnd > *pStart
+ include
@@ -256,17 +261,14 @@
0 bit issue, spot 3
0 bit issue, spot 4
08@HR
-0v8X
-2\vp$E
+08@Jpq
+0>PQ
+8Fpu
::Storage_t
<classname> <fieldname>: spew why field was excluded from networking for classname.
-@08N8X
-@HPX`hv@r
-@HVP
-@Nps
-@f8X
-@n8X
-AA:P
+@08N
+@6po
+@HPX`hv
Accepting Steam Net connection %s\n
AckSeqNum
Activates/deactivates net message validation
@@ -431,15 +433,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CSerializer
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,int,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,int,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<struct CFieldPath::Path_t,6,int,class CMemAllocAllocator>,struct CFieldPath::Path_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<unsigned int,3,int,class CMemAllocAllocator>,unsigned int,int>::AddMultipleToTail
-CUtlRBTree<int,class CDefLess<int>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<int,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CNetChan::SplitPlayer_t,class CLessFunc<&public: static bool __cdecl CNetChan::SplitPlayer_t::Less(struct CNetChan::SplitPlayer_t const &,struct CNetChan::SplitPlayer_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CNetChan::SplitPlayer_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,class CFlattenedSerializer const *,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class INetworkMessageInternal *,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::Node_t,class CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,int,class CDefLess<int>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::Node_t,class CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct ns_address,int,struct SteamNetConnection_t::ns_address_less,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,struct ConnectionStats_t,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct OverrideWork_t,class CLessFunc<&public: static bool __cdecl OverrideWork_t::Less(struct OverrideWork_t const &,struct OverrideWork_t const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct OverrideWork_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlSortVector<int,class CNetworkMessages::CPriorityLess,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::Find
CUtlSortVector<int,class CNetworkMessages::CPriorityLess,class CUtlVector<int,int,class CUtlVectorMemory_Growable<int,int,0> > >::InsertIfNotFound
CacheableConnectionExpired
@@ -507,7 +500,6 @@ Error installing message handlers into a net channel: missing handlers in channe
Error parsing message type %d (%s)
Error processing network message %s! Channel is closing!\n
Error! Failed to WSAStartup! err = %d.\n
-Error: SkipPropData_ with invalid GetFieldAndBaseDepthByPath result (result.m_pField == nullptr), %s unable to find field for path '%s', reading field %d starting at bit %d!
Error: Components count + networkable data type must be the same for all instances of network field serializer (%s)!\n
Error: Duplicate network array field serializer registered (%s)!\n
Error: Duplicate network field change callback registered (%s)!\n
@@ -677,9 +669,12 @@ Opened Steam Net Connection on socket '%s' to %s, connection %s\n
Order,'From','To',Bits\n
OutSeqNumAck
Overrides IP for multihomed hosts
-P08N8X
-P6Pl
-P6p`
+P08@Jpq
+P08J
+P08N
+P2pq
+P6 R
+P:pq
PACKET_STATUS_DROPPED
PACKET_STATUS_INVALID
PACKET_STATUS_NORMAL
@@ -868,6 +863,7 @@ WriteFields
WriteToBuffer Message %s is not initialized! Probably missing required fields!\n
Writing %d bits for path %s of serializer %s entity %d, this will fail to parse\n
X`hr
+Xf0v
[ Net Message Info: %s ]\n
[%s] Queued message count %d exceeds limit of %s=%d. Allowing due to engine_frametime_warnings_enable=false\n
[%s] high frame misdelivery %.1f%%, %d/%d of %d frames dropped/reordered, %.0fms ping, %.0fms peak jitter\n
@@ -879,6 +875,7 @@ X`hr
[context entity 0x%p]
[opaque]
\nNon-networkables\n\n
+\nPDG
\rBytes
\tCannotBeNetworked = %s\n
\tCategory Mask = %08X\n
@@ -891,9 +888,9 @@ X`hr
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\vInSeqNum
\vMsgTick
-`f8X
-`n8X
-aBv8X
+`2pq
+`60O
+`6PU
activated
added
aggegated
@@ -912,6 +909,7 @@ avg_packet_in
avg_packet_loss
avg_packet_out
backing paths
+binary
bit %d - %d (%d bits/%d bytes):\n
both states
building fake field for %s %s\n
@@ -970,9 +968,9 @@ g_pSteamNetworkingSockets
g_pSteamNetworkingUtils
groupindex
groupnames
-hAX%
has_network_encoding_data
hostip
+hpzpq
huge
identified %d entity related c++ field shadowing issues:\n
include
@@ -1055,7 +1053,6 @@ net_skip_redundant_change_callbacks
net_spewcounts
net_spewserializer
net_status
-net_use_delta_property_fastpath
net_use_packet_compression
net_validatemessages
net_validatemessages = %d\n
@@ -1078,9 +1075,9 @@ out-of-order
outgoing_data_bytespersecond
outgoing_sequence
outgoing_sequence_start
-p08@H^8X
-p0jP
-p>8X
+p08@H^
+p0j@
+p2pq
p\rP\f0!h
packet_status
parallel
@@ -1089,7 +1086,6 @@ pending data
pmInfoDest.m_pFlattenedSerializer
pmInfoDest.m_unPolymorphicTypeId == pmInfoSource.m_unPolymorphicTypeId
pmInfoSource.m_pFlattenedSerializer
-pn8X
pointer field
polymorphic
polymorphic [forced]
game/bin/win64/panorama_strings.txt
modified • +81 / -93 • changes: 174
Show patch
@@ -10,14 +10,17 @@
Signature Algorithm:
%60s: %6d (pending %6d)\n
##%%&&))**,,//1122447788;;==>>@@CCEEFFIIJJLLOOQQRRTTWWXX[[]]^^aabbddgghhkkmmnnppssuuvvyyzz||
- !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$8
+ !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
!"#$%%&'()*+,-../0123456789:;<=>?@ABCDEFGHIJKLLMNOPQRSTUVWXY[]_`bdefhjlnprtvz|~
%4hf
%s%lu (%s0x%lx)\n
' ) - 3 G M Q _ c e i w }
(%ld unused bits)\n
(08@HPX`j
+ (08@HPXb
(08@HPZ
+ (08@HR
+ (0X`hpz
(INVALID PSS PARAMETERS)\n
(Negative)
(derived from %s)
@@ -262,53 +265,54 @@ $hRh
(!(1(=(?(I(Q([(](a(g(u(
((long)msg_hdr->msg_len) > 0
(0'yX
-(1QI
+(1oJ
(4?NewFromUnsigned@Integer@v8@@SA?AV?$Local@VInteger@v8@@@2@PEAVIsolate@2@I@Z
+(5BJ
+(5EJ
+(5JJ
(5Me
-(5NI
+(5OJ
(5jP
-(9jI
-(AvI
+(A9J
(BZq
(D4D
-(EKI
-(EUI
+(ENJ
+(EaJ
+(EjJ
(I?Value@External@v8@@QEBAPEAXXZ
-(IHI
-(IOI
-(InI
-(MAI
-(MLI
(NONE)
-(QEI
+(QkJ
(U1h
-(UgI
+(U2J
+(U5J
+(U7J
+(Y0J
+(YyJ
(ZdOt\n&
(_Assert)
-(aVI
-(ajI
+(acJ
(anonymous)
-(aqI
(d4t8
(down)
-(eQI
(fS{ggRcjh
(h`H1pqA
(i/Al
-(iWI
+(i8J
+(iHJ
+(iMJ
+(iQJ
(jvg;
(memory)
-(uUI
+(qGJ
(undefined)
(unset)
(unset) w/parent: %s
(vQF
(wMww
-(yGI
-(yaI
-(yiI
-(ynI
-(ypI
+(yCJ
+(yRJ
+(yeJ
+(ylJ
)!)#)?)G)])e)i)o)u)
)4?NewFromUtf8@String@v8@@SA?AV?$MaybeLocal@VString@v8@@@2@PEAVIsolate@2@PEBDW4NewStringType@2@H@Z
)Ck?B
@@ -583,13 +587,13 @@ $hRh
.?AVCStylePropertyOpacityMask@panorama@@
.?AVCStylePropertyOverflow@panorama@@
.?AVCStylePropertyPadding@panorama@@
+.?AVCStylePropertyParagraphSpacing@panorama@@
.?AVCStylePropertyPerspective@panorama@@
.?AVCStylePropertyPerspectiveOrigin@panorama@@
.?AVCStylePropertyPosition@panorama@@
.?AVCStylePropertyRotate2DCentered@panorama@@
.?AVCStylePropertySaturation@panorama@@
.?AVCStylePropertyScale2DCentered@panorama@@
-.?AVCStylePropertySearch@panorama@@
.?AVCStylePropertySound@panorama@@
.?AVCStylePropertyTextAlign@panorama@@
.?AVCStylePropertyTextDecoration@panorama@@
@@ -621,14 +625,12 @@ $hRh
.?AVCTransformScale3D@panorama@@
.?AVCTransformSkew3D@panorama@@
.?AVCTransformTranslate3D@panorama@@
-.?AVCUIAnimationThread@CUIRenderEngine@panorama@@
.?AVCUIEngine@panorama@@
.?AVCUIEngineSource2@panorama@@
.?AVCUIInputEngine@panorama@@
.?AVCUIPanel@panorama@@
.?AVCUIRenderDeviceSource2@panorama@@
.?AVCUIRenderEngine@panorama@@
-.?AVCUIRenderThread@CUIRenderEngine@panorama@@
.?AVCUISoundSystem@panorama@@
.?AVCUIWindowInput@panorama@@
.?AVCVectorGraphic@@
@@ -650,8 +652,8 @@ $hRh
.?AVIPanoramaUIEngine@@
.?AVIResourceTypeManager@@
.?AVIShaderReloadListener@@
+.?AVISource2Surface@panorama@@
.?AVITextureResidencyListener@@
-.?AVIUI3DSurface@panorama@@
.?AVIUIDoubleBufferedTexture@panorama@@
.?AVIUIEngine@panorama@@
.?AVIUIEvent@panorama@@
@@ -987,10 +989,12 @@ $hRh
02V8[
05=k
08@HR
+08@J
08bX
09,h
0;Q5[
0<cz
+0>pc=
0M2~@p
0W/5
0Z@q
@@ -1012,6 +1016,7 @@ $hRh
1GNK
1H@H
1L$1
+1\v%14
1\v5#d
1b4Ef
1f\t3Qg^y
@@ -1046,6 +1051,7 @@ $hRh
2f)l=
2nIg
2p"6
+2pO$
2prB
3%3+3/353A3G3[3_3g3k3s3y3
31tPR
@@ -1110,7 +1116,6 @@ $hRh
6?NumberValue@Value@v8@@QEBA?AV?$Maybe@N@2@V?$Local@VContext@v8@@@2@@Z
6H,N
6O|T%
-6Pp<
6Qd=
6_wEX
6afD
@@ -1120,6 +1125,7 @@ $hRh
6l13
6lkc
6myY;
+6px=
6qo~
6r-m_v
6r1ij
@@ -1151,6 +1157,7 @@ $hRh
7wKR
7zRQ
8"3hrf
+8)KJ
8+Qw
80F2<
82\n:XPH
@@ -1159,6 +1166,7 @@ $hRh
8= zp
8??SetInternalFieldCount@ObjectTemplate@v8@@QEAAXH@Z
8A6j
+8BP!\n
8GZS
8SIffK5W
8TZvrv<
@@ -1182,6 +1190,7 @@ $hRh
9J9;6
9N1=@
9QTA
+9R}J
9Y@nJM
9Zr4
9\not
@@ -1333,13 +1342,15 @@ $hRh
?uWS
?x29
@!@%@+@1@?@C@E@]@a@g@m@
+@08N
@0pp
-@6Pt<
-@6Pv<
+@60d=
+@60f=
@?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z
@BH]f
-@HPX`hv@
+@HPX`hv y=
@MfKZ
+@NPz=
@Pgl
@Pu\rm
@WE]X
@@ -1736,7 +1747,6 @@ BUF_strndup
BY_FILE_CTRL
BY_Lq)
BZZn\rN]#8f'
-B\tV_isstrlower_fast
B\vP\n0
B`4I
Bad boolean\n
@@ -2091,11 +2101,15 @@ CUIWindowInput::ProcessMouseTrackingResults - Recalculate handles
CUIWindowInput::SetInputFocus
CUtlDict<class CLocVariableValue const *,class CDefFastCaselessStringLess>::Insert
CUtlDict<class CUtlString,class CDefFastCaselessStringLess>::Insert
+CUtlDict<class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess>::Insert
+CUtlDict<class v8::Global<class v8::String> *,class CDefStringLess>::Insert
+CUtlDict<class v8::Global<class v8::Value> *,class CDefStringLess>::Insert
+CUtlDict<short,class CDefFastCaselessStringLess>::Insert
CUtlDict<struct ImageInfo_t,class CDefFastCaselessStringLess>::Insert
+CUtlDict<struct panorama::PanelDescription_t *,class CDefStringLess>::Insert
CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CUtlString,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlLinkedListElem_t<class panorama::CUIPanel *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct panorama::CUIWindowInput::TopMostFocus_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
-CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct panorama::PropertyInTransition_t *,unsigned char>,unsigned char,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CUtlStringToken,class CUtlVector<class panorama::CPanelPtr<class panorama::IUIPanel>,int,class CUtlVectorMemory_Growable<class panorama::CPanelPtr<class panorama::IUIPanel>,int,0> >,class CDefEquals<class CUtlStringToken>,struct DefaultHashFunctor<class CUtlStringToken>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CUtlStringToken,class CUtlVector<class panorama::CPanelPtr<class panorama::IUIPanel>,int,class CUtlVectorMemory_Growable<class panorama::CPanelPtr<class panorama::IUIPanel>,int,0> >,class CDefEquals<class CUtlStringToken>,struct DefaultHashFunctor<class CUtlStringToken>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int> *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int> *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlVector<class panorama::IInputCapture *,int,class CUtlVectorMemory_Growable<class panorama::IInputCapture *,int,0> > *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::IUIPanel>,class CUtlVector<class panorama::IInputCapture *,int,class CUtlVectorMemory_Growable<class panorama::IInputCapture *,int,0> > *,class CDefEquals<class panorama::CPanelPtr<class panorama::IUIPanel> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::IUIPanel> >,int>::HashBucket_t,int>::AddMultipleToTail
@@ -2109,48 +2123,6 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::C
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<struct panorama::ActionInput_t,struct panorama::InputAction_t,class CDefEquals<struct panorama::ActionInput_t>,struct ActionInputHashFunctor_t,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<void *,class CUtlVector<class panorama::CPanoramaSymbol,int,class CUtlVectorMemory_Growable<class panorama::CPanoramaSymbol,int,0> > *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<void *,class CUtlVector<class panorama::CPanoramaSymbol,int,class CUtlVectorMemory_Growable<class panorama::CPanoramaSymbol,int,0> > *,class CDefEquals<void *>,struct DefaultHashFunctor<void *>,int>::HashBucket_t,int>::AddMultipleToTail
-CUtlRBTree<class panorama::CImageLoaderTask *,class CDefLess<class panorama::CImageLoaderTask *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class panorama::CImageLoaderTask *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<char const *,class panorama::CStyleDefine,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::ObjectTemplate> *,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::String> *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,class v8::Global<class v8::Value> *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,struct panorama::PanelDescription_t *,class CDefLess<class CUtlString>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,int,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class panorama::CImageProxySource *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CJSFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CSmartPtr<class panorama::CLayoutFile,class CRefCountAccessor>,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,struct panorama::CLayoutManager::InMemoryFile_t,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,bool,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class CUtlString,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CPanel2DFactory *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class panorama::CStyleAnimation *,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,class v8::Global<class v8::ObjectTemplate> *,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::PanelEvent_t,class CDefLess<class panorama::CPanoramaSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CPanoramaSymbol,struct panorama::UIEventFactory,class CDefLess<class panorama::CPanoramaSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleFileKey,class CSmartPtr<class panorama::CStyleFile,class CRefCountAccessor>,class CDefLess<class panorama::CStyleFileKey>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::CKeyLess,short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class CUtlVector<struct panorama::CActiveAnimation::PropertyFrameData_t,int,class CUtlVectorMemory_Growable<struct panorama::CActiveAnimation::PropertyFrameData_t,int,0> > *,class CDefLess<class panorama::CStyleSymbol>,short>::Node_t,short>,short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IImageSource *,struct panorama::CImageResourceManager::UrlImageKey_t,class CDefLess<class panorama::IImageSource *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlString,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::EventHandler_t,int,class CUtlVectorMemory_Growable<struct panorama::EventHandler_t,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class CUtlVector<struct panorama::JSGenericCallback_t *,int,class CUtlVectorMemory_Growable<struct panorama::JSGenericCallback_t *,int,0> > *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Context> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIPanel *,unsigned int,class CDefLess<class panorama::IUIPanel *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::Node_t,class CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::IUIWindow *,class v8::Global<class v8::Object> *,class CDefLess<class panorama::IUIWindow *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::Node_t,class CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum panorama::GamePadCode,struct panorama::CUIInputEngine::AnalogData_t,class CDefLess<enum panorama::GamePadCode>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::Node_t,class CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum panorama::KeyCode,int,class CDefLess<enum panorama::KeyCode>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,struct panorama::JSGenericCallback_t *,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::Node_t,class CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct ResourceBindingBase_t const *,struct ResourceMonitor_t *,class CDefLess<struct ResourceBindingBase_t const *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::Node_t,class CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct panorama::CImageResourceManager::UrlImageKey_t,class panorama::CImageProxySource *,class CDefLess<struct panorama::CImageResourceManager::UrlImageKey_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,class CUtlVector<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,class CUtlVectorMemory_Growable<struct panorama::CUIAnimationEngine::StoppedTransitionProperty_t,int,0> > *,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CCompositionLayerCache<unsigned __int64,class panorama::CSource2CompositionLayer,class CDefLess<unsigned __int64>,0>::Layer_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct panorama::CUIEngine::PanelPaintCount_t,class CDefLess<unsigned __int64>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::Node_t,class CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<void *,class v8::Global<class v8::Object> *,class CDefLess<void *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct panorama::PropertyInTransition_t *,class panorama::CStylePropertyInTransitionLess,unsigned char,class CUtlLeanVector<struct UtlRBTreeNode_t<struct panorama::PropertyInTransition_t *,unsigned char>,unsigned char,class CMemAllocAllocator> >::Insert
-CUtlRBTree<unsigned __int64,class CDefLess<unsigned __int64>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<unsigned __int64,int>,int,class CMemAllocAllocator> >::Insert
CUtlSortVector<class CUtlString,class panorama::FontNameListSort_t,class CUtlVector<class CUtlString,int,class CUtlVectorMemory_Growable<class CUtlString,int,0> > >::FindLessOrEqual
CUtlSortVector<class panorama::CStyleKeyFrame *,class panorama::CUtlSortVectorCStyleKeyFramePtrLess,class CUtlVector<class panorama::CStyleKeyFrame *,int,class CUtlVectorMemory_Growable<class panorama::CStyleKeyFrame *,int,0> > >::Find
CUtlSortVector<class panorama::CStyleKeyFrame *,class panorama::CUtlSortVectorCStyleKeyFramePtrLess,class CUtlVector<class panorama::CStyleKeyFrame *,int,class CUtlVectorMemory_Growable<class panorama::CStyleKeyFrame *,int,0> > >::Insert
@@ -2166,6 +2138,9 @@ Cam\v;
Camellia(128)
Camellia(256)
Can't call GetSourceCRC32 for resource layout content.
+CanLocalize
+CanLocalize() requires a string as its first argument
+CanLocalize() requires one argument
CancelScheduled
CancelScheduled() must be called with 1 argument
Cancelled
@@ -2178,6 +2153,7 @@ Cessation Of Operation
ChGg
ChangeHoverState
Char=
+Check whether the given localization token is known to the localization system.
CheckChildrenScrolledIntoView
ClQ(|
ClearPanelEvent
@@ -2208,7 +2184,7 @@ Content-Type: application/ocsp-request\r\nContent-Length: %d\r\n\r\n
Content-Type: multipart/signed;
Content-Type: text/plain\r\n\r\n
ContextMenu
-Controls blending mode for the panel. See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\n-s2-mix-blend-mode: multiply;\n-s2-mix-blend-mode: screen;\n-s2-mix-blend-mode: additive\n;-s2-mix-blend-mode: opaque;</pre>
+Controls blending mode for the panel. See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\n-s2-mix-blend-mode: multiply;\n-s2-mix-blend-mode: screen;\n-s2-mix-blend-mode: additive\n;-s2-mix-blend-mode: opaque;-s2-mix-blend-mode: overlay\n;-s2-mix-blend-mode: hardlight\n;-s2-mix-blend-mode: linearburn\n;-s2-mix-blend-mode: darken\n;-s2-mix-blend-mode: lighten\n;-s2-mix-blend-mode: colordodge\n;-s2-mix-blend-mode: colorburn\n;-s2-mix-blend-mode: hue\n;</pre>
Controls if the background should be repeated in the horizontal and vertical directions.<br><br>Possible values per direction:<br>"repeat" - (default) Repeated in the specified direction until it fills the panel<br>"space" - Repeated as many times as required to fill the panel w/o being clipped. Space is added between images to to align first and last image with panel edges.<br>"round" - Repeated as many times as required to fill the panel w/o being clipped. The image is resized to align first and last image with panel edges.<br>"no-repeat" - Not repeated<br><br>Possible single values:<br>"repeat-x" - equals "repeat no-repeat"<br>"repeat-y" - equals "no-repeat repeat"<br><br><b>Examples:</b><pre>background-repeat: repeat; // equals "repeat repeat" (default)\nbackground-repeat: repeat space; // repeats horizontally, spaces vertically \nbackground-repeat: no-repeat round; // 1 column of images, scaled to fit evenly</pre>
Controls if the panel is visible and is included in panel layout. Possible values:<br>"visible" - panel is visible and included in layout (default)<br>"collapse" - panel is invisible and not included in layout
Controls texture sampling mode for the panel. Set to alpha-only to use the textures alpha data across all 3 color channels, or point for point sampling.<br><br><b>Examples:</b><pre>texture-sampling: normal;\ntexture-sampling: alpha-only;\ntexture-sampling: point;</pre>
@@ -2479,11 +2455,6 @@ DYNAMIC_CTRL
DYNAMIC_GET_DATA_CTX
DYNAMIC_LOAD
DYNAMIC_SET_DATA_CTX
-D\tV_isvalidhex
-D_BORDER_DASH
-D_TEXTURETYPE
-D_USEBORDERCLIP
-D_USERADIALCLIP
Data Encipherment
DbgIsReloadingScript
DcO/lcK+hSK
@@ -2914,7 +2885,7 @@ FV|FgUV
F\rH'4
Failed to KV3 transfer block: %d\n
Failed to add include for file: %s
-Failed to allocate an instance of a class
+Failed to allocate an instance of a class of type '%s'
Failed to load a layout that is required.
Failed to load image data from %s\n
Failed to normalize @import url '%s'
@@ -3353,6 +3324,7 @@ MODULE_RUN
MS[;6
MZL}
M\rLAI)haL<|p\t\t
+M\tV_isstrlower_fast
M\vOj
Mail
Make a web request (disabled)
@@ -3570,6 +3542,7 @@ OPENSSL_init
OPENSSL_malloc Error
OTHERNAME
O\r5x
+O\tV_isvalidhex
O_yG|
Oakley-EC2N-3
Oakley-EC2N-4
@@ -3606,8 +3579,12 @@ P-224
P-256
P-384
P-521
+P08@J
+P08J
+P08N
P1\t98"
P5[1
+P6`d=
PAGN_4
PARAMETERS
PARSE_BAG
@@ -3844,9 +3821,6 @@ PanoramaMovie.Default
PanoramaScript
PanoramaUI
PanoramaVideoPlayer
-Panorama_OutputColor
-Panorama_OutputDepth
-Panorama_OutputIntermediate
Parameters
Peer haven't sent GOST certificate, required for selected ciphersuite
PerformLayout
@@ -4129,7 +4103,6 @@ SDL_OpenJoystick
SDL_RemoveEventWatch
SDL_RumbleGamepad
SDL_ShowSimpleMessageBox
-SEARCH!!!!
SECG curve over a 112 bit prime field
SECG curve over a 113 bit binary field
SECG curve over a 128 bit prime field
@@ -4363,6 +4336,7 @@ Sets 2 dimensional rotation degrees that apply to the quad for this panel prior
Sets an opacity brush to apply to the panel and all it's children during composition.<br><br><b>Example:</b><pre>opacity-brush: gradient( linear, 0% 0%, 0% 100%, from( #ffffffff ), to( #ffffff00 ) );</pre>
Sets how the panel is positioned relative to its parent. "static" means position in the default way. "fixed" means position in the default way, but ignoring the parent's scroll offset.<br><br><b>Example:</b><pre>layout-position: fixed;</pre>
Sets letter-spacing for text in a string. Possible values:<br>normal - no manual spacing<br>&lt;pixels&gt; - Any fixed pixel value (ex: "1px")
+Sets paragraph-spacing for text in a string. Only affects multiple line breaks in a row (\n\n, <p>, etc.).Possible values:<br>normal - no manual spacing, defauls to line height<br>&lt;pixels&gt; - Any fixed pixel value (ex: "1px")
Sets the Opacity of background-image<br><br><b>Examples:</b><pre>background-img-opacity: 0.5;</pre>
Sets the amount of blur to apply to the contents behind this panel during composition. Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes. Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf. As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>background-blur: gaussian( 2.5 );\nbackground-blur: gaussian( 6, 6, 1 );</pre>
Sets the amount of blur to apply to the panel and all it's children during composition. Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes. Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf. As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>blur: gaussian( 2.5 );\nblur: gaussian( 6, 6, 1 );\n
@@ -4672,6 +4646,7 @@ Ut]<E
Uv1t
Uz_G3=
V07;m
+V0b=
V2I_ASIDENTIFIERS
V2I_AUTHORITY_INFO_ACCESS
V2I_AUTHORITY_KEYID
@@ -4715,7 +4690,6 @@ VNotify Abandoned (Not enabled)\n
VNotify Sent\n
VNotify StartProcess failed!\n
VNotify: %s\n
-VPr<
VY5[;o
VZ#-DLU[3=h
V\rKk
@@ -5050,6 +5024,7 @@ Z~wl
\n5a=Z
\n:82H
\nJS(%s:%d:%d)\n%s\n%s\n
+\nWKJ
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n\tIPSec/IKE/Oakley curve #3 over a 155 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
\n\tIPSec/IKE/Oakley curve #4 over a 185 bit binary field.\n\tNot suitable for ECDSA.\n\tQuestionable extension field!
@@ -5128,6 +5103,7 @@ _}eOk
`28)fk
`3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z
`:zQF
+`AMJ
`D$daM-l
`DZG
`F?ToLocalEmpty@api_internal@v8@@YAXXZ
@@ -5170,7 +5146,6 @@ aRWZ5
aRecord
aSRP
aXvC
-a\tV_powd
a]?xG
aaControls
ac-auditEntity
@@ -5422,6 +5397,7 @@ bie.+
bignum out of range
bignum routines
bignum too long
+binary
bio not set
bio write failure
biometricInfo
@@ -6012,6 +5988,8 @@ col-resize
collapse
color-stop
color-stop( %s,
+colorburn
+colordodge
command not supported
command takes input
command takes no input
@@ -6199,6 +6177,7 @@ d[kHy
d_r_0
darkblue
darkcyan
+darken
darkgoldenrod
darkgray
darkgreen
@@ -6635,6 +6614,7 @@ file://{resources}/default_keybinds.cfg
file://{resources}/keybinds.cfg
file://{resources}/window_keybinds.cfg
filename too big
+fill
fill
fill-opacity
fill-parent-flow
@@ -6761,13 +6741,13 @@ hF\rDz
hFcg
hJxRX@_
hN2D
-hQ\I
hRB.
hW*m
hW1M
hW_z
hX@e
h`Zr
+hardlight
hash
hashAlgorithm
hashFunc
@@ -7566,6 +7546,7 @@ l7@J
lC57
lDcW
lM2p
+l\tV_powd
language
last octet invalid
last-child
@@ -7601,6 +7582,7 @@ light
lightblue
lightcoral
lightcyan
+lighten
lightgoldenrodyellow
lightgray
lightgreen
@@ -7619,6 +7601,7 @@ line
line-height
line-through
linearGradient
+linearburn
linen
list cannot be null
list error
@@ -8148,6 +8131,8 @@ p.other
p.ppBasis
p.prime
p.tpBasis
+p08@H^
+p2P!\n
p2{l
p4Z3
p5Z3
@@ -8167,7 +8152,6 @@ pSourceFunc
pSpecified
pTexture
pU>\AL
-p\rP\f0
p^i9
packet length too long
pad_a
@@ -8229,7 +8213,7 @@ panorama::CSource2Surface::DrawBasicQuads
panorama::CSource2Surface::DrawFancyQuad
panorama::CStyleSymbol::CStyleSymbol
panorama::CUIEngine::PanelDestroyed
-panorama::CUIEngine::UpdateVideoTextures(7522):
+panorama::CUIEngine::UpdateVideoTextures(7514):
panorama::CUIPanel::AttachChild
panorama::CUIPanel::DetachChild
panorama::CUIPanel::~CUIPanel
@@ -8252,6 +8236,7 @@ panorama_video_tex_%s_%d_%d.vtex
panoramasymbol
panorma_vertex_texturedlayout
papayawhip
+paragraph-spacing
parameter
parameter encoding error
parameters
@@ -9250,6 +9235,9 @@ too large
too long
too many iterations
too many temporary variables
+tool_request_args
+tool_request_text
+tool_request_tool
tooltip-arrow-position
tooltip-body-position
tooltip-position
game/bin/win64/panorama_text_pango_strings.txt
modified • +27 / -15 • changes: 42
Show patch
@@ -13,8 +13,11 @@
%s%lu (%s0x%lx)\n
' ) - 3 G M Q _ c e i w }
(%ld unused bits)\n
- (08@HPX`j`
- (08@HPZ`
+ (08@HPX`j
+ (08@HPXb`k
+ (08@HPZ
+ (08@HR`k
+ (0X`hpz`k
(INVALID PSS PARAMETERS)\n
(Negative)
8f\ff
@@ -257,7 +260,6 @@ $hRh
(\v2,.CUIFontFilePackagePB.CUIEncryptedFontFilePB
(d4t8
(fS{ggRcjh
-(fp5
(h`H1pqA
(i/Al
(jvg;
@@ -628,8 +630,8 @@ $hRh
0123456789
02V8[
05=k
-08@HR`
-08B`
+08@HR
+08@J`k
08bX
09,h
0;Q5[
@@ -680,7 +682,7 @@ $hRh
2Zq)
2\fWQx
2\rlhp
-2\vp8
+2\vp8\r
2^pV
2a"l
2bT~
@@ -786,21 +788,19 @@ $hRh
7zRQ
8+Qw
80F2<
+81U%
82\n:XPH
851Pe
8<pl
8= zp
8A6j
-8Fp1
8GZS
8SIffK5W
8TZvrv<
8\v8!83858A8G8K8S8W8_8e8o8q8}8
8]Vc2
8ca1
8dS2
-8e0%
-8ia%
8pe7?
8q-S*]X
8sOy
@@ -901,8 +901,10 @@ $hRh
?uWS
?x29
@!@%@+@1@?@C@E@]@a@g@m@
+@08NX
@0pp
@BH]f
+@HPX`hv
@MfKZ
@Pgl
@Pu\rm
@@ -923,7 +925,6 @@ A9ur
A<fP
A>x8
AA Compromise
-AA:P
AACompromise
AC2,h
ACCESS_DESCRIPTION
@@ -1478,10 +1479,10 @@ CUITextLayoutPango::DrawRun
CUITextLayoutPango::DrawRun - Glyph render
CUITextLayoutPango::GetCharacterCoordinates
CUITextLayoutPango::GetCharacterRangeCoordinates
+CUITextLayoutPango::GetLineRangeCoordinates
CUITextLayoutPango::HitTestPoint
CUITextLayoutPango::Initialize
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<unsigned int,struct panorama::CUIFontLoaderLinux::FontMemory_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<unsigned int,struct panorama::CUIFontLoaderLinux::FontMemory_t *,class CDefEquals<unsigned int>,struct DefaultHashFunctor<unsigned int>,int>::HashBucket_t,int>::AddMultipleToTail
-CUtlRBTree<struct CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::Node_t,class CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct panorama::UITextLayoutProperties_t *,struct panorama::UITextOpacityMaskData_t,class CDefLessPtr<struct panorama::UITextLayoutProperties_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CVcn
C[L6
C\lVQ
@@ -2181,6 +2182,7 @@ GetCharacterCoordinates
GetCharacterRangeCoordinates
GetConsoleCP
GetCursorInfo
+GetLineRangeCoordinates
GetQueueStatus
GetSystemTime
Gew}
@@ -2622,7 +2624,11 @@ P-224
P-256
P-384
P-521
+P08@J`k
+P08J
+P08NX
P1\t98"
+P2`k
P5[1
PAGN_4
PANGO_LIBDIR
@@ -2827,8 +2833,10 @@ Parameters
Peer haven't sent GOST certificate, required for selected ciphersuite
Permanent Identifier
Permitted
+Pfp>
Pm8A?
PmR"H?
+Pn0@
Policy Qualifier CPS
Policy Qualifier User Notice
Polish
@@ -2992,8 +3000,8 @@ RSA_verify
RSA_verify_ASN1_OCTET_STRING
RSA_verify_PKCS1_PSS
RSA_verify_PKCS1_PSS_mgf1
-R\fp8
R\r1>Vp
+R\vp8\r
R]Di
Rbg.E
ReadConsoleInputW
@@ -3582,9 +3590,8 @@ XRJ2
XWY]
XYD%
X\tQo
-X`hr`
+X`hr
Xd3h
-Xf02
XfJ7
XjfR
XqgA+
@@ -3762,6 +3769,7 @@ a5<p
a;Tg
a@XZ
aA0k
+aBvX
aD/x
aDSS
aECDH
@@ -4831,6 +4839,7 @@ g|MT
h&eC
h*Ax
h0XB
+h1P%
h2Wl
h2n_\
h5N.
@@ -4877,6 +4886,7 @@ holdInstructionReject
homePostalAddress
homeTelephoneNumber
houseIdentifier
+hpz`k
hr_H
http request
https proxy request
@@ -5894,6 +5904,8 @@ p.other
p.ppBasis
p.prime
p.tpBasis
+p08@H^X
+p2`k
p2{l
p4Z3
p5Z3
@@ -5927,6 +5939,7 @@ pango_attr_list_new
pango_attr_list_unref
pango_attr_shape_new
pango_attr_size_new
+pango_attr_size_new_absolute
pango_attr_stretch_new
pango_attr_strikethrough_new
pango_attr_style_new
@@ -6224,7 +6237,6 @@ rX&O0
rZ1VwGf5
rZPM
r\vDi
-r\vp8
rand
rand2
random number generation failed
game/bin/win64/panoramauiclient_strings.txt
modified • +45 / -37 • changes: 82
Show patch
@@ -1,6 +1,9 @@
- !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$h
+ !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
(08@HPX`j
+ (08@HPXb
(08@HPZ
+ (08@HR
+ (0X`hpz
<b>@import</b>
cubic-bezier( %1.3f, %1.3f, %1.3f, %1.3f )
ellipsis
@@ -351,6 +354,7 @@
.?AVCStylePropertyOpacityMask@panorama@@
.?AVCStylePropertyOverflow@panorama@@
.?AVCStylePropertyPadding@panorama@@
+.?AVCStylePropertyParagraphSpacing@panorama@@
.?AVCStylePropertyPerspective@panorama@@
.?AVCStylePropertyPerspectiveOrigin@panorama@@
.?AVCStylePropertyPosition@panorama@@
@@ -439,15 +443,17 @@
.PEA_N
.PEBVILocalizationString@panorama@@
08@HR
-0:Ph
-0vDA
+08@J
+0:Pj
+0vt8
0x%4.4x
+2\vp$E
3?New@Number@v8@@SA?AV?$Local@VNumber@v8@@@2@PEAVIsolate@2@N@Z
3?New@Object@v8@@SA?AV?$Local@VObject@v8@@@2@PEAVIsolate@2@@Z
5butt
6?NumberValue@Value@v8@@QEBA?AV?$Maybe@N@2@V?$Local@VContext@v8@@@2@@Z
-8B y
8C:\buildworker\csgo_rel_win64\build\src\panorama\layout\stylepropertyfactory.cpp
+8Qa'
:context->%p->%s:\n
:context->null->UIEngine Global:\n
<< LIST TRUNCATED >>
@@ -462,7 +468,7 @@
<span class="%s">%p</span>
<span class="%s">%s</span>
<span class="%s">0x%x</span>
-=\tV_isbreakablewspace32
+>paneleventsource
??0HandleScope@v8@@QEAA@PEAVIsolate@1@@Z
??0TryCatch@v8@@QEAA@PEAVIsolate@1@@Z
??0Utf8Value@String@v8@@QEAA@PEAVIsolate@2@V?$Local@VValue@v8@@@2@@Z
@@ -477,20 +483,20 @@
?Enter@Isolate@v8@@QEAAXXZ
?Exit@Context@v8@@QEAAXXZ
?Exit@Isolate@v8@@QEAAXXZ
-?FileOpenDialogDoubleClickFile
?For@Symbol@v8@@SA?AV?$Local@VSymbol@v8@@@2@PEAVIsolate@2@V?$Local@VString@v8@@@2@@Z
?FromJustIsNothing@api_internal@v8@@YAXXZ
?Get@Object@v8@@QEAA?AV?$MaybeLocal@VValue@v8@@@2@V?$Local@VContext@v8@@@2@I@Z
?GetCurrentContext@Isolate@v8@@QEAA?AV?$Local@VContext@v8@@@2@XZ
?GetName@Function@v8@@QEBA?AV?$Local@VValue@v8@@@2@XZ
?GlobalizeReference@api_internal@v8@@YAPEA_KPEAVIsolate@internal@2@_K@Z
?HasCaught@TryCatch@v8@@QEBA_NXZ
-@08NDA
+@08Nt8
@?SlowGetInternalField@Object@v8@@AEAA?AV?$Local@VData@v8@@@2@H@Z
-@HPX`hvP
+@DebugIndividualStyle
+@HPX`hv
@keyframes
@keyframes '%s'\r\n{\r\n
-@nDA
+@nt8
@panorama_streaming_load_local_images
ABXY
APIN_txt
@@ -626,14 +632,10 @@ CPanel2DFactory: Factory for '%s' already exists!!!!\n
CPanoramaVideoPlayer - Call video64.dll CVideoPlayer::Stop
CStylePropertyFactory: Factory for '%s' already exists!!!!\n
CStyleSymbol must become larger, cannot fit all style properties in uint8 anymore
+CUtlDict<short,class CDefFastCaselessStringLess>::Insert
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CPanelPtr<class panorama::CPanel2D>,struct panorama::CDebugLayout::PanelDebugInfo_t,class CDefEquals<class panorama::CPanelPtr<class panorama::CPanel2D> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::CPanel2D> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CPanelPtr<class panorama::CPanel2D>,struct panorama::CDebugLayout::PanelDebugInfo_t,class CDefEquals<class panorama::CPanelPtr<class panorama::CPanel2D> >,struct DefaultHashFunctor<class panorama::CPanelPtr<class panorama::CPanel2D> >,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,class panorama::CStyleProperty *,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class panorama::CStyleSymbol,unsigned char,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class panorama::CStyleSymbol,unsigned char,class CDefEquals<class panorama::CStyleSymbol>,struct DefaultHashFunctor<class panorama::CStyleSymbol>,int>::HashBucket_t,int>::AddMultipleToTail
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,class CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlString,short,class CDefFastCaselessStringLess,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalPanelRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,class CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbol,struct LocalRegistration_t,class CDefLess<class CUtlSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,class CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CBaseSymbol<1>,class CUtlBuffer *,class CDefLess<class panorama::CBaseSymbol<1> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::Node_t,class CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class panorama::CStyleSymbol,class panorama::CLabel *,class CDefLess<class panorama::CStyleSymbol>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlSortVector<class CUtlString,class panorama::FontNameListSort_t,class CUtlVector<class CUtlString,int,class CUtlVectorMemory_Growable<class CUtlString,int,0> > >::FindLessOrEqual
Can't call Panorama Symbol constructor outside panorama.dll until UIEngine is initialized! Symbol: %s
CanScrollHorizontal
@@ -692,7 +694,7 @@ ContextMenuEvent
ContextMenuEventDirect
ContextMenuFadoutTime
ControlBarRow
-Controls blending mode for the panel. See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\n-s2-mix-blend-mode: multiply;\n-s2-mix-blend-mode: screen;\n-s2-mix-blend-mode: additive\n;-s2-mix-blend-mode: opaque;</pre>
+Controls blending mode for the panel. See CSS mix-blend-mode docs on web, except normal for us is with alpha blending.<br><br><b>Examples:</b><pre>-s2-mix-blend-mode: normal;\n-s2-mix-blend-mode: multiply;\n-s2-mix-blend-mode: screen;\n-s2-mix-blend-mode: additive\n;-s2-mix-blend-mode: opaque;-s2-mix-blend-mode: overlay\n;-s2-mix-blend-mode: hardlight\n;-s2-mix-blend-mode: linearburn\n;-s2-mix-blend-mode: darken\n;-s2-mix-blend-mode: lighten\n;-s2-mix-blend-mode: colordodge\n;-s2-mix-blend-mode: colorburn\n;-s2-mix-blend-mode: hue\n;</pre>
Controls if the background should be repeated in the horizontal and vertical directions.<br><br>Possible values per direction:<br>"repeat" - (default) Repeated in the specified direction until it fills the panel<br>"space" - Repeated as many times as required to fill the panel w/o being clipped. Space is added between images to to align first and last image with panel edges.<br>"round" - Repeated as many times as required to fill the panel w/o being clipped. The image is resized to align first and last image with panel edges.<br>"no-repeat" - Not repeated<br><br>Possible single values:<br>"repeat-x" - equals "repeat no-repeat"<br>"repeat-y" - equals "no-repeat repeat"<br><br><b>Examples:</b><pre>background-repeat: repeat; // equals "repeat repeat" (default)\nbackground-repeat: repeat space; // repeats horizontally, spaces vertically \nbackground-repeat: no-repeat round; // 1 column of images, scaled to fit evenly</pre>
Controls if the panel is visible and is included in panel layout. Possible values:<br>"visible" - panel is visible and included in layout (default)<br>"collapse" - panel is invisible and not included in layout
Controls texture sampling mode for the panel. Set to alpha-only to use the textures alpha data across all 3 color channels, or point for point sampling.<br><br><b>Examples:</b><pre>texture-sampling: normal;\ntexture-sampling: alpha-only;\ntexture-sampling: point;</pre>
@@ -711,7 +713,6 @@ CreatePanelWithCurrentContext
CreateVideoPlayer
CuesContainer
CycleButton
-D\tV_isvalidhex
DaisyInputTypeABXY
DaisyInputTypePIN
DaisyInputTypeRS
@@ -726,7 +727,6 @@ DebugComputedRow
DebugComputedValue
DebugFrameLeftMargin
DebugFrameRow
-DebugIndividualStyle
DebugInheritedStylesHeader
DebugInspectOpacitySlider
DebugLabelToggle
@@ -851,6 +851,7 @@ FileNameTextEntry
FileOpenDialog
FileOpenDialogCancel
FileOpenDialogClose
+FileOpenDialogDoubleClickFile
FileOpenDialogEntry
FileOpenDialogFilesSelected
FileOpenDialogFilterChanged
@@ -888,7 +889,6 @@ FrameSection
FrameStyleBlock
Fullscreen
GB=\nHB
-G\tV_iswcntrl
Ga=UU
GamepadInput
GenericTextInputHandlerID
@@ -949,7 +949,7 @@ HTMLTitle
HTMLURLChanged
HTMLUpdatePageSize
HTMLVerticalScrollBar
-H\tV_iswdigit
+H\tV_isbreakablewspace32
Has Cached Command List
HasCachedCommandList
HasCaptions
@@ -1024,7 +1024,6 @@ Just ignore the calculations, you can zoom to this amount (will validate that th
KEY_BACKSPACE: Accepted.\n
KEY_BACKSPACE: Clearing state due to %d\n
KEY_BACKSPACE: Rejected.\n
-K\tV_iswspace
L?fff?
LT_txt
LabelHREF
@@ -1104,6 +1103,7 @@ NumberEntry
NumberEntryChanged
NumberEntryDecrementValue
NumberEntryIncrementValue
+O\tV_isvalidhex
Offscreen
OnMouseMove
OnPanelStyleChanged
@@ -1113,9 +1113,9 @@ OpenStyleFileForEditAtByteIndex
OpenText
Option_%d
OverMaxPips
+P08@J
P08J0
-P08NDA
-P60.
+P08Nt8
PageDown
PageLeft
PagePanelDown
@@ -1153,7 +1153,6 @@ PanoramaUIEngine interface not set up\n
PanoramaUIEngine setup failed\n
PanoramaVideoPlayer
ParentWithProperties
-Pf0/
Picked
PlaceholderText
Play
@@ -1189,6 +1188,8 @@ PropertySection
PropertyTransitionEnd
RBLegend
RT_txt
+R\tV_iswcntrl
+R\vp$E
RadioBox
RadioButton
RadioSelected
@@ -1228,6 +1229,7 @@ RightArrowVisible
RightLegend
RightMouseScrollRegion
RightOfFocus%d
+S\tV_iswdigit
Saved log to '%s'\n
Scale for the pinch zoom gesture.
Scroll the panel down by one line.
@@ -1302,6 +1304,7 @@ SetDragPosition
SetDraggable
SetFocus
SetHasClass
+SetHeightInPixels
SetIgnoreCursor
SetImage
SetImageFromFile
@@ -1333,11 +1336,13 @@ SetTitle
SetTopOfInputContext
SetURL
SetValueNoEvents
+SetWidthInPixels
Sets 2 dimensional X/Y scale factors that apply to the quad for this panel prior to 3 dimensional transforms. This scaling applies without perspective and leaves the panel centered at the same spot as it started. Default of 1.0 means no scaling, 0.5 would be half size.<br><br><b>Examples:</b><pre>pre-transform-scale2d: 0.8\npre-transform-scale2d: 0.4, 0.6</pre>
Sets 2 dimensional rotation degrees that apply to the quad for this panel prior to 3 dimensional transforms. This rotation applies without perspective and leaves the panel centered at the same spot as it started.<br><br><b>Example:</b><pre>pre-transform-rotate2d: 45deg;</pre>
Sets an opacity brush to apply to the panel and all it's children during composition.<br><br><b>Example:</b><pre>opacity-brush: gradient( linear, 0% 0%, 0% 100%, from( #ffffffff ), to( #ffffff00 ) );</pre>
Sets how the panel is positioned relative to its parent. "static" means position in the default way. "fixed" means position in the default way, but ignoring the parent's scroll offset.<br><br><b>Example:</b><pre>layout-position: fixed;</pre>
Sets letter-spacing for text in a string. Possible values:<br>normal - no manual spacing<br>&lt;pixels&gt; - Any fixed pixel value (ex: "1px")
+Sets paragraph-spacing for text in a string. Only affects multiple line breaks in a row (\n\n, <p>, etc.).Possible values:<br>normal - no manual spacing, defauls to line height<br>&lt;pixels&gt; - Any fixed pixel value (ex: "1px")
Sets the Opacity of background-image<br><br><b>Examples:</b><pre>background-img-opacity: 0.5;</pre>
Sets the amount of blur to apply to the contents behind this panel during composition. Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes. Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf. As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>background-blur: gaussian( 2.5 );\nbackground-blur: gaussian( 6, 6, 1 );</pre>
Sets the amount of blur to apply to the panel and all it's children during composition. Default is no blur, for now Gaussian is the only blur type and takes a horizontal standard deviation, vertical standard deviation, and number of passes. Good std deviation values are around 0-10, if 10 is still not intense enough consider more passes, but more than one pass is bad for perf. As shorthand you can specify with just one value, which will be used for the standard deviation in both directions and 1 pass will be set.<br><br><b>Examples:</b><pre>blur: gaussian( 2.5 );\nblur: gaussian( 6, 6, 1 );\n
@@ -1572,6 +1577,7 @@ V8ParamToPanoramaType expected array type to convert, but got something else
V8ParamToPanoramaType expected bool type to convert, but got something else (%s)
V8ParamToPanoramaType expected object type to convert, but got something else
V8ParamToPanoramaType expected object type to convert, but got something else (%s)
+V\tV_iswspace
Value set w/o name
Vertical
VerticalScrollBar
@@ -1593,7 +1599,6 @@ Visible
VolumeControl
VolumeSliderPopup
VolumeSliderValueChanged
-Vp6
WebBrowser
WebVTT Parse Error %d: %s:%u:%u - %s.\n
WindowGotFocus
@@ -1608,18 +1613,17 @@ XInputPad
X`hr
Y_txt
[object@%p]
-\nPlM
-\n\tV_atanf
+\tV_atanf
\tV_strupper_fast
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_AppendSlash
\t_V_strcspn
-\vPT5
`3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@H@Z
`F?ToLocalEmpty@api_internal@v8@@YAXXZ
-`fDA
-`nDA
-aBvDA
+`ft8
+`nt8
+a3?New@Array@v8@@SA?AV?$Local@VArray@v8@@@2@PEAVIsolate@2@PEAV?$Local@VValue@v8@@@2@_K@Z
+aBvt8
about:blank
activation
activation_change_fail
@@ -1633,7 +1637,6 @@ actualyoffset
aliceblue
align
all-scroll
-allow-focus-changes-on-scroll
allowtextselection
alpha-only
alternate
@@ -1739,6 +1742,8 @@ col-resize
collapse
color-stop
color-stop( %s,
+colorburn
+colordodge
complete
condensed
consoleDefaultHeight
@@ -1775,6 +1780,7 @@ cycle_classes
daisywheel
darkblue
darkcyan
+darken
darkgoldenrod
darkgray
darkgreen
@@ -1912,6 +1918,7 @@ gray
green
greenyellow
grey
+hardlight
has-tooltip-target-position
hasNotches
hasnotches
@@ -1985,6 +1992,7 @@ light
lightblue
lightcoral
lightcyan
+lighten
lightgoldenrodyellow
lightgray
lightgreen
@@ -2002,6 +2010,7 @@ limegreen
line
line-height
line-through
+linearburn
linen
loadbehavior
loading-text
@@ -2061,7 +2070,6 @@ multiply
multitouchzoomscale
muted
n-resize
-n09
navajowhite
navy
ne-resize
@@ -2120,10 +2128,10 @@ orange
orangered
orchid
otherPanelID, eventToFire
-p08@H^DA
-p2 y
+p08@H^t8
p>?Set@Template@v8@@QEAAXV?$Local@VName@v8@@@2@V?$Local@VData@v8@@@2@W4PropertyAttribute@2@@Z
-p>DA
+p>t8
+pFP'
padding
padding-bottom
padding-left
@@ -2137,7 +2145,6 @@ palevioletred
panel
panel-background://
panel://
-paneleventsource
panels-visible
paneltype
panorama/browser/webkit.css
@@ -2180,6 +2187,7 @@ panorama::panel_fatal_cast
panoramasymbol
panoramauiclient.dll
papayawhip
+paragraph-spacing
parent-relative
parentdisabled
pass-through
@@ -2194,7 +2202,7 @@ placeholder
playback_speed
playback_volume
plum
-pnDA
+pnt8
point
popuplinks
portuguese
game/bin/win64/particles_strings.txt
modified • +191 / -103 • changes: 294
Show patch
@@ -1,4 +1,5 @@
- C%d:I%-2d {F=%-10d,V=%-10d}
+
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -24,13 +25,14 @@
randseed[
rot[
yaw[
+!is_gpu_particle_system
"Limit Count: " + m_nLimitCount
"Position within sphere random" no longer supports the "randomly distribute to highest supplied Control Point" feature\n\t"Emit continuously" and "Emit noise" no longer support "scale emission to used control points".\n\t"Position from control points" had a max control point added to it.
"Remap control point orientation to rotation" does something approaching sanity for the cases I looked at. If we have cases where this isn't appropriate, we can split out the behavior.\n
"Remap control point orientation to rotation" rewritten to make more sense.\n
"Set control point rotation" pre-emission operator now correctly produces right-handed matrices [previously it would produce left-handed ones].
"Twist around axis" force now rotates around the specified control point instead of control point 0.\n
-$DETAIL2BLENDMODE
+#\tV_exp2f
$SFXDetailBlendMode
%02x
%40s: Age: %6.2f, asleep: %s next sleep %6.2f NumActive: %3d, flags %d, Bounds Center: (%.2f,%.2f,%.2f) (0x%p)\n
@@ -49,27 +51,34 @@ $SFXDetailBlendMode
%s Be Batch Rendered
%s is trying to get CP object %d but the function read limit is %d\n
%s is trying to get CP renderable %d but the function read limit is %d\n
+%s%02d:%02d
%s:( ActiveParticleCount()=%d, m_bounds=%? simtime=%g )
%s::%s (%u)
%s::%s (Entity Output Handler)
+%t<\t%d;\t%4:\t%
(builtin)
(min=%g max=%g)
*** Test failure: "%s"
,m_nStride=%d m_pData=%p )
-1 for all asleep, 1 for all awake
-BfF
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AV<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VIReadBufferCallback@@@@YA?AV?$shared_ptr@VIReadBufferCallback@@@std@@PEAVIReadBufferCallback@@@Z@
.?AV<lambda_1>@?1???$ScaleMatrix@$00VCVariableMatrix@@@MatrixMath@@YAXAEAVCVariableMatrix@@M@Z@
.?AV<lambda_1>@?1??DrawBlobulatorImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@
.?AV<lambda_1>@?1??DrawSoftObjectImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@
.?AV<lambda_1>@?1??DrawSoftObjectImplicitsWithRadii@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MAEBUConfig_t@2@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@
.?AV<lambda_1>@?1??OnCreate@C_OP_ClientPhysics@@UEBAXPEAVCParticleCollection@@PEAX@Z@
+.?AV<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@
.?AV<lambda_1>@?3??RenderBatchedCollections@CParticleCollection@@SAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@
-.?AV<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@W4GPUSimulationStage@@@Z@
-.?AV<lambda_1>@?CE@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@
+.?AV<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@AEAVIBarrierHelper@@W4GPUSimulationStage@@AEAVCRenderAttributes@@@Z@
+.?AV<lambda_1>@?CH@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@I@Z@
.?AV<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
.?AV<lambda_2>@?7??Operate@C_OP_VelocityMatchingForce@@UEBAXPEAVCParticleCollection@@MPEAX@Z@
.?AV<lambda_2>@?8??AddForces@C_OP_IntraParticleForce@@UEBAXPEAVFourVectors@@PEAVCParticleCollection@@AEBV?$CUtlLocalStackArray@T__m128@@$00@@HMPEAX@Z@
.?AV<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@
@@ -167,6 +176,7 @@ $SFXDetailBlendMode
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetHitboxToModel@@@@
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetRigidAttachment@@@@
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SetVectorAttributeToVectorExpression@@@@
+.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_SkyVisCull@@@@
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_StatusEffect@@@@
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_StatusEffectCitadel@@@@
.?AV?$CParticleFunctionDefinitionTyped@VC_INIT_VelocityFromCP@@@@
@@ -461,21 +471,25 @@ $SFXDetailBlendMode
.?AV?$_Func_base@XPEAVIParticleCollection@@PEAX@std@@
.?AV?$_Func_base@XPEBUObjectPairCollisionList_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1???$ScaleMatrix@$00VCVariableMatrix@@@MatrixMath@@YAXAEAVCVariableMatrix@@M@Z@XHH@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawBlobulatorImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawSoftObjectImplicits@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MMAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??DrawSoftObjectImplicitsWithRadii@CGpuImplicitRenderer@@QEAAXPEAVIRenderContext@@PEBVIMaterialMode@@MAEBUConfig_t@3@AEBV?$CUtlVector@UParticle_t@CGpuImplicitRenderer@@HV?$CUtlVectorMemory_Growable@UParticle_t@CGpuImplicitRenderer@@H$0A@@@@@@Z@XPEAVCRenderAttributes@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??OnCreate@C_OP_ClientPhysics@@UEBAXPEAVCParticleCollection@@PEAX@Z@XPEAVIParticleCollection@@PEAX@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??StopEmission@CNewParticleEffect@@QEAAX_N000@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??RenderBatchedCollections@CParticleCollection@@SAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@W4GPUSimulationStage@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?CE@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??GPUSimulateParticles@CParticleCollection@@QEAAXPEAVIRenderContext@@AEAVIBarrierHelper@@W4GPUSimulationStage@@AEAVCRenderAttributes@@@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?CH@??RenderSelfInternal@CParticleCollection@@AEAAXAEAUParticleRenderingContext_t@@AEAUParticleBatchingContext_t@@I@Z@V?$CUtlVector@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@HV?$CUtlVectorMemory_Growable@U?$pair@PEBDV?$variant@_NMH_KVCUtlString@@V?$Vec4D@M@@PEAURenderResourceHandle_t__@@Umonostate@std@@@std@@@std@@H$0A@@@@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?7??Operate@C_OP_VelocityMatchingForce@@UEBAXPEAVCParticleCollection@@MPEAX@Z@XPEBUObjectPairCollisionList_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_2>@?8??AddForces@C_OP_IntraParticleForce@@UEBAXPEAVFourVectors@@PEAVCParticleCollection@@AEBV?$CUtlLocalStackArray@T__m128@@$00@@HMPEAX@Z@XPEBUObjectPairCollisionList_t@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@VCPulseValueFullType@@$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_3>@?BA@???$VisitAllOverlappingPairs@$0A@@?$CObjectTree@HUParticleObjectTreeOptions_t@CParticleCollection@@@ObjectTree@@QEBAXAEBV?$function@$$A6AXPEBUObjectPairCollisionList_t@@@Z@std@@@Z@XHH@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingResourceHandleTraits_t@V?$CWeakHandle@UInfoForResourceTypeCModel@@@@@@I$$V@std@@
.?AV?$_Ref_count_obj2@VCPulseStructLayout@@@std@@
+.?AV?$_Ref_count_resource@PEAVIReadBufferCallback@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VIReadBufferCallback@@@@YA?AV?$shared_ptr@VIReadBufferCallback@@@std@@PEAV1@@Z@@std@@
.?AVCBaseRendererSource2@@
.?AVCBaseTrailRenderer@@
.?AVCChildFunctionDefinition@@
@@ -655,6 +669,7 @@ $SFXDetailBlendMode
.?AVC_INIT_SetHitboxToModel@@
.?AVC_INIT_SetRigidAttachment@@
.?AVC_INIT_SetVectorAttributeToVectorExpression@@
+.?AVC_INIT_SkyVisCull@@
.?AVC_INIT_StatusEffect@@
.?AVC_INIT_StatusEffectCitadel@@
.?AVC_INIT_VelocityFromCP@@
@@ -962,20 +977,21 @@ $SFXDetailBlendMode
.?AVISceneObjectListener@@
.?AVISequence@@
0=don't clear particle attrs at init 1=clear to zero 2=clear to 0xdb -1=clear to zero at first sim
-33S@ff
3E"F
3E"W
3E"g
3L?Zb%
4?Ku
7?sk3mx>>*vn[9d
8f?D
-:???;???;???3776>????/?/????7'7&>?????????
+8oNj
+9>-memory-
;1#INF
<DEBUG-Only>
<elt type not set>
<nL4=
<nL4=nL4=nL4=nL4=
+<non-RTTI type>
<none>\n
<unimplemented>
=2qg
@@ -990,8 +1006,6 @@ $SFXDetailBlendMode
>pwn?
>sh1?
>uYL>
-?/?????/?.>??????????????>>??;?/?+???;?/?**?/?;???+?/?;??>>??????????????>.?/?????/?
-?????????>&7'7????/?/????>6773???;???;???:
?Bxt>
?CURVE_TANGENT_LINEAR
?JA7=
@@ -1010,9 +1024,12 @@ Abs Int
Absolute value (float)
Absolute value (int)
Activity %s has %d sequences with a total weight of %d!\n
+Add Flags
Add R%d <- R%d + R%d
+Add flags to the given value.
Add the array 'b' to the end of 'a'.
Address of m_Children.m_pHead: [%p]\n
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
All Particle Systems:\n
Allocated Particles
Alpha Alternate
@@ -1022,7 +1039,6 @@ Alpha fade in random
Alpha fade in simple
Alpha fade out random
Alpha fade out simple
-Always
Amount of simulation time that can elapse before new systems start falling back to cheaper versions
And R%d <- R%d && R%d
Any Other Cursors Have Tag
@@ -1048,7 +1064,9 @@ Array Remove Invalid Elements
Array Set Count
Array Shuffle
Assert True
-Async Fire C%d:I%d
+Async Call Method (Child Cursor) C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
Attempt to read and write stencil at the same time on a particle system. Ignoring write state\n
Attempted a typeid of nullptr pointer!
Attempted to create particle system from RESOURCE_HANDLE_INVALID\n
@@ -1068,7 +1086,6 @@ BOX_MINS
Bad KV3 data (%s)
Bad KV3 data for resource '%s': %s\n
Bad compression
-Bad count in ArraySetCount (%d)
Bad max in ArrayFirstNElements (%d)
Bad read pointer - no RTTI data!
Bad reinterpret on ArrayAppend
@@ -1078,18 +1095,18 @@ Bad sequence in GetSequenceActivityName() for model '%s'!\n
Base for falling back to cheaper effects under load.
Base-10 logarithm
Base-2 logarithm
-BaseTexture
+Basic string support.
Begin testing a condition composed of Observable values. Continues checking until canceled.
Begin testing a condition composed of Observable variable references. Continues checking until true.
BindlessParticleShader
-Blobulator
Bone Indices
Box Angles
Box Flags
Box Maxs
Box Mins
+Branch Recursion Distance Scale Factor
+Branch Recursion Offset/Twist Scale Factor
C:\buildworker\csgo_rel_win64\build\_build_\particles\_vpc_particles\default\win64\_msvc_\Retail\particles.pdb
-C:\buildworker\csgo_rel_win64\build\src\blobulator\implicit\sweeprenderer.cpp
C:\buildworker\csgo_rel_win64\build\src\particles\gpu_implicit_renderer.cpp
C:\buildworker\csgo_rel_win64\build\src\particles\particle_initialization.cpp
C:\buildworker\csgo_rel_win64\build\src\particles\particle_sceneobject.cpp
@@ -1107,7 +1124,8 @@ CKV3MemberNameSet
CKV3MemberNameWithStorage
CONTENT ERROR: Unable to find %s '%s' in model '%s' referenced in particle system '%s'\n
CP %d
-CParticleCollection::EvaluatePerFrameGPUSimulationState(3850):
+CParticleCollection::AllocateSharedGPUBufferSlots Slot %d BDAOffset %d: %s\n
+CParticleCollection::EvaluatePerFrameGPUSimulationState(3994):
CParticleCollection::GenerateSortedIndexList
CParticleCollection::InitializeNewParticles
CParticleCollection::SetControlPointOrientationFLU
@@ -1117,7 +1135,7 @@ CParticleCollectionBindingInstance::HACK_UnusedBinding
CParticleFloatInput::MEmitKV3TransferPreLoadFn failed\n
CParticleNamedValueRef
CParticleObjectDesc
-CParticleObjectDesc::OnPreRender(283):
+CParticleObjectDesc::OnPreRender(311):
CParticleSnapshot::%s - Invalid attribute mapping specified (must be one-to-one)!\n
CParticleSystemMgr::CreateParticleCollection( Name String )
CParticleSystemMgr::FindParticleSystem
@@ -1137,9 +1155,9 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -1149,26 +1167,28 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
CPulseCell_PickBestOutflowSelector::ProcessSelector
CPulseCell_Step_CallExternalMethod '%s'
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseMathlib::AbsFloat
CPulseMathlib::AbsInt
CPulseMathlib::ArcCos
@@ -1205,6 +1225,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -1234,34 +1255,42 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseTestScriptLib::AssertTrue
CPulseTestScriptLib::IndicateTestFailure
CPulseTestScriptLib::IsInTestMode
CPulseTestScriptLib::RegisterTestCheckpoint
CPulseTestScriptLib::TestModeAssertTrue
+CREATE_CHILD_CURSOR_OUTFLOW
CREATION_TIME
CStrongHandle
CURVE_TANGENT_FREE
CURVE_TANGENT_MIRROR
CURVE_TANGENT_SINE
CURVE_TANGENT_SPLINE
+CUtlBlockVector<class std::function<void __cdecl(void)>,int,class CMemAllocAllocator>::GrowCount
CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CInstancedMeshSceneObject *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
-CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct RenderReadbackHandle_t__ *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
+CUtlLeanVectorBase<struct UtlLinkedListElem_t<struct CParticleSystemMgr::ParticleMgrReadbackRequest_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPAssignment_t,int,class CMemAllocAllocator>,struct CPAssignment_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_InstructionDebug,int,class CMemAllocAllocator>,struct CPulse_InstructionDebug,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class CMemAllocAllocator>,struct CPulse_RegisterInfo,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CKV3MemberName,class std::unique_ptr<class CModelHitBoxesInfo,struct std::default_delete<class CModelHitBoxesInfo> >,class CDefEquals<class CKV3MemberName>,struct DefaultHashFunctor<class CKV3MemberName>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CKV3MemberName,class std::unique_ptr<class CModelHitBoxesInfo,struct std::default_delete<class CModelHitBoxesInfo> >,class CDefEquals<class CKV3MemberName>,struct DefaultHashFunctor<class CKV3MemberName>,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CDefEquals<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,struct DefaultHashFunctor<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CDefEquals<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,struct DefaultHashFunctor<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::HashBucket_t,int>::AddMultipleToTail
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlHashMap<int,int,class CDefEquals<int>,struct DefaultHashFunctor<int>,int>::HashBucket_t,int,class CMemAllocAllocator>,struct CUtlHashMap<int,int,class CDefEquals<int>,struct DefaultHashFunctor<int>,int>::HashBucket_t,int>::AddMultipleToTail
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct FloatInputMaterialVariable_t,int,class CMemAllocAllocator>,struct FloatInputMaterialVariable_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct TextureGroup_t,int,class CMemAllocAllocator>,struct TextureGroup_t,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct VecInputMaterialVariable_t,int,class CMemAllocAllocator>,struct VecInputMaterialVariable_t,int>::InsertBeforeGetPtr
+CUtlMemoryBlockAllocator<class std::function<void __cdecl(void)>,class CMemAllocAllocator>::AddPage
CUtlVectorFixedGrowable
C_INIT_InitFromCPSnapshot: CP %d - No snapshot specified for %s!\n
C_INIT_InitFromCPSnapshot: CP: %d - "%s" snapshot for %s has no data!\n
@@ -1270,13 +1299,12 @@ C_INIT_InitFromCPSnapshot: Unsupported attribute data type! (%d)\n
C_INIT_InitFromCPSnapshot: cannot initialize PREV_XYZ - XYZ cannot be read!\n
C_INIT_InitFromCPSnapshot: framerate unknown initializing PREV_XYZ! Defaulting to 30fps, but particle velocity may look wrong...\n
C_INIT_InitFromParentKilled: Unsupported attribute data type! (%d)\n
+C_INIT_SkyVisCull
C_OP_SetFromCPSnapshot: cannot initialize PREV_XYZ - XYZ cannot be read!\n
C_OP_SetFromCPSnapshot: framerate unknown initializing PREV_XYZ! Defaulting to 30fps, but particle velocity may look wrong...\n
Calculate vector attribute
Call C%d:I%d (%s)
Can NOT
-Cancel
-Cancel observing.
Cannot allocate abstract class
Causes all single-fire particle assertions to trigger once more.
Ceiling - round float up to nearest integer)
@@ -1303,10 +1331,11 @@ Color light from control point
Color lit per particle
Color random
Commit Step
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
Completed
Computes 2 ( 2.71...) raised to a power
Computes e ( 2.71...) raised to a power
+Cone Angle Offset
Constrain distance to control point
Constrain distance to path between two control points
Constrain distance to user specified path
@@ -1338,36 +1367,28 @@ Cull random
Cull relative to model
Cull relative to plane
Cull relative to ray trace environment
+Cull relative to sky visibility
Cull relative to sphere
Cull when crossing plane
Cull when crossing sphere
Cursor Has Tag
Cursors Allowed To Run Parallel
Cursors Allowed To Wait
Cycle Scalar
-D_COMPRESSED_NORMALS_AND_TANGENTS
-D_DEBUG_STATS
-D_DEPTH_FEATHERING
-D_EXPLICIT_FETCH
-D_FORCE_LEGACY_SHADER_MODEL
-D_INITIALIZE_SYSTEM
-D_PANORAMA_PARTICLE
-D_PARTICLE_LDS_CACHE
-D_PER_PARTICLE_RADIUS
-D_SUPPORTS_RAYTRACING
-D_VISUALIZE_ROUNDNESS
Dampen Movement Relative to Plane
Dampen Movement relative to model
Data_Branch1xy
Data_Branch1zBranch2x
Data_Branch2yz
+Decay From Wake
Deg2 Rad
Density-based force
Depth
-DepthMap
Desired Kill Priority
Detach R%d
Diffuse particle attributes
+Disable Non-Static Collision
+Disable Non-Static Collision Duration
Disable to get a better look at what's happening offscreen
DisableSorting
Div R%d <- R%d / R%d
@@ -1376,7 +1397,7 @@ Dot Product Vector
Dot Product of Vector a
Draw particle children with parents (-1=use gameinfo, 0=no, 1=yes)
Drive CP from global sound float
-ERROR: SweepRenderer::render_slices got into an infinite loop!\n
+DualHull
Elapsed time = %f\n
Element Access R%d <- R%d[R%d]
Emit continuously
@@ -1389,10 +1410,10 @@ EnableParticleShaderFeatureBranching
Enables/Disables Particle Simulation
Endcap timed system freeze
EntityName
+Enum support.
Eq R%d <- R%d == R%d
Error in child list of particle system %s [%p], parent: %p\n
Error initializing particle system %s\n
-Error: Sort failed\n
Evaluate the curve at the specified input position
Evaluate the gradient at a position between 0 and 1
Exp2
@@ -1439,18 +1460,19 @@ F_SPHERICAL_HARMONIC_LIGHTING
F_TEXTURE_LAYERS
F_TINT_BY_FOW
Fail Outflow
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to init snapshot data for resource '%s'\n
-FilterTaps_t
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find first element 'a' which compare equal to 'element' and return its index.
FindParticleSystem
Fixed "Animation Type" in Sprite Renderer not working for non-particle normal alignment types.\n
Fixed "Inherit Attribute from Parent Particles" not keeping parent particles in sync with children.\n
Fixed Float Evaluator "Particle Count Percent of Total Count" being off-by-one at the end. Double-check remapping of any Particle Count Normalized float evaluators.\n
Fixed bugs in "Position along path sequential" where it could incorrectly create too many particles at the last control point. Also fixed issues with control points specified in backward order in that operator as well as "Movement lock to saved position along path".\n
+Flashlight
Float To Game Time
Float16HDRBackBuffer
Floor - round float down to nearest integer
@@ -1461,9 +1483,9 @@ Force Control Point In Pet
Force Scale
Force based on distance from plane
ForceMaterialOverride
+Format Duration String From Seconds
Frac
Fractional component (ie. returns 0.34 for 12.34)
-FrameBufferCopyTexture
Frames Measured: %d\n
Free
Function "%s" not found while loading particle system\n
@@ -1473,8 +1495,10 @@ GPU Particle Simulate
GPU Particles InitialValues %s
GPU Particles0 %s
GPU Particles1 %s
+GPUParticleRemapTexture %s
GPUParticleRequiredResources
-GPUSimulateSupportsRaytracing
+GPUParticle_perframes
+GPUParticle_readbacks
Game Blackboards:
Game Time To Float
GameSupportsLegacyShaders
@@ -1497,18 +1521,16 @@ HAT\tKAT\tKAT\tKAT\tK
HITBOX_INDEX
HITBOX_RELATIVE_XYZ
HSV Shift to control point
+Has All Flags
+Has Any Flags
Hit maximum implicit index buffer size of %u, desired %u\n
Hit maximum implicit vertex buffer size of %u, desired %u\n
Hitbox Index
Hitbox Offset Position
How aggressive the switch to fallbacks will be depending on how far over the cl_particle_sim_fallback_threshold_ms the sim time is. Higher numbers are more aggressive.
IKV3TransferInterface_ResourceSave
-IKV3TransferInterface_UtlSymbolLarge
-IS_EFFECTS_LAYER
-IS_PARTICLE_MIXED_RESOLUTION_LAYER
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If specified, each wait interval will vary randomly between WaitInterval this value
If this cursor spawns other work via Fire And Forget, should this Tag be inherited?
IgnoreMaterialOverride
@@ -1519,14 +1541,10 @@ Implicit: max verts %uk, max indices %uk\n
Implicit: pruned particles %u, columns culled %u (%u particles)\n
Implicit: verts per cell
ImplicitVertex_t
-IndexBuffer
-IndexBufferSize
-IndexTriVertexBufferLayout
Indicate Test Failure
Indicate that a checkpoint has been reached.
Indicates a test failure if Value is false.
Indicates a test failure if value is false; only tested when running unit tests
-IndirectDrawArgs
Inherit attribute from parent particle
Inherit initial value from parent particle
Init Collection [%p]: %s\n
@@ -1556,12 +1574,11 @@ Invoke Lib %s
Is In Test Mode
Is Valid Vector
Is Valid World Vector
-IsoSurface
Jump to Instr I%d
KeyValues3
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
+Killed on Cull
LIFE_DURATION
LONG PARTICLE RENDER: "%s" took %fms to submit to render.\n
Lazily Cull on Float Comparison
@@ -1607,6 +1624,8 @@ Ls?q
MANUAL_ANIMATION_FRAME
MAtomicTransfersAsPlainString
MGPUParticleFunction
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MODEL_RENDER_HELPER_PTR
MODEL_RENDER_HELPER_PTR_2
MODEL_RENDER_HELPER_PTR_3
@@ -1628,6 +1647,7 @@ MPropertyStartGroup
MPropertySuppressField
MPulseExpressionAlias
MPulseFunctionHiddenInTool
+MPulseTypeRestriction
MVectorIsCoordinate
MVectorIsSometimesCoordinate
Made disabling operators + children actually fully work.\n
@@ -1636,12 +1656,14 @@ Make Angle From Forward Vector
Make Color
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -1672,7 +1694,7 @@ Model Helper Pointer 2
Model Helper Pointer 3
Model Helper Pointer 4
Model Surface UV Snapshot Generator
-MotionVectorsTexture
+Motion Disabled
Move particles between 2 control points
Movement Lerp to Initial Position relative to CP
Movement Lerp to skinned position from CP snapshot
@@ -1698,6 +1720,7 @@ Movement skin to bones rigid
Mul R%d <- R%d * R%d
Multi-Segment Display Snapshot Generator
Multiplier for falling back to cheaper effects under load.
+N@Bad count in ArraySetCount (%d)
NI>R
NONE/Disabled
NULL CELL
@@ -1718,19 +1741,18 @@ Normal Scaling Force
Normal align to CP
Normal lock to control point
Normal modify offset random
-NormalTexture
Normalize Vector a
Normalize vector
Not R%d <- !R%d
Not safe to 'new' this class due to alignment requirements
+Number Of Lights To Create
O@33S@
Offset of m_Children.m_pHead: [%i]\n
On Interval
On True
OnInterval
Only wrote %d (of %d) values when saving map!
Operator Name
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Or R%d <- R%d || R%d
Oscillate scalar
@@ -1742,16 +1764,24 @@ OverlayProjectionDirection
P8?2
PARENT_PARTICLE_ID
PARENT_PARTICLE_INDEX
+PARTICLE_ATTR_BOX_FLAGS_DISABLE_NONSTATIC_COLLISION
+PARTICLE_ATTR_BOX_FLAGS_MOTION_DISABLED
+PARTICLE_ATTR_BOX_FLAGS_WAKE_DECAY
+PARTICLE_ATTR_BOX_FLAGS_ZERO_GRAVITY
+PARTICLE_EVENT_TYPE_MASK_KILLED_ON_CULL
+PARTICLE_FLASHLIGHT
PARTICLE_ID
+PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE
PET_SupportFadingOpaqueModels
+PF_TYPE_CONTROL_POINT_IS_SET
PITCH
PRECIPITATION
PREV_XYZ
-PackedBlobNormal
PanelID
Parent Map: %s\n
Parent Particle ID
Parent Particle Index
+Parent VData
Particle Binding
Particle Binding (Real)
Particle Error before emit: Effect %s, Function %s (%d, %d)\n
@@ -1779,8 +1809,10 @@ Particles/Budget_RenderUS
Particles/Budget_SimulationUS
Particles/GPUParticles
Particles/MixedResoluion/Slices
+Particles/ParticlePixelCBSlot
Particles/ParticleTextureBaseSlot
Particles/ParticleTraceOffsetOnlyHit
+Particles/ParticleVertexCBSlot
ParticlesFoggedByDefault
ParticlesLib
Pass Outflow
@@ -1792,6 +1824,7 @@ Pin Particle to control point
Pin Rope Segment Particle to Parent Particle
PivotPaint
Play EndCap when Finished
+Point at Previous instead of next
Point vector at next particle position
Position On Grid
Position Previous
@@ -1823,6 +1856,7 @@ Prevent passing through static part of world
Print debug message every time a particle collection is created
Print out information on existing particle systems
Problem loading error.vpcf, please validate your game install\n
+Proceed Immediately
Process Selector
Profile Point 1
Profile Point 2
@@ -1834,6 +1868,7 @@ Profile particle spike
PropWorldOrigin
Pull towards control point
Pulse domain which enables particle content to query leaf code to introspect game state.
+PulseDurationStringFormat_t
Q#B7
Q#Bg
QAngle
@@ -1851,6 +1886,7 @@ ROPE_SEGMENT_ID
ROTATION
ROTATION_SPEED
Rad2 Deg
+Radially splashed points require exposure to sky
Radius from CP object
Radius scale
Ramp control point linear random
@@ -1862,6 +1898,7 @@ Random World Position
Random force
Randomizes the order of items in the array (Knuth/Fisher-Yates Shuffle)
Reciprocoal square root (1/sqrt)
+Recursion Branch Split Scale
Ref Counted Pointer
Register Test Checkpoint
Reinitialize on endcap scalar random
@@ -1936,9 +1973,11 @@ Remap speed to scalar
Remap touching water to scalar
Remap vector to CP
Remap velocity to vector
+Remove Flags
Remove Tag From Cursor
Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
Render Cables
@@ -1976,7 +2015,7 @@ Render sprite trail
Render sprites
Render standard light
Render volumetric smoke
-RenderOps_Init(15138):
+RenderOps_Init(15110):
RenderSimpleModelCollection is missing a model to render
Repeatedly Trigger Child Group
Restart effect after duration
@@ -2021,11 +2060,12 @@ SHADER_EXTRA_DATA2
Saturate
Saturate (clamps float between 0 and 1)
Save a named value of any type on the cursor.
+Scale Branch Distance From Recursion Depth
+Scale Branch Offset/Twist From Recursion Depth
Scale INV R%d <- R%d / R%d
Scale R%d <- R%d * R%d
ScaleMatrix
Scene Object Pointer
-SceneDepth
SceneSystem/DrawParticleChildrenSeparateFromParents
SceneSystem/Particles/Debug Visualizer
SceneSystem/Particles/Draw Particles
@@ -2039,6 +2079,7 @@ Scratch float 3
Screen Space Distance To Edge
Screen Space Position of Target
Screen Space Rotate Toward Target
+Scroll Offset
Second Sequence Number / Alpha Window Threshold
Selectively Enable Children
Sequence Number
@@ -2100,6 +2141,7 @@ Show all used controlpoints
Show rope segments when debugging particle systems - specify a number to isolate to that segment id
Show specific attribute when debugging particle systems
Show the sorting position when debugging particle systems
+ShqN
Sign Float
Sign Int
Signature hook to fill out arguments for OnInterval
@@ -2108,7 +2150,6 @@ Sim Time Max: %.2fms\n
Sim Time Min: %.2fms\n
Sine of angle. Input in radians, output in radians
Snapshot load error for resource '%s': %s\n
-SphericalHarmonicsTextureA
SphericalHarmonicsTextureB
SphericalHarmonicsTextureC
Spline
@@ -2127,31 +2168,26 @@ Split a Vector2D into component parts.
Split a World Vector into component parts.
Split an Angle into component parts.
Spring to Vector constraint
-SpritecardRendererControls_t
Sqr Float
Sqr Int
Sqrt
Square root
Start a timer with the specified duration, fire the OnInterval output
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
Stop effect after duration
Stops all particle systems currently playing
Stops all particle systems that don't match specified name
Stops all particle systems that match specified name
String Length
Strings Are Equal Case Sensitive
Sub R%d <- R%d - R%d
+Synchronous - Wait for this node to fully complete before proceeding.
System Name
-SystemParticlesIn
-SystemParticlesOut
-SystemStepSize
Systems Measured: %d\n
T>gaW?:]f?AHV>'
TINT_RGB
TRAIL_LENGTH
T\sgPmx
-T\tV_log2f
Tag Cursor
Tag Self When Complete
TanFrameQuat
@@ -2165,24 +2201,27 @@ TextureLayer3
TextureLayer4
The maximum detail level of particle to create
The maximum distance that particles will render
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
Threshold to warn about when rendering particles.
Time since the start of the timer
Time varying force
-TintColor
Took %g uS per iteration to create+destroy %s, %gUs for create+sim
Total Frames
Total Render (us)
Total Sim (us)
Total particles created : %u
+Trace
Trace cache efficiency = %.2f%% (%d traces for %d tests)\n
Trail Length
Tried to load a polymorphic pointer with no '%s' key
Tried to load resource reference '%s' from a value without a resource reference specific type.
Turbulent force
+Turn a time in seconds into a display string. NOT localized.
Twist around axis
UNUSED
USER_EVENT_STATES
Unable to find a valid model handle for m_bModelFromRenderer in '%s'\n
+Unknown format type
Update lights
Usage: particle_profile <'systems'|'operators'> <num_frames>\n
Usage: particle_profile_spike <'systems'|'operators'> <spike_threshold_ms>\n
@@ -2191,6 +2230,8 @@ Use fixed seeds for easier debugging
Use random seeds in debug
Used to flag a test as having failed.
User Event States
+VDATA
+VDataChoice( scripts/light_styles.vdata )
Value 0-1 how far along duration (always 0 if duration is -1)
Variable '%s' is referenced but not declared in this system (%s). Adding a fallback now.\n
Vector To World Vector
@@ -2205,8 +2246,6 @@ Velocity random
Velocity repulse from world
Velocity set from control point
Version circa 7/31/2018.
-VertexBuffer
-VertexBufferSize
VertexColorUVPos_t
VertexElementAnnotation
VertexGenericIntegerData
@@ -2219,17 +2258,22 @@ WARNING: Particle system '%s' was not precached correctly. Performing blocking l
WARNING: Particle system '%s' with missing path was not found in existing particle system list.\n
WARNING: Removing circular reference to particle child '%s'.\n
Wait Complete
+Wake Cursors With Tag
Warning: Missing fallback for particle system "%s"!\n
-When False
When Steady State in %f Seconds
-When True
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
+While False
+While True
World Vector To Vector
X to the Y power
Y>UU
Y?Mi
Yield, Resume=%s
Yz'x
Z>wg}?0
+Zero Gravity
+Zero Gravity Duration
[ Chunk%d ]
[ written at chunk start last-read I%d ]
[ written by I%d last-read I%d ]
@@ -2241,30 +2285,31 @@ Z>wg}?0
[RETURN R%d]
[RETURN]
\fT>M-+?#gy?
+\f\tV_acosd
\n\n----------------------------\nInstance Count:\n
+\ng_flConfigMaxCoord
\t%4d - %s\n
-\tV_acosd
\tV_asind
+\tV_atand
\tV_cosd
-\tV_exp2f
\tV_tand
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
-\tg_flConfigMaxCoord
+_\tV_log2f
__CursorQueue__
__FireCursorsParent__
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
__procedural_colorgradient.vtex
_procedural_particle_snapshot.vsnap
_w|9^yq=v0
a:fulltype
a:typeparam
+allflags
alloc_particles
allowed_api_features
allowed_requirements
alpha2
+anyflags
attr_factory
attributes
avg_num_tests
@@ -2280,16 +2325,12 @@ bE"W
bE"g
bInherit
bValue
-beginFrame
-beginTile
bentnormal
blendindices
blendweight
blendweights
blob indirect draw
-blobulator
body part
-bouncescale
box_angles
box_maxs
box_mins
@@ -2309,24 +2350,25 @@ clamp
compressedtangentframe
con_command
creation_time
+cull on sky
curvature
data_offset
data_size
+debug orientation
def min cpu=%d system cpu=%d def gpu=%d system gpu=%d\n
default_sort
deg2rad
densityVolume.InterpolatedVoxel( 0, Vector( 0.f, 0.f, 0.f ) )=%?
+direction input
domain_scope
dumpparticlelist
-dynamicbounce
element
-endFrame
-endTile
error.vpcf
+event horizon threshold distance for max force
expected %s, got %s
+expression_type
f>KZ}
f?yu
-f\tV_remainderf
fast
features
field_name
@@ -2347,6 +2389,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -2355,17 +2398,20 @@ flValueB
flWaitInterval
flWaitIntervalHigh
flYaw
+flashlight radius CP
+flashlight radius control point component
float3
force_scale
frac
g?Q1
glow_alpha
glow_rgb
+gpuparticlemgr
gpuparticles
gpuparticles_definition
gpuparticles_evaluators
+gpuparticles_eventindices
gpuparticles_functions
-gpuparticles_perframe
gpuparticles_snapshot
gpuparticles_uniqueindices
h>4hp?
@@ -2382,44 +2428,74 @@ implicit vertices
inherit attribute from peer particle systems
internal error in particle system MapParticleOrientationIndexToShaderCombo()
invalid_hitbox
+is_gpu_particle_system
+is_gpu_particle_system || m_nTraceSet == PARTICLE_TRACE_SET_STATIC
is_selector
itemgroups
k>Mg
k?C9
+kill density scale
kv3:ParticleParamID_t
length2d
length3d
lerp
lifespan
light has _fifty_percent_distance of %f but no zero_percent_distance\n
+light style
+light style time
lj?HP
log2
lookup tables
lowprecisionuv
lowprecisionuv1
lwK?
m_Children.m_pHead: [%p]\n
+m_Metadata
+m_SequencePoint
m_Stops
m_TagValue
-m_bBakedTwoSided
-m_bCanBatchWithDynamicShaderConstants
+m_bCheckExposedToSky
m_bConditionValue
-m_bDrawLast
+m_bCullOnSky
+m_bDebugOrientation
m_bFirstEvaluate
-m_bHasBakedLightingFromLightMap
-m_bHasBakedLightingFromVertexStream
-m_bIsNotMatchedToMaterial
-m_bNoShadow
-m_bOnlyShadow
-m_bUseCompressedNormalTangent
-m_bUseShadowFastPath
+m_bPrevious
+m_bScaleBranchDistance
+m_bScaleBranchDistance == false
+m_bScaleBranchOffset
+m_bScaleBranchOffset == false
m_buffer=
-m_externalMethodTargetGraph
+m_fMinimumDistance
+m_flBranchDistanceScale
+m_flBranchOffsetScale
+m_flKillDensityScale
+m_flLightStyleTime
+m_flNumberOfLightsToCreate
+m_flRecursionSplitScale
+m_flScollOffset
m_flSlopeIncoming
m_flSlopeOutgoing
+m_flSubPixelAAScale
+m_hCursorOnOtherGraph
m_nCurrentWakeIndex
+m_nCursorID
+m_nForcedStatusEffects == 0
m_nGraphID
+m_nNoCollisionAttribute
+m_nPosition != PARTICLE_FLASHLIGHT
+m_nRadiusCP
+m_nRadiusCPField
+m_nType != PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE
+m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_EMISSION || m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE
+m_nType == PARTICLE_VOLUMETRIC_SMOKE_TYPE_TRACE
+m_nYieldToken
+m_nZeroGravityAttribute
+m_strLightStyle
+m_strLightStyle == ''
m_szEffect
+m_vPrevPosition
+m_vecConeRotationOffset
+m_vecPreviewWind
manual_animation_frame
materials/dev/gpu_particles_initialize.vmat
materials/dev/gpu_particles_simulate.vmat
@@ -2434,19 +2510,23 @@ max_render
max_sim
medium
mesh group
+mod != csgo && mod != hlx
n?9a
nDenominator
nFirstParticle=%?
+nFormat
nKillPriority
nMaxElements
nNumerator
+nRemainderDigits
+nRemainderNoiseDigits
nValue
+nWakePriority
no_gpu_blobs
non_homogenous_forward_layer_only
not obeying particle system stencil of failure to parse stencil comparison string %s\n
not rendering particle system because of failure ot parse stencil write string %s\n
num_particles
-o\tV_sind
o\t\raHC
opacity
operators
@@ -2490,17 +2570,20 @@ point_4
polymorphic_arg
pos[
posxyz
+prev position
procedural_spritecard.vmat
propattr_flatten_into_parent_row
pulse_node_custom_attributes
pulse_runtime_lib
pvec_color_black
pvec_color_white
+q\tV_remainderf
quX?
r_draw_particle_children_with_parents
r_drawparticles
r_particle_allowprerender
r_particle_batch_collections
+r_particle_batch_in_fullsort
r_particle_cables_cast_shadows
r_particle_cables_culling
r_particle_cables_culling_bounds_scale
@@ -2536,6 +2619,7 @@ r_particle_model_per_thread_count
r_particle_multiplier
r_particle_newinput
r_particle_render_refreshes_sleep_timer
+r_particle_render_sprites_issue_vizquery
r_particle_render_test
r_particle_skip_postsim
r_particle_testbuffers
@@ -2584,6 +2668,7 @@ spritecardparticlestrailwithnormal
spritecardtessvb
strValue
string_list
+sub-pixel AA scale
systems
t>vTU>
tagValue
@@ -2602,8 +2687,10 @@ total_sim
trail_length
translucent
turn on optimized particle init
+type_restriction_is_enum_flags
vForward
vMins=%?
+value:fulltype
vecValue
vecValueA
vecValueB
@@ -2612,5 +2699,6 @@ vn[90
wH>r
xn>8
y?U0
-z>RegisterConCommand: Unknown error registering con command "%s"!\n
zW>w
+z\tV_sind
+{ item_factory = 'IntervalTimer' }
game/bin/win64/phonon_strings.txt
modified • +1687 / -94 • changes: 1781
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/physicsbuilder_strings.txt
modified • +127 / -95 • changes: 222
Show patch
@@ -50,6 +50,7 @@
#CfU7
#This file is generated by CHullIVR::SaveObj() from CPolygonMesh with %d vertices, %d faces\n
$ModelPath$/transmission
+$\tV_expd
$keyValueChildren
$modelname$
$modelname$_cavity
@@ -283,7 +284,6 @@ $prefix_element$
.?AUCAttr_m_FindStr@?1??GetStaticAttributes@CModelDocModelModifier_ReplaceResourceReferenceSubstring@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FollowerBone@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_FromName@?1??GetStaticAttributes@CModelDocMeshModifier_RenameStream@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_GraphName@?1??GetStaticAttributes@CModelDocAssociatedPulseGraph@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_GroupName@?1??GetStaticAttributes@CModelDocConfigElement_SetBodygroupOnAttachedModels@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_HitGroup@?1??GetStaticAttributes@CModelDocBasePhysicsShape@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -363,7 +363,6 @@ $prefix_element$
.?AUCAttr_m_PrefixToMatch@?1??GetStaticAttributes@CModelDocMeshModifier_RenameBonePrefix@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryAssociatedEntity@?1??GetStaticAttributes@CModelDocRoot@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_PrimaryRootBone@?1??GetStaticAttributes@CModelDocBoneMarkupList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
-.?AUCAttr_m_PropGroupContents@?1??GetAttributeTable_CModelDocBreakPieceContentsStruct@CModelDocBreakPieceContentsStruct@@SAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMeshList@?1??GetStaticAttributes@CModelDocPhysicsFromRender@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_RenderMode@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -586,6 +585,7 @@ $prefix_element$
.?AUCAttr_m_bHiddenInTools@?1??GetStaticAttributes@CModelDocBodyGroup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideMaterialGroupInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHideRenderColorInTools@?1??GetStaticAttributes@CModelDocSpawnConfig@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_bHighPrecisionBlendWeights@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighPrecisionTexCoords@?1??GetStaticAttributes@CModelDocRenderMeshMarkup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bHighQuality@?1??GetStaticAttributes@CModelDocGroomMeshFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_bIgnoreBackfaces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpSelectFacesByAngle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -818,6 +818,7 @@ $prefix_element$
.?AUCAttr_m_flBaseUpFriction@?1??GetStaticAttributes@CModelDocJiggleBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBias@?1??GetStaticAttributes@CModelDocClothMapFilter@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBiasToCenter@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flBoneOverlayAmount@?1??GetStaticAttributes@CModelDocClothEffectStiffen@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight0@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight1@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flBoneWeight2@?1??GetStaticAttributes@CModelDocVSNAPParticle@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -997,6 +998,7 @@ $prefix_element$
.?AUCAttr_m_flShrinkPieces@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpPrimitiveVoronoiPlane@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSkinThreshold@?1??GetStaticAttributes@CModelDocVSNAPFile@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSmoothDistance@?1??GetStaticAttributes@CModelDocModelModifier_FoliageVertexNormals@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_flSnapToGrid@?1??GetStaticAttributes@CModelDocMeshModifier_MeshOpVertexTransform@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpeedup@?1??GetStaticAttributes@CModelDocClothEffectSpeedup@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinAxisFriction@?1??GetStaticAttributes@CModelDocPhysicsJoint_Wheel@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_flSpinDegrees@?1??GetStaticAttributes@CModelDocAnimForceBoneSpin@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1083,6 +1085,7 @@ $prefix_element$
.?AUCAttr_m_nBlurRadius@?1??GetStaticAttributes@CModelDocClothShapeSDF@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupChoice@?1??GetStaticAttributes@CModelDocDistanceField@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBodyGroupCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nBodyOrder@?1??GetStaticAttributes@CModelDocPhysicsShapeList@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex0@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nBoneIndex1@?1??GetStaticAttributes@CModelDocKeychainMarkupLocator@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1165,6 +1168,7 @@ $prefix_element$
.?AUCAttr_m_nLODCount@?1??GetStaticAttributes@CModelDocModelContentDataBudgetLimit@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLastFrame@?1??GetStaticAttributes@CModelDocAnimPosture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
+.?AUCAttr_m_nLeaderType@?1??GetStaticAttributes@CModelDocClothFollowBone@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceContents@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLocalGravityCP@?1??GetStaticAttributes@CModelDocBreakPieceSimpleParticles@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
.?AUCAttr_m_nLoopEndFrame@?1??GetStaticAttributes@CModelDocAnimGesture@@MEAAXPEAV?$CUtlVector@PEAVIBaseToolAttr@@HV?$CUtlVectorMemory_Growable@PEAVIBaseToolAttr@@H$0A@@@@@@Z@
@@ -1584,6 +1588,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@
@@ -1706,6 +1711,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttr@MVCModelDocMeshSimplificationParams@@@@
@@ -1889,7 +1895,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -1901,7 +1906,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2079,6 +2083,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -2291,6 +2296,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothEffectWind@@@@
+.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothFollowBone@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothMapFilter@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothNode@@@@
.?AV?$CBaseConcreteToolAttrValue@HVCModelDocClothParams@@@@
@@ -2413,6 +2419,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CBaseConcreteToolAttrValue@MVCModelDocMeshSimplificationParams@@@@
@@ -2558,7 +2565,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@
@@ -2570,7 +2576,6 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CBaseConcreteToolAttrValue@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -2748,6 +2753,7 @@ $prefix_element$
.?AV?$CBaseConcreteToolAttrValue@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CBaseConcreteToolAttrValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CBaseConcreteToolAttrValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CBaseConcreteToolAttrValue@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -2960,6 +2966,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothEffectWind@@X@@
+.?AV?$CConcreteToolAttr@HVCModelDocClothFollowBone@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothMapFilter@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothNode@@X@@
.?AV?$CConcreteToolAttr@HVCModelDocClothParams@@X@@
@@ -3082,6 +3089,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@X@@
+.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@X@@
.?AV?$CConcreteToolAttr@MVCModelDocMeshSimplificationParams@@X@@
@@ -3265,7 +3273,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@X@@
@@ -3277,7 +3284,6 @@ $prefix_element$
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneMarkupList@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBoneRelativeNode@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContents@@X@@
-.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceContentsStruct@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceEmbedded@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceExternal@@X@@
.?AV?$CConcreteToolAttr@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@X@@
@@ -3455,6 +3461,7 @@ $prefix_element$
.?AV?$CConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@X@@
.?AV?$CConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@X@@
.?AV?$CConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@X@@
+.?AV?$CConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@X@@
.?AV?$CConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@X@@
.?AV?$CConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@X@@
.?AV?$CConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@X@@
@@ -3699,6 +3706,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothEffectWind@@@@
+.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothFollowBone@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothMapFilter@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothNode@@@@
.?AV?$CConcreteToolAttrGetSet@HVCModelDocClothParams@@@@
@@ -3820,6 +3828,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CConcreteToolAttrGetSet@MVCModelDocMeshSimplificationParams@@@@
@@ -3961,7 +3970,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -3972,7 +3980,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CConcreteToolAttrGetSet@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -4142,6 +4149,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrGetSet@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CConcreteToolAttrGetSet@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CConcreteToolAttrGetSet@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CConcreteToolAttrGetSet@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -4351,6 +4359,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectAnimEvent@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectSkinnedCollider@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothEffectWind@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothFollowBone@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothMapFilter@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothNode@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@HVCModelDocClothParams@@@@@@
@@ -4471,6 +4480,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@MVCModelDocModelModifier_FoliageVertexNormals@@@@@@
@@ -4642,7 +4652,6 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimTurn@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAnimationList@@@@@@
-.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@VCUtlString@@VCModelDocBaseBoneListMeshModifer@@@@@@
@@ -4826,6 +4835,7 @@ $prefix_element$
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@@@
+.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@@@
.?AV?$CConcreteToolAttrSaveLoadHelper@V?$CBaseConcreteToolAttr@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@@@
@@ -5286,6 +5296,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectAnimEvent@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectSkinnedCollider@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothEffectWind@@@@
+.?AV?$CToolAttrGetSetAccess@HVCModelDocClothFollowBone@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothMapFilter@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothNode@@@@
.?AV?$CToolAttrGetSetAccess@HVCModelDocClothParams@@@@
@@ -5407,6 +5418,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectEdgesByLength@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectFacesByAngle@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpSelectVerticesByWeight@@@@
+.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexTransform@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_MeshOpVertexWeld@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshModifier_ScaleWrinkleMap@@@@
.?AV?$CToolAttrGetSetAccess@MVCModelDocMeshSimplificationParams@@@@
@@ -5548,7 +5560,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimTurn@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimatedMaterialAttribute@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAnimationList@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocAttachmentPreviewModel@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseAnimGraph2Reference@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBaseBreakPiece@@@@
@@ -5559,7 +5570,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneMarkupList@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBoneRelativeNode@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContents@@@@
-.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceContentsStruct@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceEmbedded@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceExternal@@@@
.?AV?$CToolAttrGetSetAccess@VCUtlString@@VCModelDocBreakPieceSimpleParticles@@@@
@@ -5729,6 +5739,7 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@W4AnimFrameRangeLerpType_t@@VCModelDocLocalHierarchy@@@@
.?AV?$CToolAttrGetSetAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@V2@@@
+.?AV?$CToolAttrGetSetAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4BoneCull_t@CModelDocBoneMarkupList@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@V2@@@
.?AV?$CToolAttrGetSetAccess@W4CompressionLevel_t@CModelDocAclParameters@@V2@@@
@@ -5905,7 +5916,6 @@ $prefix_element$
.?AV?$CToolAttrGetSetAccess@_NVCModelDocVSNAPFile@@@@
.?AV?$CToolAttrGetSetAccess@_NVCRenderMeshSimplifyParams@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocAnimEvent@@@@
-.?AV?$CToolAttrKV3FGDProvider@VCModelDocAssociatedPulseGraph@@@@
.?AV?$CToolAttrKV3FGDProvider@VCModelDocGenericGameData@@@@
.?AV?$CTypedLogLayerSampleData@E@@
.?AV?$CTypedLogLayerSampleData@H@@
@@ -6098,6 +6108,7 @@ $prefix_element$
.?AV?$IToolAttrConcreteDataAccess@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttrConcreteDataAccess@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttrConcreteDataAccess@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttrConcreteDataAccess@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6159,6 +6170,7 @@ $prefix_element$
.?AV?$IToolAttr_TypedValue@W4AnimFrameRangeLerpType_t@@@@
.?AV?$IToolAttr_TypedValue@W4AttachmentType_t@CModelDocConfigElement_AttachedModel@@@@
.?AV?$IToolAttr_TypedValue@W4BlendWeightsPerVertex_t@CModelDocRenderMeshMarkup@@@@
+.?AV?$IToolAttr_TypedValue@W4BodyOrder_t@CModelDocPhysicsShapeList@@@@
.?AV?$IToolAttr_TypedValue@W4BoneCull_t@CModelDocBoneMarkupList@@@@
.?AV?$IToolAttr_TypedValue@W4CollisionGroup_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttr_TypedValue@W4CompressionLevel_t@CModelDocAclParameters@@@@
@@ -6205,7 +6217,9 @@ $prefix_element$
.?AV?$IToolAttr_TypedValue@W4SpawnEntity_t@CModelDocBaseBreakPiece@@@@
.?AV?$IToolAttr_TypedValue@W4TransferMorphsVertexSelectionMode_t@@@@
.?AV?$IToolAttr_TypedValue@_N@@
+.?AV?$_Func_base@XPEBDPEAVCBufferString@@@std@@
.?AV?$_Func_base@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
+.?AV?$_Func_impl_no_alloc@P6AXPEBDPEAVCBufferString@@@ZXPEBDPEAV1@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CreateLeafChoiceWrapperThunk@@YA?AV?$function@$$A6AXVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@Z@std@@P6AXPEAV?$CUtlVector@ULeafPropertyChoice_t@@HV?$CUtlVectorMemory_Growable@ULeafPropertyChoice_t@@H$0A@@@@@@Z@Z@XVHToolAttrTableInstance@@PEBVIBaseToolAttr@@PEAV?$CUtlVector@UToolAttrGenericChoice_t@@HV?$CUtlVectorMemory_Growable@UToolAttrGenericChoice_t@@H$0A@@@@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??SetupAccelerationStructure@RayTracingEnvironment@@QEAAXXZ@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?M@??RefineNode@RayTracingEnvironment@@AEAAXHPEBHHPEBUTriangleBounds_t@@V?$Vec3D@M@@2HPEAVCUtlMultiJobProcessor@@@Z@X$$V@std@@
@@ -6470,7 +6484,6 @@ $prefix_element$
.?AVCModelDocAnimatedMaterialAttributeColor@@
.?AVCModelDocAnimatedMaterialAttributeValue@@
.?AVCModelDocAnimationList@@
-.?AVCModelDocAssociatedPulseGraph@@
.?AVCModelDocAtom@@
.?AVCModelDocAttachment@@
.?AVCModelDocAttachmentBase@@
@@ -6884,6 +6897,7 @@ $prefix_element$
.?AVIUndoElement@@
.?AVIUndoListener@@
.?AVIUndoable@@
+.P6AXPEBDPEAVCBufferString@@@Z
.exr
.fgd
.pfm
@@ -6893,9 +6907,7 @@ $prefix_element$
.tif
.vmat
.webp
-04>c
0\r%0t
-0\tV_frexpf
0x%llx
16-byte data pool
1D Blend Has No Referenced Animations
@@ -6908,7 +6920,6 @@ $prefix_element$
2DBlend
2DBlendEditor
2DBlendFromAnimation
-2\vpLpu
2_BONE_IK
4-byte data pool
4\r54t
@@ -6922,6 +6933,7 @@ $prefix_element$
8-byte data pool
8DmeElement
969p
+9\tV_frexpf
:: <NO TARGET BONE>
; tris:
;acosf
@@ -6932,6 +6944,7 @@ $prefix_element$
<font color="red">Face is connected to itself, cannot dissolve</font>
<font color='darkred'><strong>Off:</strong></font> Maintain the relative translation and rotation between the source file origin and the parent bone's bind pose.<br><font color='darkgreen'><strong>On:</strong></font> Realign the translation and rotation of the source file to match the parent bone exactly.<br><br><em>(NOTE: The 'Offset Origin' and 'Offset Angle' are applied in either case.)</em>
<font color='red'>(WARNING: Performance risk!)</font><br>Indicates this breakpiece is essential for gameplay or other reasons.<br>Forces the piece to always spawn, potentially suppressing other breakpieces to stay in-budget.
+<non-RTTI type>
<p>Loads a content file containing animation keyframe data and resolves into animation data which plays in reverse, i.e. backwards.</p><p>Works the same as AnimFile except the direction of the animation data.</p><p>When specifying a sub frame range, the frame range is pulled from the animation file before reversal.</p><p>For a typical walk style animation with extracted motion, likely an AnimAlign to first frame of the original forward animation will be required.</p>
<pair_a>
<pair_b>
@@ -6948,14 +6961,15 @@ $prefix_element$
?catmullrom_normalize_x
?expf
?flags
-?material_blend_sampler_%i_%i
+?material_blend_sampler_color_%i_%i
?vtex
@%s_lookFrame_0
@%s_lookFrame_1
@%s_lookFrame_2
+@APhysics
@Integer overflow in %s
@ToolsStartup
-@m_vCenter
+@m_nParticle
@unnamed_%d
A bone named %s already exists.
A box shape which cloth collides with.
@@ -7225,9 +7239,10 @@ AsShotNeutral
AsShotPreProfileMatrix
AsShotWhiteXY
Asserts (fails compilation) if selection criteria is not met.
+AssetBrowse( %s )
AssetBrowse( vnmclip )
AssetBrowse( vnmgraph )
-AssetBrowse( vpulse, *extraFilterString=(pulse_domain=ServerEntity)pulse_domain_subtype=prop_physics|pulse_domain_subtype=prop_ragdoll|pulse_domain_subtype=prop_dynamic )
+AssetBrowse()
Assign A Channel
Assign B Channel
Assign Bone Parent
@@ -7244,9 +7259,8 @@ Assign to All Faces
Assigns a color value to a material attribute over a frame range.
Assigns a floating point value to a material attribute over a frame range.
Assigns all vertex weights to the specified bone.
-AssociatedPulseGraph
Associates a semantic identifier with an animgraph2 used by this model.
-AtlasToVolumeTextureConversion(3093): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
+AtlasToVolumeTextureConversion(3537): Error! Unable to parse grid/slice count from volume atlas filename: %s\n
Attach Point
Attach to Morphing Base Mesh
AttachedSoundEvent
@@ -7386,9 +7400,12 @@ Blend Weights Per Vertex
BlendLayersUsingTimeSelection
Blur Radius
Bm_Plane
+Bodies are ordered by bone depth (root bone body is first)
+Bodies are ordered the way their shapes appear in the shape list
Body Collection
Body Group Choice
Body Group Name
+Body Order
BodyGroupList
Bone '%s' already existed in the bind pose
Bone '%s' already existed in the mesh
@@ -7400,9 +7417,11 @@ Bone 1
Bone 2
Bone 3
Bone Cull Type
+Bone Depth
Bone Influence Filter
Bone Influence Filter Threshold
Bone Input ::
+Bone Merge (Ex)
Bone Names
Bone Rename failed, results in duplicate bone '%s' in this animation
Bone Rename failed, results in duplicate bones in this animation
@@ -7414,6 +7433,7 @@ Bone flags markup data
Bone name
Bone names must differ
Bone or Attachment
+Bone-Direct
BoneConstraintRbf :: Cannot find input bone "%s" :: %s\n
BoneConstraintRbf :: Cannot find output bone "%s" :: %s\n
BoneConstraintRbf :: Invalid input %d or output %d bone count :: %s\n
@@ -7422,6 +7442,7 @@ BoneConstraintRbf :: output bone count %d != output pose count %d :: %s\n
BoneMarkup
BoneMarkupList
BoneName
+BoneOverlay
BoneRelativeNode
BoneReplacements
Bonemerged
@@ -7437,8 +7458,6 @@ Bounds Hull
Bounds Maxs
Bounds Mins
Bounds View
-BoundsOffset
-BoundsScale
Box De-Select (
Box Dimensions
Box Primitive
@@ -7554,8 +7573,8 @@ CMapTileMesh
CMapTileProxy
CMapVariableSet
CMapWorld
-CMaterialSampler::AllocateVertexBuffers(169):
-CMaterialSampler::DrawMaterialSamplePoints(310):
+CMaterialSampler::AllocateVertexBuffers(176):
+CMaterialSampler::DrawMaterialSamplePoints(317):
CMesh Cannot create packed input layout, because the bone indices are out of range (0x%X)\n
CMesh Cannot create packed input layout, too many blend weights per vertex %d, max %d\n
CModelAnimGraph2Identifier
@@ -7624,7 +7643,6 @@ CModelDocAnimatedMaterialAttribute
CModelDocAnimatedMaterialAttributeColor
CModelDocAnimatedMaterialAttributeValue
CModelDocAnimationList
-CModelDocAssociatedPulseGraph
CModelDocAtom
CModelDocAttachment
CModelDocAttachmentBase
@@ -7805,7 +7823,7 @@ CModelDocModelModifier_FoliageVertexNormals
CModelDocModelModifier_FoliageVertexNormals: Computing...
CModelDocModelModifier_FoliageVertexNormals: Computing...\n
CModelDocModelModifier_FoliageVertexNormals: Mesh %d/%d...\n
-CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1147
+CModelDocModelModifier_FoliageVertexNormals::OperatorSmoothByDistance(), C:\buildworker\csgo_rel_win64\build\src\modeldoc_lib\modeldoc_modelmodifier.cpp:1148
CModelDocModelModifier_GenerateDecalUVs
CModelDocModelModifier_RenameBone
CModelDocModelModifier_ReplaceResourceReferenceSubstring
@@ -7965,49 +7983,14 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<clas
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int,class CMemAllocAllocator>,struct CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::MemPage_t,int>::EnsureUnusedCapacity
+CUtlLeanVectorImpl<class CUtlLeanVectorBase<unsigned short,int,class CMemAllocAllocator>,unsigned short,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorFixedGrowableBase<class CSceneObjectData,1,int,class CMemAllocAllocator>,class CSceneObjectData,int>::InsertBeforeGetPtr
CUtlMemoryBlockAllocator<class Vec2D<float>,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct CacheOptimizedTriangle_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct StoredTriangleVertexPositions_t,class CMemAllocAllocator>::AddPage
CUtlMemoryBlockAllocator<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,class CMemAllocAllocator>::AddPage
-CUtlRBTree<class CDmAttribute *,class CDefLess<class CDmAttribute *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmAttribute *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class CDmElement *,class CDefLess<class CDmElement *>,int,class CUtlLeanVector<struct UtlRBTreeNode_t<class CDmElement *,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<class IDmeOperator *,class CDefLess<class IDmeOperator *>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<class IDmeOperator *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<bool> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<bool>::PriorityLessFunc(struct ActiveLayer_t<bool> * const &,struct ActiveLayer_t<bool> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<bool> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class CUtlSymbolLarge> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class CUtlSymbolLarge>::PriorityLessFunc(struct ActiveLayer_t<class CUtlSymbolLarge> * const &,struct ActiveLayer_t<class CUtlSymbolLarge> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class CUtlSymbolLarge> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Color> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Color>::PriorityLessFunc(struct ActiveLayer_t<class Color> * const &,struct ActiveLayer_t<class Color> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Color> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class DmeTime_t> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class DmeTime_t>::PriorityLessFunc(struct ActiveLayer_t<class DmeTime_t> * const &,struct ActiveLayer_t<class DmeTime_t> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class DmeTime_t> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QAngle> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QAngle>::PriorityLessFunc(struct ActiveLayer_t<class QAngle> * const &,struct ActiveLayer_t<class QAngle> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QAngle> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class QuaternionStorage> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class QuaternionStorage>::PriorityLessFunc(struct ActiveLayer_t<class QuaternionStorage> * const &,struct ActiveLayer_t<class QuaternionStorage> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class QuaternionStorage> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class VMatrix> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class VMatrix>::PriorityLessFunc(struct ActiveLayer_t<class VMatrix> * const &,struct ActiveLayer_t<class VMatrix> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class VMatrix> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec2D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec2D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec2D<float> > * const &,struct ActiveLayer_t<class Vec2D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec2D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec3D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec3D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec3D<float> > * const &,struct ActiveLayer_t<class Vec3D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec3D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<class Vec4D<float> > *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<class Vec4D<float> >::PriorityLessFunc(struct ActiveLayer_t<class Vec4D<float> > * const &,struct ActiveLayer_t<class Vec4D<float> > * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<class Vec4D<float> > *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<float> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<float>::PriorityLessFunc(struct ActiveLayer_t<float> * const &,struct ActiveLayer_t<float> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<float> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<int> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<int>::PriorityLessFunc(struct ActiveLayer_t<int> * const &,struct ActiveLayer_t<int> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<int> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned __int64> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned __int64>::PriorityLessFunc(struct ActiveLayer_t<unsigned __int64> * const &,struct ActiveLayer_t<unsigned __int64> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned __int64> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct ActiveLayer_t<unsigned char> *,class CLessFunc<&public: static bool __cdecl ActiveLayer_t<unsigned char>::PriorityLessFunc(struct ActiveLayer_t<unsigned char> * const &,struct ActiveLayer_t<unsigned char> * const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct ActiveLayer_t<unsigned char> *,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CDmElementSerializationDictionary::ElementInfo_t,class CLessFunc<&private: static bool __cdecl CDmElementSerializationDictionary::LessFunc(struct CDmElementSerializationDictionary::ElementInfo_t const &,struct CDmElementSerializationDictionary::ElementInfo_t const &)>,int,class CUtlBlockVector<struct UtlRBTreeNode_t<struct CDmElementSerializationDictionary::ElementInfo_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CUtlSymbolLarge,struct DmMemoryInfo_t,class CDefLess<class CUtlSymbolLarge>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,class CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class IUndoable *,unsigned int,class CDefLess<class IUndoable *>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,class CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<enum DmElementHandle_t,enum DmElementHandle_t,class CDefLess<enum DmElementHandle_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,class CUtlSymbolLarge,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,class CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<int,float,class CDefLess<int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<bool>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<bool>::LessFunc(struct LayerEvent_t<bool> const &,struct LayerEvent_t<bool> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<bool>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class CUtlSymbolLarge>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class CUtlSymbolLarge>::LessFunc(struct LayerEvent_t<class CUtlSymbolLarge> const &,struct LayerEvent_t<class CUtlSymbolLarge> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class CUtlSymbolLarge>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Color>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Color>::LessFunc(struct LayerEvent_t<class Color> const &,struct LayerEvent_t<class Color> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Color>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class DmeTime_t>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class DmeTime_t>::LessFunc(struct LayerEvent_t<class DmeTime_t> const &,struct LayerEvent_t<class DmeTime_t> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class DmeTime_t>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QAngle>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QAngle>::LessFunc(struct LayerEvent_t<class QAngle> const &,struct LayerEvent_t<class QAngle> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QAngle>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class QuaternionStorage>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class QuaternionStorage>::LessFunc(struct LayerEvent_t<class QuaternionStorage> const &,struct LayerEvent_t<class QuaternionStorage> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class QuaternionStorage>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class VMatrix>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class VMatrix>::LessFunc(struct LayerEvent_t<class VMatrix> const &,struct LayerEvent_t<class VMatrix> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class VMatrix>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec2D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec2D<float> >::LessFunc(struct LayerEvent_t<class Vec2D<float> > const &,struct LayerEvent_t<class Vec2D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec2D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec3D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec3D<float> >::LessFunc(struct LayerEvent_t<class Vec3D<float> > const &,struct LayerEvent_t<class Vec3D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec3D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<class Vec4D<float> >,class CLessFunc<&public: static bool __cdecl LayerEvent_t<class Vec4D<float> >::LessFunc(struct LayerEvent_t<class Vec4D<float> > const &,struct LayerEvent_t<class Vec4D<float> > const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<class Vec4D<float> >,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<float>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<float>::LessFunc(struct LayerEvent_t<float> const &,struct LayerEvent_t<float> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<float>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<int>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<int>::LessFunc(struct LayerEvent_t<int> const &,struct LayerEvent_t<int> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<int>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned __int64>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned __int64>::LessFunc(struct LayerEvent_t<unsigned __int64> const &,struct LayerEvent_t<unsigned __int64> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned __int64>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct LayerEvent_t<unsigned char>,class CLessFunc<&public: static bool __cdecl LayerEvent_t<unsigned char>::LessFunc(struct LayerEvent_t<unsigned char> const &,struct LayerEvent_t<unsigned char> const &)>,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct LayerEvent_t<unsigned char>,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
+CUtlStringToken
CUtlStringTokenWithStorage
CVisibilityMgr
CW Limit
@@ -8346,13 +8329,14 @@ CurrentPreProfileMatrix
Curvature
Curvature Drop Amount
Curvature Drop Distance
-CurveEditor
CurveEditor( { extended=true input_name="Frame" output_name="Value" } )
Cut Max
Cut Min
Cycle Start Frame
Cycle Type
Cylinder
+Cylinder - Centered (SLOW PERF)
+Cylinder - Ground (SLOW PERF)
Cylinder: %s
D(None)
D16_UNORM
@@ -8391,6 +8375,7 @@ Default (No Name)
Default (No RGB Tint)
Default Gravity Scale
Default Root Bone Name
+Default to old body ordering for now
Default: %s
DefaultAnimGraph2
DefaultCropOrigin
@@ -8683,6 +8668,7 @@ End Effector Rotation Fix Behaviour
End Frame
End Frame Number
End Loop
+EnsureCapacity
Entity Class Override
EnumArray
Equal to
@@ -8713,6 +8699,7 @@ EstimateStripByteCounts
Euler Offset XYZ
Euler XYZ
Event %u layer %i at time %i type %s\n
+Event Class
Exact
Exclude Bones With Exact Flags
Exclude Bones With Flags
@@ -8835,8 +8822,8 @@ Fade Min Dist
Fade Out Time
Fade Time
Fail on empty
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to allocate field info array
Failed to allocate memory for %s (%ld elements of %ld bytes each)
Failed to allocate mesh edges for mesh, maximum edge count %i has been reached.\n
@@ -8926,9 +8913,9 @@ Flexible
Flip Bone Forward
Flip Direction
Flip the forward (x) axis direction of bones
-FloatBitMap_t::LoadFromFile(3285): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
+FloatBitMap_t::LoadFromFile(3729): Error! Slice %d format %dx%dx%d Attr(%d) != previous slices of %dx%d Attr(%d) for %s\n
FloatBitMap_t::LoadFromFloatBitmap: Received improper bitmap size, skipping!\n
-FloatBitMap_t::LoadFromTGA(2234): Error loading %s\n
+FloatBitMap_t::LoadFromTGA(2678): Error loading %s\n
Floating point "Predictor" not supported with %d data format
FoldLipLo
FoldLipUp
@@ -9021,6 +9008,7 @@ Goal Damping
Goal Strength
Goal Strength Bias
Goal Strength Scale
+Gradient()
Gravity Multiplier
GrayResponseCurve
GrayResponseUnit
@@ -9066,7 +9054,7 @@ Height Target
Height Tolerance
Height of the primitive to project normals from.
Helper for previewing how a model may attach to the given attachment. Does NOT affect the compiled model.
-HelperLoadFbmByFileExtension(3065): Error! Unknown file type for %s\n
+HelperLoadFbmByFileExtension(3509): Error! Unknown file type for %s\n
Hidden
Hide Materialgroup in Tools
Hide Render Color in Tools
@@ -9102,6 +9090,7 @@ How many iterations this solvers hould use.
How much the joint tries to drive back to bind pose
How much to consider facing angle in occlusion.
How quickly the elasticity target pose changes to match the current pose
+How should the bodies, created by these shapes, be ordered in the final model
How the end effector should be rotated after the solve.
Hull Per Element
Hull Per Mesh
@@ -9324,7 +9313,6 @@ KeychainMarkup
KeychainMarkup [%s]
KeychainMarkupLocator
Keyframe animation data
-Km_Name
Kochanek-Bartels
Kochanek-Bartels Early
Kochanek-Bartels Late
@@ -9350,6 +9338,7 @@ LZWSetupEncode
Last two rows as percentage of total size %f %%:\n
Layer %d: adding key at time %d [%d -> %d], value
Leader Bone
+Leader Type
Leaf Only
Leaking %i elements\n
Leave Body Collision Unmodified
@@ -9438,6 +9427,7 @@ MATERIAL_ATTRIBUTE:%s_%i
MAlternateSemanticName
MAtomicTransfersAsMap
MAtomicTransfersAsPlainString
+MESH_BUFFER_USAGE_VERTEX_EMISSIVE
MEntitySubclassScopeFile
MFgdHelper
MHideInPolymorphicClassList
@@ -9450,6 +9440,7 @@ MPropertyAttributeEditorOverride
MPropertyAutoExpandSelf
MPropertyColorPlusAlpha
MPropertyCustomEditor
+MPropertyFGDFromAssetKeysFromOtherField
MPropertyFlattenIncludeLabel
MPropertyFlattenIntoParentRow
MPropertyFlattenStretchFactor
@@ -9578,11 +9569,11 @@ Mesh %s has poylgonal faces defined which have bad vertex counts, these will be
Mesh & Skeleton
Mesh Filter Affects Duplicate Input Mesh Names, %s -> %s
Mesh Operation Stack
-Mesh also used by %s: %s but use 8 joint weights per vertex, unsupported by %s
+Mesh also used by %s: %s but uses 8 or 12 joint weights per vertex, unsupported by %s
Mesh contains %d blend weights per vertex; truncating to %d\n
Mesh has %i > %i floats of attributes, unable to apply all weightings.
Mesh node name
-Mesh used is tagged to use 8 joint weights per vertex, unsupported by %s
+Mesh used is tagged to use 8 or 12 joint weights per vertex, unsupported by %s
MeshDrawOrder
MeshFileReferenceEditor
MeshID
@@ -9751,6 +9742,7 @@ No bone named %s to rename.
No bone named :: %s in modeldoc, CSkeletonpose mismatch?
No but transfer UVs
No component selection made; node will have no effect.
+No destructible hit group set up for hitgroup '%s'; this anim event should be removed/disabled!
No edges selected by length threshold.
No faces selected by facing angle.
No faces selected.
@@ -9781,6 +9773,7 @@ No support for converting user data format to LogLuv
No vertex attribute name specified
No vertices selected by index and weight threshold.
NoCollapse
+NoEditor()
Node '%s' not allowed in this document type (%s)
Node Name
Node cannot be added with invalid name: %s
@@ -9803,7 +9796,6 @@ Non-unique animation %s stream name :: %s
Nonstandard tile length %d, convert file
Nonstandard tile width %d, convert file
Normal Attribute Simplification Weight
-NormalBias
NoseV
NostrilFlare
Not a TIFF file, bad magic number %d (0x%x)
@@ -9890,6 +9882,7 @@ Override Vector
Override all mesh normals with a specific vector.
Override bone scale information on an animation
Override model bounds.
+Override sound is invalid.
Override surface property for auto-created physics. (Default behavior is to pick the first surfaceprop in the parent document.)
Override the health this external piece will spawn with regardless of the VMDL propdata. (For embedded pieces, just add propdata child node.)
Override the mass this embedded piece will spawn with regardless of the VMDL propdata.
@@ -9899,7 +9892,6 @@ Overrides the target VSNAP resource (defaults to "particles/models/%model_name%/
Overwrite all bone data
Overwrite existing flags only
Overwriting existing wrinkle map data on mesh
-P4>c
PARENT
PF\n%d %d\n-1.000000\n
POSE_SPACE_BONE
@@ -9909,7 +9901,6 @@ PackBits
PackBitsDecode: Not enough data for scanline %ld
PackBitsDecode: discarding %ld bytes to avoid buffer overrun
PackToSharedVB
-PackedBlobNormal
Packing Material Particle System
Packing Material Volume scale - to have more or less contents
PageName
@@ -9953,7 +9944,6 @@ Photometric tag is missing, assuming data is YCbCr
Photometric tag value assumed incorrect, assuming data is YCbCr instead of RGB
PhotometricInterpretation
Photoshop
-Physics
Physics Joint Modification Mode
Physics Particle
Physics Prop
@@ -10084,6 +10074,7 @@ PredictorEncodeTile
PredictorSetup
Prefab
Prefab [%s]
+Prefab target file '%s' not found
PrefabList
Prefix element cannot contain element or element_array attributes. ('%s')
Prefix to Match
@@ -10113,18 +10104,16 @@ Prismatic joint.
Procedural
Project From Primitive
Projected Primitive
-Prop Group for Physics Particles
-Prop group for spawned physics particles
PropWorldOrigin
Prune pieces < error threshold
-Pulse Graph
Push Out
Push mesh faces outward along their local normal. Optionally build shell geometry.
PushBack
QAngle
Quad Bend Tolerance
Quadratic
Quadric Error Metric
+Quantize the transform centroid position to the given modulus.
Quaternion
QuaternionStorage
Quickhull got into an impossible state and failed
@@ -10188,6 +10177,7 @@ R8_TYPELESS
R8_UNORM
R9G9B9E5_SHAREDEXP
RBF Based Anim Constraint
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
ROTATION
R_T5Y
Radial Basis Function Type
@@ -10221,7 +10211,6 @@ Redo\n======\n
Reduce how bouncy the joint is
ReductionMatrix1
ReductionMatrix2
-Reference to a Pulse file to be run on this model entity.
Reference to a content file that will append its contents to a parent render mesh file node.
Reference to a content file that will resolve to one or more animations. (Plus additional document nodes such as skeleton bones etc.)
Reference to a content file that will resolve to one or more bone nodes to define a skeleton.
@@ -10366,6 +10355,7 @@ SSAOBias
SSAORadius
SSAOStrength
Safeguard against producing a model outside budgetary limits.
+Same Model (In)
Sample Count
Sample Rays
Sample bitmap data using input UV channel and bake it to the output face vertex data channel.
@@ -10475,6 +10465,7 @@ Sets all elements in a vector (or float) stream to a single value
Setting up field info failed
Settings for the character's speeds in different situations and movement settings for the nav system and animgraph
ShadowScale
+Shape List
Shapes
Shapes controlled by this incremental control
Shapes not on this node will not be part of the detail layer automatically<br><br><em>(NOTE: PhysicsDetailLayer always enables this )</em>
@@ -10535,6 +10526,7 @@ Smooth Iterations
Smooth Normals Across UV Seams
Smooth Rate
Smooth Vertex Normals
+Snap to grid
SnapshotVertexExtraction
Soft Link
Softbody
@@ -10688,7 +10680,6 @@ TIFFVStripSize
TIFFVTileSize
TILT_TWIST
TWIST
-T\tV_log2f
Tag
Tag %d
Tag Value
@@ -10705,6 +10696,7 @@ Target Guide Hair Count
Target Hair Count
Target Name
Target Triangle Percent
+TargetCastForModify
TargetPrinter
Team1
Team2
@@ -10802,6 +10794,8 @@ This is a BigTIFF file. This format not supported\nby this version of libtiff.
This is an Euler Rotation in degrees in XYZ order.
This is the bone that will used for motion extraction. If the specified bone does not exist or is unspecified, it will fall back to looking at the AnimationList parent for a root bone name. If the AnimationList root motion bone is unspecified or doesn't exist, it will fall back to using the first bone without a parent in the skeleton which is the first bone. <br><b>NOTE</b>: The first bone in the skeleton can be controlled via the BoneFlags singleton node
This model will fail to compile outside a development environment.
+This value is optional. Click to set.
+This value is optional. Click to unset.
This value is set when the morph control is created via mesh loading and not explictly created by the user
Threshholding
Threshold value to use when detecting if translation tracks are constant or default. In game units, i.e. inches
@@ -10876,6 +10870,12 @@ Type of data to export. Note that skeleton can only be filtered if type is skel
Type of faceposer keys, Gesture or Posture
UI Camera Yaw/Pitch
UICameraRotation
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
UV Attribute Simplification Weight
UV Map Box
UV Map Cylinder
@@ -10884,7 +10884,6 @@ UV Map Planar
UV Map Planar Custom
UV Mapping
U\8h(
-U\tV_logd
Un-inertial Rods
Unable to create unknown element %s!\n
Unable to find fgd file %s!\n
@@ -10944,13 +10943,15 @@ Unsupported mesh type for '%s': %s
Unsupported mix of opaque and translucent materials in thie groom group. Render materials in child groom meshfile nodes must either be all opaque or all translucent.
Up Type
Up Vector
+UpscalerType_t
Use Block Solver
Use Child Offset Attachment
Use Curvature Drop
Use Expensive Tangents
Use Flat Color
Use For Collision
Use For Occlusion
+Use High Precision Blend Weights
Use High Precision/Expensive Texcoords
Use Layer Sequence
Use Mask
@@ -10959,6 +10960,7 @@ Use Pole Vector for Axis
Use RenderMesh List
Use UV2 for Lightmap Charting
Use a higher quality solver for this joint. Improves accuracy / stiffness but increases CPU cost.
+Use for faces
UseBaseVertex
UseTintColor
User Neg/Pos :: %8.4f, %8.4f\n
@@ -10968,6 +10970,8 @@ User-picks require a name
User-specified color/materialgroup requires a node name
Using 16-bit blend indices\n
Using deprecated 'base=prefix' syntax for adding a prefix to a base class
+VDataChoice( %s )
+VDataChoice()
VDataModelVersion001
VDmElementFrameworkVersion001
VDmSerializers001
@@ -11080,6 +11084,7 @@ Which solver to use for positioning the IK chain. Required.
WhiteLevel
WhitePoint
Width Target
+Will use the second uv channel in the model to generate lightmap uvs. This can help improve the quality of lightmap uvs by providing a better unwrap that has fewer shards and generates fewer charts.
Wind Speed, mph
Windage Normal
Windage Tangent
@@ -11142,7 +11147,7 @@ ZIPVSetField
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
\tNAN encountered in element '%s' guid %s attribute '%s'!\n
\tV_atan2d
-\tV_expd
+\tV_sscanf_s
\tV_strnchr
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StringAfterPrefixCaseSensitive
@@ -11159,6 +11164,7 @@ _TIFFMergeFieldInfo
_TIFFSetupFieldInfo
_TIFFVGetField
_TIFFVSetField
+_\tV_log2f
__CACHED_editcontext_provider_lookup
__autoskinned
__bone_%d
@@ -11202,7 +11208,7 @@ _volumeatlas_
_wjb
_zero
`=IhC?zm6>
-a\tV_powd
+`\tV_logd
absolute
acceleration
accent
@@ -11333,14 +11339,14 @@ apply_fast_sweep
applymodelspacetranslation
are_effects_mutually_exclude
assetTag
+asset_specific_keys_source
assign_a
assign_b
assign_g
assign_r
assign_to_all
assign_to_all_faces
associated_key
-associated_vpulse
ati_compress_wrapper.dll
attach_material
attach_mesh
@@ -11415,6 +11421,7 @@ best_fit_atlas
bezier
bias_to_center
biased
+binary
binary_array
binary_seqids
binary_v
@@ -11447,6 +11454,7 @@ body_collection
body_group_choice
body_group_count
body_group_name
+body_order
bodygroupchoices
boneIndicesAndWeights
boneIndicesAndWeights$0
@@ -11457,6 +11465,7 @@ bone_3
bone_attrs
bone_count
bone_cull_type
+bone_depth
bone_index0
bone_index1
bone_index2
@@ -11841,6 +11850,8 @@ durationTime
duration_info
dynamic_attributes
eCONTENTROOT
+eCenteredCylinder
+eGroundCylinder
ease_in_key
ease_is_duration
ease_out_key
@@ -12063,6 +12074,8 @@ game:tools/images/modeldoc_editor/outliner_icon_cloth_tri.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_tri2.png
game:tools/images/modeldoc_editor/outliner_icon_cloth_vertexmap.png
game:tools/images/modeldoc_editor/outliner_icon_jiggle_bone.png
+game:tools/images/propertyeditor/eye_hidden.png
+game:tools/images/propertyeditor/eye_visible.png
gameSoundName
game_data_list
gamedata_searchable_keys
@@ -12100,8 +12113,6 @@ goal_strength
goal_strength_bias
gradient
graphCurve
-graph_keys
-graph_name
gravity_grab_priority
gravity_z
gravitygrabignoremassandsize
@@ -12156,10 +12167,12 @@ hide_if_child_selected
hide_materialgroup_in_tools
hide_rendercolor_in_tools
high_high_precision_texcoords
+high_precision_blendweights
high_priority
high_quality
hinge_axis
hinge_vector
+hit_group
hitbox
hitbox_maxs
hitbox_mins
@@ -12324,10 +12337,12 @@ kochanek
kochanek_early
kochanek_late
l2_regularization
+l\tV_powd
ladder
last_frame
layers
leader_bone
+leader_type
leave_body_collision_unmodified
left
leftEdgeActive
@@ -12423,6 +12438,7 @@ lowprecisionuv1
m_AdditionalInputDependencies
m_AdditionalRelatedFiles
m_ArgumentDependencies
+m_BoneMergeLinks
m_ChildResourceList
m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNameOrientation
m_Data.m_DefaultTargetSettings.m_AnimgraphParameterNamePosition
@@ -12475,21 +12491,33 @@ m_bUseCompressedNormalTangent
m_bUseNewPoleVectorForAxis
m_capabilities
m_eRbfType
+m_eType != eGroundCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_eType != eGroundCapsule && m_eType != eGenericCapsule && m_eType != eCenteredCapsule && m_eType != eCenteredCylinder && m_eType != eGroundCylinder
+m_fEmissiveFactor
m_fMoveTo
m_flMaxRadians
m_flMinRadians
m_flSlopeIncoming
m_flSlopeOutgoing
m_hitboxsets
m_influenceFlags
+m_materialGroupToken
m_morphSet
+m_nChildNode
m_nFileCRC
m_nFingerprint
m_nFingerprintDefault
+m_nParentHash
+m_nSrcDrawIndex
m_nUserData
+m_nVertexEmissiveFormat
+m_nVertexEmissiveOffset
+m_nVertexEmissiveStride
+m_nVertexEmissiveVB
m_pVertexData
m_qFixupRotation
m_rbfParameters
+m_rootBvhNodes
maintain position along path
make_two_sided
makefile
@@ -12521,6 +12549,8 @@ mass_center_override
mass_override
massoverride
material_attribute_name
+material_blend_sampler_alpha_%i_%i
+material_blend_sampler_emissive_%i_%i
material_filter
material_group
material_group_count
@@ -12765,6 +12795,7 @@ operator_mode
operators
opqMU
optimization_algorithm
+optional_toggle_cmd
optionallycompressedtangentframe
orientation
orientationChannel
@@ -12776,6 +12807,7 @@ oscillate_scalar
oscillate_vector
out_frame
outerconeangle
+outliner_icon
output_A
output_B
output_G
@@ -12795,11 +12827,11 @@ override_help_id
override_value
override_vector
overrideclass
+overridesound
overwrite_existing
overwrite_existing_flags_only
ownerlog
owns_polymorphic_data
-p4>c
p=f3G=
panorama_image
panorama_layout
@@ -13108,7 +13140,6 @@ scripts/activity_modifier_weights.txt
scripts/collision_detail_layers.vdata
scripts/collision_properties.txt
scripts/physics_particles.vdata!%s
-scripts/physics_particles.vdata!hlx_physics_particle_spawner
searchable_key
searchable_key_fields
second_sequence_random
@@ -13171,6 +13202,7 @@ shadow_secondary_color_night
shadowtextureheight
shadowtexturewidth
shape
+shape_list
shapes
shared
sharpStartAngle
@@ -13228,6 +13260,7 @@ smooth_normals_across_uv_seams
smoothiterations
smoothscale
smoothscale_vector
+snap_to_grid
snappable
snapshot
snapshotOverride
@@ -13347,7 +13380,7 @@ swing_offset_angle
switch_threshold
syncEngineFramerate
synched
-tBSheetSequenceIntegerId_t
+tBRenderBufferFlags_t
tag_list
tag_list_dynamic
tail_attr
@@ -13710,7 +13743,6 @@ tools/images/modeldoc_editor/outliner_icon_sticker_markup_polygon_node.png
tools/images/modeldoc_editor/outliner_icon_texture_generator.png
tools/images/modeldoc_editor/outliner_icon_texture_generator_list.png
tools/images/modeldoc_editor/outliner_icon_transfermorphs.png
-tools/images/modeldoc_editor/outliner_icon_vpulse.png
tools/images/modeldoc_editor/outliner_icon_vsnap.png
tools/images/modeldoc_editor/outliner_icon_vsnap_file.png
tools/images/modeldoc_editor/outliner_icon_vsnap_list.png
@@ -13851,6 +13883,7 @@ velocity_smooth_iterations
velocity_smooth_rate
velocity_tolerance
verify
+verify_override_sound_foot_choice
vertexFormat
vertexPaintBlendParams
vertexPaintTintColor
@@ -13957,7 +13990,6 @@ yaw_friction
yaw_stiffness
z>AlignedByteArray not properly aligned\n
zDStatic
-z\tV_sscanf_s
zero dir
zero_unselected
{ uninitialized }
game/bin/win64/propertyeditor_strings.txt
modified • +52 / -13 • changes: 65
Show patch
@@ -78,6 +78,7 @@
#\f?focusNextPrevChild@QTextEdit@@MEAA_N_N@Z
#\n?columnCount@QSortFilterProxyModel@@UEBAHAEBVQModelIndex@@@Z
#\r?hide@QWidget@@QEAAXXZ
+#rowlist{ border: 0px }
$#?windowIcon@QWidget@@QEBA?AVQIcon@@XZ
$[?setRange@QDoubleValidator@@UEAAXNNH@Z
$\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
@@ -222,11 +223,13 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_ColorAlpha@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_ComboBox@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_CommandButton@@@@
+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithButton@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithFloatSlider@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditWithIntSlider@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Editbox@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxOctaveBand@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxQAngle@@@@
+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxTransform@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector12@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector2@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector3@@@@
@@ -235,17 +238,22 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_EditboxVector8@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Flags@@@@
.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_NoEditor@@@@
+.?AV?$CInternalPropertyAttributeEditorFactory@VCQAttributeEditor_Radio@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_CurveEditor@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Gradient@@@@
+.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_GradientWithAlpha@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_ImageAbsPathBrowse@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Radio@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_Range@@@@
+.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_ReadOnlyLabel@@@@
.?AV?$CPropertyAttributeEditorFactoryBase@VCQAttributeEditor_TextBlock@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_CurveEditor@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Gradient@@@@
+.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_GradientWithAlpha@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_ImageAbsPathBrowse@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Radio@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_Range@@@@
+.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_ReadOnlyLabel@@@@
.?AV?$CPropertyAttributeEditorFactoryBaseFixedHeight@VCQAttributeEditor_TextBlock@@@@
.?AV?$CTier0AppSystem@VIPropertyEditorSystem@@$0A@@@
.?AV?$CTier1AppSystem@VIPropertyEditorSystem@@$0A@@@
@@ -310,6 +318,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AV?$_Func_impl_no_alloc@V<lambda_8>@?9???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_9>@?L@???0CBindableTargetDescriptorInstance@?1??StaticBindableTargetDescriptor@CGlobalHotkeyCommands@@SAPEAVCBindTargetDescriptorBase@@XZ@QEAA@XZ@XPEAV4@@std@@
.?AVCBaseDynamicWidgetFactory@@
+.?AVCBaseInternalPropertyAttributeEditorFactory@@
.?AVCBasePropItem@@
.?AVCBindTargetDescriptorBase@@
.?AVCBindableCommand@@
@@ -332,11 +341,13 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCQAttributeEditor_DomainAgnostic@@
.?AVCQAttributeEditor_DomainAgnosticKV3@@
.?AVCQAttributeEditor_DomainAgnosticPlural@@
+.?AVCQAttributeEditor_EditWithButton@@
.?AVCQAttributeEditor_EditWithFloatSlider@@
.?AVCQAttributeEditor_EditWithIntSlider@@
.?AVCQAttributeEditor_Editbox@@
.?AVCQAttributeEditor_EditboxOctaveBand@@
.?AVCQAttributeEditor_EditboxQAngle@@
+.?AVCQAttributeEditor_EditboxTransform@@
.?AVCQAttributeEditor_EditboxVector12@@
.?AVCQAttributeEditor_EditboxVector2@@
.?AVCQAttributeEditor_EditboxVector3@@
@@ -346,10 +357,12 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCQAttributeEditor_EditboxVectorBase@@
.?AVCQAttributeEditor_Flags@@
.?AVCQAttributeEditor_Gradient@@
+.?AVCQAttributeEditor_GradientWithAlpha@@
.?AVCQAttributeEditor_ImageAbsPathBrowse@@
.?AVCQAttributeEditor_NoEditor@@
.?AVCQAttributeEditor_Radio@@
.?AVCQAttributeEditor_Range@@
+.?AVCQAttributeEditor_ReadOnlyLabel@@
.?AVCQAttributeEditor_TextBlock@@
.?AVCQBindNameFilterWidget@@
.?AVCQBindableCommandAction@@
@@ -397,7 +410,8 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCQPropertyEditor@@
.?AVCQPropertyEditorToolbar@@
.?AVCQPropertyOverlayWidget@@
-.?AVCQRichItemListPicker@@
+.?AVCQRichItemListPickerDialog@@
+.?AVCQRichItemListPickerWidget@@
.?AVCQScreenCaptureOverlay@@
.?AVCQScrollableWidgetList@@
.?AVCQSelectionListItemDelegate@@
@@ -419,6 +433,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVCSpecificTargetBindableCommand@?$CBindTargetDescriptor@VCGlobalHotkeyCommands@@@@
.?AVCSpecificTargetBindableCommand@?$CBindTargetDescriptor@VCQPropertyEditor@@@@
.?AVCToolEditContextQuery_Base@@
+.?AVCToolEditContextQuery_ExpressionGlobal@@
.?AVCToolEditContextQuery_String@@
.?AVCTreeWidgetFilter@@
.?AVCTreeWidgetFilter_KeywordList@@
@@ -432,6 +447,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
.?AVIPropertyEditorSystem@@
.?AVIPropertyModificationListener@@
.?AVIQtImageCache@@
+.?AVIToolAttrExpressionContext@@
.?AVIToolAttr_Value@@
.?AVIToolFrameListener@@
.?AVQAbstractButton@@
@@ -526,7 +542,7 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
/\r?hideEvent@QScrollBar@@MEAAXPEAVQHideEvent@@@Z
/\v?event@QAbstractScrollArea@@MEAA_NPEAVQEvent@@@Z
/]?size@QImage@@QEBA?AVQSize@@XZ
-0123456789X
+04O\f
0x%1
0x%p = %s '%s'
1"?updateGeometry@QWidget@@QEAAXXZ
@@ -653,8 +669,8 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
2\n?doItemsLayout@QListView@@UEAAXXZ
2\r?hideEvent@QWidget@@MEAAXPEAVQHideEvent@@@Z
2\v?event@QAction@@MEAA_NPEAVQEvent@@@Z
-2\vpd
-2\vpt
+2\vp4O\f
+2\vpt2\r
2aboutToShow()
2accepted()
2changed()
@@ -841,7 +857,6 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
??0QString@@QEAA@AEBV0@@Z
??0QString@@QEAA@AEBVQByteArray@@@Z
??0QString@@QEAA@PEBD@Z
-??0QString@@QEAA@VQChar@@@Z
??0QString@@QEAA@XZ
??0QStyledItemDelegate@@QEAA@PEAVQObject@@@Z
??0QTabWidget@@QEAA@PEAVQWidget@@@Z
@@ -2119,13 +2134,15 @@ $\f?focusNextPrevChild@QWidget@@MEAA_N_N@Z
?userType@QVariant@@QEBAHXZ
?valueToKeys@QMetaEnum@@QEBA?AVQByteArray@@H@Z
@#?write@QTableWidgetItem@@UEBAXAEAVQDataStream@@@Z
+@InputBindSystem
@\v?event@QFrame@@MEAA_NPEAVQEvent@@@Z
A#?write@QTreeWidgetItem@@UEBAXAEAVQDataStream@@@Z
ARRAY
ATTR
About...
AcceptColorInternal
AcceptIfItemPicked
+Accepted
Active Window Widget
Add to Array
Add to Map
@@ -2171,11 +2188,13 @@ CQAttributeEditor_CurveEditor
CQAttributeEditor_DomainAgnostic
CQAttributeEditor_DomainAgnosticKV3
CQAttributeEditor_DomainAgnosticPlural
+CQAttributeEditor_EditWithButton
CQAttributeEditor_EditWithFloatSlider
CQAttributeEditor_EditWithIntSlider
CQAttributeEditor_Editbox
CQAttributeEditor_EditboxOctaveBand
CQAttributeEditor_EditboxQAngle
+CQAttributeEditor_EditboxTransform
CQAttributeEditor_EditboxVector12
CQAttributeEditor_EditboxVector2
CQAttributeEditor_EditboxVector3
@@ -2185,10 +2204,12 @@ CQAttributeEditor_EditboxVector8
CQAttributeEditor_EditboxVectorBase
CQAttributeEditor_Flags
CQAttributeEditor_Gradient
+CQAttributeEditor_GradientWithAlpha
CQAttributeEditor_ImageAbsPathBrowse
CQAttributeEditor_NoEditor
CQAttributeEditor_Radio
CQAttributeEditor_Range
+CQAttributeEditor_ReadOnlyLabel
CQAttributeEditor_TextBlock
CQBindNameFilterWidget
CQBindableCommandAction
@@ -2275,7 +2296,8 @@ CQPropertyEditor::UnblockRebuilds() %d -> %d\n
CQPropertyEditor::UpdateDraggingLabelWidthColumn() - cursor[%d,%d] - col = %d\n
CQPropertyEditorToolbar
CQPropertyOverlayWidget
-CQRichItemListPicker
+CQRichItemListPickerDialog
+CQRichItemListPickerWidget
CQRichItemListPicker_Choice_Internal*
CQRichItemListPicker_Group_Internal*
CQScreenCaptureOverlay
@@ -2427,11 +2449,13 @@ Ease Out Quart
Ease Out Sine
EatEscapeKeyPress
Edit...
+EditWithButton
EditWithFloatSlider
EditWithIntSlider
Editbox
EditboxOctaveBand
EditboxQAngle
+EditboxTransform
EditboxVector12
EditboxVector2
EditboxVector3
@@ -2475,8 +2499,9 @@ Failed to paste gradient
Failed to read colors: %s\n
Failed to save colors: %s\n
FatColor_t
-Filter name/description:
+Filter type/description:
Filter:
+FilterApplied
Find:
Fixed
FlagsChanged
@@ -2502,6 +2527,7 @@ Global
GlobalHotkeys
GlobalTopLevel
GradientChanged
+GradientWithAlpha
Grid layout should be an array of arrays
HACK_OnToggled
HSLA
@@ -2536,7 +2562,6 @@ InitIncrementalOperation
Input Binding Error
Input Debugger [%1]
Input Sequence
-InputBindSystem
Insert After
Insert Before
InteractiveEditFinished
@@ -2621,6 +2646,7 @@ N?hsvSaturation@QColor@@QEBAHXZ
N?hsvSaturationF@QColor@@QEBANXZ
N?index@QStandardItemModel@@UEBA?AVQModelIndex@@HHAEBV2@@Z
NO COMMAND TARGET
+NO_UI
NT?pixelColor@QImage@@QEBA?AVQColor@@HH@Z
N\v?event@QMainWindow@@MEAA_NPEAVQEvent@@@Z
Name: %s (%s)\n
@@ -2763,6 +2789,7 @@ PgUp
Pick
PickCancelled
PickColor
+Pitch: rotation around Y axis
Policy
PopupClosed
PopupOpened
@@ -2838,16 +2865,16 @@ RGBA\t%1\t%2\t%3\t%4
RMouse
RMouseDoubleClick
R\f?font@QTreeWidgetItem@@QEBA?AVQFont@@H@Z
-R\fpt
+R\fp4O\f
R\t?canFetchMore@QAbstractItemModel@@UEBA_NAEBVQModelIndex@@@Z
R\v?event@QMenuBar@@MEAA_NPEAVQEvent@@@Z
-R\vpd
R^?supportedDropActions@QStandardItemModel@@UEBA?AV?$QFlags@W4DropAction@Qt@@@@XZ
Randomize
RandomizeGradient
RangeEditor
Raw Edit Mode
ReSelectOnReturn
+ReadOnlyLabel
Really delete this widget?<br><br>***THIS MAY CRASH THE PROGRAM***<br>
Redo
Reloading...
@@ -2869,6 +2896,7 @@ ReverseGradient
RichItemList_Accept
RichItemList_Reject
Right Mouse (Average)
+Roll: rotation around X axis
RunCommand
S?movePosition@QTextCursor@@QEAA_NW4MoveOperation@1@W4MoveMode@1@H@Z
S?name@QColor@@QEBA?AVQString@@XZ
@@ -3005,6 +3033,7 @@ U^?supportedImageFormats@QImageReader@@SA?AV?$QList@VQByteArray@@@@XZ
UnderMouse
Undo
Unhandled/unrecognized child entry (Must have a _class, or be a special entry like: vbox=[] hbox=[] grid=[[],[]] flowing=[] spacing=NUM stretch=NUM
+Uniform scale
Unrecognized
Unrecognized action class '%s'
Unrecognized property '%s.%s'
@@ -3060,6 +3089,7 @@ Warning: This text ends with whitespace
Widget Debugger
Widget Properties
Writable
+X offset
X?setBrush@QPainter@@QEAAXAEBVQBrush@@@Z
X?setBrush@QPainter@@QEAAXW4BrushStyle@Qt@@@Z
X?setBrushOrigin@QPainter@@QEAAXAEBVQPoint@@@Z
@@ -3078,6 +3108,7 @@ XN?hasChildren@QStandardItemModel@@UEBA_NAEBVQModelIndex@@@Z
XR?mergeCharFormat@QTextCursor@@QEAAXAEBVQTextCharFormat@@@Z
X\r?horizontalHeader@QTableView@@QEBAPEAVQHeaderView@@XZ
X\v?event@QPushButton@@MEAA_NPEAVQEvent@@@Z
+Y offset
Y?setData@QStandardItem@@UEAAXAEBVQVariant@@H@Z
Y?setData@QStandardItemModel@@UEAA_NAEBVQModelIndex@@AEBVQVariant@@H@Z
Y?setFocalPoint@QRadialGradient@@QEAAXAEBVQPointF@@@Z
@@ -3094,6 +3125,8 @@ Y?setHsvF@QColor@@QEAAXNNNN@Z
YO?insertColumns@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z
YY?setDropAction@QDropEvent@@QEAAXW4DropAction@Qt@@@Z
Y\v?event@QRadioButton@@MEAA_NPEAVQEvent@@@Z
+Yaw: rotation around Z axis
+Z offset
Z?setItalic@QFont@@QEAAX_N@Z
Z?setItemData@QStandardItemModel@@UEAA_NAEBVQModelIndex@@AEBV?$QMap@HVQVariant@@@@@Z
Z?setJoinStyle@QPen@@QEAAXW4PenJoinStyle@Qt@@@Z
@@ -3109,7 +3142,6 @@ Z?setPixmap@QDrag@@QEAAXAEBVQPixmap@@@Z
Z?setPlainText@QTextDocument@@QEAAXAEBVQString@@@Z
Z?setPointSize@QFont@@QEAAXH@Z
ZX?setBackground@QTextFormat@@QEAAXAEBVQBrush@@@Z
-Z\tV_modfd
Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z
[?setPointSizeF@QFont@@QEAAXN@Z
[?setPos@QCursor@@SAXHH@Z
@@ -3284,6 +3316,7 @@ Z]?sort@QStandardItemModel@@UEAAXHW4SortOrder@Qt@@@Z
\v?fixup@QSpinBox@@MEBAXAEAVQString@@@Z
\v?focusChanged@QApplication@@QEAAXPEAVQWidget@@0@Z
\v\f?focusInEvent@QGroupBox@@MEAAXPEAVQFocusEvent@@@Z
+\vp4O\f
]?sharedPainter@QPaintDevice@@MEBAPEAVQPainter@@XZ
]?staticMetaObject@QStandardItemModel@@2UQMetaObject@@B
]?staticMetaObject@QTextDocument@@2UQMetaObject@@B
@@ -3337,6 +3370,7 @@ backgroundEnabled
backgroundFill
backgroundStyle
before
+binary
black
blue
bold
@@ -3369,6 +3403,7 @@ dropDraggedColorSet
e"?validate@QSpinBox@@MEBA?AW4State@QValidator@@AEAVQString@@AEAH@Z
e\f?foregroundRole@QWidget@@QEBA?AW4ColorRole@QPalette@@XZ
e\n?dragEnterEvent@QAbstractItemView@@MEAAXPEAVQDragEnterEvent@@@Z
+e\tV_modfd
end_as_info
end_group
f\n?dragEnterEvent@QAbstractScrollArea@@MEAAXPEAVQDragEnterEvent@@@Z
@@ -3523,6 +3558,7 @@ o\v?event@QTreeWidget@@MEAA_NPEAVQEvent@@@Z
offsetDelta
orientation
output_name
+p4O\f
pButton
pCurrentFocusWidget
pFileName
@@ -3546,10 +3582,10 @@ qQ?lineTo@QPainterPath@@QEAAXAEBVQPointF@@@Z
q\n?dragLeaveEvent@QAbstractScrollArea@@MEAAXPEAVQDragLeaveEvent@@@Z
q\v?event@QWidgetAction@@MEAA_NPEAVQEvent@@@Z
quiet
-r\vpd
-r\vpt
+r\vp4O\f
rebuilding
right
+rowlist
rowspan
sO?insertRows@QStandardItemModel@@UEAA_NHHAEBVQModelIndex@@@Z
scroll_widget
@@ -3579,6 +3615,9 @@ tabs
tentative
text/uri-list
toggleViewAction
+tool_request_args
+tool_request_text
+tool_request_tool
toolbarArea
tools/colors/shared_colors.txt
tools/keybindings/global_key_bindings.txt
game/bin/win64/pulse_system_strings.txt
modified • +167 / -54 • changes: 221
Show patch
@@ -1,4 +1,4 @@
- C%d:I%-2d {F=%-10d,V=%-10d}
+ C%d:I%-2d {F=%-10d,V=%-10d,S=%-20.20s}
CallInfo%d: %s\n
Cell%d - NULL\n
Cell%d EditorID:%d [%s]: %s\n
@@ -16,6 +16,7 @@
[*OBSERVABLE*]
!g_pPulseSystem->GetWeakHandleTable()->AnyHandlesAllocated()
"Limit Count: " + m_nLimitCount
+#\tV_exp2f
%d CallInfos:\n
%d Cells:\n
%d Chunks:\n
@@ -28,17 +29,22 @@
%s '%s' (%s)
%s (uid=%d)
%s [%u] - %s\n
+%s%02d:%02d
%s::%s (%u)
%s::%s (Entity Output Handler)
+%s:autowake
+%s:interrupt
+%s:wait
(debug)
*** Test failure: "%s"
- Graph Def '
+. Dead
. Req FAIL
. Req PASS
-. Retired
. Tag Added: '%s'
. Tag Removed: '%s'
.?AUCPulseCell_BooleanSwitchState_DebugInfo_t@@
+.?AUCPulseCell_IntervalTimer_DebugInfo_t@@
.?AUCPulseCell_Timeline_DebugInfo_t@@
.?AUFakeEntityDerivedA_t@@
.?AUFakeEntityDerivedB_t@@
@@ -49,25 +55,37 @@
.?AUPulseSystemEventObservableVariableSourceChanged_t@@
.?AUPulseSystemEventYieldResume_t@@
.?AUTestComponent_t@@
-.?AV<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@
-.?AV<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@
-.?AV<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@
-.?AV<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@
+.?AV<lambda_10>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@
+.?AV<lambda_11>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@
+.?AV<lambda_12>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@
+.?AV<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
+.?AV<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@
+.?AV<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@
+.?AV<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@
+.?AV<lambda_7>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@
+.?AV<lambda_8>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@
+.?AV<lambda_9>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@
.?AV?$CBaseAppSystem@VIPulseSystem@@@@
.?AV?$CKV3ResourceTypeManager@$0GFHDGMHFHAHG@@@
.?AV?$CPulseModuleRegistrationHook@VCPulseDomainScopeLoader@@@@
.?AV?$CTier0AppSystem@VIPulseSystem@@$0A@@@
.?AV?$CTier1AppSystem@VIPulseSystem@@$0A@@@
.?AV?$CTier2AppSystem@VIPulseSystem@@$0A@@@
.?AV?$CTier3AppSystem@VIPulseSystem@@$0A@@@
-.?AV?$_Func_impl_no_alloc@V<lambda_3>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@VCPulseValueFullType@@$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_4>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@I$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@VCPulseValueFullType@@$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_10>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_11>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_12>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlagsAlt_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_1>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_2>@?$PulseBindingSchemaEnumTraits_t@W4PulseDurationStringFormat_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_5>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_6>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumColor_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_7>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@VCPulseValueFullType@@$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_8>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumShape_t@@@@I$$V@std@@
+.?AV?$_Func_impl_no_alloc@V<lambda_9>@?$PulseBindingSchemaEnumTraits_t@W4PulseTestEnumFlags_t@@@@VCPulseValueFullType@@$$V@std@@
.?AVCBasePulseGraphInstance@@
.?AVCKV3ResourceBlockHelper@@
.?AVCKV3Transfer_ResourceLoadInterface@@
-.?AVCPulseAPIExtensionRegistrationContext_t@@
+.?AVCPulseAPIExtensionRegistrationContext@@
.?AVCPulseBlackboardViewFromGraphInstance@@
.?AVCPulseCell_BaseState@@
.?AVCPulseCell_BooleanSwitchState@@
@@ -97,7 +115,11 @@
.?AVCPulseCell_Step_TestDomainDestroyFakeEntity@@
.?AVCPulseCell_Step_TestDomainEntFire@@
.?AVCPulseCell_Step_TestDomainTracepoint@@
+.?AVCPulseCell_TestEnums@@
+.?AVCPulseCell_TestWaitWithAutoTracepoints@@
.?AVCPulseCell_TestWaitWithCursorState@@
+.?AVCPulseCell_TestYieldForever@@
+.?AVCPulseCell_TestYieldWithObservables@@
.?AVCPulseCell_Test_MultiInflow_NoDefault@@
.?AVCPulseCell_Test_MultiInflow_WithDefault@@
.?AVCPulseCell_Test_MultiOutflow_WithParams@@
@@ -123,8 +145,8 @@
.?AVCPulseGraphInstance_TestDomain_UseReadOnlyBlackboardView@@
.?AVCPulseGraphInstance_TurtleGraphics@@
.?AVCPulseGraphLoadContext@@
+.?AVCPulseLibraryVisitForFingerprint@@
.?AVCPulseSystem@@
-.?AVCPulseTargetVisitForVMMD_t@@
.?AVCPulseTestHandleService@@
.?AVCPulseTurtleGraphicsCursor@@
.?AVCPulseTypeManager@@
@@ -133,6 +155,7 @@
.?AVCSchemaRegistration_pulse_runtime_lib@@
.?AVCSchemaRegistration_pulse_system@@
.?AVCTestDomainDerived_Cursor@@
+.?AVCVisitTargetRootForGDClasses@@
.?AVIAsyncProcessedDataResult@@
.?AVIPulseBlackboardView@@
.?AVIPulseExecLog@@
@@ -146,9 +169,11 @@
.?AVIPulseHost_YieldingCursor@@
.?AVIPulseSystem@@
.?AVIResourceTypeManager@@
+;1#INF
<No Cell>
<map_key>
<map_value>
+<non-RTTI type>
<none>\n
== PulseGraphDef ==\n
@fff>fff>fff>fff>
@@ -164,10 +189,12 @@ Abs Float
Abs Int
Absolute value (float)
Absolute value (int)
+Add Flags
Add R%d <- R%d + R%d
+Add flags to the given value.
Add the array 'b' to the end of 'a'.
Adjust heading (positive = right, negative = left)
-Always
+After the real remainder, how many additional digits should we continue to append to create additional visual movement?
And R%d <- R%d && R%d
Any Other Cursors Have Tag
Arc Cos
@@ -191,9 +218,11 @@ Array Remove Invalid Elements
Array Set Count
Array Shuffle
Assert True
+Async Call Method (Child Cursor) C%d:I%d
Async Child1
Async Child2
-Async Fire C%d:I%d
+Async Outflow (Child Cursor) C%d:I%d
+Asynchronous - This node executes independently using a new Cursor. Formerly 'Fire and Forget'. Equivalent to scheduling using an additional 'Fire Child Cursors' node.
Bad FLC data for resource '%s': %s\n
Bad KV3 data for resource '%s': %s\n
Bad count in ArraySetCount (%d)
@@ -204,6 +233,7 @@ Bad reinterpret on ArrayRemoveElementMatching
Base-10 logarithm
Base-2 logarithm
Basic Function
+Basic string support.
Begin testing a condition composed of Observable values. Continues checking until canceled.
Begin testing a condition composed of Observable variable references. Continues checking until true.
C:\buildworker\csgo_rel_win64\build\_build_\pulse_system\_vpc_pulse_system\default\win64\_msvc_\Retail\pulse_system.pdb
@@ -222,8 +252,8 @@ CGlobalSymbol
CGlobalSymbolCaseSensitive
CKV3MemberNameSet
CKV3MemberNameWithStorage
-COMPONENT(
-COMPONENT(%s)+%s
+COMPONENT!
+COMPONENT!%s+%s
CPiecewiseCurve
CPulseArraylib::ArrayAppend
CPulseArraylib::ArrayConcatenate
@@ -236,11 +266,11 @@ CPulseArraylib::ArrayRemoveIndex
CPulseArraylib::ArrayRemoveInvalidElements
CPulseArraylib::ArraySetCount
CPulseArraylib::ArrayShuffle
+CPulseBreakpointLocation
CPulseCell_BooleanSwitchState::Activate
CPulseCell_CursorQueue::Wait
CPulseCell_ExampleCriteria::CheckRequirement
CPulseCell_ExampleSelector::ProcessSelector
-CPulseCell_FireCursors::Cancel
CPulseCell_FireCursors::Start
CPulseCell_FireCursors::StopWaiting
CPulseCell_Inflow_EntOutputHandler '%s'.'%s' --> Chunk%d: %s
@@ -250,7 +280,6 @@ CPulseCell_Inflow_ObservableVariableListener '%s'.'%s (%u)' --> Chunk%d: %s
CPulseCell_InlineNodeSkipSelector::ProcessSelector
CPulseCell_IntervalTimer::OnInterval
CPulseCell_IntervalTimer::Start
-CPulseCell_IntervalTimer::StopTimer
CPulseCell_IsRequirementValid::CheckRequirement
CPulseCell_LimitCount::CheckRequirement
CPulseCell_LimitCount::CommitStep
@@ -262,8 +291,16 @@ CPulseCell_Step_TestDomainCreateFakeEntity::Run
CPulseCell_Step_TestDomainDestroyFakeEntity::Run
CPulseCell_Step_TestDomainEntFire::Run
CPulseCell_Step_TestDomainTracepoint::Run
-CPulseCell_TestWaitWithCursorState::FailImmediately
+CPulseCell_TestEnums
+CPulseCell_TestEnums::CompareValues
+CPulseCell_TestWaitWithAutoTracepoints
+CPulseCell_TestWaitWithAutoTracepoints::Wait
+CPulseCell_TestWaitWithCursorState::InstanceState_t
CPulseCell_TestWaitWithCursorState::Wait
+CPulseCell_TestYieldForever
+CPulseCell_TestYieldForever::Run
+CPulseCell_TestYieldWithObservables
+CPulseCell_TestYieldWithObservables::Run
CPulseCell_Test_MultiInflow_NoDefault::InflowA
CPulseCell_Test_MultiInflow_NoDefault::InflowB
CPulseCell_Test_MultiInflow_WithDefault::InflowA
@@ -278,24 +315,26 @@ CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnOut1
CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnYieldResume1
CPulseCell_Test_MultiOutflow_WithParams_Yielding::OnYieldResume2
CPulseCell_Test_MultiOutflow_WithParams_Yielding::Start
-CPulseCell_Test_MultiOutflow_WithParams_Yielding::Stop
CPulseCell_Timeline::Start
-CPulseCell_Timeline::Stop
CPulseCell_Val_TestDomainFindEntityByName::Eval
CPulseCell_Val_TestDomainGetEntityName::Eval
CPulseCell_Value_Curve::Eval
CPulseCell_Value_Gradient::Eval
CPulseCell_Value_TestValue50::Eval
CPulseCell_WaitForCursorsWithTag::Wait
-CPulseCell_WaitForObservable::Cancel
CPulseCell_WaitForObservable::Start
CPulseCursorFuncs::AnyOtherCursorsHaveTag
CPulseCursorFuncs::CursorHasTag
CPulseCursorFuncs::KillAllOtherCursors
CPulseCursorFuncs::KillCursorsWithTag
-CPulseCursorFuncs::KillThisCursorAndCancel
CPulseCursorFuncs::RemoveTagFromCursor
CPulseCursorFuncs::TagCursor
+CPulseCursorFuncs::WakeCursorsWithTag
+CPulseEnumlib
+CPulseEnumlib::AddFlags
+CPulseEnumlib::HasAllFlags
+CPulseEnumlib::HasAnyFlags
+CPulseEnumlib::RemoveFlags
CPulseFakeEntityList::CreateFakeEntity
CPulseFakeEntityList::DestroyAll
CPulseGraphInstance_TestDomain::GenerateInt
@@ -343,6 +382,7 @@ CPulseMathlib::MakeTransform
CPulseMathlib::MakeVector
CPulseMathlib::MakeVector2D
CPulseMathlib::MakeVector4D
+CPulseMathlib::MakeVectorFromAngle
CPulseMathlib::MakeWorldTransform
CPulseMathlib::MakeWorldVector
CPulseMathlib::MaxFloat
@@ -372,18 +412,23 @@ CPulseMathlib::SplitWorldVector
CPulseMathlib::SqrFloat
CPulseMathlib::SqrInt
CPulseMathlib::Sqrt
-CPulseMathlib::StringLength
CPulseMathlib::StringsAreEqualCaseSensitive
CPulseMathlib::Tan
CPulseMathlib::VectorToWorldVector
CPulseMathlib::WorldVectorToVector
+CPulseObservableExpression
+CPulseStringlib
+CPulseStringlib::FormatDurationStringFromSeconds
+CPulseStringlib::StringLength
+CPulseStringlib::StringsAreEqualCaseSensitive
CPulseSystem: Detected NULL RESOURCE_TYPE_PULSE_GRAPH_DEF, skipping type manager registration.\n
CPulseSystem::Internal_InstanceCreated( %s, %p )\n
CPulseSystem::Internal_InstanceDestroyed( %s, %p )\n
CPulseTestFuncs_LibraryA::AGreaterThan5
CPulseTestFuncs_LibraryA::AValueChanged
CPulseTestFuncs_LibraryA::AZeroed
CPulseTestFuncs_LibraryA::GetEnumColorValue
+CPulseTestFuncs_LibraryA::GetEnumFlagsValue
CPulseTestFuncs_LibraryA::GetEnumShapeValue
CPulseTestFuncs_LibraryA::GetFloatValue
CPulseTestFuncs_LibraryA::GetIntValue
@@ -396,6 +441,7 @@ CPulseTestFuncs_LibraryA::LibrarySpawnFakeEntity
CPulseTestFuncs_LibraryA::PrintStringWithEditorSuggestions
CPulseTestFuncs_LibraryA::PrintStringWithLeafSuggestions
CPulseTestFuncs_LibraryA::SetEnumColor
+CPulseTestFuncs_LibraryA::SetEnumFlags
CPulseTestFuncs_LibraryA::SetEnumShape
CPulseTestFuncs_LibraryA::SetFloatValue
CPulseTestFuncs_LibraryA::SetFloatValueOptional
@@ -432,6 +478,7 @@ CPulseTurtleGraphicsCursor::Turn
CPulseTypeManager::Allocate( %s )\n
CPulseTypeManager::Deallocate( %s, %p )\n
CPulseTypeManager::DeallocateResource( %s, %s, dealloc=%p live=%p )\n
+CREATE_CHILD_CURSOR_OUTFLOW
CStrongHandle
CTestDomainDerived_Cursor::GetCursorValueA
CTestDomainDerived_Cursor::GetCursorValueB
@@ -445,15 +492,9 @@ CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_InstructionDebug,int,c
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct CPulse_RegisterInfo,int,class CMemAllocAllocator>,struct CPulse_RegisterInfo,int>::InsertBeforeGetPtr
CUtlLeanVectorImpl<class CUtlLeanVectorBase<struct PGDInstruction_t,int,class CMemAllocAllocator>,struct PGDInstruction_t,int>::InsertBeforeGetPtr
CUtlOrderedMap<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::FindElement
-CUtlRBTree<struct CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseCursorID_t,struct PulseGraphExecutionHistoryCursorDesc_t *,class CDefLess<class PulseCursorID_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseDocNodeID_t,struct PulseGraphExecutionHistoryNodeDesc_t *,class CDefLess<class PulseDocNodeID_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseSymbol_t,class CReadOnlyBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,class CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class PulseSymbol_t,class IPulseBlackboardView *,class CDefLess<class PulseSymbol_t>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CUtlVectorFixedGrowable
Call C%d:I%d (%s)
Called to invoke the graph
-Cancel
-Cancel observing.
Cannot allocate abstract class
Cast of %s loses value information (returning %s) in %s on %s:%u\n
Ceiling - round float up to nearest integer)
@@ -468,8 +509,10 @@ Clamp value to range (float)
Clamp value to range (int)
Class does not allow allocation from its schema binding
Commit Step
-Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive
+Compare Values
+Compare strings with case sensitivity, in contrast to normal string equality which is case-insensitive.
Completed
+CompletedNormally
Component Func
Computes 2 ( 2.71...) raised to a power
Computes e ( 2.71...) raised to a power
@@ -492,7 +535,6 @@ Cross Product of Vector a x Vector b
Cursor Has Tag
Cursor [%s] @ %.2f. Cell: %u => %s: %s
Cursor[ ptr:%p | id:%d | graph:%p ]: CPulseExecCursor()\n
-Cursor[ ptr:%p | id:%d | graph:%p ]: Completed with result:%d\n
Cursor[ ptr:%p | id:%d | graph:%p ]: Observer notifying cell ptr:%p id:%d of result:%d from Subject:%d\n
Cursor[ ptr:%p | id:%d | graph:%p ]: Resumed from cell ptr:%p id:%d\n
Cursor[ ptr:%p | id:%d | graph:%p ]: Yielded at cell ptr:%p id:%d\n
@@ -523,6 +565,8 @@ Dot Product of Vector a
Element Access R%d <- R%d[R%d]
EntFire,%s,%s,%s
EntityName
+Enum flags '%s' invalid value '%s'
+Enum support.
Enumeration '%s' does not have a value '%s'
Eq R%d <- R%d == R%d
Evaluate the curve at the specified input position
@@ -532,10 +576,9 @@ External system providing an int for the test graph to consume
External system requesting a vector from the test graph
External system requesting an int from the test graph
External system requesting an int from the test graph (variant)
-Fail Immediately
Fail Outflow
-Failed to allocate an instance of a class
-Failed to allocate an instance of class '%s'
+Failed to allocate an instance of a class of type '%s'
+Failed to allocate an instance of class '%s' (type '%s')
Failed to apply FLC data to resource '%s': %s\n
Failed to load %s: %s
Failed to load: '%s' graph not found\n
@@ -556,6 +599,7 @@ FakeEntity_t_DomainSubType
Find a spawned entity by name.
Find all the yielded cursors on this graph and cancel them.
Find all the yielded cursors on this graph with the matching tag and cancel them.
+Find all the yielded cursors on this graph with the matching tag and wake them.
Find first element 'a' which compare equal to 'element' and return its index.
Fired when A becomes 0 from any other number.
Fired when A exceeds 5.
@@ -564,6 +608,7 @@ Float To Game Time
Floor - round float down to nearest integer
Floor Float
Flow Node ID
+Format Duration String From Seconds
Frac
Fractional component (ie. returns 0.34 for 12.34)
Free
@@ -577,6 +622,7 @@ GenerateVector
Get Cursor Value A
Get Cursor Value B
Get Enum Color Value
+Get Enum Flags Value
Get Enum Shape Value
Get Float Value
Get Instance Value X
@@ -589,6 +635,7 @@ Get the 'ValueA' number off the cursor.
Get the 'ValueB' number off the cursor.
Get the 'ValueX' number off the graph instance.
Get the global color enum value.
+Get the global flags enum value.
Get the global float value.
Get the global int value.
Get the global shape enum value.
@@ -604,14 +651,18 @@ GetInlineConst R%d <- C%d (%s)
GetVar R%d <- V%d (%s)
GetVar R%d <=MOVE*V%d (%s)
Gradient()
+HPulseCell
+HPulseCellBase
+HYieldedCursor
HandleInt
HandleIntDerived
+Has All Flags
+Has Any Flags
IKV3TransferInterface_ResourceSave
IPulseGraphLoadErrorReporter
IPulseReloadListener
If (R%d) Jump to Instr I%d
If (R%d) Leap to Chunk C%d
-If -1 timer will continue forever
If specified, each wait interval will vary randomly between WaitInterval this value
If this cursor spawns other work via Fire And Forget, should this Tag be inherited?
Impl::AssertCastImpl
@@ -626,6 +677,8 @@ InflowB
Insert 'element' in the given index in 'a', increasing its count by one and moving the elements after index.
Integer Divide
Integer division - unlike the divide (/) node, this will truncate any remainder (floor) and return an integer.
+InterruptElegantly
+InterruptImmediately
Invoke Cell%d [eid=%d] %s%s
Invoke Lib %s
Invoke binding %d (%s) not found, converting to NOP\n
@@ -636,7 +689,6 @@ Jump to Instr I%d
KeyValues3
Kill All Other Cursors
Kill Cursors With Tag
-Kill This Cursor And Cancel
Leap to Chunk C%d
Length (magnitude) of Vector
Length (magnitude) of Vector2D
@@ -650,29 +702,35 @@ LessEq R%d <- R%d <= R%d
Library Destroy Fake Entity
Library Find Fake Entity By Name
Library Spawn Fake Entity
+Live Float Value
+Live String Value
Log10
Log2
Lower pen.
MAtomicTransfersAsPlainString
+MM:SS with leading zeros
+MM_SS_LEADING_ZERO
MPropertyFlattenIntoParentRow
MPropertyLeafSuggestionProviderFn
MPulseEditorHeaderExpr
MPulseEditorHeaderText
MPulseExpressionAlias
MPulseFunctionDisableRequirements
MPulseFunctionHiddenInTool
-MPulseLegacyName
+MPulseTypeRestriction
Make Angle
Make Angle From Forward Vector
Make Color
Make Transform
Make Vector
+Make Vector From Angle
Make Vector2 D
Make Vector4 D
Make World Transform
Make World Vector
Make a Color from component parts
Make a Transform from component parts.
+Make a Vector from an Angle
Make a Vector from component parts.
Make a Vector2D from component parts.
Make a World Vector from component parts.
@@ -696,6 +754,7 @@ Multiple pointer returns
NULL CELL
NULL_ENT
Natural logarithm (base e)
+Need to specify a pulse file to open.\n
Neg R%d <- -R%d
Neq R%d <- R%d != R%d
No DATA block for resource\n
@@ -704,6 +763,7 @@ Normalize Vector a
Not R%d <- !R%d
Not safe to 'new' this class due to alignment requirements
NotReloading
+OUTPUT!%s::%s
On Interval
On True
OnAsyncChild1
@@ -714,7 +774,7 @@ OnOut2
OnYieldResume1
OnYieldResume2
Only wrote %d (of %d) values when saving map!
-Optional. After taking an OnCanceled outflow, signal to any observers that this cursor is now canceled. Equivalent to not handling the original cancel outflow. If you don't use this, handling OnCanceled will be treated as success.
+Opens the specified pulse used in this map in the editor.\n\tArguments: <pulse_file>
Optional. Type 'Any'. An associated value, e.g. the Entity Handle which is responsible for this Cursor. The Tag is defined by the unique combination of Name and Value.
Or R%d <- R%d || R%d
Out1
@@ -733,6 +793,7 @@ PanelID
Parameters
ParametersKV3
Parent Map: %s\n
+Parent VData
Pass Outflow
Pen Down
Pen Up
@@ -744,13 +805,17 @@ PrintStringWithEditorSuggestions: %s\n
PrintStringWithLeafSuggestions: %s\n
Probable infinite loop detected! Terminating pulse cursor after %d consecutive instructions (%s)
Probable runaway cursor creation detected! Permanently disabling this graph instance (%s)
+Proceed Immediately
Process Selector
Pulse system: minimal vpulse definition loading enabled - graphs may be incomplete!\n
Pulse: %s
+PulseDurationStringFormat_t
PulseSystemEventCursorResult_t
PulseSystemEventObservableVariableListenerNotify_t
PulseSystemEventObservableVariableSourceChanged_t
PulseSystemEventYieldResume_t
+PulseTestEnumFlagsAlt_t
+PulseTestEnumFlags_t
R Sqrt
RESOURCE_TYPE_PULSE_GRAPH_DEF
Rad2 Deg
@@ -759,15 +824,19 @@ Random World Position
Randomizes the order of items in the array (Knuth/Fisher-Yates Shuffle)
Reciprocoal square root (1/sqrt)
Record that the function was called
+Reference Color
+Reference Flags
Register Test Checkpoint
RegisterChoice_CPulseTestFuncs_LibraryA_PrintStringWithLeafSuggestions
Reinterpret Instance %s R%d <- %s R%d
Reloading
Remap Clamped Float
Remap and clamp input value from input range to output range (float)
+Remove Flags
Remove Tag From Cursor
Remove all elements from 'a' which are invalid instances.
Remove all elements from 'a' which compare equal to 'element'.
+Remove flags from the given value.
Remove the element at the given index in 'a', decreasing its count by one and moving the elements after index.
Remove the given tag from this cursor. If other cursors are waiting on us, they will resume.
Return the input string, use the code default if none was supplied.
@@ -784,15 +853,18 @@ Returns true if the World Vector is valid
Returns up to the maximum requested elements. Never grows the array (unlike SetCount).
Round - round float up or down to integer
Round Float
+SECOND
Saturate
Saturate (clamps float between 0 and 1)
Save a named value of any type on the cursor.
Scale INV R%d <- R%d / R%d
Scale R%d <- R%d * R%d
+Second
Set And Get Int Value
Set Cursor Value A
Set Cursor Value B
Set Enum Color
+Set Enum Flags
Set Enum Shape
Set Float Value
Set Float Value Optional
@@ -805,6 +877,7 @@ Set the 'ValueB' number on the cursor.
Set the 'ValueX' number on the graph instance.
Set the current color
Set the global color enum value.
+Set the global color flags value.
Set the global color shape value.
Set the global float value (with default).
Set the global float value.
@@ -847,14 +920,15 @@ Sqr Int
Sqrt
Square root
Start a timer with the specified duration, fire the OnInterval output
-Stop Timer
-Stop any active timers - the completed outflow will still fire
+Stop Waiting
String Length
Strings Are Equal Case Sensitive
Sub R%d <- R%d - R%d
-T\tV_log2f
+Synchronous - Wait for this node to fully complete before proceeding.
+THIRD
Tag Cursor
Tag Self When Complete
+TagsRemoved
Tangent of angle. Input in radians, output in radians
Test Array Array Access
Test Array Int Shuffle
@@ -863,6 +937,7 @@ Test Compiled Params After Type Changes
Test Compiled Params Before Type Changes
Test Domain
Test Domain Entity
+Test Enums
Test Function Renamed With Args New
Test Function Renamed New
Test Function Renamed Old
@@ -889,25 +964,37 @@ TestFunctionRenamed_New
TestFunctionRenamed_Old
TestFunctionRenamed_WithArgs_New
TestFunctionRenamed_WithArgs_Old
+The Target object. In code, this parameter is the API This() object for this Input.
+Third
This is the description of the fake entity sub-domain
+This is the overall duration. If -1 timer will continue forever. During this duration, we will fire a new child cursor at each Interval.
Time since the start of the timer
+Trace Prefix
TracePoint: %s
Tried to load a polymorphic pointer with no '%s' key
Tried to load resource reference '%s' from a value without a resource reference specific type.
+Turn a time in seconds into a display string. NOT localized.
Turtle Graphics Domain
TurtleGraphics
+Unknown format type
Unsupported version %d for resource '%s' (Expected %d)\n
Used to flag a test as having failed.
+VDATA
Value 0-1 how far along duration (always 0 if duration is -1)
Vector To World Vector
WARNING: Pulse failed to restore yielded cursor - error with cell state (%d:%s)\n
WARNING: Pulse failed to restore yielded cursor - no yielding cell or landing pad (%d:%s)\n
WARNING: Pulse failed to save yielded cursor - no yielding cell or landing pad (C%d:I%d)\n
Wait Complete
-Wake Cancel
+Wait and Trace
+Wake Cursors With Tag
Wake Fail
-When False
-When True
+Watch For Float Value
+Watch For String Value
+Whether value has ALL of the specified flags set (it may have other flags.)
+Whether value has ANY of the specified flags set (it may have other flags.)
+While False
+While True
World Vector To Vector
X to the Y power
Yield Resume1
@@ -922,24 +1009,24 @@ Yield, Resume=%s
[NOP]
[RETURN R%d]
[RETURN]
-\tV_acosd
+\f\tV_acosd
\tV_asind
+\tV_atand
\tV_cosd
-\tV_exp2f
\tV_tand
-\t\tV_atand
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\t_V_StringAfterPrefixCaseSensitive
+_\tV_log2f
__CursorQueue__
__FireCursorsParent__
__State_Child_Condition__
-__State_Child_Subgraph__
__TimelineParent__
__test_graph_%d.vpulse
_cells
a:fulltype
a:typeparam
active_frame
+allflags
allow_direct_return
allowed_api_features
allowed_requirements
@@ -949,11 +1036,13 @@ animgraph2_clip
animgraph2_graph
animgraph2_identifier
animgraph_enum
+anyflags
arg1
arg2
arg3
arg4
attr_factory
+bFail
bInAutoWakeList
bInherit
bValue
@@ -982,6 +1071,7 @@ domain_subtype_info
element
execution_history
expr_alias
+expression_type
fakeEnt.m_nHandle.WeakHandle() == PULSE_WEAK_HANDLE_INVALID
fake_derived_a
fake_derived_b
@@ -1005,6 +1095,7 @@ flPitch
flRadians
flRoll
flScale
+flSeconds
flTime
flVal
flValue
@@ -1021,7 +1112,6 @@ flc_file_ids
flc_file_list
flc_lines
frac
-friendly_name_without_target
gamedata
gameitemclass
gameunitclass
@@ -1038,6 +1128,7 @@ instance_parm
instance_variable
instances
intchoices
+interrupt_priority
intmap
is_pulse_domain_subtype
is_pulse_global_event
@@ -1048,8 +1139,6 @@ is_pulse_target_output
is_selector
is_spontaneous
keyframeclass
-legacy_name_replacement
-legacy_names
length2d
length3d
lerp
@@ -1072,15 +1161,21 @@ m_Inputs
m_Items
m_KV3Metadata
m_LegacyDefaultStr
+m_LiveFloatValue
+m_LiveStringValue
m_LongName
m_MetaData
+m_Metadata
m_MissingRetvalDefault
m_ParamType
m_PlugType
m_PreparedHook
m_ResumePoint
+m_SequencePoint
m_Stops
m_TagValue
+m_TracePrefix
+m_WatchForStringValue
m_bChildCursorsShouldInherit
m_bConditionValue
m_bCustom
@@ -1091,22 +1186,30 @@ m_bUsingLegacyDefault
m_bmaxs
m_bmins
m_curValue
-m_externalMethodTargetGraph
m_flSlopeIncoming
m_flSlopeOutgoing
m_flWakeTime
+m_flWatchForFloatValue
m_hCursor
+m_hCursorOnOtherGraph
m_hDef
m_hGraphInstance
m_hInstance
m_hListenerInstance
m_hObserver
+m_hSelfCellInstance
+m_hSelfCellInstanceUntyped
+m_hSelfCursor
m_iValue
+m_nCellID
m_nClassType
m_nCurrentWakeIndex
m_nCursorID
+m_nDummy
m_nGraphID
m_nLegacyDefaultInt
+m_nReferenceColor
+m_nReferenceFlags
m_nResult
m_nStackDepthWhenAdded
m_nSubject
@@ -1133,15 +1236,19 @@ modelstatechoices
moveclass
nAsyncRet1
nDenominator
+nFormat
nHandle
nKillPriority
nMaxElements
nNumerator
nParam
+nRemainderDigits
+nRemainderNoiseDigits
nRetValue
nRetValue2
nShape
nValue
+nWakePriority
nWhichOutflowA
nWhichOutflowB
nYieldArg1
@@ -1152,14 +1259,14 @@ node_id
node_id_List
npc_ability_name
npcclass
-o\tV_sind
observable_false
observable_listeners
observable_scope
observable_true
observer_cursors
omni
open_asset %s
+open_current_map_pulse_in_tool
operator int
outbound
overrideclass
@@ -1212,6 +1319,8 @@ remove_key
requested_cancel
required_domain_subtype
resourcesystem
+return_values
+return_values_enabled
round
rsqrt
saturate
@@ -1249,7 +1358,9 @@ text_block
tools/images/pulse_editor/cursor_kill.png
tools/images/pulse_editor/kill_cursor_with_tag.png
type:
+type_restriction_is_enum_flags
vForward
+value:fulltype
vdata
vdata_choice
vdataderived
@@ -1261,3 +1372,5 @@ world_angle
world_point
world_transform
yield_token
+z\tV_sind
+{ item_factory = 'IntervalTimer' }
game/bin/win64/rendersystemdx11_strings.txt
modified • +95 / -147 • changes: 242
Show patch
@@ -47,8 +47,8 @@
#RenderSystem_CannotCreateDevice
#RenderSystem_IncompatibleAmdDriver
#RenderSystem_UnableToStartGame
-#RenderSystem_UnsupportedStructuredBuffers
#line
+$\tV_expd
%-100s %-6s %-6s\n
%.0Lf
%.100s: Can not read TIFF directory
@@ -125,16 +125,11 @@
%suncompressed data
(%s): ADD %s = %s\n
(%s): Setting %s to %s\n
-(9sA
-(9tA
(On the line reading %s):\n
-(QuA
(Repeated %dx)
-(avA
-(esA
*** Buffer "%s": Failed to create shader resource view!\n
*** Buffer "%s": Failed to create unordered access view!\n
-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
*** Error masking unused parts! Equal sign not found after token "%s"! (line %d)\n
*** IL "%s": Unable to create input layout; layout has %d fields, which is more than %d!\n
*** Run with -dx11debug to see native D3D errors!\n
@@ -146,10 +141,10 @@
*** VB "%s": Tried to lock too much memory (%s>%s)!\n
*** VB "%s": Tried to lock too much memory for subregion (%s>%s)!\n
*** VB "%s": Tried to lock twice without an unlock!\n
-*** VfxPopulateSourceCache(1137): Error opening file "%s"!\n\n
-*** VfxPopulateSourceCache(1145): Error opening file "%s"!\n\n
-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file "%s" missing!\n\n
-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for "%s"!\n\n
+*** VfxPopulateSourceCache(1097): Error opening file "%s"!\n\n
+*** VfxPopulateSourceCache(1105): Error opening file "%s"!\n\n
+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file "%s" missing!\n\n
+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for "%s"!\n\n
*.spv
+v$x+v$xv$+xv+$xv$+x+$vx+$vx$v+x+$vx$+vx+v $+v $v $+v +$v $++$ v+$ v$ v++$ v$+ v+xv$+ v$v$ +v+ $v$ ++x$v+ $v$v ++ $v$ +v
, channels =
@@ -161,11 +156,11 @@
.?AUmessages_base@std@@
.?AUmoney_base@std@@
.?AUtime_base@std@@
+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@
.?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@
.?AV<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@
.?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@
.?AV<lambda_1>@?1??QueueShaderCompile@CRenderDeviceDx11@@QEAAXPEAVBaseGPUShader_t@@@Z@
-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@
.?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@
.?AV?$CBaseAppSystem@VIRenderDeviceMgr@@@@
.?AV?$CBaseAppSystem@VIRenderUtils@@@@
@@ -184,21 +179,18 @@
.?AV?$IOpCodeHandler@H@@
.?AV?$IOpEvaluator@H@@
.?AV?$IStreamBuilderCallback@VCCommandStream@@@@
-.?AV?$ITSHashConstructor@PEAUID3D11InputLayout@@@@
-.?AV?$ITSHashConstructor@PEAX@@
-.?AV?$ITSHashConstructor@VCSamplerStateBinding@@@@
.?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@
.?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??QueueShaderCompile@CRenderDeviceDx11@@QEAAXPEAVBaseGPUShader_t@@@Z@X$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@
.?AV?$_Mpunct@D@std@@
.?AV?$_Mpunct@G@std@@
.?AV?$_Mpunct@_W@std@@
+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@
.?AV?$codecvt@DDU_Mbstatet@@@std@@
.?AV?$codecvt@GDU_Mbstatet@@@std@@
.?AV?$codecvt@_WDU_Mbstatet@@@std@@
@@ -241,12 +233,10 @@
.?AVCAMDAntiLagDx11@@
.?AVCAftermathDx11@@
.?AVCBarrierHelperEmpty@?1??GetBarrierHelper@CRenderContextBase@@UEAA?AV?$unique_ptr@VIBarrierHelper@@U?$default_delete@VIBarrierHelper@@@std@@@std@@XZ@
-.?AVCBlendStateCreator@@
.?AVCColorFormatBase@@
.?AVCColorFormatDx11@@
.?AVCCompileTargetExprOpCodeHandler@@
.?AVCCompileTargetExprStackMachineBuilder@@
-.?AVCDepthStencilStateCreator@@
.?AVCDeviceFence@@
.?AVCDeviceFenceBase@@
.?AVCDeviceFenceDx11@@
@@ -256,11 +246,9 @@
.?AVCFrameSyncBase@@
.?AVCFrameSyncDx11@@
.?AVCIntOpEvaluator@@
-.?AVCLayoutInsert@@
.?AVCNVReflexDx11@@
.?AVCPooledIndexBuffer@@
.?AVCPooledVertexBuffer@@
-.?AVCRasterizerStateCreator@@
.?AVCReadGPUBuffer@@
.?AVCRenderContextBase@@
.?AVCRenderContextDx11@@
@@ -275,11 +263,9 @@
.?AVCRenderThreadBase@@
.?AVCRenderThreadDx11@@
.?AVCRenderUtils@@
-.?AVCSamplerStateCreator@@
.?AVCSchemaRegistration_rendersystemdx11@@
.?AVCSheetHashConstructor@@
.?AVCSingletonCriticalSection@@
-.?AVCStateBundleCreator@@
.?AVCSwapChainBase@@
.?AVCSwapChainDx11@@
.?AVCTextureBase@@
@@ -315,12 +301,9 @@
0123456789-
0123456789ABCDEFabcdef-+Xx
0123456789ABCDEFabcdef-+XxPp
-10_0
-10_1
-11_0
-11_1
-2\f%24
2\nP!E
+2\vp,d
+2\vp0v
3|am
5;FJ$,XEK4<
7&F|If
@@ -334,17 +317,14 @@
:AM:am:PM:pm
:Jan:January:Feb:February:Mar:March:Apr:April:May:May:Jun:June:Jul:July:Aug:August:Sep:September:Oct:October:Nov:November:Dec:December
:Sun:Sunday:Mon:Monday:Tue:Tuesday:Wed:Wednesday:Thu:Thursday:Fri:Friday:Sat:Saturday
-<Invalid>
-<No D3D11>
-<No D3D11Create>
-<Not set>
<invalid %d>
<unknown layout>
<unknown multisample type
=\t ();,\n\r<>
>-memory-
?ParseEXRHeaderFromMemory() failed! Error message: %s\n
?fff?
+?~~~~~~~~~~~~~~~~
@Integer overflow in %s
AGS Library initialization failed: %d\n
AGS Library initialized: v%d.%d.%d\n
@@ -355,14 +335,9 @@ AMD LiquidVR MultiGPU Rendering - Disabled\n
AMD LiquidVR MultiGPU Rendering - Enabled!\n
AMD LiquidVR MultiGPU Rendering - Found %d GPUs, using %d GPUs\n
AMD LiquidVR MultiGPU Rendering - Hooked dll, but not enabled yet\n
-ANDROID_VULKAN
-ANDROID_VULKAN_4_0
-ANDROID_VULKAN_4_1
-ANDROID_VULKAN_5_0
APPLICATION_DEFINED
A\t5Ad
ActiveArea
-Adapter %d/%d: VendorID: %04x, DeviceID: %04x, dxlevel %d/%d/%d\n
Adapter: %d\nDriver Name: %s\nDriver Version: %s\nVendorId / DeviceId: 0x%x / 0x%x\nSubSystem / Rev: 0x%x / 0x%x\n\n
AdobeDeflate
Allow
@@ -372,9 +347,6 @@ Alpha to coverage depth-only rendering is broken on AMD driver versions before 3
Alpha to coverage depth-only rendering is broken on GCN 1/2/3, disabling alpha to coverage for PCI ID 0x%x.\n
AmdDxExtCreate11
AnalogBalance
-Android SM 4.0 (VULKAN)
-Android SM 4.1 (VULKAN)
-Android SM 5.0 (VULKAN)
AnimatedTextureMask
AntiAliasStrength
App logging hooks successfully initialized
@@ -395,7 +367,6 @@ AsyncHookUpTextureBits Disk
AsyncTextureHookup
Attempted to hook renderdoc using path '%s'. Result: '%s'\n
Attempting to render without calling BindRenderTargets!\n
-B0r?
B\vP\n0
Bad VTEX data for '%s'\n
Bad code word
@@ -423,6 +394,7 @@ C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/common/util-log.cpp
C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_d3d11_lib.cpp
C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_lib_windows.cpp
C:\buildworker\csgo_rel_win64\build\_build_\rendersystem\_vpc_rendersystemdx11\default\win64\_msvc_\Retail\rendersystemdx11.pdb
+C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\dx\dxfunctions.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\dx\dxfunctions.h
C:\buildworker\csgo_rel_win64\build\src\rendersystem\dx\rendercontextdx11.cpp
@@ -435,30 +407,30 @@ C:\buildworker\csgo_rel_win64\build\src\rendersystem\rendercontextbase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\renderdevicebase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\renderdevicemgrbase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2423):Error loading texture: %s\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2339):Error loading texture: %s\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
C:\buildworker\csgo_rel_win64\build\src\vfx\compiletargetexpr.g
CCITT Group 3
CCITT Group 4
CCITT RLE
CCITT RLE/W
CCommandBufferChunk CUtlMemoryPool
-CDeviceFenceDx11::CDeviceFenceDx11(4565):
+CDeviceFenceDx11::CDeviceFenceDx11(4487):
CDmeSheetSequence
CFALayout
CFAPlaneColor
@@ -477,6 +449,7 @@ COMMENT
COMMON
COMPILATION
CORRUPTION!!!
+CRenderContextBase::LockDynamicConstantBuffer
CRenderContextBase::Present
CRenderContextDx11:: Cannot resolve from a non-MSAA buffer to an MSAA buffer!\n
CRenderContextDx11:: Trying to copy from a rect that is outside of the src texture\n
@@ -497,46 +470,46 @@ CRenderContextDx11_SoftwareCommandLists::BeginQuery - Bad query or D3D device\n
CRenderContextDx11_SoftwareCommandLists::BeginQuery - Issued a Begin on a non-occlusion/pipeline stats query\n
CRenderContextDx11_SoftwareCommandLists::BeginQuery - Issued on an in-progress query!\n
CRenderContextDx11_SoftwareCommandLists::CopyTexture
-CRenderContextDx11_SoftwareCommandLists::CopyTextureUsingShaders(2093): got invalid ID3D11RenderTargetView, skipping copy to '%s'\n
+CRenderContextDx11_SoftwareCommandLists::CopyTextureUsingShaders(2075): got invalid ID3D11RenderTargetView, skipping copy to '%s'\n
CRenderContextDx11_SoftwareCommandLists::EndQuery - Bad query or D3D device\n
-CRenderContextDx11_SoftwareCommandLists::ForceFlushGPU(2508):
-CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2025): failed to get ID3D11ShaderResourceView for source texture '%s', skipping.\n
-CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2042): failed to get view for dest texture '%s', skipping.\n
+CRenderContextDx11_SoftwareCommandLists::ForceFlushGPU(2490):
+CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2007): failed to get ID3D11ShaderResourceView for source texture '%s', skipping.\n
+CRenderContextDx11_SoftwareCommandLists::ResolveUsingShaders(2024): failed to get view for dest texture '%s', skipping.\n
CRenderDeviceBase
-CRenderDeviceBase::AllocatePooledIndexBuffer(3626):
-CRenderDeviceBase::AllocatePooledIndexBuffer(3662):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3803):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3834):
-CRenderDeviceBase::AsyncSetTextureData(3265):
-CRenderDeviceBase::BeginRenderingToSwapChain(3519):
-CRenderDeviceBase::CreateConstantBuffer(1571):
-CRenderDeviceBase::EndRenderDocCapture(3499):
-CRenderDeviceBase::FindOrCreateTexture(1713):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3638):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3665):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3825):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3847):
+CRenderDeviceBase::AsyncSetTextureData(3266):
+CRenderDeviceBase::BeginRenderingToSwapChain(3520):
+CRenderDeviceBase::CreateConstantBuffer(1573):
+CRenderDeviceBase::CreateConstantBufferInternal
+CRenderDeviceBase::EndRenderDocCapture(3500):
+CRenderDeviceBase::FindOrCreateTexture(1715):
CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\n
-CRenderDeviceBase::Flush(898):
-CRenderDeviceBase::ForceFlushGPU(915):
-CRenderDeviceBase::FreeTextureGPUResources(2025):
-CRenderDeviceBase::FreeTextureGPUResources(2029):
+CRenderDeviceBase::Flush(889):
+CRenderDeviceBase::ForceFlushGPU(914):
+CRenderDeviceBase::FreeTextureGPUResources(2032):
+CRenderDeviceBase::FreeTextureGPUResources(2036):
CRenderDeviceBase::InitPerFrameMemoryStack
-CRenderDeviceBase::Present(610):
-CRenderDeviceBase::StartRenderDocCapture(3486):
-CRenderDeviceDx11::BeginSubmittingDisplayLists(1162):
+CRenderDeviceBase::Present(601):
+CRenderDeviceBase::StartRenderDocCapture(3487):
+CRenderDeviceDx11::BeginSubmittingDisplayLists(1126):
CRenderDeviceDx11::CreateDefaultShaders::<lambda_1>::operator ()
-CRenderDeviceDx11::DeleteQueryObject(3862):
+CRenderDeviceDx11::DeleteQueryObject(3794):
CRenderDeviceDx11::EndQuery - Issued on an in-progress query!\n
-CRenderDeviceDx11::QueueReleaseShader(3074):
-CRenderDeviceDx11::ReadTexturePixels(1996):
+CRenderDeviceDx11::QueueReleaseShader(3006):
+CRenderDeviceDx11::ReadTexturePixels(1924):
CRenderDeviceDx11::SetHardwareGammaRamp: Unable to set gamma controls!\n
CRenderDeviceDx11::SetMode: Previous mode has not been shut down!\n
-CRenderDeviceMgrDx11::CreateDevice
CRenderDeviceMgrDx11::DisplayErrorAndExit
CRenderDeviceMgrDx11::Init
CRenderDocAPI::AutoGenerateDebugShaders(), C:\buildworker\csgo_rel_win64\build\src\rendersystem\renderdocapi.cpp:874
CRenderThreadDx11::CopyToStagingResource(275): Error! NULL texture pointer sent to CopyToStagingResource()!\n
-CRenderThreadDx11::GetReadBackResource(1472): Warning: Failed to create staging texture %d(%x)\n
-CRenderThreadDx11::GetReadBackResource(1476): Warning: GetDeviceRemovedReason: %d(%x)\n
-CRenderThreadDx11::GetReadBackResource(1494): Warning: Failed to create staging buffer %d(%x)\n
-CRenderThreadDx11::GetReadBackResource(1498): Warning: GetDeviceRemovedReason: %d(%x)\n
+CRenderThreadDx11::GetReadBackResource(1542): Warning: Failed to create staging texture %d(%x)\n
+CRenderThreadDx11::GetReadBackResource(1546): Warning: GetDeviceRemovedReason: %d(%x)\n
+CRenderThreadDx11::GetReadBackResource(1564): Warning: Failed to create staging buffer %d(%x)\n
+CRenderThreadDx11::GetReadBackResource(1568): Warning: GetDeviceRemovedReason: %d(%x)\n
CRenderThreadDx11::OnAsyncReadback
CRenderThreadDx11::OnAsyncReadback(168):
CRenderThreadDx11::OnReadBuffer(453): Error! NULL texture pointer sent to OnReadBuffer()!\n
@@ -548,10 +521,9 @@ CSheetDataTextureCache::AllocateAndUploadSequenceData(582):
CSwapChainBase::QueuePresentAndWait() looped for %d iterations without a present event.\n
CTSQueue<class CVertexBufferDx11 *,0>::Push
CTSQueue<struct QueuedDisplayListItem_t,0>::Push
-CTextureDx11::ReleaseD3DTexture(877):
+CTextureDx11::ReleaseD3DTexture(864):
CTextureManagerBase::AsyncHookUpTextureBits
CTextureManagerBase::LoadStreamingData
-CTextureManagerBase::MN_BuildRequestedResourcesList
CTextureManagerBase::MN_DeallocateCacheableData
CTextureManagerBase::MN_OnResourceFileLoaded
CTextureManagerBase::MN_OnResourceLoadCompleted
@@ -563,7 +535,6 @@ CTextureManagerDx11::ComputeTextureObject: Tried to create a depth-stencil textu
CTextureStreamingHelper::LoadExplicitlyRequestedTextures
CTextureStreamingHelper::RemoveMipLevelsForTextures
CUtlLeanVectorBase<struct UtlLinkedListElem_t<class CVertexBufferDx11 *,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,class CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned int,int,class CDefLess<unsigned int>,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
CVfxProgramData::CalcDynamicComboIdFromValues
CVfxProgramData::CalcStaticComboIdFromValues
CalibrationIlluminant1
@@ -579,7 +550,6 @@ Can't load vfx file for %s for RenderDoc shader debug info.\n
Cannot handle different per-sample values for field "%s"
Cannot read TIFF header
Cannot reconstruct lineOffset table in DecodeEXRImage.
-Cannot use DX11 render system - adapter DirectX level only %d!\n
Cannot write directory, out of space
CellLength
CellWidth
@@ -620,6 +590,7 @@ ConsecutiveBadFaxLines
Copyright
Could not decode alpha data.
CreateComputeShader
+CreateConstantBufferInternal
CreateDXGIFactory
CreateDXGIFactory1
CreateDevice: Requested DX level %d, clamped to DX level %d\n
@@ -628,7 +599,7 @@ CreateGeometryShader
CreatePixelShader
CreateTexture2D FAILED with E_INVALIDARG! bImmutable = %s desc = \n\tWidth = %d\n\tHeight = %d\n\tMipLevels = %d\n\tArraySize = %d\n\tFormat = %d\n\tSampleDesc.Count = %d\n\tSampleDesc.Quality = %d\n\tUsage = %d\n\tBindFlags = %d\n\tCPUAccessFlags = %d\n\tMiscFlags = %d\n\tSource 2 Requested Format = %d\n
CreateVertexShader
-Created DX9 FL Device.
+Created unsupported DX Device?
Creating device for graphics adapter %d '%s' [vendorid 0x%X]: %d.%d.%d.%d\n
CryptDecodeObjectEx
CryptMsgClose
@@ -803,7 +774,7 @@ Discarding abandoned streaming texture load for %s\n
DispatchComputeShaderIndirect failed - invalid dispatch buffer\n.
DocumentName
Don't know how to deal with MSAA!
-Don't support DXLevel < 100
+Don't support DXLevel < 110
DotRange
DrawIndexedInstancedIndirect failed - invalid drawarg buffer\n.
DrawInstancedIndirect failed - invalid drawarg buffer\n.
@@ -863,7 +834,7 @@ Failed to create D3D11 compute shader "%s"!\n
Failed to create D3D11 geometry shader "%s"!\n
Failed to create D3D11 pixel shader "%s"!\n
Failed to create D3D11 vertex shader "%s"!\n
-Failed to create Dx11 render device!\n
+Failed to create DirectX 11 render device!\nPlease check that your GPU supports at least DirectX 11 and Shader Model 5
Failed to create device. Modules loaded: %s\n
Failed to create swap chain %s, may try again.\n
Failed to create the DXGI Factory!\n
@@ -950,15 +921,11 @@ GrayResponseCurve
GrayResponseUnit
Group3Options
Group4Options
-H)yA
-H=zA
HEADER
HEX_DIGIT
HalftoneHints
Hash
Hitch alert: Present was waiting for %d iterations and %.1f seconds.\n
-HixA
-HizA
Horizontal differencing "Predictor" not supported with %d-bit samples
HostComputer
I@r9iF
@@ -975,15 +942,10 @@ ID3D11ShaderReflection::GetDesc failed\n
IL "%s": Unable to create input layout for shader!\n
IND)ind)a
INITIALIZATION
-IOS_VULKAN
-IOS_VULKAN_4_0
-IOS_VULKAN_4_1
-IOS_VULKAN_5_0
ISG1
ISGN
ISO JBIG
IS_DIRECTX
-IS_MOBILE
IS_PC
IS_SM_
IS_VULKAN
@@ -1115,6 +1077,7 @@ Loaded video settings config from '%s'\n
Loading %ls succeeded
LocalAlloc
LocalizedCameraModel
+LockDynamicConstantBuffer
LogD3DResult
LogL16Decode: Not enough data at row %d (short %d pixels)
LogL16InitState
@@ -1126,7 +1089,6 @@ LowLatencySleep
MISCELLANEOUS
MN_AddAsyncTextureBitsHookupJob Data
MN_AddAsyncTextureBitsHookupJob Disk
-MN_CacheRequestedResources
MN_OnResourceFileLoaded
MODES
MV.Scale.X
@@ -1276,10 +1238,6 @@ Output aborted.
Overall System GPU memory use:\n
Overflow of the sheet cache texture. Releasing and starting over. This is ok in asset browser, not so ok if the game is triggering this!\n
Overflow of the sheet cache texture: Try increasing SheetCacheTextureRows in gameinfo.gi (current value %d)!\n
-PC SM 4.0 (D3D10)
-PC SM 4.0 (VULKAN)
-PC SM 4.1 (D3D10.1)
-PC SM 4.1 (VULKAN)
PC SM 5.0 (D3D11)
PC SM 5.0 (VULKAN)
PC SM 6.0 (VULKAN)
@@ -1289,10 +1247,6 @@ PCLStatsInit
PCLStatsInput
PCLStatsShutdown
PCLStatsTraceLoggingProvider
-PC_SM_4_0
-PC_SM_4_0_VULKAN
-PC_SM_4_1
-PC_SM_4_1_VULKAN
PC_SM_5_0
PC_SM_5_0_VULKAN
PC_SM_6_0_VULKAN
@@ -1349,9 +1303,16 @@ RDEFl
RDEF|
RDEF|\t
RENDERDOC_GetAPI
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RESOURCE_MANIPULATION
RESOURCE_TYPE_TEXTURE
-R\vpT^
+RS_CMP_CLOSER
+RS_CMP_CLOSER_EQUAL
+RS_CMP_CLOSER_FARTHER_FLAG
+RS_CMP_FARTHER
+RS_CMP_FARTHER_EQUAL
+RS_CMP_FUNC_MASK
+R\fp,d
R_T5Y
RawDataUniqueID
RayReconstruction.Hint.Render.Preset.Balanced
@@ -1381,20 +1342,17 @@ RenderSystem/AllowPartialMipChainImmediateTexLoads
RenderSystem/IndexBufferPoolSizeMB
RenderSystem/LowLatency
RenderSystem/MaxPreloadTextureResolution
-RenderSystem/MinDXLevel
RenderSystem/MinStreamingPoolSizeMB
RenderSystem/MinStreamingPoolSizeMBTools
RenderSystem/ReserveMemoryForNonTextureUseMB
RenderSystem/SetInitialStreamingPoolSizeFromBudget
-RenderSystem/SwapChainSampleableDepth
RenderSystem/Use32BitDepthBuffer
RenderSystem/Use32BitDepthBufferWithoutStencil
RenderSystem/UseHardwareGammaRamp
RenderSystem/UseReverseDepth
RenderSystem/VertexBufferPoolSizeMB
Rendersystem/SheetCacheTextureCols
Rendersystem/SheetCacheTextureRows
-Required feature D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS.ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x not supported.\n
Requires
Requires%d
ResolutionUnit
@@ -1451,9 +1409,7 @@ STATE_SETTING
SUPPORTS_CS
SUPPORTS_GS
SV_InstanceID
-S_BINDLESS_RUNTIME
S_EXECUTION_REORDERING
-S_MOBILE
S_MOLTEN_VK
S_REVERSE_DEPTH_BUFFER
S_SHADER_QUALITY
@@ -1512,6 +1468,7 @@ SuperSampling.FeatureInitResult
SuperSampling.MinDriverVersionMajor
SuperSampling.MinDriverVersionMinor
SuperSampling.NeedsUpdatedDriver
+Swap Chain Mode Changing:\n\tm_nVersion: %d -> %d\n\tm_DisplayMode:\n\t\tm_nVersion: %d -> %d\n\t\tm_nWidth: %d -> %d\n\t\tm_nHeight: %d -> %d\n\t\tm_Format: %d -> %d\n\t\tm_nRefreshRateNumerator: %d -> %d\n\t\tm_nRefreshRateDenominator: %d -> %d\n\t\tm_nFlags: 0x%X -> 0x%X\n\tm_nBackBufferCount: %d -> %d\n\tm_nMultisampleType: %d -> %d\n\tm_nModeUsage: %d -> %d\n\tm_bUseStencil: %d -> %d\n\tm_bWaitForVSync: %d -> %d\n\tm_bScaleToOutputResolution: %d -> %d\n\tm_bProgressive: %d -> %d\n\tm_bUsingMultipleWindows: %d -> %d\n\tm_bIsMainWindow: %d -> %d\n
SwapChainColor.vtex
SwapChainDepth.vtex
SwapChainTrueColor.vtex
@@ -1575,7 +1532,6 @@ TextureWrapModes
Textures created overall: %s; textures evicted: %s\n
Textures loaded: %llu\nTexture Memory: %.2f MB\n
The minimum amount of GPU memory for streaming textures is set to %d MB.\n
-This application requires DX11, no valid device found!\n
This is a BigTIFF file. This format not supported\nby this version of libtiff.
This shader says it isn't in the queue, but we found it there!\n
Threshholding
@@ -1598,8 +1554,13 @@ Trying to create a render target with invalid image format %s\n
Trying to set dxlevel (%d) which is higher than the card can support (%d)!\n
Trying to set dxlevel (%d) which is lower than the card can support (%d)!\n
UNICODE_ESC
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
U\8h(
-U\tV_logd
Unable to create the DLSS feature : error code = 0x%08x, info: %s
Unable to enumerate any DX11 adapters (hr = 0x%08X), this system may not support DX11.\n
Unable to find swapchain named %s
@@ -1621,6 +1582,7 @@ Unknown encoding %d for LogLuv compression
Unsatisfied dependency at present time = death!
Unsupported PSD color mode!\n
UpdateExternalTexture called on unknown external texture '%s'\n
+UpscalerType_t
Usage: %s <window_name>
UseSlangForDX11
VB Size: %s (Count: %d)\n
@@ -1679,7 +1641,6 @@ XMLPacket
XPosition
XResolution
XYZ, Luv
-XayA
YCbCrCoefficients
YCbCrPositioning
YCbCrSubsampling
@@ -1706,13 +1667,13 @@ ZIPVSetField
\n*** A feature alias in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A feature in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A static combo in %s doesn't start with "S_"! Aborting shader compile!\n\n
-\n*** CVfx::ParseBoolFromFile(6414): Error opening file "%s"!\n\n
-\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file "%s"!\n\n
-\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file "%s"!\n\n
-\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file "%s"!\n\n
-\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list"%s"!\n\n
-\n*** CVfx::ParseModesFromFile(5909): Error opening file "%s"!\n\n
-\n*** CVfx::ParseVersionFromFile(6460): Error opening file "%s"!\n\n
+\n*** CVfx::ParseBoolFromFile(6330): Error opening file "%s"!\n\n
+\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file "%s"!\n\n
+\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file "%s"!\n\n
+\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file "%s"!\n\n
+\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list"%s"!\n\n
+\n*** CVfx::ParseModesFromFile(5825): Error opening file "%s"!\n\n
+\n*** CVfx::ParseVersionFromFile(6376): Error opening file "%s"!\n\n
\n*** Combo "%s" in %s doesn't match a known combo source!\n\n
\n*** Combo "%s" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\n\n
\n*** Combo "%s" in %s has arg %s that doesn't match an existing feature!\n\n
@@ -1764,13 +1725,12 @@ ZIPVSetField
\n*** Unable to parse Version in HEADER section of %s!\n\n
\n*** Unknown rule "%s" in %s!\n\n
\n*** Unknown text found in FEATURES section in %s: "%s"\n\n
-\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file "%s"!\n\n
-\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file "%s"!\n\n
+\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file "%s"!\n\n
+\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file "%s"!\n\n
\nGetVfxDll(93): ERROR! Can't load %s dll, automatic RenderDoc shader debug info not available.\n
\nMS,\nVS_MS_RTX
\nPS_RENDER_STATE
\nRTX
-\n\tV_atanf
\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\src\shaders\
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
@@ -1784,8 +1744,9 @@ ZIPVSetField
\tMultisampleEnable: %d\n
\tScissorEnable: %d\n
\tSlopeScaledDepthBias: %f\n
+\tV_ZSTD_decompress
\tV_atan2d
-\tV_expd
+\tV_atanf
\tV_strspn
\tV_strtoi64
\tV_strtoui64
@@ -1795,7 +1756,6 @@ ZIPVSetField
\tg_TSPointerListNodes
\tpSubResource[ array %d mip %d ]: pSysMem = %p sysMemPitch = %d SysMemSlicePitch = %d\n
\tpTextureBitsData = %p\n
-\vp4F
_DOD3D
_INTC_CreateDeviceExtensionContext
_INTC_D3D11_BeginUAVOverlap
@@ -1884,8 +1844,7 @@ _psrs
_rtx
_tools.txt
_wjb
-`ywA
-a\tV_powd
+`\tV_logd
agsDeInitialize
agsDriverExtensionsDX11_CreateDevice
agsDriverExtensionsDX11_CreateDevice failed %x, disabling AGS.\n
@@ -2020,8 +1979,6 @@ fraps64.dll
g_pEngineServiceMgr is NULL. Display mode information unavailable\n
g_pRenderDevice is NULL. %d adapter(s) available. Iterating adapters %d - %d\n
g_pRenderHardwareConfig is NULL. Display mode information unavailable\n
-gs_4_0
-gs_4_1
gs_5_0
gs_6_0
horizontal differencing
@@ -2036,15 +1993,13 @@ iInputColorResourceDimensions
iLumaMipDimensions
iLumaMipLevelToUse
iMaxRenderSize
-iOS SM 4.0 (VULKAN)
-iOS SM 4.1 (VULKAN)
-iOS SM 5.0 (VULKAN)
iRenderSize
immediate
incorrect count for field "%s" (%u, expecting %u); tag ignored
incorrect count for field "%s" (%u, expecting %u); tag trimmed
invalid handle
invalid vector subscript
+l\tV_powd
lib_6_4
lineOrder
ltmX.
@@ -2094,7 +2049,6 @@ pixelAspectRatio
png/jpg
powf
ps_4_0
-ps_4_1
ps_5_0
ps_6_0
pseudo-
@@ -2103,7 +2057,7 @@ psrs
q!T9MiZ
r1?1
rP1`=RO
-r\fpT^
+r\vp,d
r_dilatedDepth
r_dilated_motion_vectors
r_dilated_reactive_masks
@@ -2160,16 +2114,11 @@ screenWindowCenter
screenWindowWidth
secure exception triggered - invalid parameter - %ls:%d:%ls:%ls\n
setting.
-setting.CentroidHack
setting.DXLevel
setting.DisableShaderOptimizations
setting.HasBrokenPipelineStats
setting.MaxDXLevel
setting.MinDXLevel
-setting.PreferHardwareSync
-setting.PreferTexturesInHWMemory
-setting.PreferZPrepass
-setting.SuppressPixelShaderCentroidHackFixup
setting.Unsupported
setting.knowndevice
setting.maxdxlevel
@@ -2217,7 +2166,6 @@ vfxc
video.cfg
video_version
vs_4_0
-vs_4_1
vs_5_0
vs_6_0
warning: failed to load %ls
game/bin/win64/rendersystemempty_strings.txt
modified • +57 / -62 • changes: 119
Show patch
@@ -41,6 +41,7 @@
"screenWindowWidth" attribute not found in the header.
# of channels is zero.\n
#CfU7
+$\tV_expd
%-100s %-6s %-6s\n
%.100s: Can not read TIFF directory
%A Is
@@ -106,9 +107,9 @@
, channels =
, height =
--------------------------------------------\n
+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@
.?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@
.?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@
-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@
.?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@
.?AV?$CBaseAppSystem@VIRenderDeviceMgr@@@@
.?AV?$CBaseAppSystem@VIRenderUtils@@@@
@@ -120,22 +121,17 @@
.?AV?$CTier1AppSystem@VIRenderUtils@@$0A@@@
.?AV?$CTier2AppSystem@VIRenderDeviceMgr@@$0A@@@
.?AV?$CTier2AppSystem@VIRenderUtils@@$0A@@@
-.?AV?$ITSHashConstructor@PEAX@@
.?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@
.?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@
-.?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@
-.?AVCBlendStateCreator@@
-.?AVCDepthStencilStateCreator@@
+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@
.?AVCDeviceFence@@
.?AVCDeviceFenceBase@@
.?AVCEmptyShaderBuffer@@
.?AVCPooledIndexBuffer@@
.?AVCPooledVertexBuffer@@
-.?AVCRasterizerStateCreator@@
.?AVCReadGPUBuffer@@
.?AVCRenderContextEmpty@@
.?AVCRenderDeviceBase@@
@@ -148,7 +144,6 @@
.?AVCRenderUtils@@
.?AVCSchemaRegistration_rendersystemempty@@
.?AVCSheetHashConstructor@@
-.?AVCStateBundleCreator@@
.?AVCSwapChainBase@@
.?AVCSwapChainEmpty@@
.?AVCTextureBase@@
@@ -173,6 +168,7 @@
<invalid %d>
<unknown multisample type
?EncodeBC7Blocks
+?~~~~~~~~~~~~~~~~
@Integer overflow in %s
ActiveArea
Adapter: %d\nDriver Name: %s\nDriver Version: %s\nVendorId / DeviceId: 0x%x / 0x%x\nSubSystem / Rev: 0x%x / 0x%x\n\n
@@ -211,23 +207,23 @@ C:\buildworker\csgo_rel_win64\build\_build_\rendersystem\_vpc_rendersystemempty\
C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\renderdevicebase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2423):Error loading texture: %s\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2339):Error loading texture: %s\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
CCITT Group 3
CCITT Group 4
CCITT RLE
@@ -239,28 +235,27 @@ CFAPlaneColor
CLargeCommandBufferChunk CUtlMemoryPool
CMediumCommandBufferChunk CUtlMemoryPool
CRenderDeviceBase
-CRenderDeviceBase::AllocatePooledIndexBuffer(3626):
-CRenderDeviceBase::AllocatePooledIndexBuffer(3662):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3803):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3834):
-CRenderDeviceBase::AsyncSetTextureData(3265):
-CRenderDeviceBase::BeginRenderingToSwapChain(3519):
-CRenderDeviceBase::CreateConstantBuffer(1571):
-CRenderDeviceBase::EndRenderDocCapture(3499):
-CRenderDeviceBase::FindOrCreateTexture(1713):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3638):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3665):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3825):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3847):
+CRenderDeviceBase::AsyncSetTextureData(3266):
+CRenderDeviceBase::BeginRenderingToSwapChain(3520):
+CRenderDeviceBase::CreateConstantBuffer(1573):
+CRenderDeviceBase::CreateConstantBufferInternal
+CRenderDeviceBase::EndRenderDocCapture(3500):
+CRenderDeviceBase::FindOrCreateTexture(1715):
CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\n
-CRenderDeviceBase::Flush(898):
-CRenderDeviceBase::ForceFlushGPU(915):
-CRenderDeviceBase::FreeTextureGPUResources(2025):
-CRenderDeviceBase::FreeTextureGPUResources(2029):
-CRenderDeviceBase::Present(610):
-CRenderDeviceBase::StartRenderDocCapture(3486):
+CRenderDeviceBase::Flush(889):
+CRenderDeviceBase::ForceFlushGPU(914):
+CRenderDeviceBase::FreeTextureGPUResources(2032):
+CRenderDeviceBase::FreeTextureGPUResources(2036):
+CRenderDeviceBase::Present(601):
+CRenderDeviceBase::StartRenderDocCapture(3487):
CSheetDataTextureCache::AllocateAndUploadSequenceData(582):
CTextureManagerBase::AsyncHookUpTextureBits
CTextureManagerBase::LoadStreamingData
-CTextureManagerBase::MN_BuildRequestedResourcesList
CTextureManagerBase::MN_DeallocateCacheableData
-CTextureManagerBase::MN_OnResourceFileLoaded
CTextureManagerBase::MN_OnResourceLoadCompleted
CTextureManagerBase::MN_OnResourceLoadFailed
CTextureManagerBase::MarkAsyncUpdatedThisFrame - Invalid texture handle.\n
@@ -271,8 +266,6 @@ CameraCalibration1
CameraCalibration2
CameraSerialNumber
Can not read scanlines from a tiled image
-Can't clear TEXTURE_WAITING_FOR_IO flag because of streaming request mismatch: %d in handle, %d in request\n
-Can't clear TEXTURE_WAITING_FOR_IO flag because pTexture is NULL\n
Can't detect memory size on this platform!\n
Cannot handle different per-sample values for field "%s"
Cannot read TIFF header
@@ -282,7 +275,6 @@ CellLength
CellWidth
ChromaBlurRadius
CleanFaxData
-Clearing TEXTURE_WAITING_FOR_IO flag because it's has no streaming request id anymore\n
ClipPath
ColorMap
ColorMatrix1
@@ -297,6 +289,7 @@ Compression scheme %u %s encoding is not implemented
ConsecutiveBadFaxLines
Copyright
Could not decode alpha data.
+CreateConstantBufferInternal
CurrentICCProfile
CurrentPreProfileMatrix
DBM&(
@@ -319,7 +312,7 @@ DeviceID
Direct3D 11
Discarding abandoned streaming texture load for %s\n
DocumentName
-Don't support DXLevel < 100
+Don't support DXLevel < 110
DotRange
Driver Name: %s\nDriver Version: %s\nVendorId / DeviceId: 0x%x / 0x%x\nSubSystem / Rev: 0x%x / 0x%x\nDXLevel: %d\nTexture memory: %s\nGPU memory (use / budget): %s / %s\nVid: %s, render at %i x %i, display at %i x %i, refresh rate %.2fHz (%uHz desktop)\n
DumpModeDecode: Not enough data for scanline %d
@@ -456,8 +449,6 @@ LogLuvDecode32: Not enough data at row %d (short %d pixels)
LogLuvInitState
MN_AddAsyncTextureBitsHookupJob Data
MN_AddAsyncTextureBitsHookupJob Disk
-MN_CacheRequestedResources
-MN_OnResourceFileLoaded
Make
MakerNoteSafety
MaskedAreas
@@ -534,8 +525,15 @@ Premature end-of-file encountered.
Premature end-of-partition0 encountered.
PrimaryChromaticities
RENDERDOC_GetAPI
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RESOURCE_TYPE_TEXTURE
RSDSM
+RS_CMP_CLOSER
+RS_CMP_CLOSER_EQUAL
+RS_CMP_CLOSER_FARTHER_FLAG
+RS_CMP_FARTHER
+RS_CMP_FARTHER_EQUAL
+RS_CMP_FUNC_MASK
R_T5Y
RawDataUniqueID
ReductionMatrix1
@@ -549,12 +547,9 @@ Render system: %s\n
RenderDoc is not active, did you forget to add -renderdoc to the command-line? Is RenderDoc installed?\n
RenderSystem
RenderSystem/AllowPartialMipChainImmediateTexLoads
-RenderSystem/IndexBufferPoolSizeMB
RenderSystem/MaxPreloadTextureResolution
-RenderSystem/MinDXLevel
RenderSystem/MinStreamingPoolSizeMB
RenderSystem/MinStreamingPoolSizeMBTools
-RenderSystem/VertexBufferPoolSizeMB
Rendersystem/SheetCacheTextureCols
Rendersystem/SheetCacheTextureRows
ResolutionUnit
@@ -588,13 +583,12 @@ StripOffsets
SubIFD
SubfileType
Success
+Swap Chain Mode Changing:\n\tm_nVersion: %d -> %d\n\tm_DisplayMode:\n\t\tm_nVersion: %d -> %d\n\t\tm_nWidth: %d -> %d\n\t\tm_nHeight: %d -> %d\n\t\tm_Format: %d -> %d\n\t\tm_nRefreshRateNumerator: %d -> %d\n\t\tm_nRefreshRateDenominator: %d -> %d\n\t\tm_nFlags: 0x%X -> 0x%X\n\tm_nBackBufferCount: %d -> %d\n\tm_nMultisampleType: %d -> %d\n\tm_nModeUsage: %d -> %d\n\tm_bUseStencil: %d -> %d\n\tm_bWaitForVSync: %d -> %d\n\tm_bScaleToOutputResolution: %d -> %d\n\tm_bProgressive: %d -> %d\n\tm_bUsingMultipleWindows: %d -> %d\n\tm_bIsMainWindow: %d -> %d\n
TEXMAN: %s LoadStreamingData (%s)\n
TEXMAN: %s MarkTextureBitsLoaded (%s)\n
TEXMAN: %s TextureBecameEvicted (%s)\n
TEXMAN: %s loaded %s %i/%i mips (%ix%i / %ix%i) of %s (%i bytes)\n
TEXMAN: Abandoning job in %s (%s)\n
-TEXMAN: Abandoning streaming request early in %s\n
-TEXMAN: Abandoning streaming request in %s\n
TEXMAN: Adding %llx+%p (binding=%p), %s to abandoned hookup jobs\n
TEXMAN: Deleting %d textures\n
TEXMAN: Outstanding stream count %d -> %d (%s)\n
@@ -646,17 +640,22 @@ Truncated header.
Trying to create a render target with invalid image format %s\n
Trying to set dxlevel (%d) which is higher than the card can support (%d)!\n
Trying to set dxlevel (%d) which is lower than the card can support (%d)!\n
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
U\8h(
-U\tV_logd
Unable to find swapchain named %s
-Unable to stream in resource file "%s" (Error: %s)\n
Unavailable
Unexpected resource version '%d' for '%s'\n
UniqueCameraModel
Unknown compression type.
Unknown data format %d for LogLuv compression
Unknown encoding %d for LogLuv compression
Unsupported PSD color mode!\n
+UpscalerType_t
Usage: %s <window_name>
VB Size: %s (Count: %d)\n
VBPool
@@ -692,8 +691,8 @@ ZIPSetupDecode
ZIPSetupEncode
ZIPVSetField
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
+\tV_ZSTD_decompress
\tV_atan2d
-\tV_expd
\tV_strtoi64
\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\n\v\n\v\n\v\n\v\n\v\n\v\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r\f\r\f\r\f\r\f\r\f\r\f\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\tg_TSPointerListNodes
@@ -703,7 +702,7 @@ _TIFFVGetField
_TIFFVSetField
_tools.txt
_wjb
-a\tV_powd
+`\tV_logd
aoB>"
ati_compress_wrapper.dll
bValid
@@ -751,6 +750,7 @@ immediate
incorrect count for field "%s" (%u, expecting %u); tag ignored
incorrect count for field "%s" (%u, expecting %u); tag trimmed
invalid vector subscript
+l\tV_powd
lineOrder
ltmX.
makemelast
@@ -784,16 +784,11 @@ scanline
screenWindowCenter
screenWindowWidth
setting.
-setting.CentroidHack
setting.DXLevel
setting.DisableShaderOptimizations
setting.HasBrokenPipelineStats
setting.MaxDXLevel
setting.MinDXLevel
-setting.PreferHardwareSync
-setting.PreferTexturesInHWMemory
-setting.PreferZPrepass
-setting.SuppressPixelShaderCentroidHackFixup
setting.Unsupported
setting.knowndevice
setting.maxdxlevel
game/bin/win64/rendersystemvulkan_strings.txt
modified • +130 / -166 • changes: 296
Show patch
@@ -53,6 +53,7 @@
#Vulkan_InitializationFailure
#Vulkan_RequiredExtensionMissing
#line
+$\tV_expd
%-100s %-6s %-6s\n
%.0Lf
%.100s: Can not read TIFF directory
@@ -72,13 +73,17 @@
%s %s: vkAllocateMemory failed for (%s) memory indicating heap is full, trying again in non-device local as a fallback.\n
%s - encountered shader with requiredSubgroupSize (%d), but VK_EXT_subgroup_size_control not enabled. Will be ignored, might cause rendering artifacts because device subgroup size is (%d).\n
%s - encountered shader with requiredSubgroupSize (%d), but maxSubgroupSize is (%d). Will be ignored, might cause rendering artifacts.\n
+%s - expected result = %s\n
%s - invalid indirect execution set.\n
%s - invalid pipeline index %d.\n
%s - unable to compute pipeline/pipeline layout.\n
+%s - unexpected result = %s\n
%s - vkCreateIndirectExecutionSetEXT returned error %s.\n
%s compression support is not configured
%s does not support all required features, disabling.\n
%s does not support computeDerivativeGroupQuads, disabling.\n
+%s does not support fragmentShaderBarycentric, disabling.\n
+%s required because VulkanRequireBarycentrics is set in gameinfo.gi, but it is not supported. Vulkan device creation failed.\n
%s required because VulkanRequireComputeShaderDerivatives is set in gameinfo.gi, but it is not supported. Vulkan device creation failed.\n
%s.spv
%s2-d encoding
@@ -159,12 +164,8 @@
( result == VK_SUCCESS )
(%s): ADD %s = %s\n
(%s): Setting %s to %s\n
-(1yY
(On the line reading %s):\n
-(QzY
-(qxY
-(qyY
-*** CVfx::StartupSanityCheck(7115): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
+*** CVfx::StartupSanityCheck(7031): Programmer Error! The order of VfxVariableSourceType_t does not match s_shaderVariableSource!\n
*** Error masking unused parts! Equal sign not found after token "%s"! (line %d)\n
*** IL "%s": Unable to create input layout; layout has %d fields, which is more than %d!\n
*** VB "%s": Failed to lock!\n
@@ -173,15 +174,14 @@
*** VB "%s": Tried to lock too much memory (%s > %s)!\n
*** VB "%s": Tried to lock too much memory for subregion (%s > %s)!\n
*** VB "%s": Tried to lock twice without an unlock!\n
-*** VfxPopulateSourceCache(1137): Error opening file "%s"!\n\n
-*** VfxPopulateSourceCache(1145): Error opening file "%s"!\n\n
-*** VfxReadAndPrepForCrc(1295): Source cache incomplete, file "%s" missing!\n\n
-*** VfxReadAndPrepForCrc(1307): Error masking unused parts for "%s"!\n\n
+*** VfxPopulateSourceCache(1097): Error opening file "%s"!\n\n
+*** VfxPopulateSourceCache(1105): Error opening file "%s"!\n\n
+*** VfxReadAndPrepForCrc(1255): Source cache incomplete, file "%s" missing!\n\n
+*** VfxReadAndPrepForCrc(1267): Error masking unused parts for "%s"!\n\n
*.spv
+v$x+v$xv$+xv+$xv$+x+$vx+$vx$v+x+$vx$+vx+v $+v $v $+v +$v $++$ v+$ v$ v++$ v$+ v+xv$+ v$v$ +v+ $v$ ++x$v+ $v$v ++ $v$ +v
, channels =
, height =
-,VUID-VkCopyAccelerationStructureInfoKHR-src-04963
--------------------------------------------\n
-rtest1
-sSO\
@@ -194,6 +194,7 @@
-vulkan_enable_gpu_validation
-vulkan_enable_sync_validation
-vulkan_enable_thread_safety_validation
+-vulkan_gpuav_shader_names
../../../src/thirdparty/nvidia/nvngx_dlss_sdk/lib/Windows_x86_64/dev/
.?AUConcurrentDatabase@Fossilize@@
.?AUPerThreadDataBase_t@@
@@ -202,10 +203,10 @@
.?AUmessages_base@std@@
.?AUmoney_base@std@@
.?AUtime_base@std@@
+.?AV<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAVCReadGPUBuffer@@@Z@
.?AV<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@
.?AV<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@
.?AV<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@2@@Z@
-.?AV<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@
.?AV<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@
.?AV<lambda_1>@?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@34@@Z@
.?AV<lambda_1>@?7???R0?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@34@@Z@QEBA@XZ@
@@ -238,21 +239,18 @@
.?AV?$CVulkanObject@PEAUVkAccelerationStructureKHR_T@@$1?vkDestroyAccelerationStructureKHR@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@
.?AV?$CVulkanObject@PEAUVkBufferView_T@@$1?vkDestroyBufferView@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@
.?AV?$CVulkanObject@PEAUVkImageView_T@@$1?vkDestroyImageView@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@
+.?AV?$CVulkanObject@PEAUVkMicromapEXT_T@@$1?vkDestroyMicromapEXT@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@
.?AV?$CVulkanObject@PEAUVkSampler_T@@$1?vkDestroySampler@@3P6AXPEAUVkDevice_T@@PEAU1@PEBUVkAllocationCallbacks@@@ZEA@@
.?AV?$IOpCodeHandler@H@@
.?AV?$IOpEvaluator@H@@
.?AV?$IStreamBuilderCallback@VCCommandStream@@@@
-.?AV?$ITSHashConstructor@PEAUInputLayoutVulkan_t@@@@
-.?AV?$ITSHashConstructor@PEAX@@
-.?AV?$ITSHashConstructor@VCSamplerStateBinding@@@@
.?AV?$ITSHashConstructor@VCTextureSequenceRecord_t@@@@
.?AV?$_CancellationTokenCallback@V<lambda_1>@?1??_RegisterCancellation@_Task_impl_base@details@Concurrency@@QEAAXV?$weak_ptr@U_Task_impl_base@details@Concurrency@@@std@@@Z@@details@Concurrency@@
.?AV?$_Func_base@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_base@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??CaptureRenderDocWindow@CRenderDocAPI@@SAXAEBVCCommandContext@@AEBVCCommand@@@Z@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??IssueTextureLoadRequest@CTextureStreamingHelper@@IEAAXPEAVCTextureBase@@AEBUTextureSpecification_t@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?1??MN_AddAsyncTextureBitsHookupJob@CTextureManagerBase@@IEAAXPEAVCTextureBase@@AEBUAsyncTextureHookupData_t@3@@Z@X$$V@std@@
-.?AV?$_Func_impl_no_alloc@V<lambda_1>@?3??MN_CacheRequestedResources@CTextureManagerBase@@IEAAXAEAV?$CUtlVector@UToCacheHandle_t@CTextureManagerBase@@HV?$CUtlVectorMemory_Growable@UToCacheHandle_t@CTextureManagerBase@@H$0A@@@@@@Z@XPEAVIAsyncResourceDataRequest@@V?$unique_ptr@VIAsyncProcessedDataResult@@U?$default_delete@VIAsyncProcessedDataResult@@@std@@@std@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??RenderDocCaptureWindowAutoComplete@@YAXAEBVCCommand@@AEAV?$CUtlVector@VCUtlString@@HV?$CUtlVectorMemory_Growable@VCUtlString@@H$0A@@@@@@Z@XPEAVCSwapChainBase@@@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@45@@Z@X$$V@std@@
.?AV?$_Func_impl_no_alloc@V<lambda_1>@?7???R1?4??_ScheduleContinuationTask@_Task_impl_base@details@Concurrency@@QEAAXPEAU_ContinuationTaskHandleBase@45@@Z@QEBA@XZ@X$$V@std@@
@@ -263,6 +261,8 @@
.?AV?$_Mpunct@G@std@@
.?AV?$_Mpunct@_W@std@@
.?AV?$_Ref_count_obj2@U_ExceptionHolder@details@Concurrency@@@std@@
+.?AV?$_Ref_count_obj2@VCReadTexturePixelsCallback@@@std@@
+.?AV?$_Ref_count_resource@PEAVCReadGPUBuffer@@V<lambda_1>@?1???$DoNotDeleteReadCallback@VCReadGPUBuffer@@@@YA?AV?$shared_ptr@VCReadGPUBuffer@@@std@@PEAV1@@Z@@std@@
.?AV?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@
.?AV?$codecvt@DDU_Mbstatet@@@std@@
.?AV?$codecvt@GDU_Mbstatet@@@std@@
@@ -309,7 +309,6 @@
.?AVCBarrierHelperEmpty@?1??GetBarrierHelper@CRenderContextBase@@UEAA?AV?$unique_ptr@VIBarrierHelper@@U?$default_delete@VIBarrierHelper@@@std@@@std@@XZ@
.?AVCBarrierHelperVulkan@@
.?AVCBaseAccelerationStructureVulkan@@
-.?AVCBlendStateCreator@@
.?AVCBufferBarrierTracker@@
.?AVCBufferMovedListenerDeferredDeletion@@
.?AVCBufferedDescriptorSetVulkan@@
@@ -318,7 +317,6 @@
.?AVCCompileTargetExprOpCodeHandler@@
.?AVCCompileTargetExprStackMachineBuilder@@
.?AVCConstantBufferVulkan@@
-.?AVCDepthStencilStateCreator@@
.?AVCDescriptorCountTracker@@
.?AVCDescriptorSetReferenced@@
.?AVCDescriptorSetVulkan@@
@@ -335,7 +333,6 @@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??ExecuteOustandingSWCommandStreamJobs@CRenderThreadVulkan@@AEAAXXZ@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??ExecuteOustandingSWCommandStreamJobs@CRenderThreadVulkan@@AEAAXXZ@@Z@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_1>@?M@??PerformQueuedTextureDeletions@CRenderDeviceVulkan@@AEAAX_N@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_1>@?M@??PerformQueuedTextureDeletions@CRenderDeviceVulkan@@AEAAX_N@Z@@Z@
.?AVCLambdaJob@?1???$QueueJobWithFlags@V<lambda_2>@?1??QueuePresent@CRenderContextVulkan@@UEAAXPEAUSwapChainHandle_t__@@HPEAVIRenderDevicePresentCallback@@@Z@@IThreadPool@@QEAA?AV?$CSmartPtr@VCThreadedJob@@VCRefCountAccessor@@@@PEBDW4JobPriority_t@@I$$QEAV<lambda_2>@?1??QueuePresent@CRenderContextVulkan@@UEAAXPEAUSwapChainHandle_t__@@HPEAVIRenderDevicePresentCallback@@@Z@@Z@
-.?AVCLayoutInsert@@
.?AVCMemoryManagerVulkan@@
.?AVCNVReflexVulkan@@
.?AVCNsightAPI@@
@@ -344,7 +341,7 @@
.?AVCPipelineVulkan@@
.?AVCPooledIndexBuffer@@
.?AVCPooledVertexBuffer@@
-.?AVCRasterizerStateCreator@@
+.?AVCRayTraceOMMVulkan@@
.?AVCRayTracePipelineVulkan@@
.?AVCRayTraceShaderBindingTableVulkan@@
.?AVCReadGPUBuffer@@
@@ -363,12 +360,10 @@
.?AVCRenderThreadBase@@
.?AVCRenderThreadVulkan@@
.?AVCRenderUtils@@
-.?AVCSamplerStateCreator@@
.?AVCSchemaRegistration_rendersystemvulkan@@
.?AVCShaderTableVulkan@@
.?AVCShaderVulkanBase@@
.?AVCSheetHashConstructor@@
-.?AVCStateBundleCreator@@
.?AVCSwapChainBase@@
.?AVCSwapChainVulkan@@
.?AVCTLASVulkan@@
@@ -434,17 +429,16 @@
0123456789ABCDEFabcdef-+Xx
0123456789ABCDEFabcdef-+XxPp
0x%x
-2\f%24
2\fu24*
2\nP!E
-2\vpx
58x\t
5;FJ$,XEK4<
5\fE545
7&F|If
7T2,
8"3hrf
8&Kx
+8Fx*,
969p
:AM:am:PM:pm
:Jan:January:Feb:February:Mar:March:Apr:April:May:May:Jun:June:Jul:July:Aug:August:Sep:September:Oct:October:Nov:November:Dec:December
@@ -457,17 +451,14 @@
=\t ();,\n\r<>
>-memory-
?ParseEXRHeaderFromMemory() failed! Error message: %s\n
+?~~~~~~~~~~~~~~~~
@BXV
@Integer overflow in %s
@count
@iZb
-ANDROID_VULKAN
-ANDROID_VULKAN_4_0
-ANDROID_VULKAN_4_1
-ANDROID_VULKAN_5_0
Aboring CRenderContextVulkan::ReadBufferIndirect because of GPU memory allocation failure.\n
-Aboring OnReadBuffer because of GPU memory allocation failure.\n
Aboring OnReadPixels because of GPU memory allocation failure.\n
+Aborting OnReadBuffer because of GPU memory allocation failure.\n
Aborting ReadTexturePixelsInternal - unable to create MSAA resolve image.\n
AccelStruct
AccelStructBuffer %s [%s]
@@ -493,9 +484,6 @@ Allow disabling memory aliasing in the device memory pool. This is just intende
Allow%d
Alpha decoder initialization failed.
AnalogBalance
-Android SM 4.0 (VULKAN)
-Android SM 4.1 (VULKAN)
-Android SM 5.0 (VULKAN)
AnimatedTextureMask
AntiAliasStrength
App logging hooks successfully initialized
@@ -569,27 +557,28 @@ C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/common/util-log.cpp
C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_lib_windows.cpp
C:/dvs/p4/build/sw/devrel/libdev/NGX/core/rel_tot/source/lib/nvsdk_ngx_vulkan_lib.cpp
C:\buildworker\csgo_rel_win64\build\_build_\rendersystem\_vpc_rendersystemvulkan\default\win64\_msvc_\Retail\rendersystemvulkan.pdb
+C:\buildworker\csgo_rel_win64\build\src\bitmap\floatbitmap.cpp
C:\buildworker\csgo_rel_win64\build\src\public\tier0\utlqueue.h
C:\buildworker\csgo_rel_win64\build\src\rendersystem\rendercontextbase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\renderdevicebase.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2423):Error loading texture: %s\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3450):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3453):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3486):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3489):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3511):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3514):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3534):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3537):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3557):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3560):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3582):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3585):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3597):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3600):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3612):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
-C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3615):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(2339):Error loading texture: %s\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3097):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3100):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3133):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3136):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3158):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3161):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3181):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3184):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3204):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3207):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3229):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3232):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3244):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3247):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3259):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
+C:\buildworker\csgo_rel_win64\build\src\rendersystem\texturebase.cpp(3262):ResourceHandleToData( %s ) failed! Falling back to error texture!\n
C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\asynccompilehelpervulkan.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\memorymgrvulkan.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\pipelinecachemgrvulkan.cpp
@@ -603,7 +592,7 @@ C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\texturevulkan.cpp
C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\vulkanfunctions.h
C:\buildworker\csgo_rel_win64\build\src\vfx\compiletargetexpr.g
C:\buildworker\csgo_rel_win64\build\src\vfx\vfx_shader_file.cpp
-CBaseAccelerationStructureVulkan::Create(236):
+CBaseAccelerationStructureVulkan::Create(252):
CCITT Group 3
CCITT Group 4
CCITT RLE
@@ -617,17 +606,19 @@ CFossilizeStateCreator::RegisterShader
CInputLayoutDict<class CInputLayoutVulkan>::ConcatentateInputLayouts
CLargeCommandBufferChunk CUtlMemoryPool
CMediumCommandBufferChunk CUtlMemoryPool
-CMemoryManagerVulkan::AllocateBufferInCustomPoolGroup(1566): vmaCreatePool failed with error: %d\n
-CMemoryManagerVulkan::AllocateImageInCustomPoolGroup(1495): vmaCreatePool failed with error: %d\n
+CMemoryManagerVulkan::AllocateBufferInCustomPoolGroup(1547): vmaCreatePool failed with error: %d\n
+CMemoryManagerVulkan::AllocateImageInCustomPoolGroup(1476): vmaCreatePool failed with error: %d\n
CMemoryManagerVulkan::VmaDefragProcessDeletionQueueInternal(), C:\buildworker\csgo_rel_win64\build\src\rendersystem\vulkan\memorymgrvulkan.cpp:723
CNVReflexVulkan::LateWarpUpdateResolution(425):
COLOR0
COMMENT
COMMON
CPipelineManagerVulkan::LoadPipelineCache
CRC mismatch!\n
+CRayTraceOMMVulkan::CRayTraceOMMVulkan(1556):
CRayTracePipelineVulkan
CRayTracePipelineVulkan::CRayTracePipelineVulkan
+CRenderContextBase::LockDynamicConstantBuffer
CRenderContextBase::Present
CRenderContextVulkan:: Trying to resolve from a rect that is outside of the src rendertarget\n
CRenderContextVulkan::BeginImplicitRenderPass
@@ -642,70 +633,72 @@ CRenderContextVulkan::CopyTexture failed to get resource.\n
CRenderContextVulkan::EndQuery - BeginQuery failed, aborting!\n
CRenderContextVulkan::EndQuery - Issued on an in-progress query!\n
CRenderContextVulkan::ExecuteGeneratedCommands requires VK_EXT_device_generated_commands.\n
-CRenderContextVulkan::MarkIssuesCommands(445):
+CRenderContextVulkan::ForceFlushGPU(7157):
+CRenderContextVulkan::MarkIssuesCommands(447):
CRenderContextVulkan::PreprocessGeneratedCommands requires VK_EXT_device_generated_commands.\n
CRenderContextVulkan::QueuePolledBufferReadback - attempted to read invalid handle.\n
CRenderContextVulkan::QueuePresent
CRenderContextVulkan::ReadBuffer - attempted to read invalid handle.\n
CRenderContextVulkan::ReadBufferIndirect - attempted to read invalid handle.\n
CRenderContextVulkan::SemaphoreWaitAtBegin - already set semaphore to wait on, can't set another one.\n
-CRenderContextVulkan::WriteDataIntoTexture(6288): - invalid offset, aborting texture update to avoid hanging the GPU [texture: %s].\n
+CRenderContextVulkan::WriteDataIntoTexture(6406): - invalid offset, aborting texture update to avoid hanging the GPU [texture: %s].\n
CRenderContextVulkan_SoftwareCommandLists::CopyFromVolumeTexture failed to get resource.\n
CRenderContextVulkan_SoftwareCommandLists::CopyTexture failed to get resource.\n
CRenderContextVulkan_SoftwareCommandLists::SemaphoreWaitAtBegin - already set semaphore to wait on, can't set another one.\n
CRenderDeviceBase
-CRenderDeviceBase::AllocatePooledIndexBuffer(3626):
-CRenderDeviceBase::AllocatePooledIndexBuffer(3662):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3803):
-CRenderDeviceBase::AllocatePooledVertexBuffer(3834):
-CRenderDeviceBase::AsyncSetTextureData(3265):
-CRenderDeviceBase::BeginRenderingToSwapChain(3519):
-CRenderDeviceBase::CreateConstantBuffer(1571):
-CRenderDeviceBase::EndRenderDocCapture(3499):
-CRenderDeviceBase::FindOrCreateTexture(1713):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3638):
+CRenderDeviceBase::AllocatePooledIndexBuffer(3665):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3825):
+CRenderDeviceBase::AllocatePooledVertexBuffer(3847):
+CRenderDeviceBase::AsyncSetTextureData(3266):
+CRenderDeviceBase::BeginRenderingToSwapChain(3520):
+CRenderDeviceBase::CreateConstantBuffer(1573):
+CRenderDeviceBase::CreateConstantBufferInternal
+CRenderDeviceBase::EndRenderDocCapture(3500):
+CRenderDeviceBase::FindOrCreateTexture(1715):
CRenderDeviceBase::FindOrCreateTexture: Trying to load multiple mipmaps into 3d or array texture: %s\n
-CRenderDeviceBase::Flush(898):
-CRenderDeviceBase::ForceFlushGPU(915):
-CRenderDeviceBase::FreeTextureGPUResources(2025):
-CRenderDeviceBase::FreeTextureGPUResources(2029):
+CRenderDeviceBase::Flush(889):
+CRenderDeviceBase::ForceFlushGPU(914):
+CRenderDeviceBase::FreeTextureGPUResources(2032):
+CRenderDeviceBase::FreeTextureGPUResources(2036):
CRenderDeviceBase::InitPerFrameMemoryStack
-CRenderDeviceBase::Present(610):
-CRenderDeviceBase::StartRenderDocCapture(3486):
+CRenderDeviceBase::Present(601):
+CRenderDeviceBase::StartRenderDocCapture(3487):
CRenderDeviceVulkan::AllocateBufferInPool - invalid memory pool handle.\n
-CRenderDeviceVulkan::AllocateBufferInPool(10207): failed to allocate GPU memory in custom pool for %s.\n
-CRenderDeviceVulkan::AllocateBufferInPool(10262): vmaBindImageMemory failed for buffer %s with error %d.\n
+CRenderDeviceVulkan::AllocateBufferInPool(10036): vmaBindImageMemory failed for buffer %s with error %d.\n
+CRenderDeviceVulkan::AllocateBufferInPool(9981): failed to allocate GPU memory in custom pool for %s.\n
CRenderDeviceVulkan::AllocateStaticDescriptorSet: Failed to allocate descriptor set.\n
CRenderDeviceVulkan::AllocateTextureInPool - invalid memory pool handle.\n
-CRenderDeviceVulkan::AllocateTextureInPool(10029): vmaBindImageMemory failed for image %s with error %d.\n
-CRenderDeviceVulkan::AllocateTextureInPool(9885): Allocation already set for %s, it is not valid to assign a new allocation.\n
-CRenderDeviceVulkan::AllocateTextureInPool(9962): failed to allocate GPU memory in custom pool for %s.\n
+CRenderDeviceVulkan::AllocateTextureInPool(9659): Allocation already set for %s, it is not valid to assign a new allocation.\n
+CRenderDeviceVulkan::AllocateTextureInPool(9736): failed to allocate GPU memory in custom pool for %s.\n
+CRenderDeviceVulkan::AllocateTextureInPool(9803): vmaBindImageMemory failed for image %s with error %d.\n
CRenderDeviceVulkan::AllocateUpdateAfterBindDescriptorSet: Failed to allocate descriptor set.\n
-CRenderDeviceVulkan::BeginSubmittingDisplayLists(4564):
-CRenderDeviceVulkan::CreateDefaultBuffers(2557):
+CRenderDeviceVulkan::BeginSubmittingDisplayLists(4365):
+CRenderDeviceVulkan::CreateDefaultBuffers(2464):
CRenderDeviceVulkan::CreateDefaultShaders
CRenderDeviceVulkan::CreateDescriptorSet: Failed to create descriptor set.\n
CRenderDeviceVulkan::CreateIndirectCommandsPreprocessBuffer- invalid layout handle.\n
CRenderDeviceVulkan::CreateIndirectExecutionSet
-CRenderDeviceVulkan::CreateTLAS(7964):
-CRenderDeviceVulkan::DeleteQueryObject(4778):
+CRenderDeviceVulkan::CreateTLAS(7723):
+CRenderDeviceVulkan::DeleteQueryObject(4579):
CRenderDeviceVulkan::DestroyDeviceMemoryPool - invalid memory pool handle.\n
CRenderDeviceVulkan::DestroyIndirectCommandsLayout - invalid layout handle.\n
-CRenderDeviceVulkan::FreeBufferFromPool(10301): Unable to get Vulkan buffer.\n
-CRenderDeviceVulkan::FreeBufferFromPool(10307): no allocation for buffer %s.\n
+CRenderDeviceVulkan::FreeBufferFromPool(10075): Unable to get Vulkan buffer.\n
+CRenderDeviceVulkan::FreeBufferFromPool(10081): no allocation for buffer %s.\n
CRenderDeviceVulkan::FreeTextureFromPool - invalid memory pool handle.\n
-CRenderDeviceVulkan::FreeTextureFromPool(10061): Unable to get Vulkan image for %s.\n
-CRenderDeviceVulkan::FreeTextureFromPool(10067): no allocation for image %s.\n
-CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10403): Unable to get Vulkan buffer.\n
-CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10409): no allocation for buffer %s.\n
-CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10378): Unable to get Vulkan image for %s.\n
-CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10384): no allocation for image %s.\n
+CRenderDeviceVulkan::FreeTextureFromPool(9835): Unable to get Vulkan image for %s.\n
+CRenderDeviceVulkan::FreeTextureFromPool(9841): no allocation for image %s.\n
+CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10177): Unable to get Vulkan buffer.\n
+CRenderDeviceVulkan::GetDeviceMemoryBufferAllocationInfo(10183): no allocation for buffer %s.\n
+CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10152): Unable to get Vulkan image for %s.\n
+CRenderDeviceVulkan::GetDeviceMemoryTextureAllocationInfo(10158): no allocation for image %s.\n
CRenderDeviceVulkan::GetDeviceSpecificTexture
CRenderDeviceVulkan::GetDeviceSpecificTexture() failed to get texture data.\n
CRenderDeviceVulkan::InitDevice: failed to get queue properties\n
CRenderDeviceVulkan::InitDevice: no graphics queue found\n
CRenderDeviceVulkan::InitDevice: vkEnumerateDeviceExtensionProperties( ... ) failed.\n
CRenderDeviceVulkan::OnLowMemoryNotification - evicting all textures to reduce memory pressure.\n
-CRenderDeviceVulkan::ReadTexturePixels(4372):
+CRenderDeviceVulkan::ReadTexturePixels(4176):
CRenderDeviceVulkan::RebakeDescriptorSetsReferencing - could not allocate descriptor in new pool.\n
CRenderDeviceVulkan::SetHardwareGammaRamp failed to get swap chain.\n
CRenderDeviceVulkan::UpdateDescriptorSet: Failed to update descriptor set.\n
@@ -716,13 +709,13 @@ CRenderThreadVulkan::OnReadPixels not supported for MSAA depth. Requires shader
CSheetDataTextureCache::AllocateAndUploadSequenceData(582):
CSwapChainBase::QueuePresentAndWait() looped for %d iterations without a present event.\n
CSwapChainVulkan::CreateSwapChain
-CSwapChainVulkan::CreateSwapChain(3334):
+CSwapChainVulkan::CreateSwapChain(3179):
CSwapChainVulkan::CreateSwapChain::<lambda_2>::operator ()
CSwapChainVulkan::SwapBuffers
-CSwapChainVulkan::SwapBuffers vkAcquireNextImageKHR - completed result = %s\n
+CSwapChainVulkan::SwapBuffers vkAcquireNextImageKHR
CSwapChainVulkan::SwapBuffers(): the main thread is more than %d frames ahead which means no swap queue images are available. Waiting for outstanding frames...\n
CSwapChainVulkan::SwapBuffersRecreateSwapchain
-CTLASVulkan::CTLASVulkan(720):
+CTLASVulkan::CTLASVulkan(801):
CTSQueue<class CCommandBufferChunk *,0>::Push
CTSQueue<class CCommandStream *,0>::Push
CTSQueue<struct CFossilizeStateCreator::RegisteredShader_t,0>::Push
@@ -737,14 +730,13 @@ CTSQueue<struct VkFence_T *,0>::Push
CTSQueue<struct VkShaderModule_T *,0>::Push
CTextureManagerBase::AsyncHookUpTextureBits
CTextureManagerBase::LoadStreamingData
-CTextureManagerBase::MN_BuildRequestedResourcesList
CTextureManagerBase::MN_DeallocateCacheableData
CTextureManagerBase::MN_OnResourceFileLoaded
CTextureManagerBase::MN_OnResourceLoadCompleted
CTextureManagerBase::MN_OnResourceLoadFailed
CTextureManagerBase::MarkAsyncUpdatedThisFrame - Invalid texture handle.\n
CTextureManagerBase::RemoveTextureFromAnyQueues
-CTextureManagerVulkan::ComputeTextureObject(1438):
+CTextureManagerVulkan::ComputeTextureObject(1436):
CTextureManagerVulkan::ComputeTextureObject: Tried to create a depth-stencil texture which is *not* a render target!\n
CTextureStreamingHelper::LoadExplicitlyRequestedTextures
CTextureStreamingHelper::RemoveMipLevelsForTextures
@@ -782,19 +774,6 @@ CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __i
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator>::EnsureCapacity
CUtlLeanVectorBase<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator>::EnsureCapacity
CUtlQueue<struct VkSemaphore_T *,class CUtlLeanVector<struct CUtlQueueNode_t<struct VkSemaphore_T *>,int,class CMemAllocAllocator> >::RemoveAtTail
-CUtlRBTree<struct CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::Node_t,class CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CShaderVulkanBase const *,class CUtlLinkedList<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short,0,unsigned short,class CUtlLeanVector<struct UtlLinkedListElem_t<struct CFossilizeStateCreator::FossilizeShaderModule_t *,unsigned short>,unsigned short,class CMemAllocAllocator> > *,class CDefLess<class CShaderVulkanBase const *>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::CKeyLess,int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,class CUtlHashtable<class CDescriptorSetVulkan *,struct empty_t,struct DefaultHashFunctor<class CDescriptorSetVulkan *>,struct DefaultEqualFunctor<class CDescriptorSetVulkan *>,class CUtlLeanVector<class CUtlHashtableEntry<class CDescriptorSetVulkan *,struct empty_t>,int,class CMemAllocAllocator>,1> *,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,int>::Node_t,int>,int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::Node_t,class CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<class CWeakHandle<struct InfoForResourceTypeCTextureBase>,struct VulkanDeviceSpecificTexture_t,class CDefLess<class CWeakHandle<struct InfoForResourceTypeCTextureBase> >,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderDescriptorSetHandle_t__ *,struct VulkanDeviceSpecificDescriptorSet_t,class CDefLess<struct RenderDescriptorSetHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderRayTracePipelineHandle_t__ *,struct VulkanDeviceSpecificRayTracePipeline_t,class CDefLess<struct RenderRayTracePipelineHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::Node_t,class CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<struct RenderResourceHandle_t__ *,struct VulkanDeviceSpecificBuffer_t,class CDefLess<struct RenderResourceHandle_t__ *>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,class CSamplerStateDesc *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeComputePipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeDescriptorSetLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeGraphicsPipeline_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizePipelineLayout_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::CKeyLess,unsigned short,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeRenderPass_t *,class CDefLess<unsigned __int64>,unsigned short>::Node_t,unsigned short>,unsigned short,class CMemAllocAllocator> >::Insert
-CUtlRBTree<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,class CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::CKeyLess,unsigned int,class CUtlLeanVector<struct UtlRBTreeNode_t<struct CUtlOrderedMapBase<unsigned __int64,struct CFossilizeStateCreator::FossilizeShaderModule_t *,class CDefLess<unsigned __int64>,unsigned int>::Node_t,unsigned int>,unsigned int,class CMemAllocAllocator> >::Insert
CUtlStreamBuffer does not support TEXT_BUFFER's use CUtlBuffer\n
CVertexBufferVulkan::Allocate called with invalid buffer size = %s for buffer (%s).\n
CVfxProgramData::CalcDynamicComboIdFromValues
@@ -859,6 +838,7 @@ ComputeTextureSpecificationFromMipDelta Disk
ConsecutiveBadFaxLines
Copyright
Could not decode alpha data.
+CreateConstantBufferInternal
CreateEventW
CreateGPUBufferFormatted(%s)
CreatePipeline
@@ -933,8 +913,6 @@ Deleting texture with outstanding streaming request (%s)\n
Denoiser
Depth
DepthHighRes
-Descriptor pool allocation failed on available pool, reducing descriptors to attempt allocating in pool to %d\n
-Descriptor pool allocation failed, reducing descriptors to attempt allocating in pool to %d\n
Descriptor set layout
Desktop-friendly Fullscreen
DestroyAllDescriptorSetPools...\n
@@ -950,7 +928,7 @@ Disabling validation feature: %s\n
Discarding abandoned streaming texture load for %s\n
DispatchComputeShaderIndirect failed - invalid dispatch buffer.\n
DocumentName
-Don't support DXLevel < 100
+Don't support DXLevel < 110
DotRange
DrawIndexedInstancedIndirect failed - invalid drawarg buffer\n.
DrawInstancedIndirect failed - invalid drawarg buffer\n.
@@ -979,7 +957,6 @@ EXRReadFile() - R channel not found!\n
EXRReadFile() - cannot read image data!\n
Empty
Enable Software Command lists for Vulkan
-Enabling aggressive command pool rebalancing.\n
Enabling instance extension: %s.\n
Enabling validation feature: %s\n
Enabling validation layer: %s.\n
@@ -1160,7 +1137,6 @@ Group3Options
Group4Options
HEADER
HEX_DIGIT
-HI~Y
HLSL SM6.0 level subgroup wave ops supported, subgroup size = %d\n
HOST_CACHED
HOST_COHERENT
@@ -1178,13 +1154,8 @@ IMAGE_LINEAR
IMAGE_OPTIMAL
IMAGE_UNKNOWN
INFO :
-IOS_VULKAN
-IOS_VULKAN_4_0
-IOS_VULKAN_4_1
-IOS_VULKAN_5_0
ISO JBIG
IS_DIRECTX
-IS_MOBILE
IS_PC
IS_SM_
IS_VULKAN
@@ -1212,6 +1183,7 @@ Initialized NVIDIA Reflex for low latency.\n
Initializing streaming texture manager.\n
InkNames
InkSet
+Instrumenting subset of GPU-AV shaders %s\n
Insufficient data length.\n
Insufficient data size for attributes.\n
Insufficient data size in offset table.
@@ -1319,6 +1291,7 @@ Loaded video settings config from '%s'\n
Loading %ls succeeded
LocalAlloc
LocalizedCameraModel
+LockDynamicConstantBuffer
LogL16Decode: Not enough data at row %d (short %d pixels)
LogL16InitState
LogLuvDecode24: Not enough data at row %d (short %d pixels)
@@ -1328,7 +1301,6 @@ Logging to requested file (%S) enabled successfully
LowLatencySleep
MN_AddAsyncTextureBitsHookupJob Data
MN_AddAsyncTextureBitsHookupJob Disk
-MN_CacheRequestedResources
MN_OnResourceFileLoaded
MODES
MULTI_INSTANCE
@@ -1457,6 +1429,7 @@ NumberOfInks
NvLL_VK_Sleep vkLatencySleepNV error '%s'.\n
O8Mr
OCTAL_ESC
+OMM %s
OUTSTANDING_HOOKUP_REQUEST
OVER_BUDGET
Old-style JPEG
@@ -1477,10 +1450,6 @@ Output aborted.
Overall System GPU memory use:\n
Overflow of the sheet cache texture. Releasing and starting over. This is ok in asset browser, not so ok if the game is triggering this!\n
Overflow of the sheet cache texture: Try increasing SheetCacheTextureRows in gameinfo.gi (current value %d)!\n
-PC SM 4.0 (D3D10)
-PC SM 4.0 (VULKAN)
-PC SM 4.1 (D3D10.1)
-PC SM 4.1 (VULKAN)
PC SM 5.0 (D3D11)
PC SM 5.0 (VULKAN)
PC SM 6.0 (VULKAN)
@@ -1490,10 +1459,6 @@ PCLStatsInit
PCLStatsInput
PCLStatsShutdown
PCLStatsTraceLoggingProvider
-PC_SM_4_0
-PC_SM_4_0_VULKAN
-PC_SM_4_1
-PC_SM_4_1_VULKAN
PC_SM_5_0
PC_SM_5_0_VULKAN
PC_SM_6_0_VULKAN
@@ -1553,8 +1518,15 @@ Prints out stats for the Vulkan shader table
Query
QueryServiceStatus
RENDERDOC_GetAPI
+RENDER_BUFFER_DYNAMIC_ZERO_COPY
RESOURCE_TYPE_TEXTURE
RJqn
+RS_CMP_CLOSER
+RS_CMP_CLOSER_EQUAL
+RS_CMP_CLOSER_FARTHER_FLAG
+RS_CMP_FARTHER
+RS_CMP_FARTHER_EQUAL
+RS_CMP_FUNC_MASK
RTX\n
R_T5Y
Ran out of query slots.\n
@@ -1567,8 +1539,6 @@ RayReconstruction.Hint.Render.Preset.Quality
RayReconstruction.Hint.Render.Preset.UltraPerformance
RayReconstruction.Hint.Render.Preset.UltraQuality
RayTracingHitDistance
-Rebalancing command buffer pool for thread (%s). Has %d command buffers, rebalancing to size %d command buffers\n
-Rebalancing command buffer pools. Largest has %d command buffers, rebalancing to size %d command buffers\n
ReductionMatrix1
ReductionMatrix2
ReferenceBlackWhite
@@ -1591,15 +1561,12 @@ RenderDoc capture window '%s'.\n
RenderDoc is not active, did you forget to add -renderdoc to the command-line? Is RenderDoc installed?\n
RenderSystem
RenderSystem/AllowPartialMipChainImmediateTexLoads
-RenderSystem/GraphicsPipelineLibrary
RenderSystem/IndexBufferPoolSizeMB
RenderSystem/LowLatency
RenderSystem/MaxPreloadTextureResolution
-RenderSystem/MinDXLevel
RenderSystem/MinStreamingPoolSizeMB
RenderSystem/MinStreamingPoolSizeMBTools
RenderSystem/ReserveMemoryForNonTextureUseMB
-RenderSystem/SwapChainSampleableDepth
RenderSystem/SwapChainSampleableStencil
RenderSystem/Use32BitDepthBuffer
RenderSystem/Use32BitDepthBufferWithoutStencil
@@ -1612,6 +1579,7 @@ RenderSystem/VulkanDisableFossilizeLayer
RenderSystem/VulkanMinAPIVersion
RenderSystem/VulkanMutableSwapchain
RenderSystem/VulkanRequestSM6
+RenderSystem/VulkanRequireBarycentrics
RenderSystem/VulkanRequireComputeShaderDerivatives
RenderSystem/VulkanRequireDescriptorIndexing
RenderSystem/VulkanRequireFullGPURayTracing
@@ -1622,7 +1590,6 @@ RenderSystem/VulkanStagingPMBSizeLimitMB
RenderSystem/VulkanStagingPMBSizeLimitToolsMB
RenderSystem/VulkanSteamAppShaderCache
RenderSystem/VulkanSteamDownloadedShaderCache
-RenderSystem/VulkanSteamShaderCache
RenderSystem/VulkanUseExternalSubpassDependency
RenderTarget
Renderpass with invalid attachment reference. Attachment #%d Max: %d Has: %d. Rejecting.\n
@@ -1681,9 +1648,7 @@ STv/N
SUPPORTS_CS
SUPPORTS_GS
SV_Position
-S_BINDLESS_RUNTIME
S_EXECUTION_REORDERING
-S_MOBILE
S_MOLTEN_VK
S_REVERSE_DEPTH_BUFFER
S_SHADER_QUALITY
@@ -1701,12 +1666,13 @@ SceneSystem/Vulkan GPU Memory Visualizer
Seek error at scanline %lu
Setting max texture resolution to: %dx%d\n
Setting up field info failed
-Settubg validation duplicate_message_limit to %d\n
+Setting validation duplicate_message_limit to %d\n
Shader %s doesn't support compile target %s\n
Shader '%s' has more than the maximum number of samplers per stage (has: %d MAX: %d)\n
Shader '%s' has more than the maximum number of textures per stage (has: %d MAX: %d)\n
Shader '%s' has more than the maximum number of uniform blocks per stage (has: %d MAX: %d)\n
-Shader cache size %s exceeds limit %s, deleting cache to reset.
+Shader '%s' not compiled during level load, could result in runtime hitch. Missing RegisterDescriptorSetLayout(%s) for ExternalDescriptorSet?\n
+Shader cache size %s exceeds limit %s, deleting cache to reset.\n
Shader file version mismatch. Expected (%d), Got (%d).
Shader module
ShaderBindingTable
@@ -1746,6 +1712,7 @@ SuperSampling.FeatureInitResult
SuperSampling.MinDriverVersionMajor
SuperSampling.MinDriverVersionMinor
SuperSampling.NeedsUpdatedDriver
+Swap Chain Mode Changing:\n\tm_nVersion: %d -> %d\n\tm_DisplayMode:\n\t\tm_nVersion: %d -> %d\n\t\tm_nWidth: %d -> %d\n\t\tm_nHeight: %d -> %d\n\t\tm_Format: %d -> %d\n\t\tm_nRefreshRateNumerator: %d -> %d\n\t\tm_nRefreshRateDenominator: %d -> %d\n\t\tm_nFlags: 0x%X -> 0x%X\n\tm_nBackBufferCount: %d -> %d\n\tm_nMultisampleType: %d -> %d\n\tm_nModeUsage: %d -> %d\n\tm_bUseStencil: %d -> %d\n\tm_bWaitForVSync: %d -> %d\n\tm_bScaleToOutputResolution: %d -> %d\n\tm_bProgressive: %d -> %d\n\tm_bUsingMultipleWindows: %d -> %d\n\tm_bIsMainWindow: %d -> %d\n
SwapBuffers
SwapChainColorImage%d
SwapChainDepthImage
@@ -1844,7 +1811,6 @@ Total VMA ( %llu MB ) ( Free %llu MB )\n
TotalBytes
TransferFunction
TransparencyMask
-Trim descriptor pools when not in use for a number of frames.
Truncated header.
Trying registry key %ls in %ls
Trying to create a render target with invalid image format %s\n
@@ -1853,10 +1819,15 @@ Trying to set dxlevel (%d) which is lower than the card can support (%d)!\n
Type
UAVBarrier - requested barrier for more mip levels than are in the texture. Requested baseLevel: %d levelCount: %d (Actual levels: %d). Clamping to actual number of levels.\n
UNICODE_ESC
+UPSCALER_AMD_FSR2
+UPSCALER_AMD_FSR3
+UPSCALER_COUNT
+UPSCALER_INTEL_XESS
+UPSCALER_NONE
+UPSCALER_NVIDIA_DLSS
UUID mismatch in pipeline cache file. Deleting %s in order to regenerate it.\n
UUU?,
U\8h(
-U\tV_logd
Unable to create VkSurfaceKHR for invalid window handle.\n
Unable to create the DLSS feature : error code = 0x%08x, info: %s
Unable to determine texture heap size, assuming %llu MB.\n
@@ -1893,6 +1864,7 @@ UnusedRangeSizeMax
UnusedRangeSizeMin
UnusedRanges
UpdateExternalTexture called on unknown external texture '%s'\n
+UpscalerType_t
Usage
Usage: %s <window_name>
UsageBytes
@@ -1958,6 +1930,7 @@ VK_EXT_memory_priority
VK_EXT_mesh_shader
VK_EXT_multi_draw
VK_EXT_mutable_descriptor_type
+VK_EXT_opacity_micromap
VK_EXT_pageable_device_local_memory
VK_EXT_pipeline_creation_cache_control
VK_EXT_pipeline_robustness
@@ -1977,6 +1950,7 @@ VK_KHR_deferred_host_operations
VK_KHR_depth_stencil_resolve
VK_KHR_device_group_creation
VK_KHR_dynamic_rendering
+VK_KHR_fragment_shader_barycentric
VK_KHR_fragment_shading_rate
VK_KHR_get_memory_requirements2
VK_KHR_get_physical_device_properties2
@@ -2105,6 +2079,7 @@ VideoSuperResolution
Viewport
VirtualKey
VisibilityNodeMask
+VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromap not supported, disabling opacity micromaps.\n
VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.swapchainMaintenance1 not supported, disabling extension.\n
VkPhysicalDeviceVulkan11Features.variablePointers not supported, ConstBufferPointer<> will not work.\n
VkPipelineCacheHeaderVersion mismatch in pipeline cache file (Got: %d Expected: %d). Deleting %s in order to regenerate it.\n
@@ -2138,11 +2113,8 @@ Vulkan pipelines: %s; pipeline layouts: %s\n
Vulkan shader pipeline cache file version is %d instead of %d for %s. Deleting.\n
Vulkan swapchain does not support VK_IMAGE_USAGE_TRANSFER_DST_BIT. Upscaling desktop friendly fullscreen not supported.\n
Vulkan swapchain does not support VK_IMAGE_USAGE_TRANSFER_SRC_BIT. Screenshots not supported.\n
-Vulkan swapchain out-of-date, suboptimal, or surface lost - recreating. Result: (%s)\n
Vulkan swapchain recreated succesfully. Attempting to acquire next image...
Vulkan texture manager frame update
-Vulkan trim all command pools per frame enabed.\n
-Vulkan trim command pools on rebalancing threads enabed.\n
Vulkan using external subpass dependencies for all renderpasses.\n
WAITING_FOR_HOOKUP_JOB
WAITING_FOR_IO
@@ -2200,13 +2172,13 @@ ZIPVSetField
\n*** A feature alias in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A feature in %s doesn't start with "F_"! Aborting shader compile!\n\n
\n*** A static combo in %s doesn't start with "S_"! Aborting shader compile!\n\n
-\n*** CVfx::ParseBoolFromFile(6414): Error opening file "%s"!\n\n
-\n*** CVfx::ParseCombosAndRulesFromFileHelper(6603): Error opening file "%s"!\n\n
-\n*** CVfx::ParseDescriptionFromFile(6499): Error opening file "%s"!\n\n
-\n*** CVfx::ParseFeaturesFromFile(6100): Error opening file "%s"!\n\n
-\n*** CVfx::ParseIncludeFiles(6059): Error opening include file in features list"%s"!\n\n
-\n*** CVfx::ParseModesFromFile(5909): Error opening file "%s"!\n\n
-\n*** CVfx::ParseVersionFromFile(6460): Error opening file "%s"!\n\n
+\n*** CVfx::ParseBoolFromFile(6330): Error opening file "%s"!\n\n
+\n*** CVfx::ParseCombosAndRulesFromFileHelper(6519): Error opening file "%s"!\n\n
+\n*** CVfx::ParseDescriptionFromFile(6415): Error opening file "%s"!\n\n
+\n*** CVfx::ParseFeaturesFromFile(6016): Error opening file "%s"!\n\n
+\n*** CVfx::ParseIncludeFiles(5975): Error opening include file in features list"%s"!\n\n
+\n*** CVfx::ParseModesFromFile(5825): Error opening file "%s"!\n\n
+\n*** CVfx::ParseVersionFromFile(6376): Error opening file "%s"!\n\n
\n*** Combo "%s" in %s doesn't match a known combo source!\n\n
\n*** Combo "%s" in %s either does not follow the 0..N format, is not a valid dynamic combo name, or doesn't match an existing feature or mode argument!\n\n
\n*** Combo "%s" in %s has arg %s that doesn't match an existing feature!\n\n
@@ -2258,15 +2230,14 @@ ZIPVSetField
\n*** Unable to parse Version in HEADER section of %s!\n\n
\n*** Unknown rule "%s" in %s!\n\n
\n*** Unknown text found in FEATURES section in %s: "%s"\n\n
-\n*** VfxGetCompileTargetsFromVfxFile(1451): Error opening file "%s"!\n\n
-\n*** VfxGetUsedShaderProgramsFromVfxFile(1528): Error opening file "%s"!\n\n
+\n*** VfxGetCompileTargetsFromVfxFile(1369): Error opening file "%s"!\n\n
+\n*** VfxGetUsedShaderProgramsFromVfxFile(1446): Error opening file "%s"!\n\n
\nGetVfxDll(93): ERROR! Can't load %s dll, automatic RenderDoc shader debug info not available.\n
\nMS,\nVS_MS_RTX
\nPS_RENDER_STATE
\nRTX
\n\tCommand Buffer Labels - %d\n
\n\tObjects - %d\n
-\n\tV_atanf
\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r
\src\shaders\
\t@@@@@@@@@@@@@@@@{N{N{N{N{N{N{N{N
@@ -2277,8 +2248,9 @@ ZIPVSetField
\tRenderpass Count Count ( %d ): \n
\tThread (%s) Command Buffers (%d)\n
\tTotal Command Buffers (%d)\n
+\tV_ZSTD_decompress
\tV_atan2d
-\tV_expd
+\tV_atanf
\tV_strspn
\tV_strtoi64
\tV_strtoui64
@@ -2323,7 +2295,7 @@ _psrs
_rtx
_tools.txt
_wjb
-a\tV_powd
+`\tV_logd
addressModeU
addressModeV
addressModeW
@@ -2352,6 +2324,7 @@ bad conversion
bad partition length
basePipelineHandle
basePipelineIndex
+binary
binaryValue
bindingFlags
binormal
@@ -2581,10 +2554,10 @@ gl_LocalInvocationIndex
gl_WorkGroupID
gpuav_enable
gpuav_reserve_binding_slot
+gpuav_select_instrumented_shaders
+gpuav_shaders_to_instrument
graphicsPipelines
groups
-gs_4_0
-gs_4_1
gs_5_0
gs_6_0
hGT.
@@ -2596,9 +2569,6 @@ iInputColorResourceDimensions
iLumaMipDimensions
iLumaMipLevelToUse
iMaxRenderSize
-iOS SM 4.0 (VULKAN)
-iOS SM 4.1 (VULKAN)
-iOS SM 5.0 (VULKAN)
iRenderSize
immediate
immutableSamplers
@@ -2620,6 +2590,7 @@ invalid handle
invalid vector subscript
k*do^
k0V(
+l\tV_powd
layout
layoutBindingFlags
layoutBindings
@@ -2689,6 +2660,7 @@ nResult = vmaCreatePool( m_pVmaAllocator, &poolCreateInfo, &allocInfo.pool )
nResult = vmaCreatePool( m_pVmaAllocator, &poolCreateInfo, &pNewPool )
nSemaphoreIndex < static_cast< int32 >( m_nSwapQueueImageCount )
nSemaphoreIndex >= 0
+newDescriptorSetPool.m_nLastAllocResult = vkAllocateDescriptorSets( m_pDeviceVulkan, &allocInfo, &pNewDescriptorSet )
ngx::util::logva
ngx::util::setLogFilename
no memory during frame initialization.
@@ -2737,7 +2709,6 @@ primitiveRestartEnable
printf_enable
provokingVertexMode
ps_4_0
-ps_4_1
ps_5_0
ps_6_0
pseudo-
@@ -2782,7 +2753,6 @@ r_vma_defrag_moves_per_frame
r_vma_defrag_threshold_mb
r_vulkan_force_sync1
r_vulkan_sw_cmd_lists
-r_vulkan_trim_descriptor_pools
r_vulkan_validation_filter_in
r_vulkan_validation_filter_out
raB3G
@@ -2866,16 +2836,11 @@ screenWindowWidth
secure exception triggered - invalid parameter - %ls:%d:%ls:%ls\n
setLayouts
setting.
-setting.CentroidHack
setting.DXLevel
setting.DisableShaderOptimizations
setting.HasBrokenPipelineStats
setting.MaxDXLevel
setting.MinDXLevel
-setting.PreferHardwareSync
-setting.PreferTexturesInHWMemory
-setting.PreferZPrepass
-setting.SuppressPixelShaderCentroidHackFixup
setting.Unsupported
setting.knowndevice
setting.maxdxlevel
@@ -3014,7 +2979,6 @@ vkAcquireWinrtDisplayNV
vkAllocateCommandBuffers
vkAllocateCommandBuffers( m_pDeviceVulkan, &cmdBufferCreateinfo, &pCmdBuffer )
vkAllocateDescriptorSets
-vkAllocateDescriptorSets( m_pDeviceVulkan, &allocInfo, &pCurrentDescriptorSetPool->m_ppDescriptorSets[ pCurrentDescriptorSetPool->m_nCurrentDescriptorSet - 1 ] )
vkAllocateMemory
vkAntiLagUpdateAMD
vkBeginCommandBuffer
@@ -3376,6 +3340,7 @@ vkCreateIndirectExecutionSetEXT( m_pDeviceVulkan, &indirectExecutionSetCreateInf
vkCreateInstance
vkCreateInstance failed, unable to create instance.\n
vkCreateMicromapEXT
+vkCreateMicromapEXT( m_pDevice, &micromapCreateInfo, nullptr, &m_pMicromap )
vkCreateOpticalFlowSessionNV
vkCreatePipelineBinariesKHR
vkCreatePipelineCache
@@ -3472,6 +3437,7 @@ vkDestroyValidationCacheEXT
vkDestroyVideoSessionKHR
vkDestroyVideoSessionParametersKHR
vkDeviceWaitIdle
+vkDeviceWaitIdle( VulkanDevice() )
vkDeviceWaitIdle( m_pDeviceVulkan )
vkDisplayPowerControlEXT
vkEndCommandBuffer
@@ -3702,7 +3668,7 @@ vkInitializePerformanceApiINTEL
vkInvalidateMappedMemoryRanges
vkLatencySleepNV
vkMapMemory
-vkMapMemory( m_pDeviceVulkan, pNewMemoryPool->m_pGPUMemory, 0, pNewMemoryPool->m_nPoolSize, 0, (void**)&pNewMemoryPool->m_pMappedBuffer )
+vkMapMemory( m_pDeviceVulkan, pNewMemoryPool->m_pGPUMemory, 0, pNewMemoryPool->m_nPoolSize, 0, ( void ** ) &pNewMemoryPool->m_pMappedBuffer )
vkMapMemory2KHR
vkMergePipelineCaches
vkMergeValidationCachesEXT
@@ -3712,7 +3678,6 @@ vkQueueEndDebugUtilsLabelEXT
vkQueueInsertDebugUtilsLabelEXT
vkQueueNotifyOutOfBandNV
vkQueuePresentKHR
-vkQueuePresentKHR failed with error %d\n
vkQueueSetPerformanceConfigurationINTEL
vkQueueSubmit
vkQueueSubmit( VulkanQueue(), 1, &submitInfo, VK_NULL_HANDLE )
@@ -3792,7 +3757,6 @@ vmaCreatePool failed with error: %d\n
vmaMapMemory( GetVmaAllocator(), asyncReadback.m_pVmaAllocation, &pLockedData )
vma_memdump%d.json
vs_4_0
-vs_4_1
vs_5_0
vs_6_0
vulkan-1.dll
game/bin/win64/resourcecompiler.exe_strings.txt
modified • +3 / -2 • changes: 5
Show patch
@@ -3,15 +3,16 @@
%s (binlaunch): Can't get interface %s from from %s\n\n
%s (binlaunch): No dot character in the filename.\n
%s (binlaunch): Unable to find game\bin directory anywhere up the tree from %s.\n
-%s (binlaunch): Unable to load module %s, error %ld\n\n
+%s (binlaunch): Unable to load module '%s', error %lu\n\n
.CRT$XCAA
.CRT$XIAA
.CRT$XIAC
2\vp(x
-C:\buildworker\csgo_rel_win64\build\_build_\utils\binlaunch\_vpc_binlaunch\default\win64\_msvc_\Retail\binlaunch.pdb
+C:\buildworker\csgo_rel_win64\build\_build_\utils\resourcecompiler\_vpc_resourcecompiler_launch\default\win64\_msvc_\Retail\resourcecompiler_launch.pdb
GetFileAttributesA
PATH
PATH=%s;%s
+RSDSr
\nPl8
launchable_dll_1
local_AppendSlash: ran out of space on %s.
game/bin/win64/resourcecompiler_strings.txt
modified • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/resourcecopy.exe_strings.txt
modified • +13 / -12 • changes: 25
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/resourceinfo.exe_strings.txt
modified • +458 / -303 • changes: 761
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/resourcesystem_strings.txt
modified • +16 / -10 • changes: 26
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/scenefilecache_strings.txt
modified • +143 / -42 • changes: 185
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/scenesystem_strings.txt
modified • +148 / -435 • changes: 583
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/schemasystem_strings.txt
modified • +8 / -11 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/soundsystem_strings.txt
modified • +435 / -132 • changes: 567
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/source1import.exe_strings.txt
modified • +672 / -582 • changes: 1254
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/steamaudio_strings.txt
modified • +42 / -21 • changes: 63
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/steamnetworkingsockets_strings.txt
modified • +29 / -18 • changes: 47
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/subtools/convarhelper_subtool_strings.txt
modified • +443 / -4 • changes: 447
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/subtools/dashboard_subtool_strings.txt
modified • +0 / -2 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/subtools/netgraph_subtool_strings.txt
modified • +5 / -3 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/subtools/soundviewer_subtool_strings.txt
modified • +10 / -8 • changes: 18
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/subtools/vprof_subtool_strings.txt
modified • +5 / -4 • changes: 9
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/sycl7_strings.txt
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tier0_strings.txt
modified • +72 / -67 • changes: 139
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/toolframework2_strings.txt
modified • +150 / -68 • changes: 218
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/cs2_item_editor_strings.txt
modified • +87 / -113 • changes: 200
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/cs2_workshop_manager_strings.txt
modified • +4 / -3 • changes: 7
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/hammer_strings.txt
modified • +710 / -579 • changes: 1289
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/met_strings.txt
modified • +138 / -112 • changes: 250
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/modeldoc_editor_strings.txt
modified • +571 / -234 • changes: 805
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/pet_strings.txt
modified • +454 / -165 • changes: 619
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/postprocessingeditor_strings.txt
modified • +137 / -124 • changes: 261
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/sfm_strings.txt
modified • +238 / -370 • changes: 608
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/tools/subrecteditor_strings.txt
modified • +11 / -11 • changes: 22
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/toolscenenodes_strings.txt
modified • +423 / -258 • changes: 681
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/v8_icui18n_strings.txt
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/v8_icuuc_strings.txt
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/v8_strings.txt
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/v8system_strings.txt
modified • +3 / -0 • changes: 3
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/valve_avi_strings.txt
modified • +0 / -4 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/valve_webm_strings.txt
modified • +6 / -4 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/valve_wmf_strings.txt
modified • +1 / -4 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vconcomm_strings.txt
modified • +13 / -3 • changes: 16
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vconsole2.exe_strings.txt
modified • +421 / -453 • changes: 874
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vfx_dx11_strings.txt
modified • +21 / -46 • changes: 67
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/video64_strings.txt
modified • +1 / -0 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/visbuilder_strings.txt
modified • +28 / -30 • changes: 58
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vphysics2_strings.txt
modified • +106 / -49 • changes: 155
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vrad3.exe_strings.txt
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vrad3_strings.txt
modified • +565 / -221 • changes: 786
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/vscript_strings.txt
modified • +4 / -8 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/bin/win64/worldrenderer_strings.txt
modified • +23 / -25 • changes: 48
No patch available (GitHub often omits patches for large/binary diffs).
game/core/ai_basenpc.fgd
modified • +2 / -12 • changes: 14
No patch available (GitHub often omits patches for large/binary diffs).
game/core/ai_defaultnpc.fgd
modified • +15 / -37 • changes: 52
No patch available (GitHub often omits patches for large/binary diffs).
game/core/base.fgd
modified • +56 / -185 • changes: 241
No patch available (GitHub often omits patches for large/binary diffs).
game/core/cfg/sfm_default_animation_groups.vcfg
modified • +2 / -1 • changes: 3
No patch available (GitHub often omits patches for large/binary diffs).
game/core/lights2.fgd
modified • +12 / -12 • changes: 24
No patch available (GitHub often omits patches for large/binary diffs).
game/core/models_base.fgd
modified • +11 / -6 • changes: 17
No patch available (GitHub often omits patches for large/binary diffs).
game/core/models_base_breakables.fgd
modified • +32 / -9 • changes: 41
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir.txt
modified • +89 / -85 • changes: 174
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/panorama/styles/popups/popup_manager.css
modified • +0 / -5 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/panorama/styles/tooltips/tooltip_base.css
modified • +40 / -0 • changes: 40
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/resource/toolhelp_particles_english.txt
modified • +2 / -0 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/resource/valve_english.txt
modified • +1 / -26 • changes: 27
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/scripts/replay_compatability_settings.txt
modified • +1 / -0 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/scripts/tools/animgrapheditor/graph_view_styles.vdata
modified • +17 / -0 • changes: 17
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/scripts/tools/pulse_scene_styles_v2.vdata
modified • +120 / -19 • changes: 139
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/soundevents/soundevents_diagnostics.vsndevts
modified • +57 / -9 • changes: 66
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/soundstacks/beatpattern_manager.vdata
added • +6 / -0 • changes: 6
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/soundstacks/soundstacks_core.vsndstck
modified • +0 / -35 • changes: 35
No patch available (GitHub often omits patches for large/binary diffs).
game/core/pak01_dir/soundstacks/soundstacks_diagnostics.vsndstck
modified • +132 / -2 • changes: 134
No patch available (GitHub often omits patches for large/binary diffs).
game/core/readonly_tools_asset_info.txt
modified • +13 / -10 • changes: 23
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_pc_dir.txt
modified • +389 / -398 • changes: 787
No patch available (GitHub often omits patches for large/binary diffs).
game/core/shaders_vulkan_dir.txt
modified • +407 / -418 • changes: 825
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/demoinfo2/demoinfo2.txt
modified • +5 / -1 • changes: 6
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/common/asset_euro.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/common/asset_industrial.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/common/not_shipping.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/hammer/attach_follow_hierarchy.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/hammer/entityio_parameter_passthrough.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/hammer/property_linked_but_not_allowed.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/hammer/property_linked_but_not_allowed_hover.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/modeldoc_editor/outliner_icon_dnaanimfile.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/modeldoc_editor/outliner_icon_dnarig.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/modeldoc_editor/outliner_icon_dnarig_list.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/pet/float_cp_set.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/pet/gpu_particles_on.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/pet/gpu_particles_on_unsupported.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/postprocessingeditor/layer-local-exposure.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/propertyeditor/eye_hidden.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/images/propertyeditor/eye_visible.png
added • +0 / -0 • changes: 0
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/keybindings/hammer_key_bindings.txt
modified • +5 / -0 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/keybindings/modeldoc_editor_key_bindings.txt
modified • +1 / -0 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/core/tools/keybindings/shared_tool_key_bindings.txt
modified • +1 / -0 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/core/vdata_base.fgd
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/bin/win64/client_strings.txt
modified • +1743 / -1324 • changes: 3067
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/bin/win64/host_strings.txt
modified • +24 / -41 • changes: 65
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/bin/win64/matchmaking_strings.txt
modified • +29 / -62 • changes: 91
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/bin/win64/modtools_strings.txt
modified • +278 / -99 • changes: 377
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/bin/win64/server_strings.txt
modified • +2074 / -1218 • changes: 3292
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/cfg/gamemode_competitive.cfg
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/csgo.fgd
modified • +2 / -0 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/gameinfo.gi
modified • +10 / -9 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/import_scripts/bin/tier0_strings.txt
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/import_scripts/bin/vstdlib_strings.txt
modified • +0 / -2 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir.txt
modified • +3449 / -2748 • changes: 6197
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/gamemodes.txt
modified • +249 / -30 • changes: 279
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/items/inventory_image_data.vdata
modified • +0 / -48 • changes: 48
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/maps/editor/zoo/scripts/setup.js
modified • +11 / -1 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/maps/workshop_compatibility_versions.txt
modified • +16 / -0 • changes: 16
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/base_globalpanels.xml
added • +6 / -0 • changes: 6
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/buymenu.xml
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/chat.xml
modified • +4 / -4 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/color_picker.xml
added • +12 / -0 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/color_picker_hue.xml
added • +10 / -0 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/color_picker_saturation_value.xml
added • +10 / -0 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/endofmatch-rank.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/endofmatch-win.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/endofmatch.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/friendslist.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/friendtile.xml
modified • +3 / -5 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/honor_icon.xml
modified • +1 / -3 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hud.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/huddeathnotice.xml
modified • +3 / -3 • changes: 6
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/huddeathpanel.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudhealthammocenter.xml
modified • +4 / -3 • changes: 7
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudprogressbar.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudreticle.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudteamcounter.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudweaponselection.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/hud/hudwinpanel.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/leaderboard.xml
modified • +2 / -3 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/mainmenu.xml
modified • +2 / -1 • changes: 3
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/mainmenu_play.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/matchinfo.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/player_stats_card.xml
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/playercard.xml
modified • +2 / -3 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/popups/popup_directchallenge_join.xml
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboard_namelock.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/popups/popup_leaderboards.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/popups/popup_offers_laptop_interface.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/popups/popup_premier_pick_ban.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/scoreboard.xml
modified • +5 / -6 • changes: 11
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/scoreboard_owner.xml
added • +11 / -0 • changes: 11
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/simple_player_tile.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/teamintromenu.xml
modified • +2 / -3 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/teamselectmenu.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/vanity_player_info.xml
modified • +2 / -3 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/layout/vanityloadout_inspect.xml
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/common/formattext.js
modified • +4 / -7 • changes: 11
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/endofmatch-rank.js
modified • +5 / -14 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/endofmatch-win.js
modified • +10 / -9 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/friendlobby.js
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/friendtile.js
modified • +3 / -6 • changes: 9
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/hud/hudwinpanel.js
modified • +1 / -1 • changes: 2
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/inspect.js
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/leaderboard.js
modified • +4 / -8 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/mapdraft.js
modified • +9 / -10 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/mock_adapter.js
modified • +0 / -1 • changes: 1
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/party.js
modified • +4 / -8 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/player_stats_card.js
modified • +2 / -6 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/playercard.js
modified • +4 / -9 • changes: 13
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/popups/popup_inspect_action-bar.js
modified • +2 / -2 • changes: 4
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/scoreboard.js
modified • +996 / -527 • changes: 1523
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/teamintromenu.js
modified • +8 / -11 • changes: 19
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/scripts/vanity_player_info.js
modified • +4 / -8 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/color_picker.css
added • +39 / -0 • changes: 39
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/csgostyles.css
modified • +8 / -0 • changes: 8
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/hud/hud.css
modified • +0 / -5 • changes: 5
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/hud/hudhealthammocenter.css
modified • +63 / -4 • changes: 67
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/popups/popup_offers_laptop_interface.css
modified • +8 / -2 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/panorama/styles/scoreboard.css
modified • +8 / -2 • changes: 10
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/pulse/csgo_devonly/de_inferno_script.vpulse
modified • +77 / -39 • changes: 116
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/pulse/csgo_devonly/de_nuke_script.vpulse
modified • +77 / -39 • changes: 116
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/pulse/csgo_devonly/de_overpass_script.vpulse
modified • +80 / -42 • changes: 122
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/pulse/csgo_devonly/de_train_script.vpulse
modified • +38 / -32 • changes: 70
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/pulse/csgo_devonly/de_vertigo_script.vpulse
modified • +138 / -61 • changes: 199
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/resource/csgo_english.txt
modified • +465 / -104 • changes: 569
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/resource/mod.gameevents
modified • +3 / -0 • changes: 3
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/resource/toolhelp_cs2_item_editor_english.txt
modified • +20 / -1 • changes: 21
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/scripts/items/items_game.txt
modified • +1765 / -29 • changes: 1794
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/scripts/soundmixers.txt
modified • +87 / -2 • changes: 89
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/soundevents/game_sounds_footsteps.vsndevts
modified • +38 / -18 • changes: 56
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/soundevents/game_sounds_weapons.vsndevts
modified • +878 / -0 • changes: 878
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/soundstacks/soundstacks_csgo_mega.vsndstck
modified • +197 / -50 • changes: 247
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/pak01_dir/soundstacks/soundstacks_csgo_surf.vsndstck
modified • +8 / -1 • changes: 9
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/readonly_tools_asset_info.txt
modified • +727 / -21 • changes: 748
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_pc_dir.txt
modified • +213 / -206 • changes: 419
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/shaders_vulkan_dir.txt
modified • +238 / -231 • changes: 469
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo/steam.inf
modified • +6 / -6 • changes: 12
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_community_addons/cs_shelter/cs_shelter_dir.txt
added • +1042 / -0 • changes: 1042
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_community_addons/de_boulder/de_boulder_dir.txt
added • +2861 / -0 • changes: 2861
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_community_addons/de_debris/de_debris_dir.txt
added • +400 / -0 • changes: 400
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_community_addons/de_eldorado/de_eldorado_dir.txt
added • +356 / -0 • changes: 356
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_community_addons/de_fachwerk/de_fachwerk_dir.txt
added • +2120 / -0 • changes: 2120
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/gameinfo.gi
modified • +13 / -11 • changes: 24
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_pc_dir.txt
modified • +121 / -121 • changes: 242
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_core/shaders_vulkan_dir.txt
modified • +137 / -137 • changes: 274
No patch available (GitHub often omits patches for large/binary diffs).
game/csgo_lv/readonly_tools_asset_info.txt
modified • +9 / -0 • changes: 9
No patch available (GitHub often omits patches for large/binary diffs).
game/thirdpartylegalnotices.txt
modified • +0 / -210 • changes: 210
No patch available (GitHub often omits patches for large/binary diffs).