1,495 Commits over 1,157 Days - 0.05cph!
Oops, Refresh was renamed RefreshData sometime today
Request lobby data of advertised lobbies in chat so they stop appearing untilted
Don't mount local map projects when running the packaged version
Quick doc pass
Test some additional uris, fix equal uris not being permitted
Quick play around to see if a static API for HTTP is good
Add some methods for easily handling JSON requests
Move access checks over
Add optional params for headers and cancelaition tokens
Obsolete Sandbox.Internal.Http
Update WebSocket header handling
Move Http into Sandbox.Game to align with the public WebSocket class
Tests fix
More tests
Access list changes to allow HttpResponseMessage and HttpContent classes
Have to specify what http uris you want to use in project settings, menu ignores this
Remove OpenGL only IVfx::GetDriverInfo()
Remove few remaining referenecs to vfx_dx9 and vfx_gl
Remove GLSL and HLSL3 from the HLSL annotation parser
Delete vfx_gl vfx_dx9 files
Don't need per vfx generated antlr code or intermediate dirs
vfx cleanup, get rid of vmpi from vfxc and other shit
Restore coreclr AMSI patch with new hostfxr init
Fix VR startup crash on AMD
Make lobby rich presence better favouring game lobbies over parties
ui early cull with global matrix, not local matrix and make sure matrices are resolved before culling occurs
PanelRenderer transformed panels with clipping set their software scissor to AABB, whilst keeping the shader scissor untransformed until render
Scope the clipping code to keep better track of the scissor and gpu scissor, fixes issues with nested transformed clips which were more common then I thought
Chat TakeLast not Take oops
Give ourselves a bit of time to connect to the global lobby
Chat lobby ad updates properly
Remove naughty words from menu chat with users Steam profanity filter
Parties are private lobbies again, stop them showing up in lobby list
Refactor Lobby -> GameLobby, replace GameLobby.Active list with static GameLobby.Current, no longer owned by LobbyFrontPage. Add PartyLobby and GlobalLobby static classes, and lobby_type metadata so we can differentiate between party and game lobby invites
Some simple anti-spam for chat
Party invites work again
Refactor Lobby -> GameLobby, replace GameLobby.Active list with static GameLobby.Current, no longer owned by LobbyFrontPage. Add PartyLobby and GlobalLobby static classes, and lobby_type metadata so we can differentiate between party and game lobby invites
Ram in global chat lobby, messy need to refactor lobbies
Can advertise lobbies in chat
rendersystem_vulkan: get this compilable again with a flag, easier to work on instead of one massive branch with all the vfx changes too
* strip all glsl support, added dxc hlsl -> spirv, and convert any built in shaders to hlsl
* backport new texture manager to match the new dx11 texture manager
* various backports to match our dx11: barriers, fences, gpu buffers, descriptor sets, etc.
* only use VK_EXT_debug_utils instead of VK_EXT_debug_marker
* strip multi-gpu
Hammer gamedata: only need to grab the package once per assembly, fixes race condition from doing it concurrently which was causing multiple entries
Hammer: fix entity tool sidebar not collapsing properly
ui: box-shadow blur bloats the rect and renders properly
Restore required texture size bindings, should've only been removed from descriptor sets
Kill legacy Fade Scale dx7/dx8/360 render property on models that's not hooked up to anything
UI: Software culling accounts for transforms too, fixes them disappearing randomly sometimes
UI: When early culling account for shadows so if we're scrolling and should only be able to see shadows it'll still render
ci: doesn't matter if git stash has nothing to stash, carry on with the build
delete more dx9 shit
Nested main thread render layers work better with texturemanager, fix potential case where some hookup jobs weren't being fulfilled properly in main thread render layers
Backport new base/dx11 rendersystem changes so other backports are easier; removes obsolete dx9 stuff, better barriers, finalize RenderTtextureDetail replaced with required mipsize
Fix nvwgf2umx crashes - these were being caused by blocking resource loads within managed render blocks; these would run the texture manager's hookup jobs, which would include async hookup jobs for texture streaming, but also the textures we wanted immediately. The problem with fulfiling these texture streaming hookup jobs is the render thread is already executing and a texture streaming hookup job is going to invalidate them by replacing the contents. This would happen more frequently for slow pcs where their texture streaming can't be fulfiled fast enough. I've hooked up a simple system to only fulfil the hookup jobs of the textures that have been requested during the render block.
tier0 GetGameInfo accessors
Delete unused RenderTextureDetail
Stop trying to bind invalid reflection texture for water since it all got stubbed, can't debug other issues with this shit spamming constantly
Don't upload core/base shaders to asset.party
Don't mount any shaders in manifest that already exist in base or core
Hunch crash fix, wait for rendering to complete before force reloading resident resources (if this resolves it, then it's probably shader resources need some extra love)
ci: only reset tracked files before pulling, keep our build artifacts so builds aren't slow as shit (hopefully)
ci: can't build-addons until test-game is run, otherwise s&box.sln isn't created
Delete orphan vmat build breaker
Fix bottom to top scrolling being inverted with flex-direction: *-reverse or justify-content: flex-end
https://drafts.csswg.org/css-align/#overflow-scroll-position
Fix Popup PositionMode.AboveLeft not working on different screen scales
Tidy up Lobby class code
Remake PartyDeck in Razor, split out Party logic to static class, move party deck along bottom social bar
Party chatbox
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Style tweaks
Add a lobby chat channel to chatbox instead of in lobby screen. Add unread messages counter, and show latest message over the chat entry
Reimplement friend list in Razor, use it for both joining games and inviting to party instead of the seperate flows. Move friend list from top nav to social nav
Simplify chat code, better styles (bigger text) + sounds, add party / lobby kicking
Caching for Steamworks Friend so we can innocently use this in Razor without worrying about performance ( was eating 2-3ms on 30 friends from a simple Linq count - and a lot lot more on more friends )
Merge pull request #721 from Facepunch/social
Fix bottom to top scrolling being inverted with flex-direction: *-reverse or justify-content: flex-end
https://drafts.csswg.org/css-align/#overflow-scroll-position
Fix Popup PositionMode.AboveLeft not working on different screen scales
Tidy up Lobby class code
Remake PartyDeck in Razor, split out Party logic to static class, move party deck along bottom social bar
Party chatbox
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Style tweaks
Add a lobby chat channel to chatbox instead of in lobby screen. Add unread messages counter, and show latest message over the chat entry
Reimplement friend list in Razor, use it for both joining games and inviting to party instead of the seperate flows. Move friend list from top nav to social nav
Simplify chat code, better styles (bigger text) + sounds, add party / lobby kicking
Caching for Steamworks Friend so we can innocently use this in Razor without worrying about performance ( was eating 2-3ms on 30 friends from a simple Linq count - and a lot lot more on more friends )
Chat responsible for storing it's own messages, makes code simpler and lets us keep history when leaving party/lobby
Add a bunch of caching to Friend, invalidate cache on PersonaStateChange callbacks - lets us use this more innocently without worrying about performance everywhere - e.g Friend.GetAll().Where( x => x.IsOnline ).Count() was eating 3-4ms with only ~20 steam friends, much worse with more pals
Chat new messages update the hash properly for the unread messages counter
Lobby ready up state + kick button for lobby owner
Larger chat text, my eyes were feeling strained
Add sounds to chat & party deck
Fix ChatEntries BuildHash not reacting to new messages
Make the silly emoji button add to message in a less jarring way
Add lobby / party kicking
Fix bottom to top scrolling being inverted with flex-direction: *-reverse or justify-content: flex-end
https://drafts.csswg.org/css-align/#overflow-scroll-position
Fix Popup PositionMode.AboveLeft not working on different screen scales
Tidy up Lobby class code
Remake PartyDeck in Razor, split out Party logic to static class, move party deck along bottom social bar
Party chatbox
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Style tweaks
Add a lobby chat channel to chatbox instead of in lobby screen. Add unread messages counter, and show latest message over the chat entry
Reimplement friend list in Razor, use it for both joining games and inviting to party instead of the seperate flows. Move friend list from top nav to social nav
Fix recent typo in CManagedRenderLayer::Render setting MSAA level to invalid instead of none, causing a shit load of crashes
Fix bottom to top scrolling being inverted with flex-direction: *-reverse or justify-content: flex-end
https://drafts.csswg.org/css-align/#overflow-scroll-position
Tidy up Lobby class
Add a social bar along the bottom of the menu, put the party deck here
Make PartyDeck suit the bottom left a bit better
PartyDeck razor only view, split logic into static Party class that wraps the lobby
Messed around with PartyDeck some more
Party chatbox
Fix missing using from rebase
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Move Lobby chat to menu chatbox, swap chat type with tab
Style tweaks
Chat channels merge together but display their colour
Simple chat entry style I'm happy enough with for now
When create/join lobby, switch chat channel to lobby. On leave switch back to party automatically
Open Steam profiles in overlay when clicking name in chatbox (will likely put behind a context menu)
Make avatar smaller, more margins, don't shit self on overflow, don't overlay on everything all the time (I'll code something better)
Align chat messages with user info better
Add an unread messages indicator and system messages
Show the latest message over the chat box, dismiss on hover
Fix Popup PositionMode.AboveLeft not working on different screen scales
Stop abusing BuildHash, only need to rebuild the chat messages on new message
Fix showing latest message, add some system messages to test it + unread
Silly hover thing
Fix Popup PositionMode.AboveLeft not working on different screen scales
Stop abusing BuildHash, only need to rebuild the chat messages on new message
Align chat messages with user info better
Add an unread messages indicator and system messages
Show the latest message over the chat box, dismiss on hover
Tidy up Lobby class
Add a social bar along the bottom of the menu, put the party deck here
Make PartyDeck suit the bottom left a bit better
PartyDeck razor only view, split logic into static Party class that wraps the lobby
Messed around with PartyDeck some more
Party chatbox
Fix missing using from rebase
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Move Lobby chat to menu chatbox, swap chat type with tab
Style tweaks
Chat channels merge together but display their colour
Simple chat entry style I'm happy enough with for now
When create/join lobby, switch chat channel to lobby. On leave switch back to party automatically
Open Steam profiles in overlay when clicking name in chatbox (will likely put behind a context menu)
Make avatar smaller, more margins, don't shit self on overflow, don't overlay on everything all the time (I'll code something better)
Recompile ui_text shader so it uses new scissoring, fixes them clipping badly with transforms
Move Lobby chat to menu chatbox, swap chat type with tab
Fix missing using from rebase
Tidy up Lobby class
Add a social bar along the bottom of the menu, put the party deck here
Make PartyDeck suit the bottom left a bit better
PartyDeck razor only view, split logic into static Party class that wraps the lobby
Messed around with PartyDeck some more
Party chatbox
Enable Yoga fixes for absolute position percentages not accounting for padding edges, and trailing column margin
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
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
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
Hook up row-gap, column-gap and gap css properties
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