724 Commits over 672 Days - 0.04cph!
Initial `filter: border-wrap( ... )` implementation
For alpha-based borders, e.g. images
https://files.facepunch.com/alexguthrie/1b2011b1/sbox-dev_D1MzaQjB8X.mp4
Use FromShader for UI materials, delete vmats
Editor console filter (#1085)
https://files.facepunch.com/alexguthrie/1b1911b1/sbox-dev_ULtfmHPA94.png
Basic console filtering
Highlight matches
https://files.facepunch.com/alexguthrie/1b0911b1/sbox-dev_RpdUULtu5w.mp4
Also apply filter to logger name
Switch to using filter terms (list of keywords separated by spaces)
Use stringbuilder instead of regex for highlighting
Use .Any instead of .All when checking filter terms
Do filter highlighting in 2 steps to prevent HTML tag contamination
Cleanup
Move filter inline
Move language cvar over to managed, add more languages
Language list matches Steam's fully supported language list (see https://partner.steamgames.com/doc/store/localization/languages under "Full Platform Supported Languages")
VR: Move high-resolution menu rendering behind IsHighQualityVR property on RootPanel
VR: Only wait for present if we have a valid swapchain handle
UI: Save default render target when iterating through layer stacks
UI: Fix division by zero inside KeyFrames when startBlock and endBlock intervals match
UI: Implement animation-fill-mode
UI: Implement background-blend-mode
UI: Don't cut, copy or paste if alt is held
Windows interprets AltGr as ctrl+alt, some keyboard layouts use AltGr + x/c/v for characters
sboxgame/issues/680
Do filter highlighting in 2 steps to prevent HTML tag contamination
Use .Any instead of .All when checking filter terms
Switch to using filter terms (list of keywords separated by spaces)
Use stringbuilder instead of regex for highlighting
Basic console filtering
Highlight matches
https://files.facepunch.com/alexguthrie/1b0911b1/sbox-dev_RpdUULtu5w.mp4
Also apply filter to logger name
Also apply filter to logger name
Basic console filtering
Highlight matches
https://files.facepunch.com/alexguthrie/1b0911b1/sbox-dev_RpdUULtu5w.mp4
Use mask image for main menu GameGroup
Add mouse pitch & yaw invert options
Related to sboxgame/issues/2708
Add adjust-hue to color parser
RenderAttributes: add GetComboInt, GetComboBool, GetComboEnum functions
SceneObject: add getters for ClipPlane and ClipPlaneEnabled
SceneObject.ClipPlane and SceneObject.ClipPlaneEnabled
For sboxgame/issues/2260
Apply mask image & border images in the same way as background images
CSS: Fix parsing multiple filters, add a test for it
Fix order of operations when rendering drop shadows
CSS Drop Shadows (#1069)
https://files.facepunch.com/alexguthrie/1b0511b1/drop_shadow.png
Combine identical SetBoxShadow and SetTextShadow functions into one
Drop shadow property
Drop shadow menu UI test
Initial rendering support for drop-shadow
https://files.facepunch.com/alexguthrie/1b0511b1/devenv_wIlk5l0DF3.mp4
Multiple tests for mask, multiple filter modes, etc.
https://files.facepunch.com/alexguthrie/1b0511b1/sbox-dev_quSj9lxmDS.png
Shader cleanup + optimized compile
Render each shadow separately, means we can have multiple drop shadows if we want
Move drop-shadow stuff into its own shader, makes sense to separate this out now
Minor tweaks + optimized compile for ui_filter and ui_dropshadow
Clean up layer rendering
Remove ExCSS import (???)
Recompile ui_filter.shader
Remove ExCSS import (???)
Render each shadow separately, means we can have multiple drop shadows if we want
Move drop-shadow stuff into its own shader, makes sense to separate this out now
Minor tweaks + optimized compile for ui_filter and ui_dropshadow
Multiple tests for mask, multiple filter modes, etc.
https://files.facepunch.com/alexguthrie/1b0511b1/sbox-dev_quSj9lxmDS.png
Shader cleanup + optimized compile
Combine identical SetBoxShadow and SetTextShadow functions into one
Drop shadow property
Drop shadow menu UI test
Initial rendering support for drop-shadow
https://files.facepunch.com/alexguthrie/1b0511b1/devenv_wIlk5l0DF3.mp4
Disable VR assert handler
Use GetLastPoses instead of WaitGetPoses 🤦♂️
Move menu chord check into a better place, keep track of state change
Interop bindings for OpenVR overlay intersection
Expose VR compositor to managed context
VR - only wait for present if we have a valid swapchain
Bind GetTrackedDeviceIndexForControllerRole
Add GetTipTransformForDevice, use ComputeOverlayIntersection for virtual mouse pos inside VROverlay
Nicer way of doing all this custom input stuff
TryGetInputDataForControllerRole, don't set nPriority manually (it gets overridden by dashboard anyway)
Use dominant hand for VROverlay inputs (for now)
Add bindings for action data
Fetch & use trigger handle for button presses - probably not the best way to do this, but it'll do for now
Managed only menu chord binding
Temp place for menu binding hook up, just wanna make sure it works
Move menu screen test
Forgot to hook up menu chord on right controller, oops
Managed only menu chord binding
Temp place for menu binding hook up, just wanna make sure it works
Move menu screen test
Forgot to hook up menu chord on right controller, oops
Use dominant hand for VROverlay inputs (for now)
Add bindings for action data
Fetch & use trigger handle for button presses - probably not the best way to do this, but it'll do for now
TryGetInputDataForControllerRole, don't set nPriority manually (it gets overridden by dashboard anyway)
Interop bindings for OpenVR overlay intersection
Expose VR compositor to managed context
VR - only wait for present if we have a valid swapchain
Bind GetTrackedDeviceIndexForControllerRole
Add GetTipTransformForDevice, use ComputeOverlayIntersection for virtual mouse pos inside VROverlay
Nicer way of doing all this custom input stuff
Add GetTipTransformForDevice, use ComputeOverlayIntersection for virtual mouse pos inside VROverlay
VR - only wait for present if we have a valid swapchain
Bind GetTrackedDeviceIndexForControllerRole
Expose VR compositor to managed context
Interop bindings for OpenVR overlay intersection
Add Asset.DumpThumbnail, as well as Dump Thumbnail(s) in asset list context menu
Use clamp for texture filtering instead of border inside UI filters, makes blur filter look nicer
https://files.facepunch.com/alexguthrie/1b2411b1/filter.png
Fix mask image test layout
Hide "open menu screen" editor buttons if project isn't active
Don't know if this is permanent. Related to sboxgame/issues/3318
Custom mask-scope property: default for normal masks, filter to apply to any filters
Useful for applying blurs etc. in select areas
https://files.facepunch.com/alexguthrie/1b2311b1/sbox_69UkTGRaTg.mp4
CSS Masks (#1040)
https://files.facepunch.com/alexguthrie/1b2211b1/sbox_fQKTQ4VNsj.mp4
Do optimized compiles for ui_cssbox and ui_filter
Revert temp changes I made to the menu, didn't mean to commit these
Full mask shorthand support - should work with all combinations I think