userAlexcancel
branchFacepunch.XR/mastercancel

72 Commits over 184 Days - 0.02cph!

Today
Improved checks inside HasHeadset
14 Days Ago
Check if we can actually init OpenXR when calling HasHeadset - makes the call more expensive(!) but more accurate
14 Days Ago
Add HasHeadset() check
15 Days Ago
Additional checks when loading JSON bindings, don't poll for hand tracking if instance doesn't support it, make sure we have an instance
21 Days Ago
Don't crash if we fail to open bindings JSON file PollEvents() returns NO_SESSION_RUNNING if a session isn't attached
3 Months Ago
Fix EXCEPTION_ACCESS_VIOLATION_EXEC finside InitHandTracking
4 Months Ago
InputBooleanActionState state is uint32_t for interop
5 Months Ago
Save off system properties when we make the system Debug utils extension is optional, only do hand tracking stuff if we have it supported Log enabled API layers Don't exit immediately on fail, becomes confusing
5 Months Ago
Hand tracking support Emulate finger curl by calculating distance between palm and finger tip bones
5 Months Ago
Add support for optional extensions, e.g. XR_EXT_hand_tracking
5 Months Ago
Haptics support
5 Months Ago
Use one single space for everything (stage space), move some stuff into sync()
5 Months Ago
Use local space instead of stage space for view locate & layer composition
5 Months Ago
Use local space for headset view/projection rather than stage space
5 Months Ago
Applications must provide poses manually when submitting (to ensure accurate reprojection)
5 Months Ago
Add empty action states to input arrays after loading bindings
5 Months Ago
Use m_xrViews instead of m_views when getting view info & proj matrix
5 Months Ago
Stubbed haptic vibration func Use stage space for controller poses
5 Months Ago
Add xr_linear.h Fetch projection matrix directly from xr_linear, means people don't have to calculate it themselves Use our own matrix struct Minor tweaks
5 Months Ago
Add GetInstanceProperties() for system name
5 Months Ago
Tweak logging buffer sizes, don't early return
5 Months Ago
Re-organise project, swap naming for public/private headers (now fpxr.h and fpxr_private.h) Try out blame ignore revs
5 Months Ago
Update examples Use less stack space
5 Months Ago
Input sources are passed as enum, fetch view info Use interface through public header README.md with examples Simplify GetHandle
5 Months Ago
Controller bindings can be stored in separate files Support input source paths Add support for pose actions
5 Months Ago
Start moving over to subactions for per-controller input context
5 Months Ago
Change the way we handle bindings and actions
5 Months Ago
Implement Input::GetVector2ActionState InputDigitalAction -> InputBooleanAction, move Input initialisation into instance and link session afterwards
6 Months Ago
Basic inputs + example Remove asserts & logs in input functions
6 Months Ago
Input structs
6 Months Ago
Show openxr error if xr operation doesn't succeed Check if parsing json actually worked, if not then show error Create input instance Run OPENXR_CHECK inside input ctor, add comment about some runtimes throwing errors
6 Months Ago
Vibration output
6 Months Ago
Support more binding types, wrap xr calls in OPENXR_CHECK(...)
6 Months Ago
Use struct constructor instead of builder pattern for instances Remove "reserved" enum entries Add vjson (zpostfacto/vjson) Load action sets, actions, and bindings from actions.json (similar to how steamvr does it)
6 Months Ago
Out ptr Better formatting for default stdout logs
6 Months Ago
Better error checking, treat errors as warnings & compile with warning level 4
6 Months Ago
Revert "Move vkSubmit into EndFrame()" This reverts commit 1f59cd0c1c499762b96d0d3a268a1c61bf02a4ba.
6 Months Ago
Only end frame if we've submitted Move vkSubmit into EndFrame()
6 Months Ago
Remove per-frame debug logs Copy submitted texture as one big block rather than two small blocks
6 Months Ago
🤦‍♂️
6 Months Ago
Update state in locations that prevent threading issues Compositor creates an EventManager in ctor, allows access to it - rather than creating an EventManager on demand
6 Months Ago
Cleanup Update example Contain frame state inside a struct, nice and clean TextureSubmitInfo: remove bounds info Better render target size management Wait for fences on every submit
6 Months Ago
Debug callback type Verbose logs Keep track of frame start / end to prevent crashing with XR_ERROR_CALL_ORDER_INVALID Perform vk copy operation as single step on submit Use vk fences for vk copy sync
6 Months Ago
Remove logs Use texture submit x/y as view subrect offset x/y
6 Months Ago
Compositor - getters for display info Depth swapchain/texture are completely optional, can be ignored etc Acquire/wait for views inside BeginFrame, save off for Submit XR_EXT_debug_utils support Minor tweaks Remove RequestValidationLayers, m_useValidationLayers - unused Get rid of right eye offset until I figure rendering out completely
6 Months Ago
Move xrWaitFrame into BeginFrame, sync now just calls EndFrame() and BeginFrame()
6 Months Ago
Max 1 second xrWaitSwapchainImage timeout
6 Months Ago
Bundle compositor operations into Sync()
6 Months Ago
Load API layers 🙈 This is redundant Platform defines in fpxr.h and fpxr.cpp Section headers Compositor submit - copy app-provided texture data into OpenXR-provided swapchain images
6 Months Ago
fpxr_platform.h no longer required