14,851 Commits over 1,642 Days - 0.38cph!
Do a fbcopy when needed when we issue the drawcall instead of start of layer
https://files.facepunch.com/sampavlovic/1b2411b1/TelPfAoEb1.png
Fix wrong blending modes being set on glass wtf
Fix video recorder crash when vulkan video fails to initialize on AMD cards
Properly cleanup resources if video or audio context creation fails at any point.
Fix model renderers not reloading attachment hierarchy on model reload https://files.facepunch.com/layla/1b2411b1/sbox-dev_M5JquhxEDq.mp4
Protocol++, remove logs I left in accidentally
RPCs and Sync Var Support for GameObjectSystems
Make sure correct context local scope is pushed when running console command - Fixes incorrect TypeLibrary being used when running commands
rendersystemvulkan: remove unused legacy descriptor set update path to simplify further descriptor set changes
VK_KHR_descriptor_update_template was promoted to Vulkan 1.1 and we
target 1.2 minimum so descriptor update templates are always avaliable.
Meaning we can remove the very complicated legacy path.
Also removed KHR suffixes from the fast path to clarify it's not an extension.
UI: Allow both spellings of `grayscale`/`greyscale` inside `filter( ... )`
Fix network table corruption when writing entry that throws exception
Don't instant output dedicated server logs, queue them too - suspect crash fix
Restore the CONTENT search paths to fix models missing materials
Even though 99% of searches no longer use it and still work fine.
I suspect CDmFbxSerializer::FindMaterialResource has very specific
behaviour for "GAME" vs "CONTENT" that makes it not resolve relative
paths properly, this only occurs when there is no compiled file yet.
Add connection pre info so that connection has valid info while checking AcceptConnection - Fixes SteamId is not properly initialized in INetworkListener.AcceptConnection
Try not to wake physics bodies when setting identical transforms, fixes proxy bodies not falling asleep
Readd disable backface culling
Remove exposure bias entirely from colorgrading, uses exposure compensation value from ToneMapLinear instead
Make shared postprocess not write to depth; we corrected a behavior that postprocess was using wrong depth buffer ( things like DoF are meant to use it even on PP layer ), but this caused some user PP effects to only be written to skybox when correcting it
Do autoexposure before we do postprocessing and use HDR color for it, adjust rate for HDR compensation, adjust autoexposure adaptation scale, fixes autoexposure wobbliness & gives a much better range to it
Every tonemap type has exposure bias
Remove bullshit RenderState initialization, we get these from the renderer already
Clear alpha if we're rendering directly to screen, same behavior as before native postprocess removal
Remove Exposure Bias from tonemapper, this doesn't make much sense since it's tied to only HableFilmic and does the same thing as ExposureCompensation
Fix EnumDescription.GetEntry(object)
Validate AssetBrowser location before trying to navigate, tidy up a bit
NetDictionary implements IReadOnlyDictionary
Our Dictionary.GetValueOrDefault extension doesn't need to exist
g_pApplication can be nullptr very early on
ci: upload symbols before build shaders to diagnose crash
Check Managed::SandboxEngine::IsReady() before spewing log
ShaderCompiler: Output failures at the end, cleanup garbage before exiting
Console apps don't buffer native log messages
Remove random include from envmap_filtering_cs
Revert "Mark as Dirty if physics body transform did change"
This reverts commit e493682a3343f8eed75fd50e7b437505915e64fd.
Reapply "Store external descriptor set name hashes, otherwise these aren't being refed properly which could very well be the Intel crash"
ExternalDescriptorSet needs to be described across VS/PS stages, put it in common.fxc (there are some shaders that will/can never use it like unlit)
Fixup descriptor name hash for outdated ugc shaders
Build shaders
# Conflicts:
# game/addons/base/Assets/shaders/terrain/cs_terrain_sculpt.shader_c
Revert "DictionaryExtensions use IDictionary so they work with whatever"
This reverts commit 6d3e964af97afe619b715b358bb66cbe61246208.
Account for more floating point imprecissions
Further, reduce goal overshooting for nav agents
Optimize crowd simulation, should be twice as fast
This mitigates the performance loss caused by enabling Collision Avoidance & Separation
DictionaryExtensions use IDictionary so they work with whatever
BytePack serializer for TagSet
Obsolete DamageInfo.IsExplosion
Move ToString() to TagSet base
Force update title bar whenever title or icon changes
Fix map hotload, managed type manager bumping up refcount of resources in maps when it shouldn't, causing them to never be unloaded
Added GraphView.CreateBackgroundPixmap which you can override. Resolves Facepunch/sbox-issues#7845
TextRendering.Scope now allows for newlines with a multiline text editor. Resolves Facepunch/sbox-issues#7836
Mixer now shows `*` when there are any new or unsaved changes. Can also delete mixers with the DEL key. Mixer will prompt you to save any unsaved changes on close and restore to previous settings if no is pressed. Resolves Facepunch/sbox-issues#7799
Make compile error dialog paths slightly more readable
Frameless window fixes for hi-DPI monitors
Terrain: Implement simple noise tool https://files.facepunch.com/tony/1b2011b1/sbox-dev_3vMnaauA7V.mp4
No need to defer resource manifest disposal, can double up which is causing crashes
Let's format this file properly
Terrain: Implement smooth sculpt tool https://files.facepunch.com/tony/1b2011b1/sbox-dev_N6T1keSw6q.mp4
Custom window frames (#1858)
https://files.facepunch.com/alexguthrie/1b1911b1/explorer_7y8xswGpWU.png
Fixed CreateGameModal menu error
Fix hostname changing back to default after map change
DedicatedServerConsole: Show hostname instead of "s&box server" if there is one
Add LaunchArguments.MaxPlayers, overrides created lobby preferences (used for CreateGameModal)
Brush Settings: increase maximum width so we have sliders
Reformat Detour/Recast C# files
Don't PreJIT in editor, it adds a couple of seconds to startup time
Unused IAssetSystem::OverrideAssetsWithVPK
Stick a cache on FixupSearchPathName as it's a hot path whilst compiling due to CResourceCompilerPathScope
https://files.facepunch.com/matt/1b2011b1/Profiler_WExqSdLF2F.png
Let's try all "CONTENT" paths as "GAME" paths and remove "CONTENT" search paths, maybe everything will still work
And then we can remove this extra PathScope for "CONTENT"
Mark as Dirty if physics body transform did change
Early return in PhysicsBody.Move if transform didn't change