294 Commits over 700 Days - 0.02cph!
Standalone: Add `materials/error.vmat_c` to core whitelist
Remove WM_GETMINMAXINFO handler because it wasn't helping (was probably making things worse)
Simplify window titlebar bounds check
Handle WM_GETMINMAXINFO to prevent maximizing issues
Ignore resize handles when window is maximized
Expand non-client frame bottom by 1 pixel to fix auto-hiding taskbar not being shown
UI: Allow both spellings of `grayscale`/`greyscale` inside `filter( ... )`
Force update title bar whenever title or icon changes
Make compile error dialog paths slightly more readable
Frameless window fixes for hi-DPI monitors
Custom window frames (#1858)
https://files.facepunch.com/alexguthrie/1b1911b1/explorer_7y8xswGpWU.png
Launcher: clean up UI, make a few things contextual rather than showing everything all at once
https://files.facepunch.com/alexguthrie/1b1111b1/explorer_2JWhMC4P0r.mp4
Sweeper .sbproj update
Forgot to commit this with the object-fit stuff
UI: add support for `object-fit`, move aspect ratio code into source text template
Added `Color.LerpTo` for consistency with `Vector3.LerpTo`, `Rotation.LerpTo`, etc.
UI: linear gradients use premultiplied interpolation in & have quadratic easing on alpha channel to more closely match web
https://files.facepunch.com/alexguthrie/1b0611b1/sbox-dev_YziN6zZgp3.png
Asset browser: Fix drag-dropping of files from explorer onto asset browser, don't allow inside cloud browser
Cloud browser: update list after uninstalling a package
Don't reference `facepunch.concrete_barrier` inside `default.surface` 🙈
Cloud browser: allow setting default view, shows when cloud browser initialises, persists between sessions
https://files.facepunch.com/alexguthrie/1b0511b1/sbox-dev_x9RRYJZp8G.mp4
Standalone: initial support for /unsafe, clean up compiler options, rework project settings stuff to use "Standalone Only" instead of "Whitelist Enabled"
GenerateMipMaps shouldn't generate mips smaller than 1x1 (which might happen on textures with weird dimensions, e.g. 3x3)
UI: support border-radius shorthand transitions
VR: Fix toggling VR inside the editor after launch
Standalone: differentiate between failing to copy (e.g. no disk space) and not finding a file
Standalone: locate code resources in non-core locations (e.g. addons/base), fixes a couple of missing files
Standalone: tweak wizard layout to move all executable stuff together
Standalone: clean up exporter code, move into its own folder
Standalone: fix base assets path
Standalone: remove IsDevelopmentBuild and Version, move VersionDate to BuildDate & make it implicit
Standalone: better widgets for branding - can't figure out how to lay these out nicely right now though
https://files.facepunch.com/alexguthrie/1b0711b1/sbox-dev_WR7bhtL8E4.png
Standalone: make it clearer when we've finished an export
Standalone: we might need this DLL actually 🙈
Standalone: Separate operations up into build steps & sort
Standalone: ignore dxcompiler
Standalone: projects that only have the VR control mode enabled should automatically launch in VR, otherwise default to using the `-vr` launch param
Standalone: build page shows failures and progress more clearly, don't auto advance so we can see what's fucking up
https://files.facepunch.com/alexguthrie/1b3011b1/sbox-dev_1Nb5BFbmtw.png
Standalone: export presets
https://files.facepunch.com/alexguthrie/1b3011b1/sbox-dev_zi12A4W7uN.mp4
Standalone: move stuff over to whitelist system, remove EnabledAddons (we only have `base` now)
Standalone: core file whitelist, reduces minimal export size by 300MB (1.2GB -> 800MB)
https://files.facepunch.com/alexguthrie/1b3011b1/WizTree64_hoaOoWymnw.png
Editor: add non-collapsable group widget
Standalone: make initial wizard page more bearable
Standalone: don't export citizen addon separately (we already work out which assets we need)
Standalone: skip Sentry
Load startup backgrounds from vtex
Standalone: can pick custom startup image
Standalone: Custom icon support
Standalone: Don't set icon/splash screen if not specified
VR: Remove obsolete controller checking bools that nobody's using
VR: Add IsHandTracked bool to VRController, update fpxr to 5cf7ff24f5b157166102c8e4898bb84b4accb952
VR: Add MotionRange to VRController.GetJoints, update fpxr to 8822f0461709fbd2eda8fe004d51af79d47e6aa9
e.g.
```csharp
Input.VR.LeftHand.GetJoints( MotionRange.Hand ); // default
Input.VR.LeftHand.GetJoints( MotionRange.Controller ); // tries to wrap hands around the controller
```
VR: Better controller interactions in menu, move panel to a more comfortable height
In VR, menu defaults to having VR tag enabled
Move VRSceneSwitcher + add warning and move back to OnAwake, recompile main menu
Force add compiled VR menu scene
Move VR scene switcher logic into OnStart
Editor: Launch dedicated server option (we probably want some way to join it from editor?)
VR: More stuttering-related fixes, don't alloc joint data every frame
VR: Improved main menu scene
VR: Only create debug callback if `-vrdebug` is specified as a launch parameter
VR: Deprecate List-based `VRController.GetJointData()`, replace with array-based `VRController.GetJoints()`
VR: clean up logging
VR: Synchronization refactor, update Facepunch.XR to 1c1b65ae7ec5ef89ff2f1e508f4bcdbea58ebd3c
Removes Sync() call, should remove jittering(!), and reduces unnecessary logging
Fix missing standalone files
sbox-issues/issues/7241
Generated csproj LangVersion 11 -> 13
UI: Set Button.Active inside TabContainer rather than setting active class directly (consistent with ButtonGroup)
UI: Fix worldpanel filters, save off default viewport Z range when setting a render target (solves depth issues after pushing/popping worldpanel filters)
https://files.facepunch.com/alexguthrie/1b2911b1/sbox-dev_Nl7AwCZeb5.mp4
VR: more logging, always enable debug callback
VR: add -novr force disable
Update fpxr to 8e70816536da3c657eb9f9a7b815268c5ef7a729, improves headset checks
UI: Expose UI.WorldInput.Hovered inside WorldInput component
VR: check for headset in PreInit() instead of Init()
VR: init g_pVrSystem before finishing material system setup
Update Facepunch.XR to 1dce6d64669f0c19b0e43936bf53b1770d50a6f8, cache HasHeadset value
Don't build VR Toggle Widget if there's no headset or runtime
Update Facepunch.XR and defs to 24b8e70e5c89d04b3f42d8b022bf97e05b82349f, adds check for headset/runtime availablity
VR initialization changes - always load VR extensions if there's a runtime and headset available, so we can init mid-session
Editor: Make ToggleSwitch look nicer
Add toggle switch in editor for VR
https://files.facepunch.com/alexguthrie/1b0711b1/sbox-dev_k3x5LXNKca.png
Remove unused OpenXR launch environment variables
Update Facepunch.XR to ec56d1c119e0251cbc105be8a26792e266b68ed3, fixes some minor launching issues
VR hand component fixes
VR world input component
Remove unused VR bits in MenuSystem
Basic VR scene menu, loads automatically if VR is enabled