7 stories · 1 update

LibEdit dropped from Linux SRCDS; Mesh:DrawSkinned 52-bone error fixed

Commit 291b48 on main removes the LibEdit dependency (SRCDS input on Linux now works like on the x86-64 beta), fixes Linux32 SRCDS under WSL and fixes a wrongful error in Mesh:DrawSkinned with 52 bones.

Details
  • "MixMax 2: Electric Boogaloo"
  • LibEdit dependency removed; minor cosmetic changes to srcds_run
  • Fixed Linux32 SrcDS being unable to read file stats under WSL
  • Fixed wrongful error with Mesh:DrawSkinned with 52 bones
  • Folder addons are no longer searched in mountable games/platform
  • "Engine Error" added to the Sys_Error_Internal printf
  • Progress on Linux64 builds

nighty on LuaJIT versions, a lua_shared fork and Jolt physics

In #developer-talk, nighty said the main branch uses LuaJIT 2.0.4 and the x86-64 beta uses LuaJIT 2.1 beta 3. Zaurzo added that 64-bit main uses the same LuaJIT as x86-64. nighty described his lua_shared fork: it targets a custom language but should run existing GMod Lua exactly like stock, and isn't public yet. Its threading is worker-based, with message passing between separate Lua states. He also showed Jolt physics experiments.

DrawTexturedRectUV change breaks RNDX-based UIs on dev

In #next-update, Zaurzo reported his UI broken on dev. Rubat said it's likely the surface.DrawTexturedRectUV change, and Zaurzo confirmed that was the cause, since RNDX uses the function. He will fix his copy of RNDX, and suggested the new behaviour may need to go behind an argument since it's "already starting to break shit".

Details

The thread turned to RNDX's author: puffy asked whether Srlion still works on his GMod projects, Nykez said "no, he quit", and Astralcircle noted he left the GMod Discord too.

Artemking4 argues Mesh:DrawSkinned should allow bone 0

In #next-update, Artemking4 said IMesh:DrawSkinned can't use all 53 matrices: it's off by one and wrongly errors on the last bone. Rubat replied that matrix 0 is reserved by the engine as far as he remembers, so DrawSkinned gets 1–52. In his tests, setting matrix 0 did nothing or caused issues. Artemking4 disagreed: bone 0 is a normal bone that also serves as the model matrix for unskinned vertices, and his patched client.dll renders models almost perfectly with it.