Skip to content

Releases: KhronosGroup/OpenXR-CTS

OpenXR CTS 1.0.29.0

18 Sep 21:19
openxr-cts-1.0.29.0
Compare
Choose a tag to compare

OpenXR CTS 1.0.29.0 (2023-09-07)

Approved 7-Sept-2023.

Will be withdrawn 15-April-2024, 180 days after the publication of the subsequent approved release, 1.0.30.0.

There are Windows and Android binaries attached to this release. While use of them is recommended for maximum compatibility, it is not required; you may follow the "porting process" in the conformance process document.

This release contains a large number of new or improved tests. It is expected
that many existing runtimes may initially fail some of these; implementers
should work to resolve these issues as soon as possible.

OpenXR CTS 1.0.27.0

17 May 21:26
openxr-cts-1.0.27.0
Compare
Choose a tag to compare

OpenXR CTS 1.0.27.0 (2023-05-10)

Approved 10-May-2023.

Withdrawal process approved by WG 7-Sept-2023, will be considered "withdrawn" 16-March-2024 (180 days after the publication of the approved 1.0.29.0 CTS release)

There are Windows and Android binaries attached to this release. While use of them is recommended for maximum compatibility, it is not required; you may follow the "porting process" in the conformance process document.

This release contains a large number of new or improved tests. It is expected
that many existing runtimes may initially fail some of these; implementers
should work to resolve these issues as soon as possible.

This also contains updated instructions for running tests and submitting
results, now that the test suite has a custom reporter that simplifies review of
results, and now that an improved method of running the tests is available on
Android.

Read more

OpenXR CTS 1.0.26.0

01 Dec 23:46
openxr-cts-1.0.26.0
Compare
Choose a tag to compare

OpenXR CTS 1.0.26.0 (2022-12-01)

Approved 1-December-2022.
Withdrawal vote 10-May-2023: will no longer be acceptable for submission 7-November-2023.

Read more

OpenXR CTS 1.0.22.1

24 Feb 17:31
openxr-cts-1.0.22.1
Compare
Choose a tag to compare

Approved 13-January-2022.

Will be withdrawn on 30-May-2023 (180 days after the vote to withdraw this version and the approval of 1.0.26.0.)

OpenXR CTS 1.0.22.1 (Approved 2022-01-13)

  • Registry
    • All changes found in 1.0.15 through 1.0.22.
  • Conformance Tests
    • Fix: Do not require optional extensions on Android.
      (internal MR 1949,
      internal issue 1480,
      internal issue 1481,
      OpenXR-CTS issue 5,
      OpenXR-CTS issue 6)
    • Fix: Resolve invalid handle error on xrEnumerateBoundSourcesForAction in
      multithreaded test.
      (internal MR 2094)
    • Fix: Check graphics plugin usage to allow XR_MND_headless to be used with
      non-interactive conformance tests.
      (internal MR 2163)
    • Fix: Vulkan validation and OpenGL context usage issues in conformance test
      suite.
      (internal MR 2165)
    • Fix: Update Catch2 from 2.9.2 to 2.13.8 to fix builds on newer Linux
      distributions.
      (internal MR 2203)
    • Fix: Add more formats to pick from in OpenGL; do not use sRGB as rendering is
      broken with that.
      (OpenXR-CTS PR 20)
    • Fix: Make "Grip and Aim Pose" and "Projection Mutable Field-of-View" tests
      visible.
      (OpenXR-CTS PR 21)
    • Fix: Read access violation for D3D12 device on shutdown.
      (OpenXR-CTS PR 22)
    • Fix: Mutable field-of-view X and Y flip for non-symmetrical FOVs.
      (OpenXR-CTS PR 23)
    • Fix: Make some failures caused by missing layer flag implementations more
      obvious.
      (OpenXR-CTS PR 25)
    • Fix: Converted all conformance tests to use SRGB 8-bit textures since some
      runtimes don't support linear 8-bit textures.
      (OpenXR-CTS PR 26)
    • Fix: Avoid submitting projection layers when the referenced swapchain hasn't
      been used yet.
      (OpenXR-CTS PR 27)
    • Improvement: Add Android build system, using new cross-vendor Android loader,
      and fix some runtime errors in Android-specific code.
      (internal MR 1949,
      internal issue 1425)
    • Improvement: Use Asset Manager for assets on Android, and fix build.
      (internal MR 1950)
    • Improvement: Refactor xrGetInstanceProcAddr implementation in conformance
      layer to avoid deeply-nested if ... else blocks. (Some compilers have limits
      we were nearing or hitting.)
      (internal MR 2050)
    • Improvement: Add device re-use test to XR_KHR_D3D11_enable test.
      (internal MR 2054)
    • Improvement: Add device re-use test to XR_KHR_D3D12_enable test.
      (internal MR 2054)
    • Improvement: Add device re-use test to XR_KHR_opengl_enable test.
      (internal MR 2054)
    • Improvement: Add support for XR_KHR_vulkan_enable2 to conformance test suite.
      (internal MR 2073)
    • Improvement: Add tests for xrApplyHapticFeedback and xrLocateSpace to
      multithreading test in the conformance test suite.
      (internal MR 2077)
    • Improvement: Add swapchain create and destroy test to graphics enable tests.
      (internal MR 2086)
    • Improvement: Check XrPerfSettings*EXT enums in conformance layer, which also
      solves a compiler warning.
      (internal MR 2107)
    • Improvement: Shutdown graphics plugin after running tests in the conformance
      test suite.
      (internal MR 2132)
    • Improvement: Implement D3D11 graphics validator to validate usage flags.
      (internal MR 2139)
    • Improvement: Adjust interactive tests to keep submitting frames while waiting,
      to avoid missing many frames while doing input-related tests.
      (internal MR 2142)
    • Improvement: Include NVIDIA-defined and AMD-defined exported symbols to signal
      favoring high performance/discrete graphics devices for test application.
      (internal MR 2156)
    • Improvement: Fix Android building and add documentation on building for
      Android.
      (OpenXR-CTS PR 33,
      OpenXR-CTS issue 31,
      internal MR 2198)
    • New test: Add XR_KHR_vulkan_enable test to validate simple failure and
      success cases.
      (internal MR 2054)
    • New test: Add XR_KHR_opengl_es_enable test to validate simple failure and
      success cases.
      (internal MR 2054)
    • New test: Add XR_KHR_vulkan_enable2 test to validate simple failure and
      success cases.
      (internal MR 2073)
    • New test: Add tests for XR_EXT_hand_tracking to validate basic API usage.
      (internal MR 2164)

