7 Months Ago
Renamed "Normal" SceneCameraDebugMode to "Lit", expose Roughness vis mode Add BallJoint component Attempt to make gradients match their web counterparts a little more This isn't perfect and we should really investigate the root cause for this: sbox-issues/issues/5477 This shiz is confusing - try this Add Rotation.FromToRotation (fixes sbox-issues/issues/5243) Fixed blendable shader error (restore ComputeBlendWeight method), push new compiled shader Add GameTransform.DisableProxy(), to disable the proxy in a scope. Create TransformProxyComponent, which allows components to override the transform of a GameObject in a non destructive way. Fix NRE in Component.Scene, Component.Transform README: Link to docs, remove old docs, unrequired prerequisite Fixes to restore some old and intended behavior, additional documentation EnumControlWidget: Use Title instead of Name in PaintControl Add GameObjectFlags.ProceduralBone Serialize GameObjectFlags, but selectively read them SkinnedModelRenderer sets bones directly, reads back procedural bones Make procedural bones a different color. allow toggling in inspector Download bones on main thread Try to avoid TransformChanged() getting called for each bone on animation When setting bind pose, also reset the animhelper Add SkinnedModelRenderer,ClearParameters Fix one frame without procedurals Start cleaning up menu bar Rate limit leaderboard queries Changed play button bind back to F5 Shadergraph: Add Tint node to grab the tint of the sceneobject Shadergraph: Add tint color to render options https://files.facepunch.com/layla/1b1011b1/sbox-dev_ELn53pVfKS.png Add Mesh.UvDensity, needs to be calculated for texture streaming Calculate uv density for scene meshes Shadergraph: Add world space to tangent space to TransformNormal node Recompile decal shader, lighting was fucked (https://files.facepunch.com/devultj/1b1011b1/mhPZ645aj0.jpg) Add Recent Scenes to File Menu (https://files.facepunch.com/devultj/1b1011b1/yyrxhZZSIa.png) Move Recent Scenes into its own section between Save All and Quit Don't serialize ResourceVersion to GameResources (resolves sbox-issues/issues/5440) Update DepthOfField.cs FocalDistance approaching zero was causing a numeric issue and assert. Add ability to grab underlying shader name from Material Whitelist System.Private.CoreLib/System.Type.GetTypeCode( System.Type ) TypeCode is already whitelisted, so no need to do that too here. Add ability to drag and drop decal materials into the scene (https://files.facepunch.com/devultj/1b1011b1/sbox-dev_3sOvpxNACW.mp4) HtmlEncode code-generated descriptions (so it can convert &amp, etc..) vtf project unused Save Scene default path is assets path winter coat and trapper hat LODs Read bone positions to GameObjects on first frame animate Fix Json.SerializeAsObject handling indexers Some DOF shader optims - Work in progress Some DOF optimisations including eliminating trig from pixel loop. This is Work in Progress, could do more optims here. Workout bones and attachments on first set model Change GetShadowDownsampleLevel to calculate based on the percentage of how much the light is visible on the screen rather than distance heuristics, also adjust CalculateSpotResolution and increase base value Invalidate light cache when a light moves Bone gizmos https://files.facepunch.com/layla/1b1211b1/sbox-dev_JyFl9Jtw4A.mp4 Mark citizen IK bones as hidden so gameobjects aren't created for them Add Sandbox.Filesystem and Sandbox.Compiling Fix unit tests not finding system assembly refs Remove AddGameWithPackageBase test - this is no longer supported Fix hotload fast path not using fast hotload Fix scene mesh export not remapping face indices Fix shitty hack on RenderScene() Use Present() which also has logic to handle swapchain size changes for widgets than HandlePendingSwapChainResize() Expand and expose SystemInfo * add cpu and ram info to Hardware, expose to api * Rename Hardware -> SystemInfo, add ProcessorCount Wrapped method resume will get async keyword when wrapped method has it Fix tests Silently term any new children created from children's OnDestroy when clearing scene. Fixes Facepunch/sbox-issues#4855 ImpureAttribute to compliment PureAttribute Facepunch/sbox-issues#5499 Handle RootNamespace option in SimpleComponentTemplate Revert to NativeRenderingEngine hack, still need to deal with edge cases, I'm debugging it better ActionGraph: don't qualify type names by assembly name Fixes Facepunch/sbox-issues#5473 Cleaning compiler Filesystem Cleanup Restore play mode toggle shortcut while focusing the game viewport Fixed GameDebug button being cut off awkwardly (resolves sbox-issues/issues/5490) Get rid of ICSharpCompiler, tools can use the Compiler and Microsoft.CodeAnalysis directly Restore functionality to Input.ReleaseAction (sbox-issues/issues/5500) Update template .gitignore to capture exclusion directories for Libraries Make editor startup with missing components more unlikely (but not totally fixed) Update DepthOfField.cs FocalDistance approaching zero was causing a numeric issue and assert. Merge pull request #1576 from Facepunch/DOF-fix Update DepthOfField.cs Fixed controller gamepad actions not working in FixedUpdate Always serialize InputAction.GamepadCode - this might not be the best course of action, but it resolves the problem where you can't bind an input action to GamepadCode.A (0) Add cylinder colliders to wheel01 breakpieces, was causing assert on compile in debug Map instance uses vmap resource type for map name to be able to select map with asset browser Optimisations to Postprocessing shaders Optims to Postprocessing - Depth of Field, Bloom, Blur, Sharpen, Also DoF bug fix on focal distance at 0 Embed the framework ref dlls instead of having them loose in bin/ref/ Move compiler tests to Sandbox.Compiling.Test Lets update the refs while we're here - v7.0.408 Support maps in ResourceStringControlWidget (local and cloud) Merge pull request #1567 from Facepunch/compiler-project Moving Compiler to its own project, own unit tests, cleanup. The aim of this is to isolate the compiler and compile group more, so it no longer feels unwieldy. This will also give Tools direct access to CompileGroup and Compiler. Clear map when clearing map property Fix copying from map asset paths Support cloud map drag drop into property https://files.facepunch.com/layla/1b1411b1/sbox-dev_fB6S2Aduks.mp4 Independently Interpolated Transform Parts + Other Fixes (#1577) Initiailize target local with Transform.Zero. SceneUtility.GetPrefabScene never actually saves the cached scene to the var. ( Fixes Facepunch/sbox-issues#5511 ) Query pos/rot directly Query game package MaxPlayers when creating a lobby Query collision rules, CharacterController.UseCollisionRules (#1566) * Added `PhysicsWorld.GetCollisionRule(string left, string right)` * Added `WithCollisionRules(string tag, bool asTrigger)` to `PhysicsTraceBuilder` and `SceneTrace` * Added `bool CharacterController.UseCollisionRules` * Update helper text in CollisionPage https://files.facepunch.com/ziks/2024-05-15/firefox_9de7c5NRvM.png Merge branch 'master' into MDV---PostProcessing-optims Fix GameLoadingFlags.Developer Add missing [Flags] attributes Post processing optims / tidyups Depth of field & blur - several mods - trig. eliminated in loops + other minor improvements. DoF bug fixed when focal distance close to 0 previously asserted. math fixed. Merge branch 'MDV---PostProcessing-optims' Cleanup Hotload: ignore Microsoft.CodeAnalysis ControlObjectWidget: don't create an instance for AG properties Support multiple scene mesh export to vmdl https://files.facepunch.com/layla/1b1511b1/sbox-dev_KtN4e3locJ.png Changing primitive type of mesh now works with multiple selection EnumControlWidget supports multi edit https://files.facepunch.com/layla/1b1511b1/sbox-dev_eZLBW8jHHL.mp4 Add MeshComponent.HideInGame, usually for clips or triggers Disable rendering of scene object before deleting it, usually good practice because delete is a frame behind Allocate initial texture data for textures created with no data provided so they don't use uninitialized data Work-in-progress replacement for VR hands Add map drag drop for easier map setup https://files.facepunch.com/layla/1b1611b1/sbox-dev_AFyG42ycDa.mp4 Adding CompilerOutput, to consolidate the output of a compile Ignore xml files in game/ Update .gitignore Remove "Open in Code Editor" from launcher project rows Allow dropping a .action into the Action Graph editor https://files.facepunch.com/ziks/2024-05-16/sbox-dev_7kY8vTea7g.mp4 Fixed target type of AGs on the root of a prefab AG node double-click opens new tab in same window Can drag .action resources into Action properties https://files.facepunch.com/ziks/2024-05-16/sbox-dev_rSLRXcZtPU.mp4 Update Facepunch.ActionGraph Fixed GameInstance.TrapButtons not trapping when we don't have a menu Mesh Editor: Alt right click another to apply selected face material to another face Fixed input rebinding not working when running a local game / in the editor Add new dlls to release archive Move unittest razor/generator tests to compiler test Generator: additional files presented as text rather than paths Add additional tests Compiler builds a CodeArchive and then compiles from that Add "Reset to Default" menu option to ControlLabel Typo Build fix GetButtonOrigin tries to grab collection bind in first slot before falling back to input action default (resolves sbox-issues/issues/5526) Fix transform update delay when Skinned Model Renderer is attached to bone of another Skinned Model Renderer (#1578) * Fix lag/wobbly update when Skinned Model Renderer is attached to bone of another Skinned Model Renderer * Use Channel to contain changed transforms, write to that in threads for animation updates, then call transform changed on main thread for them after Keep one list of references. Keep them in CodeArchive. Cleanup, remove unused code Api.Get return null if 404 Fix base project not compiling More compiler cleanup Disable FastPathTests (left a comment for you @Metapyziks) CompilerSettings becomes Compiler.Configuration, is a struct Cascade ParseOptions down on each compile instead of trying to keep it up to date 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 Don't create control widgets if their type doesn't have a default constructor (resolves sbox-issues/issues/4732) Don't copy filesystem dll to game root 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 Include code archive when publishing Update VR hands with more backported stuff & fixes + left hand model VR hands: couple more fixes + "cylinder" poses VR hands: "grab" poses 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 Generate schema as part of build Mesh Editor: Alt+Right actually wraps the uvs now https://files.facepunch.com/layla/1b1711b1/sbox-dev_xWZDd66awF.mp4 Remove VR hand assets from "Half-Life: Alyx" & associated source files Support compiling from a MemoryFileSystem Re-implement / simplify FastPathTest Fix test host process crashing in TestCompiler Fix nullable error Add MusicPlayer.TargetMixer 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 Don't cache null types in AssetType.FromExtension. Fixes GameResource assets not appearing in projects that use libraries. Fixes Facepunch/sbox-issues#5498 Remove model check in CMeshSystem::ChangeModel, this function needs to run even if it's the same model for model reloads Add CompilerName and AdditionalFiles to CodeArchive Add CompileCodeArchive test beard adjustments / fixes Fix Project.HasCompiler logic to look for any compiler (resolves sbox-issues/issues/5531) Use intermediary texture to avoid collision in filtering generated cubemaps, this should fix the cubemap corruption in certain hardware Delete ILobby Add softsplit.donut to codearchive test 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 Add this function back, someone was using it Don't html encode comments Cleanup header bar Fix compile warning 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 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 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. WrapTextureToSelection with shift-alt-rmb https://files.facepunch.com/layla/1b2011b1/sbox-dev_MA50eCo78d.mp4 Merge branch 'master' into hackweek-multi-scene-view