Commit graph

1525 commits

Author SHA1 Message Date
Jakob Bornecrantz b3523a7259 st/oxr: Protoct event queue with a mutex 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 76e4092e30 st/oxr: Purge event queue of destroyed sessions 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 185036489c st/oxr: Ensure get gfx requirements has been called 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 12d78144f6 st/oxr: Verify XrViewConfigurationType in xrEnumerateEnvironmentBlendModes 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz fb867b02c3 xrt: Remove array_size field on xrt_swapchain 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 09baeb91bc c/swapchain: Close and remaining open FDs 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 753b910b5a c/swapchain: Don't only give out the zero index 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 5b0085f1c1 c/client: Mark consumed FDs as invalid 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 9ec0b559d4 ipc/util: Don't follow null pointers and add alignment paranoia 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 05827abd8e ipc/server: Fix swapchain handling 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz d295ca49a8 doc: Add IPC section 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz ebd5773fb8 util: Add function for u_hashset to allocate a item 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 0d2a24b9a0 util: Add a index fifo 2020-06-02 13:02:04 +01:00
Jakob Bornecrantz 371622c199 d/psvr: Normalize rotation 2020-06-02 13:02:04 +01:00
Lubosz Sarnecki 7186bddf60 c/comp+ipc: Use array indices again.
This fixes a regression introduced by the IPC and layer rendering
patchsets and passes the array_index to the correct places, so the
correct VkImageView is used instead of the one with index 0.
2020-06-02 12:42:42 +02:00
Christoph Haag f68252bfbe st/oxr: Check quadlayer swapchain for NULL 2020-06-01 18:38:54 +02:00
Jakob Bornecrantz 77c2b9cb5d c/main: Include <math.h> in comp_layer_renderer.c 2020-05-29 23:37:22 +01:00
Jakob Bornecrantz ace4d0e825 os/threading: Incude xrt_compiler.h 2020-05-29 23:36:23 +01:00
Jakob Bornecrantz b572577014 st/oxr: Update OpenXR headers to 1.0.9 2020-05-29 23:36:23 +01:00
Jakob Bornecrantz 8e6592338f monado: Update version 2020-05-29 11:00:22 +01:00
Jakob Bornecrantz 739f5f13c7 doc: Remove old changelog fragments 2020-05-29 11:00:22 +01:00
Jakob Bornecrantz b48fd8b178 doc: Update CHANGELOG.md 2020-05-29 11:00:22 +01:00
Jakob Bornecrantz f9ed82914b doc: Make changelog snippets uniform 2020-05-29 11:00:22 +01:00
Jakob Bornecrantz 9c44f2194d doc: Add .gitignore to big 2020-05-29 11:00:22 +01:00
Jakob Bornecrantz 9e8844eb68 doc: Changelog for !356 2020-05-29 11:00:22 +01:00
Christoph Haag 6045742561 st/oxr: Translate relation_flags in oxr_space_locate() 2020-05-29 01:46:42 +02:00
Christoph Haag 7fe0f3610b st/oxr: Fill entire xrt_space_relation in oxr_xdev_get_pose_at, not just pose
In particular the relation_flags indicate whether the pose is valid or a fallback pose.
2020-05-29 01:25:57 +02:00
Christoph Haag f10b341f57 st/oxr: Don't assert on invalid pose
ensure_valid_position_and_orientation() inserts fallback poses when
driver reported poses are invalid.
2020-05-29 01:09:54 +02:00
Christoph Haag c9b692903c st/oxr: Don't indiscriminately set orientation & position to valid in oxr_space_action_relation() 2020-05-29 01:02:31 +02:00
Christoph Haag 3bdc57c4b3 st/oxr: Don't indiscriminately set orientation & position to valid in ensure_valid_position_and_orientation() 2020-05-29 00:57:35 +02:00
Christoph Haag 384114b821 d/survive: Don't invert valid position condition 2020-05-29 00:35:58 +02:00
Lubosz Sarnecki eced139598 doc/changes: Document MR 340. 2020-05-28 23:18:09 +01:00
Lubosz Sarnecki 1e8106c974 c/compositor: Render multiple layers without IPC.
Hook up layer rendering when XRT_FEATURE_SERVICE is not set.
2020-05-28 22:16:57 +00:00
Lubosz Sarnecki 4ad806df38 ipc/server_process: Check for swapchain NULL pointer.
Skip rendering when swapchains are invalid.
2020-05-28 22:16:57 +00:00
Jakob Bornecrantz 066009c0c5 c/layer_renderer: Enable blending. 2020-05-28 22:16:57 +00:00
Lubosz Sarnecki d0539161dc c/renderer+ipc: Use layer renderer.
Make the renderer and IPC aware of multiple projection and quad layers
using the layer renderer.

Remove redundant code related to idle images and imported buffers and
command buffer rebuild, since we now always just display the layer
renderer's frame buffer.

Get view and projection properties from xrt_device.
2020-05-28 22:16:57 +00:00
Lubosz Sarnecki aedd4d9ff8 c/layers: Implement layer renderer.
Implements a layer renderer capable of handling multiple quad
and projection layers rendered in it's own Vulkan pipeline.
2020-05-28 22:16:57 +00:00
Lubosz Sarnecki fc271ad5da aux/math: Add function to calculate quad model matrix. 2020-05-28 22:16:57 +00:00
Lubosz Sarnecki 68c5eecb96 aux/vk: Add image helper struct and functions. 2020-05-28 22:16:56 +00:00
Lubosz Sarnecki 589c7e4fef aux/vk: Add buffer helper structs and functions. 2020-05-28 22:16:56 +00:00
Lubosz Sarnecki 905040319a aux/vk: Use optimal tiling in vk_create_image_simple.
Fixes an validation issue on NVIDIA and should bring more performance.
2020-05-28 22:16:56 +00:00
Jakob Bornecrantz 03f802de77 st/oxr: Correctly validate time in xrLocateSpace 2020-05-28 22:56:59 +01:00
Jakob Bornecrantz dd04379209 st/oxr: Now that layers are supported up the max layers to what the spec requires 2020-05-28 22:56:59 +01:00
Ryan Pavlik 6b0831466e cmake: Add missing modules 2020-05-28 19:46:14 +00:00
Ryan Pavlik 1aff19e975 ci: Rename scripts to get : out of filenames 2020-05-28 19:46:14 +00:00
Ryan Pavlik cef1970340 ipc: Make script more pythonic 2020-05-28 13:22:30 -05:00
Ryan Pavlik ff3a4d8b50 ipc: Fix all Flake8 warnings 2020-05-28 13:20:28 -05:00
Ryan Pavlik 4efdb6762a ipc: More script simplification. 2020-05-28 11:56:22 -05:00
Ryan Pavlik 0964a6dd07 ipc: Clean up generation script 2020-05-28 11:34:36 -05:00
Ryan Pavlik a44a915151 ipc: Put generator main in a function, for testing purposes 2020-05-28 11:34:36 -05:00