reposboxcancel

20,851 Commits over 1,522 Days - 0.57cph!

9 Months Ago
Added parameterless Asset.LoadResource() Added DragData.OfType<T>(), DragData.Assets helpers Asset drag & drop into AG editor
9 Months Ago
Soundscape map hammer entity info_player_start tint
9 Months Ago
Demote some new stuff from being public Fixed overlay flicker when re-laying out (due to stuff being pressed on), don't set Style.Width|Height
9 Months Ago
Refactor: remove IVirtualCursor, IMenuSystem hook-ins, cursor razor component - add InputOverlaySystem which works in MenuDll and GameMenuDll, add RootPanel.Priority
9 Months Ago
Fix PositionEditorTool not snapping properly in localspace
9 Months Ago
Add gamepad navigation support to main menu UI and game menu UI - Virtual cursor system - Panel traversal system
9 Months Ago
Add gamepad navigation support to main menu UI and game menu UI - Virtual cursor system - Panel traversal system
9 Months Ago
Node input context menu signal fixes
9 Months Ago
Added DragData.OfType<T>(), DragData.Assets helpers Asset drag & drop into AG editor
9 Months Ago
Asset drag & drop into AG editor
9 Months Ago
Added parameterless Asset.LoadResource() Added DragData.OfType<T>(), DragData.Assets helpers Asset drag & drop into AG editor
9 Months Ago
Fixed nullable parameters in nodes Fix warning when dragging non-text
9 Months Ago
Package.FormatIdent Added default Resource.ToString(), Component.ToString() Format matches GameObject.ToString(): "<type>:<name>"
9 Months Ago
Component editor
9 Months Ago
Fixed #1467
9 Months Ago
Pass mouse events from labels to the plug, fixes #1465 https://files.facepunch.com/ziks/2024-02-22/sbox-dev_30vniCtdgM.mp4
9 Months Ago
Can create variables by right-clicking inputs Add "Use Labeled Output" menu on input context menu https://files.facepunch.com/ziks/2024-02-22/sbox-dev_5qn6eAweBY.mp4 Fixes #1464
9 Months Ago
Using cleanup
9 Months Ago
Screen Panels are rendered after all cameras, instead of being overlays of main cameras - fixes sbox-issues/issues/4664 https://files.facepunch.com/tony/1b2211b1/sbox-dev_3GOBPSIXii.png
9 Months Ago
Package.FormatIdent Added default Resource.ToString(), Component.ToString() Format matches GameObject.ToString(): "<type>:<name>" Added parameterless Asset.LoadResource() Added DragData.OfType<T>(), DragData.Assets helpers Asset drag & drop into AG editor https://files.facepunch.com/ziks/2024-02-21/devenv_fMDnNTpFdd.mp4 Use new DragData helpers in Component / GameObject controls Fix warning when DragData has no text
9 Months Ago
Clear dirty framebuffer region when popping a UI layer sbox/issues/1461
9 Months Ago
DisconnectAction -> NetworkOrphaned. Same terms everywhere else. Add NetworkOrphaned.Random - randomly assign owner when owner disconnects - route this through the host though
9 Months Ago
Fix compile error
9 Months Ago
CMapAssetType::CalculateDependencies suppress pointless upconversion of vmaps so we don't spend 30+ seconds doing so on initial load Early out of CreateToolsTriangleList when there's no runtime buffers but also assert because ideally this should happen Forward command line between sbox-dev and sbox-launch Create runtime buffers for dynamically created meshes so they can create trace data, allows them to be scene traced Launcher only launches a single instance of each project Forgot to force add this dll Early error when trying to open an invalid project Some PredictBestType fixes for operators Fixed legacy Get Game Object node appearing in node list again Some local instance node grouping cleanup https://files.facepunch.com/ziks/2024-02-19/O0b83KRmbo.png Protect against 0 width/height video modes and assert CHostedWidget::SizeToParent() don't change the video mode if height() is 0 Context menu text entry cleanup, can edit graph inputs / outputs again I hate this double launch solution Rename launcher project Lock project row button when launching Add some standard map entity definitions that we have loaders for: prop_physics, prop_animated, env_sky, env_gradient_fog, snd_event_*, Launcher: creating a new project uses Ident as the folder name instead of Title Implement calc for CSS, make it so that dynamic units (vw/vh/expressions/etc.) all update correctly https://files.facepunch.com/alexguthrie/1b1911b1/sbox-dev_ADiqfZ9hI2.png For sbox/issues/421, sbox-issues/issues/4753, sbox-issues/issues/723 Add isolated CallbackBatch, use it when cloning. Fixes instances when cloning in OnEnabled etc would cause weirdness Fix component weirdness when cloning disabled objects Hash view ID to FindOrCreateFrameBufferScratchTexture as well to solve collision when we have multiple views with same resolution, eg with splitscreen Fix dynamic reflections and AO in viewported views Add compiled shaders for viewport shading fixes Texture barriers for SSR in multiple viewports "Reset to Default" in the editor will look for DefaultValueAttribute, then get proper instance default intead of just bailing Don't just use ClassName to serialize types in ActionGraph Fixed Facepunch/sbox-issues#4869 Fix MultiSerializedObject propagating OnPropertyChanged Facepunch/sbox-issues#4885 Call GameResource.PostReload() after saving to disk Clears cached scene in PrefabFile Facepunch/sbox-issues#4885 Add support for CSS `font-smooth` https://files.facepunch.com/alexguthrie/1b2011b1/sbox-dev_oYg0ytkmSm.png Set saved gizmo settings way earlier, protect against stomping the settings instance Fixes sbox-issues/issues/4888 Network Authority / Permissions (#1457) * Can a connection create objects? * Send network destroy even if DestroyImmediate is called * Ownership authority flags * Let GameObject have [Sync] too (test) * Reorder enum, add [Expose] * Change up logic for can create objects - only check if we have a source * Default CanCreateObjects to true for now (this is current behavior) * Initial implementatior for ownership authority * Use NetworkAccessor for changing ownership authority. (Temp? Depending on review) don't use TL for set prop for Sync Vars * Initial implementation of Rpc authority * Remove a test log * CodeGen static array for attributes on a CodeGenerator method/prop now marked as [SkipHotload] and readonly, so they do update when changed * Make it CanSpawnObjects * CanSpawnObjects settable only by the host * Some renaming. Set OwnerTransfer direct on GameObject instead of method on NetworkAccessor * Make sure CanSpawnObjects is synchronized to clients when set from host via ConnectionInfo * Default CanSpawnObjects to true for now * When OwnerTransfer is Request, make actual requests to the host for Drop/Assign/Take ownership and if host approves, then host will send the messages to everyone to take that action. Each message will then validate if was received from host * Remove this for now, sus is later * CanSpawnObjects is always true for the host. Early out in NetworkSpawn if local connection can't spawn objects - why bother trying at all? * NetworkAccessor.SetOwnerTransfer method * Documentation fixes * Rename Rpc.HasAuthority to Rpc.HasPermission for consistency * Owner can always drop ownership * Allow owner transfer changing from current owner When adding a collider, update the rigidbody's gameobject transform immediately to avoid offsets Formalize how Rigidbody attaches colliders, add tests Deserialize GameObjects as disabled, and enable when all children and components are created Tweak editor painting to avoid crash Lauinching Close context menu on line edit submit Get rid of legacy code paths in DefaultUpgrader Don't enable network GameObjects that are not enabled Don't call Asset.Compile in parallel 🤦 Set GameTransform.LocalScale default so resetting it doesn't set it to zero SceneTabList: middle mouse destroys scene session Make shortcuts very obvious by including them in tooltips Add ability to asset pick a prefab from a GameObjectControlWidget (https://files.facepunch.com/tony/1b2011b1/sbox-dev_o0AQpv1DWV.mp4) AssetBrowser: Add "Delete Folder" option to Folders Hotload skip NodeDefinition Allow deleting parameterless output nodes AssetBrowser: Can delete assets/directories by hitting delete key with an active selection Make game resources compile again when saved Fix NavMeshAgent.SetAgentPosition not working Add NavMeshAgent.UpdateRotation option, NavMeshAgent.GetLookAhead ResourceControlWidget allows drag drop cloud assets Fixed a bunch of navmesh functions not working because I didn't full in ToNav Test reproducing Facepunch/sbox-issues#4688 Fixed Facepunch/sbox-issues#4688 More property getter / setter fast path tests Add RenderAttributes.GetMatrix Save off and restore clipping values before/after drawing box shadows Should fix sbox/issues/1453 Remove log When saving a GameResource - reregister it with ResourceLibrary. When Scene/PrefabFile save they create a new GameResource, so the old one needs to be stomped out. Fix ParticleBoxEmitter not rotating/scaling properly (fixes sbox-issues/issues/4653) Add ParticleRingEmitter Change Gizmo.Contol.BoundingBox to new box resize gizmo because this function isn't being used anymore Splash and Hang Branding In tools don't demote exclusive fullscreen to cooperative fullscreen, these behave the same way on Nvidia's Vulkan drivers and a game window in a Qt widget acting like it's exclusive fullscreen will make your screen black Fix NavMeshAgent exception (fixes sbox-issues/issues/4901) NavMesh.GetRandomPoint does more what you would expect (fixes sbox-issues/issues/4897) Apply GameTags straight away, instead of deferring Fix prefab cloning not obeying startenabled, added unit tests (fixes sbox-issues/issues/4871) Place cursor at the lineedit when not editing (fixes sbox-issues/issues/4898) Host Sync Vars (#1462) * NetworkTable.Entry.HasControl test. Separate sending network table changes from main update. Host or Owner can send table changes (only send entries they _control_) * When using WriteAll always write all regardless of control. Make it so unless YOU control a Sync property you can't physically change its value * Revert that for now - let people change Sync var value locally as it was before, we can try to find a better way to prevent this later. Complication comes from INetworkCustom * Remove redundant call * Let''s have each entry define if it has changes now that each one can be potentially controlled by different clients. Make sure we clear changed flag on entry when reading it. NetworkTable.HasChanges will now return true if any entry we have control over is dirty * Clarify comment * Let's call it HostSync * Prevent actual setting of Sync property, modification of NetList, or NetDictionary if you don't have control over it. Non-owner, non-host can't change the values locally, they _must_ be what the synchronized value is * We can always set the property if network not initialized * Default HasControl to true for NetList/NetDictionary in-case not set Drag references to GameObjects / Components from scene view https://files.facepunch.com/ziks/2024-02-21/devenv_pNaqhLJEaQ.mp4 Fixed Sync vars on derived component types not working Basic support for RangedFloat in SerializedObject SoundEvent's sounds are sounds instead of strings MinMax to Range, string[] to List<string> in our Resource definitions Add sound preview button to ResourceControlWidget GameResource inspector uses new ControlWidgets instead of PropertySheet SerializedObjects, share type conversion code more Add SerializedDictionary + unit tests Add DictionaryControlWidget Update ClothingEditor to use SerializedObject Make everything that uses gametags use the same restriction logic Fix clothing editor sceneobject leaks Fix broken surface Tweak GameObject.Clone, so we don't stomp the incoming transform Lightbinner handle exceeding max envmaps Fix saving links to the prefab instead of the root object when editing a prefab Don't destroy particles until they're all dead Support for tabs in text drawing (#1460) * Fixes tabs drawing as boxes * Nicely spaces tabs to line up columns * Requires `white-space: pre` in razor https://files.facepunch.com/crayz/1b2111b1/sbox-dev_HbcLhN7N6C.png Don't update Project.LastOpened when adding it from file Editor tools can create subtools, move, rotation, scale become subtools Merge branch 'master' into managed-soundsystem
9 Months Ago
Editor tools can create subtools, move, rotation, scale become subtools
9 Months Ago
Don't update Project.LastOpened when adding it from file
9 Months Ago
Support for tabs in text drawing (#1460) * Fixes tabs drawing as boxes * Nicely spaces tabs to line up columns * Requires `white-space: pre` in razor https://files.facepunch.com/crayz/1b2111b1/sbox-dev_HbcLhN7N6C.png
9 Months Ago
Also handle strings that are made up of only tabs
9 Months Ago
Text tabs quick start Working fixed with tabs Work in tab stops during line layout Tab stops are font width * 4 spaces wide No need to collapse tabs here, we do it with WhiteSpace Fix tabs not always lining up, use measured space width Fix tab runs at starts and ends of strings not working
9 Months Ago
Fix tab runs at starts and ends of strings not working
9 Months Ago
Make it an interface
9 Months Ago
Correct order
9 Months Ago
Might not have an active scene
9 Months Ago
Remove this log
9 Months Ago
Bit cleaner perhaps
9 Months Ago
Fix saving links to the prefab instead of the root object when editing a prefab Don't destroy particles until they're all dead
9 Months Ago
Lightbinner handle exceeding max envmaps
9 Months Ago
Fix clothing editor sceneobject leaks Fix broken surface Tweak GameObject.Clone, so we don't stomp the incoming transform
9 Months Ago
Testing something but its shit, stash it though
9 Months Ago
Make everything that uses gametags use the same restriction logic
9 Months Ago
Some cleanup
9 Months Ago
Basic support for RangedFloat in SerializedObject SoundEvent's sounds are sounds instead of strings MinMax to Range, string[] to List<string> in our Resource definitions Add sound preview button to ResourceControlWidget GameResource inspector uses new ControlWidgets instead of PropertySheet SerializedObjects, share type conversion code more Add SerializedDictionary + unit tests Add DictionaryControlWidget Update ClothingEditor to use SerializedObject
9 Months Ago
Component editor
9 Months Ago
More post-rebase fixes
9 Months Ago
Unused usings
9 Months Ago
Can specify what happens to a network object when owner disconnects - don't love the naming
9 Months Ago
Delete minimal.scene Start drafting out UI navigation with controller, by traversing panels Refactor so we can switch between panel traversal and virtual cursor based on input Don't revert back to PanelTraversalSystem if analog is empty Add basic working virtual cursor using PanelInput.UpdateMouse Fixed calculation of virtual cursor position Use stylesheet to style virtual cursor, add ScrollSpeed Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access Disable system if mouse is moving at all Make VirtualCursorOverlay a razor panel Update SteamInput manifest to include joystick inputs for Menu action set Hide mouse cursor while we have controller input active Support processing any number of root panels, make it work in GameMenu Scale ControllerInput.GetAnalog by Input.ControllerLookYaw(Pitch)Speed Scale virtual cursor position movement by delta time, no wonder it felt different on GameMenu Process inputs in MenuDll Remove some direct controller access, use Input.AnalogMove/AnalogLook instead VCS: only tick for panels that want mouse input VCS: fix is-pressed style Refactor, add ControllerOverlay, so we can add another overlay for panel traversal selection Add PanelTraversalOverlay (for lack of a better name) Work on finding panels from delta, fixed not finding an initial focused panel Give eligible panels a score and give it some data to score by, focus the lowest scoring panel, also hook up selection and scrolling Decrease block increment size, can get finer selections (i.e PackageCard modal button) Fix FindPanelsAt never finding more than 1 panel Remove PanelTraversalOverlay, it looked shit When enabling VCS, use the mouse's current position Traverse blocks relative to the screen size, instead of set pixels Add IControllerInputSystem.Destroy Store last mouse position, don't run in multiple contexts (sort this out in a better way next) - fixes VCS overlay lingering around Minor cleanup Run Input.SetFocus( null ) on IControllerInputSystem.Destroy Scope UI simulation Remove context hacks Pass DoAnyPanelsWantMouseVisible() to ControllerInput, don't call if we don't need input Only use pointer-events on elements we want to click on for SocialBar Remove unused code, documentation pass When looking for an initial panel for traversal, use the mouse position (works w/ virtual cursor) Remove InputManifestTemplate/GamepadManifestTemplate groups from Sandbox.Game csproj since they don't exist Don't run ControllerInput.Tick at all if we don't have a controller Docs for IVirtualCursor Kill controller input system if we run out of gamepads to use General cleanup, remove unused ControllerOverlay panel Add adjustable analog sensitivity for UI Post-merge fix Support Alex's scrolling Post-merge fix Usability improvements to PanelTraversalSystem https://files.facepunch.com/tony/1b0111b1/parsecd_jzxSdkesRI.mp4 Update PackageCard to add hover style to package body, can click entire body to open overlay Refactor controller input polling, insert into AccumActionsPressed|Released and have the input context system handle everything else. Makes gamepad Input.Pressed/Released work properly ControllerInput: use correct actionset actions for dpad/select actions if we're actually in-game.. I really hate this, and want to change it asap Get rid of InputState.Controller, it doesn't serve any puspose Post-rebase fix
9 Months Ago
Fixed Sync vars on derived component types not working
9 Months Ago
Drag references to GameObjects / Components from scene view https://files.facepunch.com/ziks/2024-02-21/devenv_pNaqhLJEaQ.mp4
9 Months Ago
Host Sync Vars (#1462) * NetworkTable.Entry.HasControl test. Separate sending network table changes from main update. Host or Owner can send table changes (only send entries they _control_) * When using WriteAll always write all regardless of control. Make it so unless YOU control a Sync property you can't physically change its value * Revert that for now - let people change Sync var value locally as it was before, we can try to find a better way to prevent this later. Complication comes from INetworkCustom * Remove redundant call * Let''s have each entry define if it has changes now that each one can be potentially controlled by different clients. Make sure we clear changed flag on entry when reading it. NetworkTable.HasChanges will now return true if any entry we have control over is dirty * Clarify comment * Let's call it HostSync * Prevent actual setting of Sync property, modification of NetList, or NetDictionary if you don't have control over it. Non-owner, non-host can't change the values locally, they _must_ be what the synchronized value is * We can always set the property if network not initialized * Default HasControl to true for NetList/NetDictionary in-case not set