OpenXR CTS 1.0.14.1

28 Jan 17:22
openxr-cts-1.0.14.1
Compare
Choose a tag to compare

Approved 21-January-2021.

Will be withdrawn on 13-September-2022 (180 days after the vote to withdraw this version, over 180 days after the approval of 1.0.22.1.)

OpenXR CTS 1.0.14.1 (2021-01-27)

Note that the procedure for generating your conformance submission has changed slightly.

  • Registry
    • All changes found in 1.0.13, and 1.0.14.
  • Conformance Tests
    • Build: Initial setup of CMake for conformance build on Android. (Not complete -
      no gradle part.)
      (internal MR 1910)
    • Fix: Properly apply function attributes to fix build of conformance layer on
      Android for ARM.
      (internal MR 1910,
      OpenXR-CTS/#3,
      internal issue 1479)
    • Fix: Use android.app.NativeActivity correctly in place of NativeActivity
      subclass for the conformance tests.
      (internal MR 1965,
      internal MR 1976)
    • Fix: The D3D12, OpenGL, and Vulkan graphics plugins sometimes did not update
      their swapchain image context maps due to rare key collisions.
      (OpenXR-CTS/#4)
    • Fix: Removed extra check that would fail if the CTS was compiled against a
      version of openxr.h that included extensions that added results that were
      newer than the results present in the version of openxr.h that the runtime
      was compiled against.
      (OpenXR-CTS/#8)
    • Fix: Fixed conformance failures on runtimes where x and y components can have
      different last changed times
      (OpenXR-CTS/#9)
    • Fix: "Projection Mutable Field-of-View" was an old, broken version of the test.
      It is reset to the intended version of the code now.
      (OpenXR-CTS/#10)
    • Fix: CopyRGBAImage was using the wrong array slice when setting image
      barriers. This broke the "Subimage Tests" case on some hardware/drivers.
      (OpenXR-CTS/#11)
    • Fix: Added WaitForGpu call at the end of RenderView in
      D3D12GraphicsPlugin. Without this the array and wide swapchain tests failed
      on some hardware/driver versions. This is not ideal behavior, but it fixes the
      test for now, and has been noted for future fixing in a better way.
      (OpenXR-CTS/#12)
    • Fix: Allow negated quaternion to be equivalent to the expected orientation
      value. This test only cares about orientation, not which path the rotation
      took.
      (OpenXR-CTS/#13)
    • Fix: The test assumed that X and Y components of a vector2 action would have
      exactly the same timestamp. Changed that to check that the vector2 action would
      have the most recent of those two timestamps instead.
      (OpenXR-CTS/#14,
      internal issue 1490)
    • Fix: The test checked for "float value == X" and then checked for its binary
      thresholded value after a subsequent call to xrSyncActions. Changed the test so
      both checks happen in the same input frame.
      (OpenXR-CTS/#14)
    • Fix: Added support for GL_SRGB8 textures to OpenGL tests.
      (OpenXR-CTS/#15)
    • Fix: Increased allowed pipeline overhead threshold to 50%. The purpose of the
      test is to ensure the runtime isn't serializing (100% overhead) so this is a
      safe increase.
      (OpenXR-CTS/#16)
    • Fix: Use int64_t for YieldSleep calculations, to not overflow.
      (OpenXR-CTS/#17)
    • Improvement: Modify the test instructions to change the output format and
      increase its content, and require the console output to be submitted as well.
      This makes it easier to review and provides a more complete look at both passed
      and failed tests.
      (internal MR 1953)
    • Lower the amount of time that the renderer blocks. The CTS is not a highly
      optimized application and due to thread scheduling and extra GPU waits 90% CPU
      wait makes it fairly tight to fit everything inside of a single display period.
      (OpenXR-CTS/#18)
    • New test: Verify that triangles returned from XR_KHR_visibility_mask are
      counter-clockwise.
      (internal MR 1943)
    • New test: Add tests for xrBeginFrame call order violations
      (OpenXR-CTS/#7)

OpenXR CTS 1.0.12.1

16 Nov 19:43
openxr-cts-1.0.12.1
Compare
Choose a tag to compare

Withdrawn on 20-July-2021 (180 days after the vote to approve CTS 1.0.14.1)

Originally approved: 1-October-2020. (Includes patch approved 15-October-2020)

  • Registry
    • All changes found in 1.0.10, 1.0.11, and 1.0.12.
  • Conformance Tests
    • Fix: Fix Vulkan image layout transitions
      (internal MR 1876)
    • Fix: Images were being copied upside-down in OpenGL ES.
      (internal MR 1899)
    • Fix: Issues around xrInitializeLoaderKHR.
      (internal MR 1922)
    • Fix: Fix some interactive tests like "Grip and Aim Pose" which exposed D3D12
      validation errors due to bugs in the D3D12 graphics plugin.
      (OpenXR-CTS/#1)
    • Fix: Use REQUIRE macro in main thread only, in Timed Pipelined Frame Submission to prevent race condition.
      (OpenXR-CTS/#2)
    • Improvement: Enable use of glslangValidator to compile shaders if shaderc is
      not available.
      (internal MR 1857)
    • Improvement: Add options to not run tests that require disconnecting devices.
      (internal MR 1862)
    • Improvement: xrStructureTypeToString, xrResultToString: Make test more
      lenient, so it will also accept the "generic" generated value for enumerant
      values defined by an extension that is not currently enabled.
      (internal MR 1864)
    • Improvement: Improve language usage in code and comments to be more respectful.
      (internal MR 1881)
    • Improvement: Handle the new XR_ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING
      return code, and move all checks for this code to the xrCreateSession test,
      from the individual graphics bindings tests.
      (internal MR 1882,
      OpenXR-Docs/#53,
      internal issue 1397)
    • Improvement: Automatically enable a number of extensions, if present, that can
      be enabled without side-effects.
      (internal MR 1897)
    • Improvement: Use the XR_KHR_loader_init_android extension on Android instead
      of vendor-specific code.
      (internal MR 1903)

OpenXR CTS 1.0.9.2

06 Jul 19:04
openxr-cts-1.0.9.2
Compare
Choose a tag to compare

Approved: 18-June-2020

Withdrawn on 30-March-2021 (180 days after the vote to approve CTS 1.0.12.1)

OpenXR CTS 1.0.9.1

06 Jul 19:00
openxr-cts-1.0.9.1
Compare
Choose a tag to compare

Withdrawn 22-Dec-2020

This is the initially-approved version of the OpenXR CTS.

  • Originally approved: 21-May-2020
  • Vote to schedule withdrawal passed: 25-June-2020
  • Withdrawal of this revision effective: 22-Dec-2020