20,810 Commits over 1,522 Days - 0.57cph!
Change how escape button works, so it has a set path from game => menu -> tools
Input.EscapePressed is no longer accumulated
Input.EscapePressed has a setter, so you can prevent it doing further things
Break game window focus in editor if escape is pressed
Do an initial clear initialization on FindOrCreateFrameBufferScratchTexture to make sure the data is not garbage, should fix SSR accumulation artifacts specially on multiview
UI-only clears should respect if ( r_ui.GetBool() ) as also per sbox/issues/1575 , will check to make this a clear layer rather than a render layer
Don't html encode comments
Add this function back, someone was using it
Rework polygon mesh to have texture coords the same as hammer, coords can be computed by params and params can be computed by coords. This allows texture wrapping to be identical to hammer. https://files.facepunch.com/layla/1b1911b1/sbox-dev_eGxR8MTpVC.mp4
Delete ILobby
Add softsplit.donut to codearchive test
Use intermediary texture to avoid collision in filtering generated cubemaps, this should fix the cubemap corruption in certain hardware
Fix Project.HasCompiler logic to look for any compiler (resolves sbox-issues/issues/5531)
beard adjustments / fixes
Add CompilerName and AdditionalFiles to CodeArchive
Add CompileCodeArchive test
Remove model check in CMeshSystem::ChangeModel, this function needs to run even if it's the same model for model reloads
We could actually interpolate the body transforms on the client like this
Don't cache null types in AssetType.FromExtension. Fixes GameResource assets not appearing in projects that use libraries.
Fixes Facepunch/sbox-issues#5498
We need to change the depth clear value from 1->0 (in 3 different places of course)
Recompiled core shaders
renderdevicevulkan: enable reverse depth
Reverse the DepthFunc on all shaders GREATER <-> LESS
gizmo_grid: reverse manual depth bias
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
add setting to lock scene camera rotation
fix incorrectly sized gizmo hitboxes in ortho view
replace remaining direct scene camera transform accessors
tweak sprite gizmo hitbox scale in ortho views
New Clothing Piece! - Cowboy Hat and Sleeveless Jacket
First passes of the cowboy and sleeveless jacket assets
LODs and further skinning adjustments coming ASAP.
https://files.facepunch.com/daniel/1b1711b1/ApplicationFrameHost_3qpuuGFpGa.jpg
Make async optional, make CameraComponent still be async since we are not waiting for any other operation than itself
Add MusicPlayer.TargetMixer
Support compiling from a MemoryFileSystem
Re-implement / simplify FastPathTest
Fix test host process crashing in TestCompiler
Support compiling from a MemoryFileSystem
Re-implement / simplify FastPathTest
Fix test host process crashing in TestCompiler
camera fixes: make orthographic clipping more predictable, add smooth(er) perspective/ortho transitions, fix gizmotest widget, reenable scene camera copy
Remove VR hand assets from "Half-Life: Alyx" & associated source files
Support compiling from a MemoryFileSystem
Re-implement FastPathTest, simplify how changes are defined
Update FastPathTest comment
Support compiling from a MemoryFileSystem
Fastpath tests pass again
Simpler way of describing changes in fastpath tests
Re-implement fast path tests
Not passing yet
Mesh Editor: Alt+Right actually wraps the uvs now https://files.facepunch.com/layla/1b1711b1/sbox-dev_xWZDd66awF.mp4
Generate schema as part of build
Hide some of these filesystem things, in hopes that the analyzer stops looking for zio
Update minor update packages
SkinnedModelRenderer: Don't let anything get in the way of deleting the sceneobject on disable
VR hands: couple more fixes + "cylinder" poses
Update VR hands with more backported stuff & fixes + left hand model
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
Include code archive when publishing
Revert "Don't create control widgets if their type doesn't have a default constructor (resolves sbox-issues/issues/4732)"
This was breaking certain types that are created from native
Don't copy filesystem dll to game root
Don't create control widgets if their type doesn't have a default constructor (resolves sbox-issues/issues/4732)
ByteStream can be accessed from non-main threads
Add ByteStream.Compress(), Decompress
Can create compiler without file path
CodeArchive serialize/deserialize
Write code archive to filesystem
Make sure any GPU callbacks are finished before disposing of pixmaps on managed, read from RGBA8888 pixmaps directly
Pass vulkan-related stuff in as structure
temp disable copying from scene camera
Hack around extension-related crash for now