Amethyst v1.2.1.3
Amethyst v1.2.1.3
Short Commit ID: 84d9ffc
(Amethyst)
In case you wanted to know what's changed since 0.9...
Better ask what's NOT been changed. But that'd be stupid
Anyway, there's a simple somewhat-of-a-changelog, here
How do I install or update Amethyst?
Click here!
I ran into a bug
Unless you're actually braindead, you may possibly have run into a bug,
Reporting those is important to building a stable application for release.
See just below on how to report bugs.
Want to help with translations?
We're currently localizing (translating) Amethyst, crash handler and devices.
If you know (or someone, you know, knows?) more languages than English
(preferably intermediate), please consider committing to the project.
You can find the instructions, FAQ, and files here
Changes:
84d9ffc
Fixed store's offline behavior (show errors instead of hanging)b4e84eb
Remove "Preview"1b4c0b6
Tweaked Azure Pipelines (and build) versioning83c4387
Better override notice tooltip, fix crashing with multiple overridesf0ae02c
Use the autogenerated build number provided by Azured21b979
Fix shutdown on older systems, acrylic support, OSC support3c9b9bf
Fixed bugged joint and override selector expander controls (again)fa3fc67
NUX changes, added new tips for the plugins/store pagedf8f77a
Removed the input stealing "fix" (already said to fixed by valve)3537c43
Bring to front before showing FirstShutdownTip
See More
cd34f92
Bumped versions, re-added the build script0a2d4a9
Merge branch 'curse' into main9c3450d
Added sounds to all the new stuff2603b8f
InfoPage sounds2af9119
Fluent NavigationView navigation iconsc944d0c
Updated non-english string resource keys8d8e9e9
[Store] Moved XAML hardcoded strings to JSON5866d14
[Store] Unpack to%temp%
instead of boiler plating the folder nameace4ed8
[Store] Implement drag-and-drop (offline) installs2b87e95
[Store] Search from drag-and-drop links, textda830c1
[Store] Install from search MVVM5dfc1a6
Responsive plugin uninstall flow0296887
Custom icons using JSON resources (because we can)2640911
[Store] Parse web link queriesaee21e1
Plugin store full search and uninstall functionalityce5f7c0
GitHub device auth with proper token encryptionf89fc12
Fixed (most) broken event listenersbb29ff0
Block subsequent close clicks while handling the exitcdd6a88
Amethyst task scheduler 😳 (startup/shutdown, update/delete)9c5cda7
[Prototype] Plugin store prototype, responsive design layoute271c91
Plugin downloads should have higher priority than base updates695cfc5
[Finished] Plugins auto-updater49562ef
Respect the custom update API endpoint, always overwrite assetsd0decd1
Plugins updater prototype, update API endpoint metadata property5865260
[Prototype] Update-check for plugins (using metadata)00a2fe4
Responsive layout plugins manager, update notice prototype358e278
Removed the Azure Pipelines script48d90f1
RenamedTrackingDevices
toAppPlugins
3dd98ba
[Stub] Plugins library manager pagece79935
New updater UI using usingInfoBar
sf1de5fa
Removed useless property change notification (WinRT COMException)5511ae6
FixedOverrideExpander
againfbafe27
ActualThemeChanged
should always reload all the NavigationView icons5c7e2a3
Automagic code reformat and cleanup1fa150d
Better skeleton flip toggle/header text (using the device's name)91c9ec1
Usestring.Format
instead ofReplace
, it's there for a reason87d14a9
Version bump, AppData should use auto-properties63db1ab
FixedInvalidOperationException
trying to remove invalid overrides1a54488
Fixed (?)No installed components were detected
when using storyboardsaf3f72d
More verbose application startup loggingc30e87c
FixedArgumentNullException
crash onDevices.ReloadSelectedDevice
271c0cb
Resource strings hot reload for plugins (only current, valid resources)c097cf0
Fixed double plugin registration (if failed on property scanning)ed86237
Plugin loader tweaks: catch dummy paths and invalid junctionsb0d9142
Better dialog layout, selectable error text07859c6
Restart notice as an in-app InfoBar instead of a TeachingTipa82d5a3
Added 'eval' in-app console command (runtime evaluation)384d751
Moved GeneralPage service status handling to x:Bind, faster refresh0cc7388
Made app notifications setup optional, system-dependent340a52c
Selectable plugin load error text/reason5386b4f
More plugin load/init errors, more verbose plugin composition errors4106ef2
Split MVVM files to maintain consistency6341c47
[Error] logging based on typed exceptions (for better diag)06279df
[Fatal] logging based on typed exceptions (for better diag)e374253
Fixed ServiceEndpoint ErrorDocs Uri getter6a4998b
Toggle disable telemetry during early application setupe552826
Added basic analytics, updated project SDK files95993d3
Log .NET version, commit number metadata9b40f8a
Log all loaded plugins as a GUID/Name tuple collectiond3e58f6
Fixed plugin manager's restart handler (assembly → bootstrapper)d1be960
More verbose plugin loading, show the inner exception in the manager3622af0
Updated application credits (InfoPage)4f29061
Allow plugins to provide custom docs-button Uris to open (errors)99245f3
Help docs follow device/service status codes (instead of messages)8382dc6
Fixed Flip|Freeze action handlers being registered for the wrong servicefa47e59
Helper function renames, logging1cfb7f6
Fixed service endpoint selection (update and MVVM locking, saving)a769984
AppSounds should now wait for the MediaPlayer to end playing806d860
Fixed tracker management logic (JointSettings
) and the LowPass filter3d1620d
Failure management? (Consolecrash
/fail
/exit
command handling)8f9fbb7
Internal version split, donators and display badgesf3695fc
Command console (InfoPage) and impl, fixed auto-updater773df77
'Manage' → ’Manage Plugins'7522536
Partial project renames, try to show trace on CrashHandler if caught950aef7
Added FUNDING.yml7107f7d
Prepare for upload to a new origin, remove some source flags753d0da
Removed unused OVR stuff (moved internally to the plugin)6a28153
Hide system's mediaCommandManager
as we don't really need it417ed9e
Standardized AME playing random navigation transitionsf3d8c27
Fixed pairing mixed-mode trackers (non-supported/supported/other)ca26e01
NUX additions (CanAutoStartAmethyst
) and some fixes936d55f
Added aCanAutoStartAmethyst
flag for servicesdef4a46
Fixed wrong already_running handler messagea81cec1
Use C++/WinRT instead of C++/CLI for mixed (now projected) types43da0a8
Come on, please do something...ecdeda4
Set up CI with Azure Pipelinesf821709
Delete .github directory822f119
(Try no 6) GitHub Actions publishment workflow382ff39
(Try no 5) GitHub Actions publishment workflowf03eeda
(Try no 4) GitHub Actions publishment workflowd6a832f
(Try no 3) GitHub Actions publishment workflow90a7729
(Try no 2) GitHub Actions publishment workflowd3997b4
(Try no 1) GitHub Actions publishment workflow206fab8
Better parsing of the default settings (defaults.json)b35c922
Added handling default settings, proper empty/null/invalid guards118db6a
Renamed some lower body joints for implementation clarity43e6f97
Fixed some types not working properly with PluginSettings85f0e85
Updated settings loading/saving a bit, added missing binding mode specifiers235e088
Fixed service UI localization runtime changes not workingb8abb81
Plugin manager should be working (kinda?) okay now79fa891
Updated the plugin contract, fixed plugin settings handlinge7b0b66
Fixed plugin settings serialization6449cb9
Added a function to check joint role validity (against the base device)0866bce
Properly refresh all plugins upon language/resource changesf7bfd8e
Fix service endpoints receiving tracker updates on disconnect435999d
[Amethyst] Auto-cleanup, auto-refactor2032ea8
Prev/Next nav sounds, fixed startup error sound and offsets breaking the appcebbc7c
Better status-fail plugin controls, more bug-prone backende77c5a4
How did we get here?37b9fa6
Don't require pose-set replies, we actually want to go fast93b8496
Update plugins' UI with along everything else2c06c5e
Disable trackers and shutdown the previous service, always re-init039b1b7
Layout fix for services with no calibration available6958d51
Added a quick NUX skip-and-never-come-back optiona597e80
New plugin settings getters for easier type access338b171
Custom plugin (variable) settings: implementation, loading/saving8040e09
Custom plugin (variable) settings: contract interface0f676f4
Format, plugin contract version bump51fb392
Added some null safety to service/controller input actions28230ea
Global exception handling5054181
Improve logging functions11e2eba
Stringized the service picker (Tracking Output
) SettingsPage control parta5c39bd
Updated file, resource and assembly versioning3ddbcea
Fixed filter strings not updating automatically on refresh calls4ca5f01
Properly refresh all strings on a language reload/hot-reloade2c7c9a
Added methods to get the hook (head^) and the rt origin (waist^) joints' poesb40edb8
Hook/origin joints should now include orientation datac620b7e
Fixed crashing if a service returns null spawn status results9ce228d
Fixed loading wrong strings for plugins and crashing on mismatched stringsdb4e0fc
Fixed plugin manager not parsing service GUIDs properly229c234
(Finally) Fixed joint and override management, added more juicy animationsedf6b4a
(Hopefully) Fixed joint and override management, added proper refreshes8213f5c
Implemented showing custom crash/error messages via the crash handler8e463a4
Pack strings into the crash handler, add mode and some tweaks9ef7b72
Shutdown the previously selected service upon any valid changes693b171
Updated for the pending service endpoint contract changesa6bd79d
(Pre-setup) Search for the first tracking device that provides any jointsb28b685
Made the update icon rotation always do a (one or more) full revolve0891218
Stub API service endpoint manager (static expander)a1e8a1e
Updated the plugin contract version722eb84
Made the string UI adapt to the current service endpoint's type and name42e6642
Help button animations, along with its flyout4b7ef7c
Split contract flip/freeze TeachingTips by titles and contents2ca51b0
Removed submodule vendor/openvr (not needed anymore)95346aa
Better tracker-service role support check, fixed expander animationsedf422f
Null check7547b86
Better plugin dependency loading (filtered plugin search, auto-loading)30d68d3
Updated the service contract not to include calibration checks, added a heartbeat calld85d11e
tmp9936288
a (tmp)44e14a2
Updated the plugin contract metadata, added proper displaying of it8404e4f
Global project/solution code cleanup/refactor9536cea
Flip and ExtFlip related fixes (should be even with cpp1.1.0.0)e5d63cd
Fixed calibration (yay!)f15cf13
Prettier LoadAttemptedPlugin string trim logic/output2b850ba
Suppress irrelevant plugin deps load errorsf3e506f
Actually update input bindings242bf9f
Auto bind the load-attempted plugins list4af2c82
Lock the updater thread on any device changes8e07ea6
Fixed some bad copypasting (major skill issue)8163ef3
Merge remote-tracking branch 'origin/main' into main303e770
Updated string and UI refresh handling, made MainPage use x:Bind for strings1a001f9
Manually assign entry point in case00267a4
Update Ella to newer namef6a0d7b
Add vr manifest1b8a490
Fix CrashHandler failing to compile in certain envs9a2b6a4
Enforce x6434cfba9
AmethystSupport partial cleanupfe5aee9
Better skeleton drawing, bearable for KV1e2ae04c
Added a custom device config check option42ce22b
Fixed manual 'refresh' not calling reconnect37195c4
Better plugin loading, delete framework libraries upon composing94ef6dd
Better tracker add/remove, pairs toggle MVVM implementationd290c8a
Trackers add/remove flyout MVVM, implementation6cca4e4
Fixed using wrong coordinate system (yuniteee 😭)95d7b16
Actual pose filtering (Eigen filters are bound via C++/CLI)85dd1a6
Added skeleton preview (should work for all device types)0348a45
Better plugin loading (split, separated context's)3921fd6
Use the translator class everywhere, added proper auto-refresh|reload, fixed some bugs034e03b
Added explicit exit call handling (after marking as exit-able)89b02f7
Added math-based feet orientation calculation, joint settings expanders' sounds88a8564
Updated and fixed some stuff, better plugin contract4f15b5b
Main app trackers update loop partial implementation, CLR handlers9cbd65c
Implemented server driver interfacing stuff, fixed sick CPU usagefe3d0fd
Plugin host methods, plugin resources impl, minor UI logic fixes30dd2cf
Runtime settings parsing & checking (joints / auto-management, overrides)5ff3b48
[Test] Bind/load strings straight from XAML (Only GeneralPage for now)4ce2ad8
Settings saving/loading, got offsets to work (at least round and save...)1d5342f
Amethyst Driver Client implementation, proper in-app usage8c210a3
Fixed offset sounds, joint expanders' visibility, updated WASDK & GRPC1cde97b
Stub [JointSelectorExpander, OverrideExpander], partial implementation485533f
Stub DevicesPage (no joint management), partial implementation96295de
Tracker/joint expanders, SettingsPage partial implementation220a44e
Added and fixed some sounds & handlers, reload semaphoresafc6137
If running on Debug, also write logs toSystem.Diagnostics.Debug
87e2e20
Fixed basic starting bugs: plugin contract, loading and construction, offsetsb9a964b
GeneralPage calibration (AmethystSupport C++/CLI), eigen as a submodulea9b251d
GeneralPage stub, offsets and devices as MVVM, partial implementationfa8800d
Use OpenVR API from submodules (as links) instead of copying, use auto resources9b43595
Use package references instead of local NuGet (VS17.4 required)7cefec7
Enabled (fixed) dotnet pack and publish for AmethystSupport (C++/CLI)1663b6a
Added loading, watching and hot reload for app language string resourcesff02095
MainWindow / OpenVR startup / Loading and checking plugins3cf892c
Driver client API placeholder NuGet image4656ee5
Plugin contract math-based orientation, placeholder NuGet image5014035
Added basic plugin loading (no config load/check yet)cccdac2
Some renames, trim 'K2' prefixes3eb49e3
Added the updater and some missing MainWindow functionsb0eff62
API projects export NuGet packages for Amethyst and the NuGet API622a8b4
Stub pages, partial MainWindow.xaml impl630bc3b
Stub device functions5844a69
Added K2AppTracker calibration/RPC compose methodsb9677a6
Updated plugin contracts, TrackingDevices near-finished-state backup0cdf224
Updated client and plugin contracts, Interfacing near-finished-state backupe01eb49
Added server protocol files35dba1c
Added some Interfacing methods, updated names7b81cb8
Added a stub server driver client (for gRPC)6be2850
Updated namespaces (so ReSharper won't go crying)1367517
Added stub K2Interfacing (L0-145 of 2000)65ff75b
Added stub application settings (no saving/loading for now)c46abec
Added VR Input handler, logger, moved to System.Numericsf39ab8b
Added static solution assetsd848c5d
Added base solution files
Reports:
- Record the issue (or at least describe it as well as you can)
- Send us the log files from
%AppData%/Amethyst/logs