XVersion does not require a hard fork to implement/use/update. The code is complete and fully tested in its current state. XVersion was implemented in BU in late 2018 and has been a part of its release since then. The documentation for XVersion can be found here: and the original BU PR for XVersion can be found here: A more in depth reasoning for XVersion can be found in the documentation. The purpose of XVersion is to add an extension to allow implementations to announce further configuration and version information to peers without the need to reserve service bits. we have our DLC2 controls, switch to the HUD layout that works best with those overlay controls.I would like to port XVersion from BU. If (strcmp("DLC2", versionName.data()) = 0) XGameStreamingGetTouchBundleVersion(clientId, &version, versionNameSize, &versionName) Std::vector versionName(versionNameSize, 0) Size_t versionNameSize = XGameStreamingGetTouchBundleVersionNameSize(clientId) semantic version name that was returned Get the touch bundle version and initialize the touch HUD based on the Example void GameStreamingClientManager::GetClientTouchBundleVersion(XGameStreamingClientId client) In order to allow the code to detect the presence of a bundle without having to know its exact version, it may choose to use a version name instead of doing comparisons based upon a version number. For example, if version numbers are assigned automatically by your build system, it may be difficult for game code to know the exact version number of the touch adaptation bundles that will appear at runtime. The versionName can be used to provide a semantic version (e.g., this is a set of layouts that support DLC2) as opposed to locking to a specific version number. Every update will require a new version number. The version will be unique per version that is uploaded to the service. To decide which graphical hints to display in the game based on the touch layouts that will be displayed.To remove an element from the HUD if the player is using touch and the element is available via the touch overlay controls.Some examples of where this might be utilized: XGameStreamingGetTouchBundleVersion enables the game to make runtime decisions based on the set of touch controls that are being utilized on a particular client. Touch layouts that are presented to the player during game streaming use pre-defined layouts that are uploaded to Microsoft as part of a touch adaptation bundle. Call XGameStreamingInitialize before calling other APIs.įor a list of error codes, see Error Codes. The XGameStreaming runtime has not been initialized. Returns S_OK if successful otherwise, returns an error code. If no version name is specified in the bundle, null will be returned. The version name of the bundle that is currently being used on the specified client. The size that is specified can be found by calling XGameStreamingGetTouchBundleVersionNameSize. The maximum size in bytes of the versionName to be returned. If no version number is specified in the bundle, 0.0.0.0 will be returned. The version number of the bundle that is currently being used on the specified client. The streaming client that is being queried. Syntax HRESULT XGameStreamingGetTouchBundleVersion( Gets the version of the touch adaptation bundle that is currently being utilized on the specified device.
0 Comments
Leave a Reply. |