reposboxcancel

22,488 Commits over 1,614 Days - 0.58cph!

1 Year Ago
Shape cast against heightfield using swept bounds, awful for long traces but fine for player controller for now
1 Year Ago
Heightfield shape collision (collide directly with heightmap values to save memory and construction time) https://files.facepunch.com/layla/1b2711b1/sbox-dev_te9aXdBHk6.mp4 Bit of cleanup simd cell triangle vertices up front Ray casts and shape casts against heightfield but slow because there's no acceleration structure yet
1 Year Ago
Ray casts and shape casts against heightfield but slow because there's no acceleration structure yet
1 Year Ago
Rename VRNative CheckError function to Assert Move assert function for VR overlay errors into VRNative Remove unused VRNative functions Support for all types of VR textures (pose, depth+pose, depth, and neither)
1 Year Ago
Hack to support system types in TypeLoader Update Facepunch.ActionGraphs Move ActionGraph related attributes to Sandbox.System Move NodeLibrary outside of TypeLibrary Get rid of some logging
1 Year Ago
New Clothing - Medieval Armour Outfit LODs and Skinning adjustments coming asap!
1 Year Ago
Ensure that clothing TargetModel has a standard scale, so it doesn't fuck up bounds (?)
1 Year Ago
Add Menu.AddOption Get bool state from BoolControlWidget
1 Year Ago
Up the ZFar distance for clothing camera render so it's clear when bounds are way too big
1 Year Ago
Make ResourceControlWidget menu a modal, fixes it popping onto other monitors if near boundary
1 Year Ago
simd cell triangle vertices up front
1 Year Ago
Bit of cleanup
1 Year Ago
Heightfield shape collision (collide directly with heightmap values to save memory and construction time) https://files.facepunch.com/layla/1b2711b1/sbox-dev_te9aXdBHk6.mp4
1 Year Ago
Finalize things, fix misc warnings, fix SSR and enable directional lightmaps
1 Year Ago
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
1 Year Ago
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
1 Year Ago
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
1 Year Ago
Citizen/animgraph: expanded landing animations (new crouching & movement-specific behaviours), + big improvements to blending out of landing
1 Year Ago
Add Sheet class for shaders Add Depth class Add Fog api Helpers
1 Year Ago
Send TcpChannel in a thread, so it doesn't lock up the unit tests Add Widget.UpdatesEnabled - which to be honest is fucking useless but it's there for completeness
1 Year Ago
Add g_vRandomFloats to replace oddly named ScreenSpaceDitherParams, fix reflections and volume fog using that
1 Year Ago
Remove SetShadowCascadeResolution and SetShadowCascadeDistance, both pointless, cascades use shadow resolution, add SetCascadeDistanceScale, make number of cascade count actually work
1 Year Ago
Material::Init fully initialized material
1 Year Ago
r_dynamic_reflections 1 by default
1 Year Ago
Add Connection.SendMessage
1 Year Ago
Allow creating a TaskSource Fix warning
1 Year 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 Remove limitations to not have mixed point light shadows, it just works now https://files.facepunch.com/sam/1b1911b1/SNSMgfgkxR.png 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
1 Year Ago
Update Facepunch.ActionGraphs
1 Year Ago
Fixed hotload getting very slow because of ConsoleWidget diagnostics clear (sorry 😩)
1 Year Ago
Rename NetworkChannel to Connection Move GameNetworkSystem.Local to Connection.Local Don't special case MemoryPack in AC
1 Year Ago
NetworkChannel has SteamId and DisplayName Network OnJoined event, which is called for local player too
1 Year Ago
Fix VR rendering crash Disable menu VR overlay
1 Year Ago
Add GameNetworkSystem.OnChangingScene
1 Year Ago
Update default send rates Don't try to delete panels more than once More useful warning if SendMessageToUser is false
1 Year Ago
NRE diagnostics in OnIntersection Add Widget.SetContentHash
1 Year Ago
ui: flex gap scales
1 Year Ago
Lobby data is case insensitive
1 Year Ago
Fix console exception on close Lobbies have names
1 Year Ago
Can move these object messages of the main network system now More BytePack tests
1 Year Ago
Simplify message handling Fix tcp sending out of order
1 Year Ago
Citizen/animgraph: improved sprinting animation & handling of the locomotion 'wish' layer
1 Year Ago
BytePack support TypeLibrary types Fix PropertyDescription sometimes setting twice Remove NetworkSerializer, build it into NetworkSystem Remove MemoryPack Clear Typelibrary's BytePack on assembly changed
1 Year Ago
Fix incorrect adding of prismatic joint
1 Year Ago
Enable limits on prismatic and revolute when limits are valid
1 Year Ago
Update output connections too in GraphView.UpdateConnections
1 Year Ago
BoolControlWidget support custom icons Add descriptions to tooltips on ControlSheet Don't try to load local packages when joining server Fix potentially adding null NativeMemoryBlock to pool
1 Year Ago
Material::Init initializes TextureCoords too
1 Year Ago
Update new shader template
1 Year Ago
Remove stereo multiview instancing from debug menu Add Texture.Update<T>( ReadOnlySpan<T> data ) & Texture2DBuilder.WithData<T>( ReadOnlySpan<T> data )
1 Year Ago
Stop using PixelInput for everything (#1336) * PS_InitFinalCombiner( PS_INPUT ) -> PS_InitFinalCombiner() so it works without COMMON_PS_INPUT_DEFINED - this is just for default values anyway PS_CommonTransformNormal should be wrapped in COMMON_PS_INPUT_DEFINED too * Material shading API can be used without common PixelInput Internals rewritten to remove reliance on a commonly defined PixelInput instead every function just takes what it needs. The only public methods you may have been using were changed like so: ```diff - float3 TransformNormal( const PixelInput i, float3 vNormalTs ) + float3 TransformNormal( float3 vNormalTs, float3 vGeometricNormalWs, float3 vTangentUWs, float3 vTangentVWs ) - float3 NormalWorldToTangent( PS_INPUT i, float3 vNormalWs ) + float3 NormalWorldToTangent( float3 vNormalWs, float3 vGeometricNormalWs, float3 vTangentUWs, float3 vTangentVWs ) ``` Material::From( PixelInput ... ), ShadingModelStandard::Shade( PixelInput ... ) stil exist but are wrapped in ifdef COMMON_PS_INPUT_DEFINED, so only work with the common PixelInput include. Material::Init() added to initialize a Material with default values Geometric normals are now distinctive from normals in Material too, this is important for the lighting model: https://files.facepunch.com/matt/1b1711b1/beforeafter.png And a lot of tool vis modes were fixed too. * Material.AmbientOcclusion float3 -> float