* Add TextureFlags
* Add TextureFlags.PremultipliedAlpha in text block and webpanel textures
* Add BlendMode.PremultipliedAlpha
* Add panel to PauseModal
* start sound preview playback at scrubber position instead of 0, only increment time if playing
* Fix SceneRect calculation so that there isnt 4 pixels of extra scroll when zoomed all the way out, only show scroll bar if there's anything to scroll
* clamp scrubber position so it cant be visually dragged outside normal bounds
* use correct offset when setting scrubber position during playback
* update VisibleRect before redrawing waveform, waveform was previously drawing in wrong position (view from last frame)
* clamp on scrubber should be using SceneRect not ContentRect
* no need to update VisibleRect twice
* use correct offset for scrubber in DoLayout too
* update scrubber so it stays nice and stable while playing+zoomed in or scrubbing, use correct offset when manipulating scrubber
* offsetting by 4 everywhere is dumb just set HandlePosition on scrubber
* fix drift on scrubber while zoomed in
---------
Co-authored-by: boxrocket <splatterbiker@gmail.com>
* Only show property-prefab options on prefab instances, simplify names a bit
* Tweak these to match
* Transform
* Order
* Guessing this meant to pick the shortest source location path
* dotnet format
* AddPoseOperation skip work when added transform is equal to identity
* SubtractPoseOperation skip work when added transform is equal to identity
* Fast path for BlendUpdateNode when weights are 1
Don't emit expensive pose op just forward the pose with weight 1
* Fast path for Blend2DUpdateNode when weights are 1
Don't emit expensive pose op just forward the pose with weight 1
* Avoid allocation of Actions in MergeDescendants
* Citizen/animgraph: optimise the skid layer by cutting it out completely if there has been no wish movement for the past 3 seconds. ~10% performance gain for players who are standing still.
* Citizen/animgraph: optimise the locomotion wish layer by cutting it out if wish values have been equal to 0 for the past 3 seconds. ~5% performance gain for players who are standing still.
* Citizen/animgraph: optimise the "turn poses / rotation lean" layer by cutting it out if move_rotationspeed has been 0 for the past 3 seconds. ~5-10% performance gain for players who are standing still or moving in a straight line.
* Citizen/animgraph: optimise the "standing shuffle" layer by cutting it out when move_rotationspeed has been 0 for the past 3 seconds. ~2-4% performance gain for players who are standing still and not turning.
* Citizen/animgraph: optimise the height scaling layer by cutting out scale_heel completely if you're not wearing high heels, and bypassing the entire layer if your height is default. ~3% performance gain for players with default height; unmeasurable if different height while without heels.
* Citizen/animgraph: oops, the skid layer optimisation should be checking against the skid values, not wish
* Citizen/animgraph: optimise the facial animation subgraph by cutting out the voice lipsync bone mask & blend nodes if the voice level has been 0 for more than 3 seconds, and by replacing the random blink machine, previously based on a Choice node that effectively rolled a 85/15 dice every second (but relied on 2 constantly playing sequences) by a state machine with the new "random time between" feature. The add node is now only active during a blink. Time between blinks is now random between 0.1 and 5.0 seconds.
* Humans: derive animgraphs from Citizen updates
Apply navmesh overrides from additive scenes, only ignore overrides from system scenes.
For some reason our startup scenes load as additive, so the navmesh settings of the startup scene would have been ignored.
Partially reverts https://github.com/Facepunch/sbox/pull/3555
We could also fully revert it if we want system scenes to be able to override navmesh settings.
https://files.facepunch.com/louie/1b1811b1/sbox-dev_wPVinlJTtE.png
-Support Tiling in the fast texture tool.
-Shortcuts.
-Escaping out resets to orignal uv.
-Unwrap Square better.
-World Mapping.
-Apply active material when entering fast texturing.
-Clicking in the rect view with no rect file fills to the full uv.
-Snapping toggle.
-Reset uv and focus buttons.
-New cleaner UI.
- Remove static LastSelected SceneViewportWidget. It should be scoped to the last selected viewport within a particular Scene view
- Add LastSelectedViewportWidget to SceneViewWidget
- Re-add focusing the last selected widget that was hotfixed in #114
---------
Co-authored-by: aidencurtis <109600275+aidencurtis@users.noreply.github.com>
Co-authored-by: Carson Kompon <carsokompo@gmail.com>
- Only download packages from the current project when opening in the editor
- Make sure to download packages referenced within any libraries in the current project
* Extended whitelist tests to use the other method of creating a compiler without explicit compiler settings
* Initialize Compiler._config as it's a struct so everything was zeroed before