Ryan Pavlik
a7c22fd185
a/util: Rename u_render_timing to u_pacing_app and u_frame_timing to u_pacing_compositor.
...
They both control pacing, but for different uses. Neither actually performs any timing.
2022-01-15 01:06:48 +00:00
Ryan Pavlik
365b3ca8d4
a/util: Make display timing helper more configurable.
...
Also comment some display timing interfaces better.
2022-01-15 01:06:48 +00:00
Christoph Haag
a60fab80e6
c/main: Don't leak non_desktop_reply
2022-01-13 23:46:43 +01:00
Christoph Haag
a6935dcc4b
c/main: Check surface counter flags
2022-01-13 23:07:46 +01:00
Christoph Haag
8fe465e88f
c/main: Make VkDisplayKHR from direct mode accessible in target swapchain
2022-01-13 23:07:34 +01:00
Christoph Haag
73d75aa522
c/main: cache VkDisplayKHR in wayland direct mode window
2022-01-13 23:07:16 +01:00
Christoph Haag
8e020fac2d
c/main: Add and enable VK_EXT_display_control optional device ext
2022-01-13 23:06:40 +01:00
Christoph Haag
b7d179b1b3
c/main: Add display surface counter optional vk instance ext
2022-01-13 23:06:15 +01:00
Christoph Haag
ff4d492b74
c/util: add optional vk instance extensions
2022-01-13 23:05:38 +01:00
Christoph Haag
ce6339e237
c/main: Make more use of string list for device ext
2022-01-13 23:05:06 +01:00
Christoph Haag
f34816872c
c/main: Use u_string_list for vk extensions
2022-01-13 23:04:34 +01:00
Christoph Haag
ee366e16e5
c/main: rename extensions num -> count
2022-01-13 23:03:56 +01:00
Christoph Haag
1ae1e695e2
c/util: Fix device extension list comment
2022-01-13 23:03:25 +01:00
Christoph Haag
8d5847d5a9
comp: Fix running with XRT_COMPOSITOR_XCB_FULLSCREEN=1
...
It required XRT_COMPOSITOR_XCB_DISPLAY to be set to a valid display or the
swapchain creation would fail because the requested width x height was 0x0.
Now the first display with a size other than 0x0 is selected when the current
selected display is 0x0.
fixes #148
2022-01-13 20:50:48 +00:00
Christoph Haag
d36123927d
comp: avoid an unnecessary struct copy for print modes
2022-01-12 21:57:18 +01:00
Christoph Haag
3dfec5f1ab
comp: Don't omit first mode in debug print
...
Also avoid an unnecessary struct copy.
2022-01-12 21:53:47 +01:00
Antonio Ospite
2b456da531
c/client: make sure layer_commit passes complete frames in comp_gl_client
...
Make sure `layer_commit` passes on complete frames in `comp_gl_client.c`
even when EGL_ANDROID_native_fence_sync is not available.
The `insert_fence` function defined in `comp_egl_client.c` and passed as
argument to `comp_egl_client::client_gl_compositor_init` is only setting
up a proper fence when EGL_ANDROID_native_fence_sync is available,
resulting in a no-op otherwise.
However the fact that the insert_fence function is still valid results
in the `glFlush` workaround from
`comp_gl_client::client_gl_compositor_layer_commit` not kicking in.
To fix this define a NULL `insert_fence` function when
EGL_ANDROID_native_fence_sync is not available, and while at it turn the
`glFlush` workaround into a `glFinish` for extra safety.
This ensures that frames are always complete after
`client_gl_compositor_layer_commit` has been called.
2022-01-06 14:54:55 +00:00
Ryan Pavlik
1203cf38f0
cmake: Fix build when we have EGL but not GLES headers.
2021-12-13 15:00:24 -06:00
Ryan Pavlik
46d095d978
comp/util: Allow enabling timeline semaphores when creating bundle.
2021-12-08 00:54:12 +00:00
Jakob Bornecrantz
27f80a90d9
c/render: Make it safe to call comp_resources_close in more cases
...
Fixes #139
2021-12-01 16:08:12 +00:00
Jakob Bornecrantz
0bd38a0a0d
c/render: Error on failing to get memory type
2021-11-24 17:05:13 +00:00
Christoph Haag
a1c00e14fd
st/oxr: Implement a basic version of XR_FB_display_refresh_rate
2021-11-22 20:44:18 +00:00
Jakob Bornecrantz
3f98ea5595
xrt: Tidy s/ll/log_level/g
...
Also make sure all variable logging uses the right type for logging variables.
2021-11-22 14:29:10 -06:00
Jakob Bornecrantz
a56ea7cad6
c/multi: Fix copy-pasto
2021-11-18 20:14:05 +00:00
nima01
70263a6b16
c/util: Use GPU index specified by XRT_COMPOSITOR_FORCE_CLIENT_GPU_INDEX
2021-11-18 14:14:32 +00:00
Ryan Pavlik
185bf61dd8
comp: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
dfa0aba496
aux: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
33c0287f8b
xrt: Rename all "num" parameters and fields to "count" (or "capacity" as appropriate)
...
This matches the OpenXR usage: the array is the plural of the element type,
and the count is the singular element type plus "count" (usually CountOutput
because of the two-call idiom)
Includes fixes to other code to match API changes.
2021-11-13 12:04:38 +00:00
Ryan Pavlik
cc4007a69e
cmake: Substantial cleanups and simplifications
...
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Ryan Pavlik
201765d3a7
comp: Populate blend mode list in system compositor info from device
2021-11-12 03:05:10 +00:00
Jakob Bornecrantz
7ecf649ac2
c/render: Use new Vulkan helpers
2021-11-10 14:22:28 +00:00
Jakob Bornecrantz
42b0361852
c/main: Use Vulkan helper in util
2021-11-07 15:14:04 +00:00
Jakob Bornecrantz
7703b7104b
c/main: Tidy extensions
2021-11-06 10:51:19 +00:00
Jakob Bornecrantz
a97523591f
c/util: Add Vulkan helper
2021-11-06 10:51:19 +00:00
Jakob Bornecrantz
56b5918d69
c/main: Fix tab CVK_ERROR macro
2021-11-04 20:57:55 +00:00
Jakob Bornecrantz
c912c67dc6
c/main: Use comp_base
2021-11-04 20:57:53 +00:00
Jakob Bornecrantz
a1b515616a
c/render: Documentation
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
6e28533bdc
c/render: Break out into own library
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
e08c1b1f04
c/util: Add comp_base native compositor helper base class
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
c3b8810bb0
c/util: Documentation
2021-11-04 20:56:20 +00:00
Jakob Bornecrantz
029031cfd3
c/util: Break out swapchain and sync into own library
2021-11-04 20:55:48 +00:00
Jakob Bornecrantz
78936d2b4e
c/main: Use get_vk more
2021-11-04 20:54:11 +00:00
Jakob Bornecrantz
c6031a26e8
c/main: Refactor fence to be more independent
2021-11-04 20:46:09 +00:00
Jakob Bornecrantz
293d617dd5
c/main: Refactor swapchain to be more independent
2021-11-04 20:46:03 +00:00
Ryan Pavlik
3bd0a07aa2
cmake: Split out finding GLX from the rest of OpenGL on Linux.
...
Fixes #132 .
2021-11-04 15:36:58 +00:00
Jakob Bornecrantz
36765256a6
c/render: Free command buffer when closing rendering
2021-11-03 23:10:47 +00:00
Ryan Pavlik
7a26a2339b
comp: Fix some it's vs its.
2021-11-03 17:28:17 -05:00
Jakob Bornecrantz
ec9cfa690d
c/render: s/rts/rtr/g
2021-11-03 13:28:15 +00:00
Jakob Bornecrantz
12bfc8b5c9
c/render: Do not depend on the compositor
2021-11-03 13:26:42 +00:00
Jakob Bornecrantz
c346d812c7
c/render: Add helpers to access the vk_bundle
2021-11-03 13:25:15 +00:00