13,525 Commits over 1,522 Days - 0.37cph!
Gas cylinder fat
refreshed gas cylinder model and bug fix
Update yoga src to latest HEAD (adds gap support and some opt-in experimental fixes for making absolute positioning behave more like web)
Get rid of old nuget yoga 1.5.0-pre1, replace with latest .net6 binary built from yoga#1207
Update yoga.vpc to build a DLL + build with /fp:precise otherwise the NaNs Yoga uses won't work
Compile yoga with $NO_STANDARD_VALVE_CODE so we can use our yoga.dll in tests without tier0 dependency
Fix Sandbox.UI.Test native dependency yoga.dll
Yoga sanity unit test
Fix Sandbox.UI.PositionMode not matching new YogaPositionType which has Static at the start now
Might as well support `position: static`
Default position is static and not relative, might break some ui where left/right/top/bottom have been misused w/o position: relative/absolute
Hook up row-gap, column-gap and gap css properties
Fix partydeck styles
glass styles can use gap !
Delete yoga.dll now it's compiled
Move Managed Tests to after native build - because we likely want some of the dlls to test
Build native before managed
Edited the wrong yaml
Merge pull request #716 from Facepunch/update-yoga
New Clothing - Biker Jacket!
https://files.facepunch.com/daniel/1b1011b1/sbox-dev_3rVxeZCbMB.jpg
LODs and skinning adjustments coming ASAP
Ingame console doesn't use templates anymore
GameSetting use razor
Menu back to horizontal
Servers Widget
Games widget
Don't lowercase texture path when loading (because http can be case sensitive!)
Hotload textures in the menu properly
Add MenuUtlity.OpenFolder
NewsWidget
Style tweaks
Event widget
Navbar cleanup
PlayerWidget
Navbar cleanup
Clean main menu styles
new & trending
Refresh server list widget automatically
Package list sidebar glass style
Dirty check PanelNode properly
Add TreeNode.SetChildren
Sidebar can be bigger now
If the razor @ref is the wrong type then ignore it
Fixup partydeck
Merge pull request #712 from Facepunch/main-menu-sucks
Main menu sucks
Whitelist `System.Type.Equals( System.Type )`
Whitelist compiler attributes required for C#11 required modifier
Keep box-shadow within the original scissor so it doesn't overflow
ui test: transform rotated + border-radius scissor test
ui: when rendering box-shadow never render under the box itself (using an inverse scissor rect) so transparent backgrounds look as they should
before: https://files.facepunch.com/matt/1b0811b1/sbox_l0kQbIIJ1c.png
after: https://files.facepunch.com/matt/1b0811b1/sbox_jVYco6DRg8.png
ui: scissor rects can have a transform matrix, scissor panels post transform position too - fixes lots of oddities with overflow: hidden and transforms
before: https://files.facepunch.com/matt/1b0811b1/sbox_6te0egX6cg.png
after: https://files.facepunch.com/matt/1b0811b1/sbox_BMeWLJ6w79.png
ui: add rounded corner scissoring (border-radius works with overflow: hidden)
https://files.facepunch.com/matt/1b0811b1/sbox_gnbMdfYYuJ.png
Comment out unknown command or convar log
Merge branch 'master' of github.com:Facepunch/sbox
Reload materials on shader resource reload
If switches are defined in command line, respect them when creating a ConVar
ClothingContainer.DressEntity disable trace and queries on clothing entities
Disable water reflections until Water rework, it's look slowly degraded over time to a point where it's looking worse than if on and taking too much frametime. We'll do it better.
UI Blur with mip chain
Blur the actual mip chain, same number of fetches as doing custom bicubic fetch with mips
Glass refraction texture is already MSAA resolved, we're sampling a non MSAA image :S
Generate mips after resolving framebuffer
Add blurred downsample shader
Remove ui_blur shader, do blur on the single cheap drawcall of the backdrop filter shader 🍷🗿
Single pass downsample
Iterate on single pass blur, use DX11 mipmapper to solve race condition between mip levels
Solve race condition on shader, do both axis sequentially
Deprecate GenerateMipMaps
Move mips generation stuff to Texture.Utils
Cleanup
Let's not break the API, don't use UAV if we don't expect to use Mips
Move GenerateMips back to Graphics since we're in a render block
Move MSAA methods to use MultisampleAmount enum reducing clutter, add summary of DownsampleMethods
Merge pull request #699 from Facepunch/fast-blurs-2
Fast Blurs
Revert "Merge pull request #708 from Facepunch/complex-parallax"
This reverts commit 1b03287d33734ebf700e0da2bde65e18fa70c84d, reversing
changes made to 2cea20324dd76565c24de4a769a2b552f24c4fca.
Add Parallax Occlusion to complex
Grabbed from #665
Add Sys( ALL ) for the time being
Compiled shader
Merge pull request #708 from Facepunch/complex-parallax
Add parallax occlusion to complex
Fix node graph connections
Make sure symlink reload queue actually gets cleared, accidentally returned ref instead of ptr
Reload symlinked resident resources after loading runtime packages too
Fix double alloc on GraphicsLine
New Hair - Mutton Chops
https://files.facepunch.com/daniel/1b0511b1/sbox-dev_a12d0ndH7o.jpg
Adding colour variations asap
Fix Material ResourceId not being set so it networks properly
Never try to precache procedural models
Fix bad race on procedural models invoking OnModelLoaded without being properly set to procedural yet
Fix exception when splashscreen manually closed
Fix exception in DragData.Url
Fix LaunchConfig construct exception
Fix exception in ConsoleOutput.OpenAnchor
Fix exception in Hammer.PostLoadMap
Fix exception in AssetPreview.GetAssetThumb
Attempt to fix CloudAssetDirectory share access exception
Attempt to fix exceptions in AssetFolderNode.UpdateCount
Fix possible exceptions in FileWatch.Tick
Wrap ClientSpawn so downstream exceptions can't cause too many problems
Exception wrap CreateEntityFromEngine better
Make unhandled RPC a warning
Change how ModelEntity.PhysicsBody is returned to avoid null pointer exceptions
Handle file in use exceptions in NetworkAssetList.AddFiles
Disconnect clients if they're requesting net files that don't exist/are deleted
Add string.ToLong
Replace Build only complex with something more generic, didn't know we could do this!
Kill spritecard only action, add complex only action
Do standard weakref cache for each native resource class (repeated code isn't really avoidable here sadly), seal these classes, private constructors so you have to use e.g Model.FromNative( IModel )
Garbage collect on Client LoopEnd, eligable Resource classes were never getting collected and leaking their native handles
Simulate clothes on tick by default
https://i.imgur.com/AHZml3P.mp4
Fix movement_path_node missing
If the server's port is taken, try the next one a few times
Make custom shaders shared VS code not add bullshit that just goes unused
Add ShadingModelValveStandard to shader template
Color picker handles HDR colors
fix NRE on map uploads when the map addon contains skyboxes or prefabs
Show components in entity list better https://files.facepunch.com/garry/a20003da-9cd0-48a7-a39c-15a0cb6f5f8c.mp4
tweak model ao proxies, removing redundant prefab (use models instead)
Merge branch 'master' of sbox
Apply tonemapping to RT Baked Lighting
Fix resource precache, fixes networked resources (glass etc)
Implement initial cubemap priority sorting in our cubemap system
Fix tiled light builder adding one garbage envmap to the list
Fix crash due to trying to access invalid prepass layer
Take biggest radius component when passing shape proxies to gpu
Unify alphatested depth prepass stuff to r_depth_prepass, force it to have conservative culling, fixes aliasing on alphatested materials
Fixed several prefabs being corrupted
Caused from a squashed merge rewriting the file contents
Force a reload of any resident resources that are or were symlinked, this is especially required for streamed resources to avoid a mismatch between header and file data
Store GameResources in ResourceLibrary instead of all Resources in Sandbox.Engine so resources get released properly on game shutdown
Every native resource (model, material, textures...) was getting held indefinitely even after game shutdown, this commit solves that by:
* ResourceLibrary will only hold strong references to GameResource, native resources will only have a weak reference internally this way they get unloaded properly.
* Sandbox.Tools gets it's own ResourceLibrary, doesn't piggy back from GameHost.Menu anymore
* Get rid of GameHost from Resources
Launcher: docs, code cleanup
DamageInfo: docs, add HasAnyTag, HasAllTags
Add DamageInfo.WithTags, resolves sboxgame/issues/issues/2698
Obsolete Game.IsToolsMode, Game.IsToolsEnabled, add Game.IsEditor
Humans: fixed Frank head using the wrong eyes material