C Specification
The XrRenderModelCreateInfoEXT structure is defined as:
// Provided by XR_EXT_render_model
typedef struct XrRenderModelCreateInfoEXT {
XrStructureType type;
const void* next;
XrRenderModelIdEXT renderModelId;
uint32_t gltfExtensionCount;
const char* const* gltfExtensions;
} XrRenderModelCreateInfoEXT;
Members
Description
The XrRenderModelCreateInfoEXT structure describes the information necessary to create an XrRenderModelEXT handle.
The input renderModelId value must be obtained from the same
XrSession used in xrCreateRenderModelEXT.
If the renderModelId value does not match one retrieved from the
relevant XrSession, the runtime must return error
XR_ERROR_RENDER_MODEL_ID_INVALID_EXT.
Note: There is a chance that a renderModelId value incorrectly
retained from another session may have the same numerical value as one
retrieved from the current XrSession.
In such instances, the runtime is unable to distinguish between the two IDs.
As a result, the runtime may mistakenly accept the ID and return a success
code, even though it represents an invalid usage.
Applications should be prepared to handle unexpected behaviors or outcomes
stemming from this scenario.
The application can create multiple XrRenderModelEXT handles using the same ID. The runtime must return the same render model states and asset UUID to these handles if they also share the same list of extensions, since they are sharing the same underlying render model ID. If the list of extensions differs, the runtime may expose a different number of animatable nodes, different asset data and UUID, etc.
The runtime must return
XR_ERROR_RENDER_MODEL_GLTF_EXTENSION_REQUIRED_EXT if the runtime is
unable to return a glTF asset that only requires extensions found in the
application’s list of supported glTF extensions.
Related extensions may require the application to support certain glTF extensions, in which case this error code indicates a failure to satisfy the requirement.
Alternately, related extensions may require the runtime to support providing base glTF assets without any required glTF extensions, in which case this error must not be returned by xrCreateRenderModelEXT in association with render model IDs retrieved from such extensions. See https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#ext_render_model-choice-gltf-exts.
The order of gltfExtensions array represents the preferences from the
application when multiple extensions are specified.
The runtime may select or modify the retrieved glTF assets based on this
array of extensions to optimize the glTF asset for this application.
Successful creation of this handle implies that the runtime is ready to report a fixed number and sequence of animatable node states for an asset satisfying the application’s criteria, and that asset data, with node names, meeting the criteria may be available during this session. The asset data and node names may still be unavailable at the time the XrRenderModelEXT handle is returned.
Document Notes
For more information, see the OpenXR Specification
This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright 2014-2025 The Khronos Group Inc.
This work is licensed under a Creative Commons Attribution 4.0 International License.