More VPROF nodes for PhysFrame
wrefgtzweve asked for more VPROF nodes in PhysFrame, often a top-5 cost. Done on 19 October (commit 280e7a).
wrefgtzweve asked for more VPROF nodes in PhysFrame, often a top-5 cost. Done on 19 October (commit 280e7a).
In #next-update, a straight white male criticized the warning shown every time a player fails to spawn a prop, entity or weapon (from a commit on 28.08), arguing that the failed spawn is indication enough and that servers run prop placement scripts. Albino said it pops up even with tips turned off. Later the same day, a straight white male added that the code calls the popup with GAMEMODE:AddNotify with no checks.
In #next-update, Cynthia listed functions missing from the menu state on dev: Angle, CreateMaterial, GetLoadPanel, HTTP, http, LerpAngle, LerpVector, OrderVectors, UpdateLoadPanel and Vector. Rubat confirmed it and said the change wasn't silent: the changelog states "Remove some unused libs from menu state". He added that the wiki shouldn't list menu state functions at all, since the menu state isn't meant for modding. On GitHub, kila58's issue "CreateMaterial missing from menu state" was closed as not planned.
In #developer-talk, Callum showed GMod's main menu fully recreated with VGUI. He said VGUI will always be a little slower but it's fine for a main menu: about 300 FPS on the DarkRP server list versus 500 with HTML. Akiko noted that one upside of the HTML menu is it immediately shows when the HTML backend is broken.
Commits aa4090 and bda422 on main move the build toolchain to GCC 14 and try to add the file path to CWin32ReadOnlyFile::FS_fread warnings.
In #developer-talk, mage.tearz noticed that updated content addons no longer ship .sw.vtx files because gmad blacklists them, and the server console shows missing .vtx errors. Redox explained that .sw.vtx isn't used by GMod, which is why it's blacklisted. Astralcircle asked for .dx80.vtx to be blacklisted too; WinterPhoenix replied the counter-argument will be RTX Remix.
wrefgtzweve suggested that a per-player max networking range could be done by checking distance in CServerGameEnts::CheckTransmit before IsInPVS.
In #next-update, Redox asked Rubat for it before the next update, saying it allows a big client FPS and server tick boost; Astralcircle said his server already uses a PVS-culling client fog and called it a lifesaver for open maps. Nykez asked how it plays with pop-in.
wrefgtzweve asked to improve the ERROR_HANDLE_EOF when reading file warning, which doesn't say which file fails. robotboy655 said he'd try to get the path via the Win32 API; commit aa4090 tries to add it.
wrefgtzweve reported that NPCs measure melee distance to an object's center rather than its OBB, so large objects make melee NPCs such as antlions just stand around.
In #lua-help, full metal sergeant 228 asked whether there's a better way to do controllable textures, since he heard the default matproxy library is very slow, and noted LVS creates a material per entity. Artemking4 suggested instancing a material per usage from a base material and changing only what's needed. Asked by TankNut how slow matproxy must be for that to be the alternative, he said creating materials is "dirt cheap" because they are just containers for shader inputs.
In #developer-talk, Nak showed his LuaOS running DOOM at decent resolution with sound. A JIT-friendly self-patching block cache took it from 0.9M to 8M instructions per second; later a GTA beta loaded.
In #lua-help, 0d9b reported that util.JSONToTable turns strings that look like vectors into vectors even when called with ignoreConversions set to true. He asked whether this is intended, calling a JSON parser that mangles the output without an option to keep the original values "a bit useless for... parsing json". Artemking4 said he prefers MessagePack.
In #developer-talk, TankNut described problems with his physics-driven mech: movement is unpredicted, so multiplayer feels slow, and hook order breaks things because the mech moves in PhysicsUpdate after its turrets update in PlayerPostThink/Think. He added that the biggest problem in recreating player movement is that Lua has no equivalent of entity->PhysicsImpact, though ApplyForceOffset might be enough. He later said it may matter less, since it seems to be only for touch-related things.