• Dynamic PVS adding with a lot of players.
    0 replies, posted
I'm currently working on a "Camera" System using render.RenderView. For this to work i need to add PVS for the places where my cameras are. This seemed to work but when placed on a server with a lot of players it seemed to create crashes: The end of the console log reads: ``` [16:31:00] area(1==50462976, 2==18) >= numareas (36):  Check if engine->ResetPVS() was called from ClientSetupVisibility [16:31:00] Segmentation fault (core dumped) [16:31:00] cat: hlds.8.pid: No such file or directory [16:31:00] email debug.log to linux@valvesoftware.com [16:31:00] Tue Feb  5 16:31:00 UTC 2019: Server Quit ``` My Code: ```lua hook.Add("SetupPlayerVisibility", "EGMRPHolocam.PVSVisibility", function(ply, viewEntity)     local cameras = EGMRPHolocam:GetCamerasInRange(ply:GetPos())     for _, cameraId in pairs(cameras) do         local camera = ents.GetByIndex(cameraId)         if IsValid(camera) then             local pos = camera:GetPos()             if not util.IsInWorld(pos) then continue end             if ply:TestPVS(pos) then continue end             AddOriginToPVS(pos)         end     end end) ``` This was the code i used. In our full server enviroment (~80-90 Players) there were about 20 cameras max being returned for the "EGMRPHolocam:GetCamerasInRange" Function. It seemed to work for some time but random crashes did happen a few times until we removed the Addon. Does anyone have any ideas how to prevent those pesky crashes while still implementing this feature?
Sorry, you need to Log In to post a reply to this thread.