usermattcancel
reposboxcancel

1,380 Commits over 1,066 Days - 0.05cph!

5 Days Ago
Optimize TextureBuilder creations with no initial data * Use vkCmdClearColorImage instead of allocating a big empty buffer in managed * Texture.CreateInternal also passes a nullptr if the span is empty, so we don't do additional unnecessary setdata It's weird all of this stuff has an API of Span<T> & int length, but hard to fix without API breaking changes DrawIndirectArguments should be LayoutKind.Sequential
22 Days Ago
Backport some more gpu profiling for scenesystem
22 Days Ago
Backport scenesystem GPU profiling
24 Days Ago
Restore these deleted attributes to Valve core shaders, where we ended up only including them accidentally only in reflection mode in complex..... (fixes missing world mapping and other features in complex & more) sbox/pull/736/commits/bca14ecb2bba7d5410a2b971ab1f9a9c406a41d3 We should not be removing core stuff from core shaders because we're accidentally including our material api. The material api should depend on core, not the other way around compiled complex
30 Days Ago
ComputeBuffer.GetData - 0 count is illegal Add Model.GetIndexCount( int ) Model.GetIndexStart( int ) Model.GetBaseVertex( int ) Shadow map layers set proper ELayerEnum::Shadow, fixes SceneCustomObject not casting shadows
30 Days Ago
30 Days Ago
git blame ignore "Copy over changes for shader resources"
30 Days Ago
ComputeBuffer methods use the current render context if applicable, otherwise stuff is in weird shit orders Match upstream m_bIsReadOnlyDepthStencil Don't bind ShadowDepthBuffer as an input whilst we're writing to it as a render target (drawing shadows)... 🤯
30 Days Ago
Add ComputeBuffer.SetCounterValue( uint ) for Append buffers
31 Days Ago
Add ComputeBufferType.IndirectDrawArguments Public Graphics.DrawModel(Instanced)(Indirect), prefer Span<Transform> to Transform[T]
32 Days Ago
Terrain:GetHeight() multiplies by heightscale
33 Days Ago
compiled complex.shader_c with stripped combos 259MB -> 102MB... there's more we can do but let's see if anyone whines first
33 Days Ago
complex.shader: remove F/S_OVERLAY, we have specialized overlay shaders already complex.shader: drop texture animation, way too specialized complex.shader: half combos by making S_REFLECTIONS it's own shader variant since it doesn't really use 99% of the other combos shaders: drop D_BAKED_LIGHTING_FROM_VERTEX_STREAM complex.shader: combo rules for F_PARALLAX_OCCLUSION (insanity that we added this to this shader) Drastically reduce unlikely combos by disallowing with: - Translucent - Alpha Test - Cloth Shading - Bent Normals - Diffuse Wrap - Additive Blend - Detail Texture - Metalness Texture - Retro Reflective
39 Days Ago
Fix crash from trying to upload too many envmaps to the GPU, missing range check but also why are there this many envmaps being binned @samzanemesis
40 Days Ago
Add Scene.RenderAttributes for global render attributes for usecases similar to Unity's Shader.SetGlobal...( ) Terrain buffers are global scene attributes (that actually work this time)
42 Days Ago
Remove max thread count from pooled dynamic vb/ib, fixing crash when used from too many threads (.net threads with unreliable ids)
43 Days Ago
Fix open_asset crashing in non-tools Don't show lobby cards for games marked as hidden (unless you're in that org)
43 Days Ago
Another out of memory fatal error
43 Days Ago
Validate descriptor bindings of a shader (for real this time, not in a dead method) - prevent crashing by not loading these invalid shaders
43 Days Ago
Tag map for sentry too (if launched with a map)
43 Days Ago
Fix exception with no camera
43 Days Ago
Some error reporting breadcrumbs/tag for identifying game package Breadcrumb pipeline creation to see what shaders crashing us
43 Days Ago
Running out of video and system memory is a fatal error
43 Days Ago
Move all terrain attributes into 1 structured buffer, create a Terrain class any shader can use to provide things like Terrain::GetHeight( worldPos ) Use an AssetPicker for browsing terrain materials instead
43 Days Ago
UI: Do not render invalid texture background images Fix missing map select button
43 Days Ago
Disallow np2 textures, crashes the DXT compressor we use, plus disables mips etc.
43 Days Ago
CRenderDeviceBase::AsyncSetTextureData2: Fix nullptr crash with invalid rects Don't completely fail to start with an invalid controller plugged in, needs to be properly fixed in C++ though
48 Days Ago
Fucked debug code
48 Days Ago
Terrain: Add Hole tool This is a seperate R8 texture currently, but will be JsonUpgrade and folded once the splat map becomes an index map. https://files.facepunch.com/matt/1b2111b1/0pGQXMLbc2.png
48 Days Ago
Browse cloud terrain materials button Can drop terrain materials onto terrain in scene
50 Days Ago
Terrain Materials accept dragged cloud assets
51 Days Ago
TerrainMaterialList: Double clicking a material opens its editor (single click selects for use still) Terrain settings hide Collider properties which we force, can we have Terrain not inherit these at all @aylaylay Terrain: larger default clipmap extents (fine but can be smarter without a clod mesh), remake clipmap mesh on dirty properties Terrain: Add MaterialOverride for custom shaders using terrain shader api
52 Days Ago
DynamicSceneObject: AddVertex( Span ) should not accept a count, internalize ptr only method, VertexSceneObject adds range
2 Months Ago
Reverse Z (#1581) Every other modern engine uses a reversed depth buffer, Unity DX11+ UE4+ Godot It brings a massive improvement to depth buffer precision helping to prevent z-fighting and other depth precision issues. Source 2 has always had support for it but was not forced because of DX9. We should have turned this on long ago and will have to rip the band aid off at some point. It will break peoples custom shaders. The other ways their shaders would break that I'm unsure if we could provide compatability are rare: Interact with the depth buffer directly or through Depth::Get etc. Perform operations in clip space like gizmo_grid.shader does. I don't see why we'd ever change clip space direction again after this.
3 Months Ago
EditorPreferences.CameraZNear minimum range 1 please stop Resolves Facepunch/sbox-issues#5696 Box select works in ToolVis modes (ui_cssbox shader) Resolves Facepunch/sbox-issues#5699
3 Months Ago
Fix CSceneSystem::DownsampleTexture trying to make a 0 width/height mip
3 Months Ago
Add facepunch.hc1 to tests Restore obsolete Gizmo.HitBox.Model function signature to maintain compatibility
3 Months Ago
▌▌▄▊▄▇ ▉█▉▊▆▌▋▆▍ ▅▅▊▅▌▄▅▌█▇▊▍▋▅▍, ▆▍█'▊ ▄▆█▍ ▋▋▍ ▊▅█▉▌ ▆▍ ▊▋█▅ ▅▊▄ ▊▍▊
3 Months Ago
ModelRenderer: Remove OnPreRender again, if this was hacking around something fix the root cause Replace AudioListener.OnPreRender Optimize NativeResourceCache.Tick() - was taking up to 0.25ms some frames
3 Months Ago
Add [Range( 1, ... )] to Camera.ZNear and Camera.ZFar, update docs. Seen a couple 0.01 inch znear cameras with insane z fighting today
3 Months Ago
VoiceManager: GetAvailableVoice before GetVoice, otherwise it's 0.1ms every frame (even when not speaking) Why would we need to set LightCookie to null on a destroyed light. Resolves Facepunch/sbox-issues#5664 Whitelist Delegate equality operators resolves Facepunch/sbox-issues#5658 Whitelist DependentHandle resolves Facepunch/sbox-issues#5660
3 Months Ago
Temporary RTs always have a UAV binding so you can use them with compute shaders SSAO: Use RenderTarget.GetTemporary instead of manual texture allocations
3 Months Ago
Additional docs/cleanup
3 Months Ago
Screen Space Ambient Occlusion SSAO: Remove PS variant, hide difficult options and set some nice defaults, add r_ssao_debug, cleanup unused/unneeded SSAO draws after opaque, not transparent. Added CameraComponent.AddHookAfterOpaque
3 Months Ago
Hook it up in PS_FinalCombinerDoLighting before I do a full shader build
3 Months Ago
CDecalSceneObject - Non renderable, holds data only but can be culled by the scenesystem Tiled Frustums ( We should make light culling use these as they are more accurate and faster ) Partial backport of ISceneObjectDesc::OnSceneObjectVisibleInView Forward+ Decals * Decals get binned by the lightbinner from OnSceneObjectVisibleInView (all lights should start using this callback too) * Tiled culling checks decals within each tiles frustum * Decal::Apply( ... ) is used to mix decal's albedo, normal, etc. into surface Apply forward+ decals as part of standard shading (recompiles needed to support this feature)
3 Months Ago
Delete WorldPanel immediately OnDisabled, otherwise it will linger forever when play mode is stopped
3 Months Ago
Correct place for these SceneObject sealed overrides Clear all these ptrs first to be safe, seal some more shit
3 Months Ago
VoiceComponent.PushToTalkInput mark with InputAction attribute
3 Months Ago
TextRenderer remove Text2 test property