Commit graph

24 commits

Author SHA1 Message Date
Christoph Haag 9481013081 comp: add VkDisplayKHR window backend
Must be activated/selected with an env var for now: XRT_COMPOSITOR_FORCE_VK_DISPLAY=2
2021-01-19 17:00:46 +00:00
Jakob Bornecrantz 2b996f30c4 xrt: Reflow after column change 2021-01-15 13:50:32 +00:00
Ryan Pavlik 0cb64ce5bd comp/main: Windows work - got a window to appear! 2020-12-06 23:07:05 +00:00
Jakob Bornecrantz 6260248d20 c/main: Introduce comp_target struct 2020-11-20 03:20:33 +00:00
Ryan Pavlik a0bbca572d comp: Basic Android compositor window.
Also makes the service feature not depend on other options:
it can be used without those other parts.

comp/window_android: Remove unused EGL code for now, as it is crashing.

comp/window_android: Use MonadoView async method to create surface.

comp/window_android: Use custom surface as intended

Co-authored-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
2020-10-28 09:41:30 -05:00
Jakob Bornecrantz 1750bb672f c/main: Remove none shaders 2020-10-08 15:02:52 +01:00
Jakob Bornecrantz b5e5322f49 c/main: Use log levels 2020-10-06 20:37:01 +01:00
Christoph Haag 026cc64681 comp: make nvidia display selectable with XRT_COMPOSITOR_FORCE_NVIDIA_DISPLAY
Allows temporarily adding a nvidia display name string to the whitelist without recompiling.
2020-08-11 00:44:31 +02:00
Christoph Haag e48c748a57 xrt: suggest correct GPU in xrGetVulkanGraphicsDevice()
As before, on the service side the GPU index the compositor runs on can be selected with
* XRT_COMPOSITOR_FORCE_GPU_INDEX=INDEX1

By default xrGetVulkanGraphicsDevice() will suggest the same GPU the compositor runs on.

It is also possible to override the GPU index suggested to applications with
* XRT_COMPOSITOR_FORCE_CLIENT_GPU_INDEX=INDEX2

The reason this is both done on the service side is that if compositor and client run
on different GPUs, the swapchains use linear tiling instead of optimal tiling.

To make chosen GPUs comparable across the compositor's and the client's vulkan instance,
VkPhysicalDeviceIDProperties.deviceUUID is used.
2020-08-07 17:01:13 +02:00
Jakob Bornecrantz adc6ca8e8a c/main: Fill out all of the compositor info struct 2020-08-06 15:14:49 +00:00
Jakob Bornecrantz ee48b44087 c/main: Remove internal compositor global flip_y 2020-08-06 15:14:49 +00:00
Lubosz Sarnecki 435d5a9b9e c/comp: Remove internal Vulkan validation init.
Instead of maintaining this chunk of code and build options, the Vulkan
loader can be used to load up validation. This has the advantage that no
layer name needs to be hard coded inside Monado, which was subject of
change recently.

Instead of using our own environment variable we can easily set the one
from the loader, e.g. `VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation`.
2020-06-03 11:17:51 +00:00
Lubosz Sarnecki 6b05c216ce c/settings: Add a bunch of display strings to NVIDIA whitelist.
Whitelist Oculus DK1, DK2 and CV1.
Whitelist Vive Pro and Valve Index.
2020-04-07 13:45:11 +00:00
Jakob Bornecrantz 8c06787d93 comp: Refactor documentation 2020-03-02 12:00:22 +00:00
Christoph Haag 1cf742a3dc comp: Add XRT_COMPOSITOR_DESIRED_MODE env var to choose mode for direct mode.
The variable should be set to the index in the enumeration of a modes according to VK_KHR_display.

Monado can print a list of available modes with their indices with the env var XRT_COMPOSITOR_PRINT_MODES=1.
2020-02-19 13:51:00 +00:00
Christoph Haag c2250e5af0 comp: print available modes with XRT_COMPOSITOR_PRINT_MODES=1
To not clutter the user's output with debug info, add a variable to print only the available modes.
2020-02-19 13:51:00 +00:00
Jakob Bornecrantz 2114fc877d comp: Add option to draw wireframe 2020-01-25 20:19:13 +00:00
Christoph Haag 7d9ef2f371 comp: Add setting to force a vulkan gpu index 2019-10-25 21:05:06 +02:00
Drew DeVault 9bcfa56f2f compositor: overhaul Wayland backend
This simplifies the Wayland backend, fixes the build configuration for
it, ports it to xdg-shell stable, and reworks some false assumptions
from the original port.
2019-09-26 12:15:27 -04:00
Jakob Bornecrantz 1873d3a1d2 comp: Tidy code 2019-04-03 17:24:06 +01:00
Pete Black df2b6da078 comp: Add NVIDIA direct mode code 2019-04-03 17:02:07 +01:00
Lubosz Sarnecki 00afe442f8 comp: Introduce XRT_COMPOSITOR_VULKAN_VALIDATION.
For enabling Vulkan validation during runtime.
Add CMake option to disable Vulkan validation at build time.
By default the DEBUG extension is enabled but the validation layers
are not when the ENV variable is not set to true.
2019-03-29 10:59:41 +01:00
Ryan Pavlik 8c37377853 comp: Keep track of nominal display interval and last time 2019-03-27 13:39:22 +00:00
Jakob Bornecrantz 15a97422ba xrt: Add all of Monado 2019-03-18 05:52:32 +00:00