branchsbox/gpu-occlusion-culling2cancel

9 Commits over 0 Days - ∞cph!

48 Minutes Ago
Fix undo for envmap probe bounds Fixes sbox-issues/issues/7181 Fix TreeView not passing skipEvents fully, trigger ItemsSelected at end - fixes Facepunch/sbox-issues#6845 Santa Outfit (#1743) Wipe my ass layer doing nothing Unused Occlusion query layer Remove r_tiled_rendering toggle, it is a requirement of any forward+ pipeline Tiled culling in managed render pipeline Depth only prepass very likely doesn't need lighting constants Lightbinner layer managed Fix ObjectHighlight.shader Make sure turning direct/indirect lighting off still works on managed lightbinner layer memdbgon.h doesn't belong in a .h file Santa jacket/trousers lods (citizen version) Searching by filename with extension will test correctly with assets too, fixes Facepunch/sbox-issues#7174 Navigate to project root instead of selecting engine asset when ShowBaseContent is disabled, fixes Facepunch/sbox-issues#7175 Move 'Show Base Content' toggle to asset browser toolbar so people stop acting like I've stolen their car keys https://files.facepunch.com/solw/2024/December/17_16-46-AquamarineHound.png Humans: add temporary intercardinal movement animations derived from offset cardinal directions + use new mixed animgraph setup Santa jacket/trousers lods (human version) Allow AssetType to get all file extensions, primary and additional Remove hacky fix for image extension tags, do it properly Make this readonly list so it can't be fucked with Santa jacket uses neck_clothing bone to minimise twist deformation Get safer sceneobject bounds, return zero size bounds for infinite sceneobject bounds - getting infinite bounds is not desired There's a typo here in ModelRenderer.LocalBounds Add TagsControlWidget Don't use bind system for these control widgets, feels like the old way of doing things Can now drag one or multiple entries directly onto the "+" button in a List instead of having to create the entries and drag individually. Resolves Facepunch/sbox-issues#7197 https://files.facepunch.com/CarsonKompon/2024/December/18_08-58-FocusedMassasauga.mp4 Support non-array drags on ListControlWidget since not all widgets use arrays for single asset drags vmdl will add animations as a proper source dependency, so they get uploaded ( #1741 ) Fix possible NRE in PathWidget ListControlWidget now supports multiedit, only showing matching indexes Add and Remove buttons now work when MultiEditing a List Added support for re-ordering lists during a Multiselect https://files.facepunch.com/CarsonKompon/2024/December/18_11-03-AjarBaiji.mp4 Right Click -> Duplicate now works on Multiselect Lists Merge branch 'master' into gpu-occlusion-culling2
1 Hour Ago
Make culling faster & more accurate by bailing early if we know any corner is visible, use local model bounds converted to world https://files.facepunch.com/alexguthrie/1b1811b1/sbox-dev_zt7IOESilA.mp4
3 Hours Ago
Clean up, only apply culling if enabled https://files.facepunch.com/alexguthrie/1b1811b1/sbox-dev_f0PdSpDS9b.mp4
4 Hours Ago
Cache all gameobject bounds, fit parent bounds to children Readback runs callback, applies culling to sceneobject (tho we should really apply this per-view) Rather than clamping to viewport, if all corners of bbox are off-screen, cull the object
Yesterday
Clean up
Yesterday
Flush
Yesterday
Cache GameObject bounds Fix a few things inside occlusion culling render layer Wrap occlusion objects inside a record Remove more native occlusion culling stuff
Yesterday
Initial Use spheres so we only have to send a single list of vec4s over Gather objects Split logic into COcclusionCullingStandard Change order, gather correctly, readback, count visible + culled objects Reject occluded objects, tweak gather & shader Improved gather, only select the objects we want Shader re-write, output object depth and buffer depth for debug Put debug spew behind convar, tweak shader Tidy up, add CSceneObjectCullingData, add user-controllable per-camera toggle for occlusion culling Stash shader before I re-write to use AABB Switch to using bboxes for slightly more accurate results, hi-z mip checks Start moving all this over to managed, we can benefit from various things here
2 Days Ago
Initial Use spheres so we only have to send a single list of vec4s over Gather objects Split logic into COcclusionCullingStandard Change order, gather correctly, readback, count visible + culled objects Reject occluded objects, tweak gather & shader Improved gather, only select the objects we want Shader re-write, output object depth and buffer depth for debug Put debug spew behind convar, tweak shader Tidy up, add CSceneObjectCullingData, add user-controllable per-camera toggle for occlusion culling Stash shader before I re-write to use AABB Switch to using bboxes for slightly more accurate results, hi-z mip checks