usermattcancel

1,399 Commits over 913 Days - 0.06cph!

8 Months Ago
Hammer: Add extended box gizmo handles as a saved option https://files.facepunch.com/matt/1b1611b1/sbox-dev_aoNTlauVjt.png
8 Months Ago
▆▄▍▉▆▋ ▊██▄█▄▆ █▄▊▊▅▌▍▉█ ▆▌▇▊▊▅▋▇▋▋▉ ▍▉ ▌▅▋▄▍▊▉▌▅▆▍▆▅▅█▋▅█▌▆▋▋▄.▅▉▅▉▊▄, ▇▊▉▇▍ ▅▉ ▌▄▌▆▍▊▅▊ ███ ▍▇▊▊▆▊▊ ▋▅▄▊█▌ ▅▌ ▋▌▉▇▌▆▄▍
8 Months Ago
▋▋▆▇▌▌▅▍▆▊▊ ▆▉ ▍▇▄ ▅▉▋▉▇▆ ▅▉▆▄▋▉▉ ▉▇█▅ ▌▅▌▇▅▍ █▍▆ ▆▄ ▋▄▌▅▄▇▊ ( ▊▋▊▄▉▊▋/▄▋▄▊█▋▇▆ ▅▋▋█▋▄▊ ▇▊ ▅▍▄-▌▆▅▊█▅▍ ▊▋█▋▊▆▊▄▅▇ )
8 Months Ago
▅▌▅▊█▆▌█ ▍▉█▍: ▉█▆▅▍▊▊█▍▉ ▊█▍ ▄▅▊▊▅▆▊▌▌▅ ▋▌▄ ▇▋▊█
9 Months Ago
Make sure CPipelineCacheManagerVulkan::PreShutdown() is called Vulkan: Stylistic code updates, make diffs easier Hammer: Remove legacy asset browser 👋
9 Months Ago
Revert "Fix AddBlitTextureToTargetLayer not blitting correctly if dimensions are different" This reverts commit 076e225cae9b15bffce9a6c45e37a4ec49cb89b4.
9 Months Ago
RenderTools::Draw don't reset the bound transform, but make sure it's set in CManagedRenderLayer before passing to UI.. Not great solution overall
9 Months Ago
vulkan: more VK_EXT_extended_dynamic_state fixes UI VertexInput should only have nInstanceID with D_MULTIVIEW_INSTANCING VK_EXT_graphics_pipeline: validate pipeline descriptor sets before draw Vulkan: Remove AMDBindVertexBuffersWorkaround (fixed in 2018) RenderTools::Draw: Add BindTransformSlot for an identity transform ( In future this should probably be CSceneSystem::BindIdentityTransformAndInstanceIDBuffer ) CRenderContextVulkan::BindVertexBuffer - mark it as used
9 Months Ago
vulkan: set primitive topology when using VK_EXT_extended_dynamic_state
9 Months Ago
Tool vis works in ScenePanel and anything else that uses Graphics.RenderToTexture https://files.facepunch.com/matt/1b0111b1/sbox-dev_gjSS0HmRRF.png
9 Months Ago
Fix Mouse.Delta not working causing dragging in UI not to work too
9 Months Ago
▍▊▅▄ ▄▍▉█▆█.▌▋▉▋▅▇▇▆▇▌▆█▉▋▌▇▇▍▇▉▆▍▆<▉> ▋██ ▉▊▍▉▋▋▍▌▄▅█▆▊.▆▉▋▋<█> █▅▇▆▊▊▉ ▄▊ ▆▌█▍▍▋▍.▌▉▇▇█▋▉▌▋▅▌▋▊▇<▋> ▆▉▅ ▆▇▄▆▄▇▍▊▅▋▄ ▊▅ ▉▉▋█▍█▇▍▋ ▉▉█▉▌ ▌▇▇█▉▌▌▊▇▌ ▉▉▍█▌▉▌▌▅▍ ▆▆▍▌▋▌▆▆█ ▌▉▌, ▉▉▅▆ ▋▆█▋▇▍ ▅▌▍██▍▄▅▊▊▆▉▉.▉██▋ ▋▊▉▅ ▉▇▊ ▄▇▆▊▌▉ ██▉▇ ▄▅ ▍▇█▆▆'▆ ▅▌▊▍▄▉▌ ▇▉▋ ▅▌▋▊█▆▇▄ ▊█▇▅ ▆▌▍▆
9 Months Ago
ComputeShader.Dispatch: Remark about thread group size being automatic CRenderThreadDx11::OnReadBuffer: staging buffer needs to be the same size as the buffer to read, otherwise partial or offset reads silently fail
9 Months Ago
SceneModel.SetMaterialGroup -> SceneObject.SetMaterialGroup - dunno how I'd fucked this
9 Months Ago
ILHotload runs hotloaded event
9 Months Ago
foliage shader: transmissive features (transmissive in general seems fucked though, one for sam though)
9 Months Ago
If -project was already added but inactive, make it active Stop opening cloud menu for -project launched games
9 Months Ago
ComputeShader use Material.FromShader, support using resource paths e.g new ComputeShader( "shaders/cs_compress.shader" ); Don't call Environment.Exit on ProcessExit, but make sure we still flush managed SentrySdk just before TerminateProcess
9 Months Ago
Add ComputeBuffer<T> class for creating, reading and writing GPU buffers for usage with ComputeShader Structured buffers, byte address buffers and append structured buffers are all supported. https://wiki.facepunch.com/sbox/Compute_Shaders
9 Months Ago
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> 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 ComputeBuffer<T>.CopyStructureCount<U>( ... ) YUCKY generics Don't make ByteAddress buffers with unordered access Docs, GetData alternative with no count, checks for disposed buffers
9 Months Ago
ComputeBuffer<T>.CopyStructureCount<U>( ... ) YUCKY generics Don't make ByteAddress buffers with unordered access
9 Months Ago
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
9 Months Ago
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>
9 Months Ago
Ignore some mega early IME WM events until the engine is initialized, should fix Proton crashing at startup
9 Months Ago
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
9 Months Ago
Handle exceptions when using -project
9 Months Ago
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
9 Months Ago
Remove default pitch * 1.5f from Entity.BuildInput, just something we kept moving around from Source native
9 Months Ago
Make Package.IsMounted() work clientside on listen server hosts
9 Months Ago
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
9 Months Ago
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
9 Months Ago
Make sure log files use process path since CurrentDirectory is too early from getting set here
9 Months Ago
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 )
9 Months Ago
All the stuff I just missed with .addon -> .sbproj, can still add inactive .addon and have it rename, don't do -project content projects as if they're games
9 Months Ago
.addon becomes .sbproj (auto renames), editor creates file association, rework -project make it simpler https://files.facepunch.com/matt/1b1911b1/explorer_Os0Tf2Y8l7.png
9 Months Ago
.addon becomes .sbproj (auto renames), editor creates file association, rework -project make it simpler https://files.facepunch.com/matt/1b1911b1/explorer_Os0Tf2Y8l7.png
9 Months Ago
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 )
9 Months Ago
Fix crash when dragging cloud models quickly in/out of MapView
9 Months Ago
Don't spam Draw: No Material Mode? from RenderTools::Draw, it's valid for there to be no valid mode when you're under tool vis modes
9 Months Ago
Trace.RunAll() - return empty array instead of null for no results Fix copying text throwing exception
9 Months Ago
Fix tests
9 Months Ago
.addon files become .sboxproj files Editor .sboxproj file association launches with -tools -project filepath https://files.facepunch.com/matt/1b1811b1/NVIDIA_Share_yyKyjxy8Lp.mp4 Make -project simpler, deactivate all other projects early and go to the game menu
9 Months Ago
Don't release jump list object unless it's succeeded (should fix crashes on Proton and maybe weird Windows setups), release another thing too
9 Months Ago
Shadergraph: only compile preview shader for the current render API
9 Months Ago
ShaderGraph: Use .source2/temp folder that is actually mounted instead of absolute path shaders, these go properly through the ShaderTypeManager and get the right offsets then Can compile Vulkan shaders on shadergraph / shaderhook now without crashes on DX11 🤯
10 Months Ago
Remove very last DX9 references from source code 🫡 rubikon: Fix double free crash in CMultiworldSoftbodyStepper
10 Months Ago
Update Qt with backported QTextEngine fixes for shitty strings TextEdit.AppendHtml remove invalid control characters, Qt has an open report on crashes caused by these.. and they're invalid anyway
10 Months Ago
fp.bat: use vswhere to find vcvarsall.bat Fixed a possible crash with certain fonts when shaping strings consisting only of control characters qt/qtbase/commit/fccd419dd632306a4bd85928223e0a56a59510ef Unicode: fix the extended grapheme cluster algorithm qt/qtbase/commit/be0aa6a9a230dc98994cb65d97b76be7ae695a44 Fix handling of surrogates in QBidiAlgorithm qt/qtbase/commit/94ce755dcd823678b0338f4bb4149fe4eeb844c2
10 Months Ago
Fix crash with procedural materials
10 Months Ago
Update materialsystem2 with latest Valve code Backporting latest Valve code to make it easier to integrate raytracing & bindless Removes render passes that never did anything, lots of refactoring materialsystem2 API becomes much simpler to draw stuff too: ```diff - IMaterialMode *pMode = pMaterial->GetMode( "Default" ); - if ( pMode != NULL ) // NULL if unsupported mode - { - MaterialRenderablePass_t renderablePassArray[ MATERIAL_RENDERABLE_PASS_MAX ]; - int nNumPasses = pMode->ComputeRenderablePassesForContext( NULL, pRenderContext, renderablePassArray ); - for ( int i = 0; i < nNumPasses; i++ ) - { - g_pMaterialSystem2->SetRenderStateForRenderablePass( NULL, pRenderContext, g_hLayout, renderablePassArray[i] ); - pRenderContext->DrawIndexed( RENDER_PRIM_TRIANGLES, 0, 6 ); - } - } + IMaterialMode *pMode = pMaterial->GetMode( "Default" ); + if ( g_pMaterialSystem2->SetRenderStateForMode( pMode, NULL, pRenderContext, g_hLayout ) ) + { + pRenderContext->DrawIndexed( RENDER_PRIM_TRIANGLES, 0, 6 ); + } ```