

actually_fred
Members-
Posts
175 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Everything posted by actually_fred
-
v1.2-beta2 includes support for hats: https://github.com/OpenKneeboard/OpenKneeboard/releases/tag/v1.2-beta2 This also includes the changes in v1.2-beta1: https://github.com/OpenKneeboard/OpenKneeboard/releases/tag/v1.2-beta1 If you're using WMR, https://github.com/OpenKneeboard/OpenKneeboard/blob/master/docs/troubleshooting/wmr-kneeboard-position.md More generally: bind a button/combo to 'recenter' in OpenKneeboard settings; it generally works best if you use the same button/combo for VR recenter in DCS and OpenKneeboard. OpenKneeboard asks to be in the same place every time; it's up to SteamVR and/or the headset manufacturer to make that happen, and OpenKneeboard can't detect when they fail; recentering as soon as you're in-game is the best workaround.
-
No ETA, though you can get an idea of progress here: https://github.com/OpenKneeboard/OpenKneeboard/projects/2
-
It currently supports joystick buttons; the warthog throttle pretends that some of its' hats are buttons - these one works. True hats are not currently supported - updates for that will be here: https://github.com/OpenKneeboard/OpenKneeboard/issues/80 The easiest way is to use multiple tabs; alternatively, you can switch out Saved Games\OpenKneeboard\settings.json with different versions for different aircraft. Updates on support for profiles in general will be at https://github.com/OpenKneeboard/OpenKneeboard/issues/63 . The DCS forums aren't really the right place for IL2-related questions, though I won't be working on anything IL2-specific (like automatic switching) as I'm banned from posting in their community (my guess is for explaining OpenKneeboard's anti-cheat warning, though no reason was given).
-
I end up looking at DCS .dmp files for OpenKneeboard, as every non-VR and oculus SDK overlay app (e.g. OpenKneeboard, Discord, Steam, Razer Synapse, Rivatuner, MSI afterburner...) intercepts IDXGISwapChain::Present; if multiple overlay programs are being used, they can interfere with each other, and crash DCS. DCS `.dmp` files often contain 'impossible' combinations of modules (as shown by `lm` in windbg) ; for example, I've seen the WMR OpenXR dll loaded but without any openvr_api.dll - I'd expect to see OpenComposite's openvr_api.dll It would be useful for me - and I'm guessing for you - to be able to see a more definitive list of which DLLs have been loaded Adding MiniDumpWithUnloadedModules to the DumpType parameter of your MiniDumpWriteDump function call would make it easier for me - and you - to identify interfering software when looking at crash reports.
-
How do I add docs to OpenKneeboard software?
actually_fred replied to jozeffff's topic in Utility/Program Mods for DCS World
I've added some more docs: https://github.com/fredemmott/OpenKneeboard/blob/master/docs/troubleshooting/dcs-tabs.md https://github.com/fredemmott/OpenKneeboard#adding-pages-and-tabs-to-the-kneeboard > add documents to, let's say, the theater tab? For now, the theater tab only loads built-in pages (which only exist for caucasus and NTTR); if there's a standard place for them inside saved games, I'll make it load those too - but I don't think there is. If someone can confirm there's no 'standard' place for per-map user kneeboard pages, I'll probably add support for `Saved Games\OpenKneeboard\Maps\MapNameHere` in a future version -
I've added some more docs: https://github.com/fredemmott/OpenKneeboard/blob/master/docs/troubleshooting/dcs-tabs.md https://github.com/fredemmott/OpenKneeboard#adding-pages-and-tabs-to-the-kneeboard
-
I'll probably re-add that as an option; I briefly added it, and both myself and the person who originally asked for it ended up disliking it, as it makes it harder to go to the first or last page, so removed it pretty shortly after.
-
It’s reasonably likely we’ll end up with the same toolbar from the main app in the top header of the kneeboard
-
Combinations work, as long as all the buttons are on the same device; for cross-device modifiers, something like joystick gremin works well. I'd be open to pull requests adding support for a more complex binding system, but don't plan to work on it myself My personal preference is a small Wacom Intuos - this has a ~ 12x18cm drawable area, ~ 16x20cm total area including the buttons. I use 3M command strips to attach it to something like https://www.amazon.com/Destination-Departure-Pilot-Kneeboard-Comfortable/dp/B087JZ3WNC/ - the dedicated pen/stylus clip at the top is handy. I also have a Huion H640p; my impression is: no noticeable difference in writing/drawing feel for me for this use; Actual artists may strongly disagree Wacom have much better/more reliable software; for OpenKneeboard in particular, the option to set the buttons to 'application defined' is useful. This makes binding them via OpenKneeboard's input settings work, rather than having to use 'remote control' helper programs via Huion's 'launch program' option, and also avoids the Huion drivers need to keep the mouse cursor within the DCS/OpenKneeboard windows. the small Intuos is a better size the large, recessed buttons on the Intuos are much easier to find and press while you've got a VR headset on ... but the Huion is 'good enough', much cheaper, and has two more buttons Longer extends the writing area closer to your hips; you can crop the area in the driver settings, but when it's literally on my knee, I find writing near the bottom of the h640p a little uncomfortable.
-
I could add that option, however it would mean removing the headings and the button in the top left, and... If you have a graphics tablet, tap the button in the top left with a 'menu' icon, then tap the page you want. For mission/theater/folder-of-images it'll just give you a quick listing of pages, but for PDFs with table-of-contents data, it'll list that. If a PDF has hyperlinks, they'll work too Or, if you're looking for the opposite, and want a non-VR 'preview' of the VR rendering, grab the 'remotecontrols' zip and use OpenKneeboard-Viewer.exe ; hit `s` to enable a streamer mode that makes it more suitable for OBS or similar.
-
https://github.com/fredemmott/openkneeboard/releases/tag/v0.3.0 here we go
-
They're very separate - you can see the current list of standard-ish supported graphics APIs for OpenXR in 'valid usage (implicit)' for XrSessionCreateInfo in the specification. I say 'standard-ish' as it's up to OpenXR runtime implementors (i.e. Oculus/Valve/HP/MS/....) which they want to support, and they can make up their own too. The highlights for modern PC games are D3D11, D3D12, and Vulkan, but there's also OpenGL-on-windows, and a bunch of linux- and mobile-specific alternatives.
-
DCS submits an ovrLayerType_EyeFovDepth layer via ovr_SubmitFrame2 (this might be ovr_SubmitFrame or ovr_EndFrame in the source); the depth data in this layer appears to be incorrect. The most visible impact of this is that the performance HUD options in the oculus debug tool do not work with DCS. As I understand it, this will also have an impact on perceived performance and 'smoothness': accurate depth data is required for positional timewarp and for ASW 2.0; missing depth data should disable these techniques entirely, but it's not clear what incorrect depth data will do - at least, it seems unlikely they will work as intended. Both OpenKneeboard and VRKneeboard work around this by removing the depth data; in OpenKneeboard's case, this is done by copying into an ovrLayerType_EyeFov.
- 1 reply
-
- 1
-
-
> Edit: It seems that I only can end the new version via task manager this was broken by a windows update that came out on Friday - I've reported this to microsoft at https://github.com/microsoft/microsoft-ui-xaml/issues/6859 I'll have a v0.2.2 out later today that works around this by going back to an old fashioned windows title bar. > What's your discord? https://discord.gg/QQhzk782EV
-
> Wonder why only the author works on it, from what I understand it was supposed to be a "community" project. Open source means that other people *can* contribute, or create their own version if I abandon it. There's no guarantee of it, and in my experience it takes a long time for a developer community to really form around any project. Also, anything visible in-game needs to be written in C++ and is very directx-heavy. It's not the most approachable code. > Positioning of the Kneeboard via Setup (mine was on the floor of the plane...might have something to do with where the hmd is pointing during startup) Configurable in latest version, released today > No / Little performance impact. VRK has huge problems in MP sessions (have to kill it sometimes and then being lost due to all my pages gone) This is extremely important to me, but I don't have a G2. I am testing steamvr + quest 2, but it some problems here seem to be specific to the steamvr+wmr+G2 combo. I've had a few reports of this on a G2 now, but the cause is narrowed down: OpenKneeboard effectively does 2 things with steamvr: - tells it "draw this image at this rectangle in 3D space". If you're not drawing with a graphics tablet, this will only happen when you change page/tab - it can be 10s of minutes between OpenKneeboard doing this - asks steamvr where you're looking to tell if it should magnify the kneeboard Both of these are completely fine when using SteamVR + Oculus, so it seems likely to be a SteamVR/WMR/HP interaction. Given I don't have the hardware, it's slow to narrow it down. In todays version, you can disable the gaze-based zoom, which disables all headtracking. If that fixes it for G2 users, let me know, then, I can try stuff like 'only check 4 times a second', or ultimately you can use a button binding to toggle zoom instead. If disabling gaze zoom doesn't fix it, perhaps this new openxr approach is the way to go and won't have the same problems. No way to tell. > Huion Works with standard drivers - there's a docs/huion.md which explains the setup, which isn't great. I've not tried the VRK drivers. Tangent: my 2c: wacom have a more convenient size, better drivers and software, and the large recessed buttons are much easier to use when you've got a headset on. Actual drawing/writing with a pen, huion is more than enough. Huion of course has a *much* better price > being able to set tabs and stuff to find pages easy I hope this is there already There's also support for PDF table-of-contents. > Maybe left and right kneeboard like in VRK I want to do this, I'm mostly trying to figure out the user experience. I don't want twice as many button bindings, two graphics tablets, etc. I'm thinking maybe something like the A-10C 1 'swap MFCDs' function - or just a 'copy current page to left knee'. > use of an calculator Not yet, but I did design it with this in mind. Right now I'm thinking A-10C LASTE wind calculator, and a coordinate converter. Is there other stuff you'd like? Would a basic arithmetic calculator be useful? When I get to this, I'm likely to try making it so it's doable with HTML+Javascript, or lua instead; I'm not sure if that will be practical with the rendering pipeline (essentially we need to periodically copy a GPU texture between applications) - but it would be much better than needing anyone else that wants to make a new calculator to learn C++ :) > being able to use it without steam-vr , so maybe usable in MSFS > OpenXR Going to bundle these together: if you have an oculus headset, steamvr is not required. You really don't want to know how this works. OpenXR: planned because of MSFS, but previously low priority. I wanted to support MSFS *some day*, but I don't play it, so for now I'm pretty focused on DCS. I only learned about the OpenComposite OpenXR thing today; if it turns out to be reliable and generally be wanted by G2 users playing DCS, that'll definitely make me rethink the priorities. Also, want to highlight, the best way to request changes/features is to create an issue on github For general discussions, either github discussions or the discord; I'm trying to remember to check in here, but it's not a place that I'm habitually active.
-
Sorry, I'm not regularly active on the forums > But I don't see the kneeboard appearing inside DCS in VR. Any way of troubleshooting this? - SteamVR or oculus? - One person reported that when they launched via skatezilla's launcher, it didn't work, until they deleted the path from the slot and re-added it. Does that work for you? - How did you install DCS? Steam or standalone? - Try removing DCS from the games tab, starting DCS, then re-adding it to the games tab by selecting the running process
-
Ah; I suspect there's a common reason there's not DCS iPad apps: To make a VR app work well on Windows *without* an iPad or similar, you need to: - do almost all work on the GPU - share this work with DCS or SteamVR without copying from between main memory and GPU memory, or otherwise involving the CPU. In OpenKneeboard's case, DCS or SteamVR literally reads from the same GPU memory that OpenKneeboard writes to. There are many libraries that make it easy to do everything on the GPU on MacOS, Windows, iOS, and Android - as long as you're immediately rendering to your application window. Most of them do not provide a way to share that GPU buffer with another application. By far the easiest approach is to do everything with DirectX, which basically means it won't run on an Apple device. There are more portable ways to do this - e.g. tell SteamVR "just load this image", but there are two major issues: - it uses a lot of CPU and GPU resources - SteamVR has a lot of... gotchas that either need working around, or work fine in small demos, but are completely unusable in the real world For example, in my testing, if you tell SteamVR "render this image as an overlay" or "render this non-shared DirectX texture as an overlay": - it leaks megabytes of memory every frame - it simply stops working at all after somewhere after 200 frames. Round number, not a power of two, feels like an accidental arbitrary limit On a more constructive note: - several real-world general aviation pilots I know use ipad minis; have you looked at real aviation apps for DCS? I can imagine there's a reason they don't work well, or perhaps they're just outrageously expensive - I'm considering embedding a webserver so you could use it in Safari. I'm not sure how well this will work for graphics tablet drawing.
-
Is this a question for me or for Ready? if for me: if DCS is running in SteamVR mode, OpenKneeboard uses SteamVR overlays. If using Oculus or non-VR, there is no equivalent, so it must be in the game. If you delete DCS from OpenKneeboard's games list, you can run OpenKneeboard as a separate window or on another monitor without it rendering in game *except* for SteamVR - the SteamVR overlay can not be turned off if SteamVR is running. As for VR controllers: to me, they're just not useful for DCS. Oculus SDK support would also be somewhat more complicated than it is right now. Do you want an option to make it only appear when the steamvr dashboard is open?
-
I intentionally did not initially release precompiled versions - and marked it in the README as intended for developers - because it's a pretty complex piece of software and was only tested on my computer. I wanted to keep the number of users, reported issues, and requests for help to a manageably low number in case it turned out to *only* work on my computer Things went better than that worst-case worry, and it's now released (with more documentation, and graphics tablet support) at https://github.com/fredemmott/OpenKneeboard/releases/latest It'll hopefully be in user files once ED review This issue (https://github.com/fredemmott/OpenKneeboard/issues/21) doesn't seem to be a common one; the person reporting it has massive frame drops using any SteamVR overlay application - even fpsVR - and there are other G2 users of both fpsVR and OpenKneeboard without the same problem. If fpsVR/OVRToolkit/OVRDrop work for you, it feels pretty likely that OpenKneeboard will work for you. That said, while I've tested with SteamVR, I don't have any WMR headset to dig into stuff directly. I've left the issue open until I'm certain about that, and that there's no reasonable workaround.