userGarry Newmancancel
branchsbox/managed-soundsystemcancel

40 Commits over 29 Days - 0.06cph!

9 Months Ago
Review / Cleanup
9 Months Ago
Improved style parser errors (sbox-issues/issues/4541) https://files.facepunch.com/alexguthrie/1b2911b1/sbox-dev_vMdiBVFnHU.png Add ability to fullscreen the scene viewport https://files.facepunch.com/tony/1b2911b1/sbox-dev_kpYpHqbHbE.mp4 Fix build (we don't support "display: inline", not sure if this was done on purpose?) Node menu rewrite * Can search all possible node types * Properties / methods from TypeLibrary * Component getters of each type * Extension methods now appear like normal instance members * ActionGraph resources appear as normal instance members too * Output expansion isn't limited to properties any more * Editor knows which components exist on scene.ref targets * Improved formatting for node titles / parameters * Search truncates results at 20 Host can always drop ownership of a networked object Host can always network destroy a networked object Fixed Facepunch/sbox-issues#5009 Fixed Facepunch/sbox-issues#5022 Fixed #1477 Improved node type filtering w.r.t. whitespace Merge branch 'master' into managed-soundsystem
9 Months Ago
Default inspector for unknown objects is a ControlSheet Cleaning up ready for merge
9 Months Ago
Delete AudioMaterial Add audio surfaces to the base surfaces
9 Months Ago
Update performance graph to scene system Steam audio 5ms -> 0.1ms
9 Months Ago
Pass the listener nicer
9 Months Ago
Fix VPC CPhysicsWorld::ShouldHit optimization Add steam audio reflection Assert main thread in Paint
9 Months Ago
Steam Audio latest
9 Months Ago
Add Delay processor AudioListener has UseCameraDirection option
9 Months Ago
Remove unused Cleanup + comments refactor, expose audio processor classes Help MixThread relax a bit Processors obey Enabled, Mix states
9 Months Ago
Clear dirty framebuffer region when popping a UI layer sbox/issues/1461 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 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 Pass mouse events from labels to the plug, fixes #1465 https://files.facepunch.com/ziks/2024-02-22/sbox-dev_30vniCtdgM.mp4 Fixed #1467 Package.FormatIdent Added default Resource.ToString(), Component.ToString() Format matches GameObject.ToString(): "<type>:<name>" Fixed nullable parameters in nodes Fix warning when dragging non-text Node input context menu signal fixes Fix PositionEditorTool not snapping properly in localspace Soundscape map hammer entity info_player_start tint Asset Drag & Drop into Action Graph Editor (#1468) Action Graphs can reference the GameResource they're embedded in Ctrl+S in an embedded Action Graph saves its host scene Correct text-decoration thickness default value Fixed Facepunch/sbox-issues#4947 New Hair + Citizen Gibs Fixed TransformTest randomly failing quick fix to skeleton gib vmdl Add Rotation.ClosestAxis - Will give you the axis most aligned with the given normal Add Gizmo.Nudge - Will give you a nudge vector along the most aligned left and up axis of the rotation Make these functions more readable Why does SerializedProperty have 4 virtual methods to get attributes? Fixed SerializedList.Parent Add IMaterialSetter for material drops UseRenderMeshes for material drops as they don't care about tags Add arrow key nudging to scene menu https://files.facepunch.com/layla/1b2411b1/sbox-dev_jsu3UScQxU.mp4 Build runtime models ray trace objects with mesh collision data, this makes more sense for now and doesn't fuck up triangle order when you want multiple materials Change nudge shortcut to Alt+ (blocks text input otherwise) Gimzo -> Gizmo Approximate hull for sphere collider when it has non uniform scale https://files.facepunch.com/layla/1b2511b1/sbox-dev_cEmmJpViho.mp4 Check for non uniform scale properly Apply scale to Prop gibs Add .sln to default gitignore Downloading dragged assets easier to see Do something similar in hammer (Downloading dragged assets easier to see) Fix component selector sometimes getting stuck half way If an animation finishes before the Layout does its size/position adjustments the layout will have final say. Issue exposes itself at low framerates or animation time of 0 Resolves sbox-issues/issues/4890 Fix SegmentedControl displaying wrong when size changes during animation Resolves sbox-issues/issues/4497 Disable context menu for live game scene tab Resolves sbox-issues/issues/4856 Rotation FromAxis & RotateAroundAxis remarks Resolves sbox-issues/issues/4930 Translation.TryConvert can perform implicit conversions Fixed SerializedProperty.GetDefault passing the DefaultValueAttribute, not the actual default value 🤦 If drag drop trace doesn't hit anything, try hitting grid plane Possible fix for custom node hotload bugs Facepunch/sbox-issues#4946 Facepunch/sbox-issues#4976 Facepunch/sbox-issues#4977 Don't clear all attributes when popping a layer Preserve everything (so we keep scissor attributes etc) Fixes sbox-issues/issues/4971. Update Facepunch.ActionGraphs Fix copy/pasting scene ref nodes Rewrote scene.ref node * Has a useful error if referenced object isn't from same scene as graph * Shows icon of referenced type * Nicer serialization Don't mark scenes unsaved from Selection * Exposed issue where EditorTool wasn't adding to the scene's EditLog and marking unsaved, also fixed Resolves sbox-issues/issues/4776 Update Editor.Trace summary Resolves sbox-issues/issues/4786 Sync tags between sceneobject and its aoproxy object if it has one, fixes sbox-issues/issues/4944 Don't prompt scene saving for editor sessions that are GameEditorSession When cloning a GameObject, inherit name (unique) from source Fix NRE when trying to access Game.Overlay stuff without a modal system Determine fate of network objects when owner disconnects (#1463) * Can specify what happens to a network object when owner disconnects - don't love the naming * Unused usings * Some cleanup * DisconnectAction -> NetworkOrphaned. Same terms everywhere else. Add NetworkOrphaned.Random - randomly assign owner when owner disconnects - route this through the host though Fixed [Sync] vars on private properties in base classes not being registered. What a strange one! Fixes Facepunch/sbox-issues#4916 Fix a couple instances of scene not being marked as unsaved * Adding a component * Modifying the transform, name, or enabled state of a GameObject from the inspector Pressing the play button when viewing a prefab works This assumes the best non-prefab scene for you in this order: 1. Current viewed scene 2. Last viewed scene 3. Closest scene to the left of the prefab 4. Closest scene to the right of the prefab Resolves sbox-issues/issues/4692 More informative vulkan init failed message Panning in scene view clears camera's velocity and target Resolves sbox-issues/issues/4788 Gizmo toggle is checked when gizmos are on Gizmo.Draw.ScreenText flags defaults to LeftTop Resolves sbox-issues/issues/4574 Fix F / scene framing also getting interrupted by camera's smoothing hair LODs Filtered TreeView items aren't selected with shift select or arrow keys Resolves sbox-issues/issues/4516 Can continue shift+selecting in TreeView to modify selection Resolves sbox-issues/issues/4517 A couple small SceneTreeView improvements * Clear TreeView selection by clicking in empty space * Added a button to clear filter text * Search filter responds as you type * Minor style adjustments Sandbox.Generator: don't run some unneeded codegen in intellisense.. ISourceGenerator is obsolete and slow and we should figure out how to make this an IIncrementalGenerator Pixmap.UpdateFromPixels: Support RGBA8888 imageformat Add toggle grid option pending review of scene toolbar binds (sbox-issues/issues/4767) Not needed remove Access Control config (unused) Allow projects to skip whitelist (standalone, menu etc) Menu project skips whitelist Create menu-main.scene Render menu ui after game ui (cc @DevulTj) Render loaded menu scene Can open/edit menu project Add Graphics.CopyTexture for GPU texture copying, format and size must be the same Compile GameResource if their source changes (external changes, disk saving) Forgot the interop somehow Signal value changes for GameObjectControlWidget Signal value changes for ResourceControlWidget too Use SerializedObject.OnPropertyChanged for more reliable update, instead of relying on OnChildValuesChanged Catch razor errors, report them nicely Optimize LerpProperty When doing input, use panel's ZIndex to determine order MainMenu is a ScreenPanel Cleanup Panel Recursion errors no longer throw full exceptions Consider panels visible until their transitions have ended Create menu-main.scene_c style Overflow returns Scroll if -x or -y are scroll Add GameJam category Fix hotload error involving duplicate properties Some more hotload skipping for TypeLibrary stuff Update Facepunch.ActionGraphs Fix in parameters Fix sound.play node regression Add Sweeper sample Don't query global stats for local games Add samples folder Optimize use of Styles.IsDefault Slightly improve component selector search i.e. "MyComponent" will find the "My Component" component Fix scene asset drag drop not working while an asset is already selected Merge branch 'master' into managed-soundsystem
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
Mixer scales itself based on its own volume, so it is reflected in metering
9 Months Ago
Tweak mixer control https://files.facepunch.com/garry/30a69c23-fadf-426c-bb78-a4152a2b861d.mp4
9 Months Ago
Lock the mixing thread when hotloading We can review this later, since I suspect if we make the active voice list ignore hotload, everything will be fine anyway.. and it would be nice to have sounds keep playing.
9 Months Ago
Add MixerDock
9 Months Ago
add Mixer class
9 Months Ago
AudioSampler can sample multi-channel
9 Months Ago
Tweak sound occlusion ignores
9 Months Ago
Add Occlusion , OcclusionRadius , DistanceAttenuation to SoundEvent
9 Months Ago
Steam audio debug convars Add SoundHandle.SpacialBlend, Name and change how they get disposed Fix sound cutting out when spatial sound played inside head Fill out Sound.Preload
9 Months Ago
Add volume
9 Months Ago
Binds create mixer - can play sounds! strip vmixtool Remove unused args Add some more c# compatible funcs to CAudioMixBuffer Add AudioBuffers, MixBuffer Audio processor basics Route SoundHandle through managed system, use speaker volumes etc Play sounds from the point of view of the scene camera if we're not playing the game, and this window is focused Strip as much as I dare right now Add steam audio Update steam audio binaries Add steam audio binds Add BinauralEffect processor Steam audio scene system Apply direct Create phonon.pdb Reflection works! 😅 Latest Clean up Fix menu sounds not playing Refactoring, making internal Fix warning Fix tests strip unused Remove unused
9 Months Ago
Binds create mixer - can play sounds! strip vmixtool Remove unused args Add some more c# compatible funcs to CAudioMixBuffer Add AudioBuffers, MixBuffer Audio processor basics Route SoundHandle through managed system, use speaker volumes etc Play sounds from the point of view of the scene camera if we're not playing the game, and this window is focused Strip as much as I dare right now Add steam audio Update steam audio binaries Add steam audio binds Add BinauralEffect processor Steam audio scene system Apply direct Create phonon.pdb Reflection works! 😅 Latest Clean up Fix menu sounds not playing Refactoring, making internal Fix warning Fix tests strip unused Remove unused
9 Months Ago
strip unused Remove unused
9 Months Ago
Fix tests
9 Months Ago
Binds create mixer - can play sounds! strip vmixtool Remove unused args Add some more c# compatible funcs to CAudioMixBuffer Add AudioBuffers, MixBuffer Audio processor basics Route SoundHandle through managed system, use speaker volumes etc Play sounds from the point of view of the scene camera if we're not playing the game, and this window is focused Strip as much as I dare right now Add steam audio Update steam audio binaries Add steam audio binds Add BinauralEffect processor Steam audio scene system Apply direct Create phonon.pdb Reflection works! 😅 Latest Clean up Fix menu sounds not playing Refactoring, making internal Fix warning
9 Months Ago
Refactoring, making internal Fix warning
9 Months Ago
Clean up Fix menu sounds not playing
10 Months Ago
Create phonon.pdb Reflection works! 😅 Latest
10 Months Ago
Steam audio scene system Apply direct
10 Months Ago
Add steam audio Update steam audio binaries Add steam audio binds Add BinauralEffect processor
10 Months Ago
Play sounds from the point of view of the scene camera if we're not playing the game, and this window is focused Strip as much as I dare right now
10 Months Ago
Route SoundHandle through managed system, use speaker volumes etc
10 Months Ago
Audio processor basics
10 Months Ago
Remove unused args Add some more c# compatible funcs to CAudioMixBuffer Add AudioBuffers, MixBuffer
10 Months Ago
strip vmixtool
10 Months Ago
create mixer - can play sounds!
10 Months Ago
Binds