22,460 Commits over 1,614 Days - 0.58cph!
Add method to convert Qt::Key to ButtonCode as string
Tools: Add KeyBind widget, intercepts key presses and sets value to last key pressed
Tools: Test using keybind editor for InputAction.KeyboardCode
Local transforms for hand info, we'll convert back to world transforms in managed after anchor transform changes
ComputeBuffer<T>.CopyStructureCount<U>( ... ) YUCKY generics
Don't make ByteAddress buffers with unordered access
Drop access type to keep things simple, add List<T> SetData variants, add elementOffset arguments, additional error checking
AppendConsume buffers still need the structured buffer flag too
Add synchronous IRenderDevice::ReadBuffer and asynchronous IRenderContext::ReadBuffer
Add ComputeBuffer class for creating, reading and writing GPU buffers for usage with ComputeShader
Can be passed to RenderAttributes.Set( string, ComputeBuffer )
Read data from GPU with ComputeBuffer.GetData<T>( Span<T>, int, int )
Add ComputeBuffer.SetData( Span<T> ) and ComputeBuffer.CopyStructureCount( ComputeBuffer, ComputeBuffer, int )
Can set/copy data outside a graphics block
Flush this shit when using ComputeBuffer in a sync way, I'll do it a different way for an async/callback API
API makes more sense to be ComputeBuffer<T>
[Pick] Proper support for blitting MSAA textures, also fixes blitted framebuffer textures on Vulkan
ShaderGraph: Triplanar texture mapping nodes
ShaderGraph: Triplanar node tweaks
When setting GameLobby.Game set withLocal to true so that we actually load the local version if we're starting from a local version. This also fixes FileSystem.Data not using the folder with #local in when it should be.
Fix mouse delta fuckups (fixes sboxgame/issues/issues/3672)
StartServerAsync empties savedgame, gamesettings, extensions ConVars
Create Game on default menu actually respects Min/Max players in the project settings
Using min doens't make sense there actually
HandleAnalogValueChange never used
Flow input actions to gamemenu if it's visible, there's no client and no keyboard focus
Return Vector2.Zero for Vector2.Normal if IsNearZeroLength, instead of NaN 🤯
New Hair! - Long Bob
https://files.facepunch.com/daniel/1b2111b1/sbox-dev_uIn4F9ltZi.jpg
7
Move Rust vehicle parts to asset party
https://asset.party/rust
Ignore some mega early IME WM events until the engine is initialized, should fix Proton crashing at startup
Fix Input.ClearActions, Input.ReleaseActions not working
Fix doubleclick triggering all the time [fixes sboxgame/issues/issues/3683]
Key binds work again
Fix stupid bot time hacks
Fix bot inputs
Add synchronous IRenderDevice::ReadBuffer and asynchronous IRenderContext::ReadBuffer
Add ComputeBuffer class for creating, reading and writing GPU buffers for usage with ComputeShader
Can be passed to RenderAttributes.Set( string, ComputeBuffer )
Read data from GPU with ComputeBuffer.GetData<T>( Span<T>, int, int )
Add ComputeBuffer.SetData( Span<T> ) and ComputeBuffer.CopyStructureCount( ComputeBuffer, ComputeBuffer, int )
Can set/copy data outside a graphics block
ServerListPanel: Add Create Game button if we don't find any servers
Fixed game view sometimes not rendering, getting stuck on loading screen forever
Fix gizmo interaction in engine
Citizen: added visemes animation prefab containing a set of viseme morph frames
Much more accurate and faster way to calculate max depth on tiled light building by using depth hierarchy, increase tile size to
[Pick] add MinMax downsample operator for Hi-Z depth buffer, this will help us do some GPU occlusion tests and trace what's between SSR geometry
Fix atmospherics not showing up on editor for shadingmodel shaders
Compiled shaders
Input is available in the game menu
* Setting Mouse.Position works again
* Fix ButtonEvents not flowing to UI
* GameMenu fills out Game.Server partially, loading input actions
* Add Panel.ButtonInput
* Fix Panel capture mode not working
* Fix cursor disappearing during loading
* Restore the cursor back to its original position after capture mode
* Fix game keys not unreleasing when another context takes over
* Pass escape down to panels, hold escape to close game
* Fix cursor not showing when it should
Fix cursor not showing when it should
Handle exceptions when using -project
Fix game keys not unreleasing when another context takes over
Pass escape down to panels, hold escape to close game
https://files.facepunch.com/garry/f816302e-5c42-4d7f-ae5f-3300d77f931f.mp4
Native Plat_ExitProcess calls managed Environment.Exit, this way AppDomain.ProcessExit events will always execute such as to flush Sentry events
Move bootstrap error dialogs to managed, display exception and make sure it lands in Sentry
Fix cursor disappearing during loading
Restore the cursor back to its original position after capture mode
Fix Panel capture mode not working
When loading game project (through welcome screen), if it fails to compile, don't immediately bail - load the project but don't show menu
Panel.ButtonInput will direct mouse buttons too
Saving a game stores current MaxPlayers in metadata. Fixed default menu Load Game not working, make it look OK.
Disable all game projects when entering content mode
Remove default pitch * 1.5f from Entity.BuildInput, just something we kept moving around from Source native
GameMenu fills out Game.Server partially, loading input actions
Add Panel.ButtonInput
Make Package.IsMounted() work clientside on listen server hosts
Setting Mouse.Position works again
Remove unused
Fix ButtonEvents not flowing to UI
Defer OnAfterTreeRender until end of tick to ensure children processed first and references set (#1180)
* Defer OnAfterTreeRender until end of tick to ensure children processed first and references set
* Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty
* Revert "Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty"
This reverts commit aae36e1777d11a5649c24985c0f8802ced3397b4.
Input Cleanup (#1183)
* Strip inputstacksystem
* Delete inputsystem.dll
* Rip out all the analog input stuff
* UserCmd is all generated in c# now
* Add Input.MouseCursorVisible
Allow buttons to unpress even if they don't have the same context
Update all entities network hash after a server package has been installed - sboxgame/issues#3635
Adding a new server package would correctly change the DynamicAssemblyHash
on both server and client, however all current entities would still have
the old DynamicAssemblyHash.
This would mean the clients would receive no [Net] updates for this entity.
So to fix this we explicitly reset all entities network hash with
Entity.UpdateAllNetworkHash() on OnServerPackageInstalled.
Reinitializing the network tables would've also worked but would be
wasteful since we know all our exisiting entities have not been changed
unlike if the DynamicAssemblyHash were changed from hotload
Make !activator work for target entity on outputs
Remove unimplemented procedural entities !caller, !player, !game_mode from combo box
Entity IO: !game targets the GameManager so you can have [Input]s on it
[Pick] add MinMax downsample operator for Hi-Z depth buffer, this will help us do some GPU occlusion tests and trace what's between SSR geometry
Make sure log files use process path since CurrentDirectory is too early from getting set here
Fix NRE with WaterController
See sboxgame/issues/issues/3664
Remove more unused
Remove more unused
New Plump Lips and New Eyebrows
https://files.facepunch.com/daniel/1b1911b1/Photoshop_QxYQXjnod1.png
Plus subtle simple face makeup!