usermattcancel
reposboxcancel

1,495 Commits over 1,157 Days - 0.05cph!

6 Months Ago
Fix CSceneSystem::DownsampleTexture trying to make a 0 width/height mip
6 Months Ago
Add facepunch.hc1 to tests Restore obsolete Gizmo.HitBox.Model function signature to maintain compatibility
6 Months Ago
▌▌▄▊▄▇ ▉█▉▊▆▌▋▆▍ ▅▅▊▅▌▄▅▌█▇▊▍▋▅▍, ▆▍█'▊ ▄▆█▍ ▋▋▍ ▊▅█▉▌ ▆▍ ▊▋█▅ ▅▊▄ ▊▍▊
6 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
6 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
6 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
6 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
6 Months Ago
Additional docs/cleanup
6 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
6 Months Ago
Hook it up in PS_FinalCombinerDoLighting before I do a full shader build
6 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)
7 Months Ago
Delete WorldPanel immediately OnDisabled, otherwise it will linger forever when play mode is stopped
7 Months Ago
Correct place for these SceneObject sealed overrides Clear all these ptrs first to be safe, seal some more shit
7 Months Ago
VoiceComponent.PushToTalkInput mark with InputAction attribute
7 Months Ago
TextRenderer remove Text2 test property
7 Months Ago
Don't keep sounds that failed to load around trying to mix forever (matches how old vmix mixer handles it) Fixes #1597
7 Months Ago
Hightlight.RenderEffect: Use Scene.GetAllComponents instead of iterating every gameobject ( closes #1597 )
7 Months Ago
Codegen should shit itself if you don't use a string literal from Cloud.Asset() methods Terrain: Add height blend settings, add per material height and normal strength, various other polishing Hide GameResource.ResourceVersion
7 Months Ago
TerrainMaterialList: Allow drops properly
7 Months Ago
Editor post processing toggle closes #1587
7 Months Ago
Tonemapping applies to editor camera too, respects Camera.EnablePostProcessing
7 Months Ago
Work in progress - colour grading Variuous changes - exposure added in RGB and HSV Keep tonemapping in its own component, remove uncommon options, cleanup
7 Months Ago
SteamLobbySocket caches owner, calling SteamMatchmaking.GetLobbyOwner each tick had significant impact
7 Months Ago
Expose Terrain size properties to settings sheet
7 Months Ago
New TerrainMaterial & TerrainStorage resources, rework creation of terrain, component custom editor, simple height blends and various QOL improvements New TerrainMaterial asset, can be used on multiple terrains, copied from other projects * Replaces TerrainData.TerrainLayer which used manual packed vtex files * Accepts source images for: albedo, normal, rough, ao, height * Compiles into 2 generated vtex_c * Contains other properties for metalness, uv scale, uv rotation * AssetPreview is used for editor UX too, instead of hacky shit before * TerrainMaterialEditor auto populates _normal _rough etc. properties from albedo * Drag drop TerrainMaterial assets into Terrain component * Open for expansion to grass/clutter properties TerrainStorage * Replaces TerrainData & TerrainDataFile * Make use of IJsonConvert to avoid all the crazy crap I was doing before * Drag drop TerrainStorage asset into scene * JsonUpgrader for TerrainData -> TerrainStorage, resmaples ^2+1 heightmaps to just ^2 Terrain component editor: * Support creating or linking TerrainStorage if none is attached * Split settings into its own tab * Add heightmap resampling for non pow2 heightmaps * Add import splatmap * Terrain creation no longer forced through GameObject menu, remove Hide attribute from Terrain component. * Remove special terrain save logic from SceneEditorSession, use scene.saved editor event * Texture streaming works properly * Basic height blend * Disable specular on terrain
7 Months Ago
New TerrainMaterial & TerrainStorage assets, improve terrain creation, no more manual vtex layers New TerrainMaterial asset, can be used on multiple terrains, copied from other projects * Replaces TerrainData.TerrainLayer which used manual packed vtex files * Accepts source images for: albedo, normal, rough, ao, height * Compiles into 2 generated vtex_c * Contains other properties for metalness, uv scale, uv rotation * AssetPreview is used for editor UX too, instead of hacky shit before * TerrainMaterialEditor auto populates _normal _rough etc. properties from albedo * Drag drop TerrainMaterial assets into Terrain component * Open for expansion to grass/clutter properties TerrainStorage * Replaces TerrainData & TerrainDataFile * Make use of IJsonConvert to avoid all the crazy crap I was doing before * Drag drop TerrainStorage asset into scene Terrain component editor: * Support creating or linking TerrainStorage if none is attached * split settings into its own tab, add filter properties * Don't force Terrain creation through GameObject menu, don't hide terrain asset generation in here, don't hide the Terrain component * Remove special terrain save logic from SceneEditorSession, use scene.saved editor event * Disable specular on terrain Terrain: Mark all TerrainMaterial textures as used and wanting max quality. In the future this could be smarter and not want max quality for textures used far away Basic height blend https://files.facepunch.com/matt/1b1711b1/sbox-dev_0JNrWPuC9N.png JsonUpgrader for TerrainStorage: Resample ^2+1 heightmaps to just ^2, use non-nested format Fix warning Heightmap import resamples if non pow2 given Recompile shader Terrain height scale scales the normal strength Import splatmap New Terrain Material button TerrainMaterial default images
7 Months Ago
Reverse Scene isEditor constructor so GameObjectSystem constructor is aware of editor scenes
7 Months Ago
▋▆█▄▅▍▋ ▉▆█▉▄▌▌▌▅ ▍▉▊▉▉▅ ▍▊ ▋▌█▍▆▆▉.▆▉▆▌█▋ ▍▌▊▄ ▄▋█▉▋▊▊ ▅▋▋▍ ▉▆▄▊▇▌▇ ▇▉▋▇ ▄▌-▇█▉▄█▇▄▊-▄█: █▇█▄▄ ▅▋▌▉ <█▉▊▇▆.▅▄▍▊@▉▄▇▋▋▉▆▆▄▊▋▇▋▇▉▋.▊▇▌>
7 Months Ago
TextRenderer: Add TextAlign, FontWeight, FontControlWidget, remove OnPreRender
7 Months Ago
▋▆▅█.▊▉█▇▍▉▋▆▉▄█▊▇█▆▍▆▉<▇> ▉▋▊▇▍▌▅ ▊▍▉▍▊ █▉ ▆▅▇█▉▅▄.▄▋▇▆▅▉ ▄▉▋▉▊ ▅▌▊▊▍ ▆▉▉▋▍ ▌▊▊ ▇▄ ▅▄▇▌█▋█▇█▄▆▄ ▋▆▄▄ ▆▄▇▉▉ ▌▉▅ ▅▍▍█▅ ▆▄▋ ▍▅ ▇▄▅▌▄▌ ▋▉ ▅▊▊▅▋▇
7 Months Ago
▊▊▋▄ ▋▌▉▇▊▌▇▊▆ ▍▄ ██▆ ▅▅▄▄▄▌▉▇▉▋▆▉▌█▋▌▍ ▇▌▍▋ ▆▌▍▍▌▄.▍▊▆▍▆▌ ▊▆▅▆▊▊▍ █▇ ▆▌▅▄▍▌▌ ▇▍ ▋▉▉█
7 Months Ago
▅▋▊▇▇▆▆ ▌▆▋▅▆▅█▍▉ ▆▇▄▍▊ ▇▉ ▋▆█▄▌█▅.▋▊▉▌▍▅ ▇▌▆▉ ▉▅▆██▆▊ ▅▋▌▉ ▆▄▉▊▋▆▌ ▅▍▅▇█▅
7 Months Ago
AssetInspector supports multiedit GameResource - resolves #5532
7 Months Ago
ScreenPanel should render ZIndex lowest to highest, matching all other UI behaviour - fixes Facepunch/sbox-issues#5462
7 Months Ago
SkyBox2D protect against null skybox - fixes Facepunch/sbox-issues#5569 Multi-edit works on [TextArea] properties - fixes Facepunch/sbox-issues#5556 Library projects get base project reference, matches compiler - fixes Facepunch/sbox-issues#5547
7 Months Ago
Fix warning Heightmap import resamples if non pow2 given Recompile shader
7 Months Ago
New TerrainMaterial & TerrainStorage assets, improve terrain creation, no more manual vtex layers New TerrainMaterial asset, can be used on multiple terrains, copied from other projects * Replaces TerrainData.TerrainLayer which used manual packed vtex files * Accepts source images for: albedo, normal, rough, ao, height * Compiles into 2 generated vtex_c * Contains other properties for metalness, uv scale, uv rotation * AssetPreview is used for editor UX too, instead of hacky shit before * TerrainMaterialEditor auto populates _normal _rough etc. properties from albedo * Drag drop TerrainMaterial assets into Terrain component * Open for expansion to grass/clutter properties TerrainStorage * Replaces TerrainData & TerrainDataFile * Make use of IJsonConvert to avoid all the crazy crap I was doing before * Drag drop TerrainStorage asset into scene Terrain component editor: * Support creating or linking TerrainStorage if none is attached * split settings into its own tab, add filter properties * Don't force Terrain creation through GameObject menu, don't hide terrain asset generation in here, don't hide the Terrain component * Remove special terrain save logic from SceneEditorSession, use scene.saved editor event * Disable specular on terrain Terrain: Mark all TerrainMaterial textures as used and wanting max quality. In the future this could be smarter and not want max quality for textures used far away Basic height blend https://files.facepunch.com/matt/1b1711b1/sbox-dev_0JNrWPuC9N.png JsonUpgrader for TerrainStorage: Resample ^2+1 heightmaps to just ^2, use non-nested format
7 Months Ago
.gitignore: wanna keep these launchSettings local
7 Months Ago
Clear up these ".vfx" references to avoid confusion ColorGrading: Expose to TypeLibrary, make properties public so inspector can find them (Engine classes are exposed differently than classes in projects) Compiled ColorGrading shader ColorGrading: Don't need these private enums, they map 1:1 with the public
7 Months Ago
Revert "Fuck knows why I did this, seems to be causing problems now" - Fucked on AMD. It'll be easier to debug when we're not rendering backwards in NativeRenderingWidget
7 Months Ago
Fuck knows why I did this, seems to be causing problems now
7 Months Ago
Fix Razor panels erroring when using <style> tags. All code paths are already relative since CodeArchive changes. Fixes Facepunch/sbox-issues#5528
7 Months Ago
DragAssetData.Parse: Resolve local asset before attempting to make it a package ident Material API specular obeys S_SPECULAR same as Valve's PS_FinalCombinerDoLighting (you can now turn it off) Graphics.PrepareTextureForUse -> Texture.MarkUsed (Doesn't need a graphics context now) Json.SerializeAsObject (GameResource serialization) supports [JsonInclude] on non public properties. Deserialization already supported it.
7 Months Ago
Don't cache null types in AssetType.FromExtension. Fixes GameResource assets not appearing in projects that use libraries. Fixes Facepunch/sbox-issues#5498
7 Months Ago
We need to change the depth clear value from 1->0 (in 3 different places of course) Recompiled core shaders
7 Months Ago
renderdevicevulkan: enable reverse depth Reverse the DepthFunc on all shaders GREATER <-> LESS gizmo_grid: reverse manual depth bias
7 Months Ago
Graphics.PrepareTextureForUse -> Texture.MarkUsed (Doesn't need a graphics context now) Terrain marks all its textures as used for streaming - this could be done more intelligently in the future with certain regions only using certain textures Fix sbuffer packing Fix errors TerrainMaterialEditor autofills _normal _rough etc etc Basic height blend https://files.facepunch.com/matt/1b1711b1/sbox-dev_0JNrWPuC9N.png
7 Months Ago
TerrainMaterial resource with custom compiler which generates 2 packed vtex_c from 5 PBR source images https://files.facepunch.com/matt/1b1611b1/FvEbxe3xoQ.png [pick] DragAssetData.Parse: Resolve local assets first before trying to package ident Don't force Terrain creation through GameObject menu, don't hide terrain asset generation in here, make it so you can add a Terrain component Add TerrainMaterial AssetPreview - we'll use this for the editor ux too Replace horrible TerrainData/TerrainDataFile combo with TerrainStorage GameResource Stub TerrainStorage ResourceEditor Remove special terrain save logic from SceneEditorSession, use scene.saved editor event Terrain component editor supports creating or linking TerrainStorage if none is attached https://files.facepunch.com/matt/1b1611b1/PiMEhkVZd8.png Terrain component editor split settings into its own tab, add filter properties https://files.facepunch.com/matt/1b1611b1/obbHlfw3m8.png TerrainLayerList -> TerrainMaterialList - much simpler, use the TerrainMaterial's AssetPreview thumb DragDrop TerrainMaterial into TerrainMaterialList TerrainMaterials GPU buffer, shader uses BCR/NHO textures with 2 channel normal, adding height and AO parameters PreviewTerrainMaterial: Add nho texture, make previews way bigger https://files.facepunch.com/matt/1b1611b1/6eH6XTWtsI.png [pick] Material API specular obeys S_SPECULAR same as Valve's PS_FinalCombinerDoLighting (you can turn it off) Disable specular on terrain https://files.facepunch.com/matt/1b1611b1/sbox-dev_SWZ86cs1iM.png https://files.facepunch.com/matt/1b1611b1/sbox-dev_hhcEQ6Tnhp.png TerrainMaterial add metalness TerrainDropObject
8 Months Ago
Cleanup
8 Months Ago
vtf project unused Save Scene default path is assets path