reposboxcancel

17,083 Commits over 1,308 Days - 0.54cph!

4 Months Ago
Additional Gizmo Controls Gizmo.Draw.LineCircle: fix starting angle always being a little too much Improve Gizmo.Draw.LineCapsule Improve Gizmo.Control.Capsule ColliderCapsuleComponent has gizmo controls Fix Gizmo.Control.BoundingBox
4 Months Ago
Don't care about file mod changed for compile state, doesn't make sense and was causing constant recompiles when 2 assets of the same name existed
4 Months Ago
Fix shrunken bodygroup editor Component selector fuzzy search
4 Months Ago
OnTagsChannged -> OnTagsChanged
4 Months Ago
Moved tiled rendering buffers to lightbinner, where it should belong Remove members that have long been deprecated, start adding support for structured buffer lights Move all cbuffer stuff to legacy, standard will only have structured buffer path Start implementing structured buffer lights data structure Remove all code for calculating mixed shadows, that'll be all allocated in the main light shadow function, iterate structured buffers Iterate on new lightbinner, let all shadows render through a single rendering path, disregard legacy for now Remove bMixed from LightEntry, it's complete bullshit, let static lights render only dynamic objects when doing shadows Unified shadow casting, map indexed lights so we can fetch them easily and without needing to order sequentially, remove more deprecated stuff Get rid of lightbinner_legacy completely Eliminate legacy per view lighting constants, eliminate mixed shadows, add placeholder to some constants where they should belong Cut more code from lightbinner light allocs, means only spots will alloc properly for now but cleans a lot of this, align cbuffers, add ComputeDirectLightingForLight to unify lighting calculation on shader Remove CSunLightManager, used for old pre-hlvr sun rendering, a lot of code that's only used for dynamic sunlight different to everything else in light rendering Remove more unused parameters from lightbinner Remove remaining crumbs of old sun shadowing, remove unused shadow functions, add bBaked to ComputeDirectLightingForLight Lightcookies and point lights Remove multiview constants from lightbinner, these have been getting in my way, and we need to think a better way to handle instanced viewports, I'm leaving it to a bigger cleanup later Start Envmap support on new lightbinner, remove unused environment_map.fxc Start MATERIAL_LIGHT_DIRECTIONAL support for lightbinner, sets up frusta for lights Fix conflicts from merge that added removed stuff Fixup for directional lights, add dummy ambient lighting for fully dynamic scenes, implement flags properly Fix merge ( g_nNumEnvMaps > NumEnvironmentMaps ) Remove interface definition from Vfx ( It's fucked off from HLSL 2020+ ), add array support to members in classes in Vfx Store multiple frusta on same light definition rather than using sequential lights, makes this simpler, point light shadows Ambient light, new strategy for shadow frusta Disable r_enable_high_precision_lighting, just ends up overcomplicating code, reevaluate if this actually affects much away from world origin, will make vPositionWithOffsetWs just become vPositionWs in shaders if fully removed Take shadow frustra from BuildShadowFrustaForLight() that matches what's on the shadow map renderer, rather than rebuilding it with twice the code Test of multiple frusta support for shadow maps on shader 🥳 Support for cascaded shadow maps on new unified multi-frusta system, needs to backport old code Backport directional CSM code to unified BuildShadowFrustraForDirectionalLight in lightdesc Shadow filtering and dummy ambient lighting Calculate spot light resolution proportionally based on light cone and do a LOD system for light shadows based on distance, both are meant to be perceptual https://files.facepunch.com/sam/1b1211b1/sbox_rl2LTOMdY4.mp4 CSM Adjustments Pass envmap data to GPU Fixups for cubemaps on shader, add test for ambient light IBL support https://files.facepunch.com/sam/1b1311b1/ibl.png We dont need start indexes for lights anymore, just remap the index for fog and baked, fixup envmap count to shader Remove refs to CalculatePositionToCameraDirWsMultiview function call in new lightbinner shader code Cleanup, remove a bunch of unused or deprecated shit, cleaned up a lot of variable in lightbinner structured buffer that ends up not being needed, document things a bit better Rename lightconstants.hlsl to lightbinner.hlsl and call the data there BinnedLight/BinnedEnvMap, make baked lights only cast shadows if mixed lights are enabled on them Fix flags on lightbinner gpu include, oops Refactor tiled rendering builder to be compatible with new lightbinner, make it implicit under lightbinner.hlsl Fog lights support, remove second buffer that's meant for fog lights, remove bullshit code to support old directional light from it that was just meant to be tools-only, all light types just works now https://files.facepunch.com/sam/1b2111b1/C3pY5Q7jq9.png Fix directional light farz https://files.facepunch.com/sam/1b2111b1/Jn16Ruj0ub.png Remove SetShadowCascadeResolution and SetShadowCascadeDistance, both pointless, cascades use shadow resolution, add SetCascadeDistanceScale, make number of cascade count actually work Add g_vRandomFloats to replace oddly named ScreenSpaceDitherParams, fix reflections and volume fog using that Rename Tiled Light Builder to Tiled Light Culling, do fixes for the new system and shrink tiles to 32x32 from 48x48, allowing us to just take a single fetch from depth buffer for GPU culling tests Fix lightcookie support, add support for colors on indexed lights with lightcookies, remove lightcookie index from lightbinner.hlsl, just pass the transform https://files.facepunch.com/sam/1b2711b1/zTwJgEDa7N.jpg Add unified Subsurface Scattering support for skin shadiing, previously every light type implemented this differently causing shading differences, now baked lights show this correctly too https://files.facepunch.com/sam/1b2711b1/k5L2Punaav.png Readd SetShadowCascadeResolution and SetShadowCascadeDistance as stub obsolte methods to not break existing games Finalize things, fix misc warnings, fix SSR and enable directional lightmaps Unify Two Lobe Specular and normal Specular Test: do full checkout with clean on shader.yml, delete debug_shaders.yml ( pointless ) Pass skycolor of multiple lights to renderer, works with multiple lights, fixes skycolor attribute doing nothing, while it'd be nice to just pass envmap diffuse lighting for ambients right now it'd break some workflows Fix typo on cloth shading combos Remove references to removed files in shaders CI: Use git checkout to remove stashed changes, shouldn't error if there are no changes to save & drop debug_sunshadow_vis is gone, update all_shaders with what's actually there Add LightSupportsTimeSlicedRendering and filter directional lights out of it, fixes cascades being fucked on hammer Loop rather than unrolling CalculateLightingAtPoint, sucks for perfomance but this function shouldnt take start and end indexes of the light, focus on correctness first Fix trunkation warning Pass correct envmap index Reenable high precision lighting, it's all fine now (but still considering removing it) [ Pick ] remove specialized decal rendering path from skin Fix cascade scale for maps that arent compiled with the new light attributes Apply indirect transmissive lighting, previously would only be affectted by direct lighting Migrate light api to new lightbinner system Get light culling render buffer from rendercontext rather than from layer Fix compilation of tiled_light_culling on vulkan (wtf?) Transpose matrices on d3d11 Support for multiple suns and fog on atmosphere_sky, code for this still sucks since this came from the first days of development Remove decal references in skin shader, thought I had that sorted :S Remove decal_renderer from allshaders.txt Compile shaders Refactor fog shader to take lights by index rather than by list, unroll loops still Minor fixes, x.Load(i) and x[i] has different behaviour between vk and d3d11? Compiled lit user shaders Shader CI: Do git clean before pull Compile core shaders Compile user shaders Compiled light culling material Add lightData.HasFrustumFeathering() for seamless fading between light cascades Consider one texel from edge to be considered outside the shadow region so that multiple frusta won't do smooth sampling on edges Consider cascade to always be squared
4 Months Ago
▍▉▍▌█▆ ▊▅▌▇▆_▆▅▌▇▋▅▇ - ▇▇▅ ▄▉▍▇ ▉▇█ ▌▉▇▊▊ ▇▉▅ ▊▋▊▉▄▌ ▄▌▇▆▉▆▆ ▆▇▇▋▍▇▌▄ ▍█▌▍ ▆# ▆▇▍▉▉▋
4 Months Ago
Add CameraComponent.Viewport
4 Months Ago
VR: Clean up render model code, make everything non-blocking
4 Months Ago
VR: Hook up IVRRenderModels interface VR: Add render model support for controllers, VR Model Renderer component (sbox-issues/issues/1001) Uses `vr_controller_01_mrhat` if no model available VR: Render model textures, fix axes VR: Model renderer component is separate, takes a model renderer as property, doesn't run in non-vr
4 Months Ago
Rigidbody component exposes PhysicsBody (fixes sbox-issues/issues/4177) protocol++
4 Months Ago
Different approach to multiple cameras support. Camera.Main is set to the camera that has the "maincamera" tag Set default camera priority to 1 Give Camera prefab the "maincamera" tag by default Add "maincamera" tag to default editor scene Editor viewport camera shouldn't really care about render tags Render game viewport from tools if game isn't playing Clean up GameMenuDll.OnRender Docs Use IsMainCamera bool instead of a tag, documented all CameraComponent properties Don't continuously set Camera.Main
4 Months Ago
Pull workflow: build content before tests
4 Months Ago
Try to differentiate between game instances that are multiplayer joins, to allow missing/empty packages etc
4 Months Ago
Don't continuously set Camera.Main
4 Months Ago
Fix editor startup scene not being an editor scene
4 Months Ago
BaseItemWidget accept double click Fix sceneview errors until hovered over sceneview Fix error due to networking with no active scene Add materials/default
4 Months Ago
Fix Sandbox.Hotload warning Fix unreachable razor code generation warning
4 Months Ago
Use IsMainCamera bool instead of a tag, documented all CameraComponent properties
4 Months Ago
Different approach to multiple cameras support. Camera.Main is set to the camera that has the "maincamera" tag Set default camera priority to 1 Give Camera prefab the "maincamera" tag by default Add "maincamera" tag to default editor scene Editor viewport camera shouldn't really care about render tags Render game viewport from tools if game isn't playing Clean up GameMenuDll.OnRender Docs
4 Months Ago
Fix more warnings Fix crash in BuildRayTraceObject Add Edit/Publish Project
4 Months Ago
Define SerializedProperty.IsEditable in inherited types where possible (ReadOnlyAttribute or !CanWrite) https://files.facepunch.com/tony/1b1311b1/sbox_R9sUMW3RGj.png
4 Months Ago
Make sure OnStart is always called before OnUpdate/OnFixedUpdate (fixes sbox-scenestaging/issues/107)
4 Months Ago
Add clothing_c files as an explicit exclusion to the .gitignore rule that excludes compiled content — and restore the files, since contentbuilder can't take care of them for now
4 Months Ago
Dummy hammer prefabs
4 Months Ago
Delete entity2_test
4 Months Ago
Clean up public/engine2
4 Months Ago
Delete public/networksystem
4 Months Ago
Fix debug builds
4 Months Ago
Scene: Copy / Paste (As Child) supports multiple objects Scene: Cut supports multiple selection, fixed paste NRE if no selection, use the scene as a fallback
4 Months Ago
Only interact with the scene view if your mouse is over it Select the prefab instance when selecting a prefab instance child in the editor
4 Months Ago
Delete remaining unused from engine2
4 Months Ago
Delete protobuf
4 Months Ago
Fix inspector not handling multiple components of the same type properly (fixes sbox-issues/issues/4175)
4 Months Ago
Scene: add multi-select duplicate support
4 Months Ago
Fix hitbox tracing weirdness (fixes sbox-scenestaging/issues/104)
4 Months Ago
Fix misc warnings Re-organize gameframe Fix prefab enable status not de-serializing in scene (fixes sbox-scenestaging/issues/67)
4 Months Ago
Delete networksystem
4 Months Ago
Remove unused loadingscreen toggle Fix all warnings in Sandbox.Game Fix warning in Sandbox.Access Fix warnings in Sandbox.Menu Fix warnings in Sandbox.Tools
4 Months Ago
Make MusicPlayer work again
4 Months Ago
Citizen/animgraph: address a couple of edge cases with that last commit & shove the nodes in a group
4 Months Ago
Delete mostly everything networking related from engine2, should make it possible to delete networksystem
4 Months Ago
Fix every warning in Sandbox.Engine
4 Months Ago
Citizen/animgraph: fix potential animation snaps caused by the reset signal used to reset the movement cycle phase sometimes overlapping the frame you start moving (especially while holding SHIFT). Rather than send a reset signal if you were idle for at least 300ms *and* you start moving, simply send a reset signal if you've been idle for 300ms at all https://files.facepunch.com/maxlebled/1b1311b1/sbox_2023-12-13_09-41-59.mp4
4 Months Ago
Citizen/animgraph: also nest the long transition from post-jump airborne back to normal state https://files.facepunch.com/maxlebled/1b1311b1/sbox_2023-12-13_09-41-59.mp4
4 Months Ago
Shut the couldn't find driver version warning up Fix anim subgraphs not compiling with contentbuilder because there's no assetsystem
4 Months Ago
Citizen/animgraph: use a nested State Machine (single transition, conditionless) to always fade in the post-jump airborne state over a longer period of time than the downstream SM allows (see commit comment) If we go straight from grounded to airborne (without a jump) then we still want to fade the airborne state quite slow... but we also want a fast snap-free state transition back to grounded if we land almost immediately. Snaps happen if a transition out of a state engages while you're still transitioning into this state. The 'protection' against snaps is done by using 'Time in State' conditions that are slightly longer than the previous transition's blend time. But if we keep that time too high, having very fast transitions (e.g. land-grounded-airborne-grounded-airborne) can look really off. You'd be in the airborne state for a noticeable period of time even though you're running. Therefore a very short 'protection time' below 200ms is required. But with such a short time, going straight from grounded to airborne is too snappy. Therefore, inside the state, we use a new SM, with a single conditionless transition, to always fade in from the upstream state gracefully, over a longer period of time. Because it's effectively a nested SM, it doesn't matter that the downstream state transitions are 100ms long. And because the jump-to-airborne transition is quite long, not only does it barely matter that this fade-in always happens, I also think it makes it look a bit better... The SM always needs to receive a reset from downstream to restart the fade-in from the start, so I have to use yet another 'makeshift reset blocker' to prevent the upstream movement states from getting reset. (Otherwise you'd see a snap as soon as b_grounded went false)
4 Months Ago
VR: More docs for `VROverlay` and `VROverlayPanel` VR: VrInput -> VRInput, extra docs for VRController
4 Months Ago
VR: Docs, rename Input VrHand to VRController VR: Normalize prefix casing to `VR` instead of mixing `Vr` and `VR` VR: VRHand component doesn't fetch skinned model renderer automatically, match behaviour of all other components instead
4 Months Ago
Get rid of angle pitch jitter in scene view
4 Months Ago
Make `Matrix` numerics value internal, similar to the one on `Vector3`