55[[application-interaction]]
66== Application Interaction ==
77
8- An application requests a specific version of the OpenXR API when creating an
9- instance by writing to the "apiVersion" member of the `XrApplicationInfo`
8+ An application requests a specific version of the OpenXR API when creating an
9+ instance by writing to the "apiVersion" member of the `XrApplicationInfo`
1010structure which, in turn, is passed into the `XrInstanceCreateInfo` structure.
1111If either the loader or the active runtime do not support the requested version,
1212they may return an error and fail instance creation. Refer to the
@@ -20,8 +20,8 @@ through the loader:
2020
21211. Directly linking to the core OpenXR commands exposed and exported by the loader.
22222. Creating an application-managed dispatch table of OpenXR commands by querying
23- the loader for function pointers via `xrGetInstanceProcAddr`. This method
24- supports core OpenXR commands, commands of (enabled) OpenXR extensions supported by the runtime,
23+ the loader for function pointers via `xrGetInstanceProcAddr`. This method
24+ supports core OpenXR commands, commands of (enabled) OpenXR extensions supported by the runtime,
2525and any commands exposed by enabled API layers.
2626
2727[[openxr-direct-exports]]
@@ -110,7 +110,7 @@ second call chain.
110110[[openxr-indirect-linking]]
111111==== OpenXR Indirect Linking ====
112112
113- With loader indirect linking an application dynamically generates its own
113+ With loader indirect linking an application dynamically generates its own
114114dispatch table of OpenXR commands. This method allows an application to
115115fail gracefully if the loader cannot be found, or supports an older version
116116of the API than the application. To do this, the application uses the
@@ -154,13 +154,13 @@ versions of OpenXR.
154154=== Application API Layer Usage ===
155155
156156Applications desiring OpenXR functionality beyond what the core API offers may
157- use various API layers or extensions. An API layer cannot introduce new OpenXR
157+ use various API layers or extensions. An API layer cannot introduce new OpenXR
158158_core_ API commands, but may introduce new extension-specific OpenXR commands
159159that can be queried through the extension interface.
160160
161161A common use of API layers is for validation which can be enabled by loading the
162162API layer during application development, but not loading the API layer for
163- application release. The overhead cost of validation is completely eliminated
163+ application release. The overhead cost of validation is completely eliminated
164164when the layer is not loaded.
165165
166166An application can discover which API layers are available to it with
@@ -169,7 +169,7 @@ that have been discovered by the loader. The loader looks in various locations
169169to find API layers on the system. For more information see the
170170<<api-layer-discovery,API Layer discovery>> section below.
171171
172- An API layer or layers may be enabled by an application by passing a list of
172+ An API layer or layers may be enabled by an application by passing a list of
173173names in the `enabledApiLayerNames` field of the `XrInstanceCreateInfo`
174174at `xrCreateInstance` time. During the `xrCreateInstance`, the loader
175175constructs a <<openxr-call-chains, call chain>> that includes the application
@@ -193,12 +193,12 @@ ensure that you are using it properly.
193193[[implicit-vs-explicit-api-layers]]
194194==== Implicit vs Explicit API Layers ====
195195
196- Explicit API layers are API layers which are enabled by an application (e.g.
196+ Explicit API layers are API layers which are enabled by an application (e.g.
197197with the `xrCreateInstance` function) or by setting a
198- <<forced-loading-of-api-layers, loader environment variable>>.
198+ <<forced-loading-of-api-layers, loader environment variable>>.
199199
200- Implicit API layers are API layers which are enabled simply because they exist.
201- An implicit layer found by the loader will be loaded by default, unless
200+ Implicit API layers are API layers which are enabled simply because they exist.
201+ An implicit layer found by the loader will be loaded by default, unless
202202specifically disabled.
203203
204204Some implicit API layer examples include:
@@ -209,7 +209,7 @@ Some implicit API layer examples include:
209209* A tracing API layer designed to record API commands for future playback.
210210
211211Because implicit API layers are enabled automatically, they have an additional
212- requirement over explicit API layers in that they must specify a
212+ requirement over explicit API layers in that they must specify a
213213"disable environment variable" in the API layer's
214214<<api-layer-manifest-file-format, JSON manifest file>>, with key name `disable_environment`.
215215This environment variable when present will disable the implicit API layer. Implicit
@@ -337,7 +337,7 @@ additional loader functionality. Information about various extensions can be
337337found in the <<openxr-spec,OpenXR API Specification>>, and `openxr.h` header
338338file.
339339
340- To use extension functionality, the application should: call
340+ To use extension functionality, the application should: call
341341`xrEnumerateInstanceExtensionProperties` to determine if the extension is available.
342342Then it must: enable the extension in `xrCreateInstance`.
343343
0 commit comments