浏览代码

Updated LibOVR to SDK version 1.8

Weird, OVR_Version.h still points to 1.7, probably a typo...
pull/189/head
raysan5 8 年前
父节点
当前提交
c5bf9623d1
共有 7 个文件被更改,包括 114 次插入58 次删除
  1. +94
    -57
      src/external/OculusSDK/LibOVR/Include/OVR_CAPI.h
  2. +4
    -0
      src/external/OculusSDK/LibOVR/Include/OVR_CAPI_Audio.h
  3. +3
    -0
      src/external/OculusSDK/LibOVR/Include/OVR_CAPI_D3D.h
  4. +3
    -0
      src/external/OculusSDK/LibOVR/Include/OVR_CAPI_GL.h
  5. +9
    -0
      src/external/OculusSDK/LibOVR/Include/OVR_ErrorCode.h
  6. +1
    -1
      src/external/OculusSDK/LibOVR/Include/OVR_Version.h
  7. 二进制
      src/external/OculusSDK/LibOVR/LibOVRRT32_1.dll

+ 94
- 57
src/external/OculusSDK/LibOVR/Include/OVR_CAPI.h 查看文件

@ -271,6 +271,12 @@ typedef char ovrBool; ///< Boolean type
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
// ***** Simple Math Structures // ***** Simple Math Structures
/// A RGBA color with normalized float components.
typedef struct OVR_ALIGNAS(4) ovrColorf_
{
float r, g, b, a;
} ovrColorf;
/// A 2D vector with integer components. /// A 2D vector with integer components.
typedef struct OVR_ALIGNAS(4) ovrVector2i_ typedef struct OVR_ALIGNAS(4) ovrVector2i_
{ {
@ -326,7 +332,7 @@ typedef struct OVR_ALIGNAS(4) ovrPosef_
/// A full pose (rigid body) configuration with first and second derivatives. /// A full pose (rigid body) configuration with first and second derivatives.
/// ///
/// Body refers to any object for which ovrPoseStatef is providing data. /// Body refers to any object for which ovrPoseStatef is providing data.
/// It can be the HMD, Touch controller, sensor or something else. The context
/// It can be the HMD, Touch controller, sensor or something else. The context
/// depends on the usage of the struct. /// depends on the usage of the struct.
typedef struct OVR_ALIGNAS(8) ovrPoseStatef_ typedef struct OVR_ALIGNAS(8) ovrPoseStatef_
{ {
@ -687,7 +693,7 @@ typedef enum ovrTextureFormat_
/// ///
typedef enum ovrTextureMiscFlags_ typedef enum ovrTextureMiscFlags_
{ {
ovrTextureMisc_None,
ovrTextureMisc_None,
/// DX only: The underlying texture is created with a TYPELESS equivalent of the /// DX only: The underlying texture is created with a TYPELESS equivalent of the
/// format specified in the texture desc. The SDK will still access the /// format specified in the texture desc. The SDK will still access the
@ -745,12 +751,12 @@ typedef struct ovrMirrorTextureData* ovrMirrorTexture;
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
/// Describes button input types. /// Describes button input types.
/// Button inputs are combined; that is they will be reported as pressed if they are
/// Button inputs are combined; that is they will be reported as pressed if they are
/// pressed on either one of the two devices. /// pressed on either one of the two devices.
/// The ovrButton_Up/Down/Left/Right map to both XBox D-Pad and directional buttons. /// The ovrButton_Up/Down/Left/Right map to both XBox D-Pad and directional buttons.
/// The ovrButton_Enter and ovrButton_Return map to Start and Back controller buttons, respectively. /// The ovrButton_Enter and ovrButton_Return map to Start and Back controller buttons, respectively.
typedef enum ovrButton_ typedef enum ovrButton_
{
{
ovrButton_A = 0x00000001, ovrButton_A = 0x00000001,
ovrButton_B = 0x00000002, ovrButton_B = 0x00000002,
ovrButton_RThumb = 0x00000004, ovrButton_RThumb = 0x00000004,
@ -758,7 +764,7 @@ typedef enum ovrButton_
ovrButton_X = 0x00000100, ovrButton_X = 0x00000100,
ovrButton_Y = 0x00000200, ovrButton_Y = 0x00000200,
ovrButton_LThumb = 0x00000400,
ovrButton_LThumb = 0x00000400,
ovrButton_LShoulder = 0x00000800, ovrButton_LShoulder = 0x00000800,
// Navigation through DPad. // Navigation through DPad.
@ -770,7 +776,7 @@ typedef enum ovrButton_
ovrButton_Back = 0x00200000, // Back on Xbox controller. ovrButton_Back = 0x00200000, // Back on Xbox controller.
ovrButton_VolUp = 0x00400000, // only supported by Remote. ovrButton_VolUp = 0x00400000, // only supported by Remote.
ovrButton_VolDown = 0x00800000, // only supported by Remote. ovrButton_VolDown = 0x00800000, // only supported by Remote.
ovrButton_Home = 0x01000000,
ovrButton_Home = 0x01000000,
ovrButton_Private = ovrButton_VolUp | ovrButton_VolDown | ovrButton_Home, ovrButton_Private = ovrButton_VolUp | ovrButton_VolDown | ovrButton_Home,
// Bit mask of all buttons on the right Touch controller // Bit mask of all buttons on the right Touch controller
@ -807,7 +813,7 @@ typedef enum ovrTouch_
// Bit mask of all the button touches on the left controller // Bit mask of all the button touches on the left controller
ovrTouch_LButtonMask = ovrTouch_X | ovrTouch_Y | ovrTouch_LThumb | ovrTouch_LThumbRest | ovrTouch_LIndexTrigger, ovrTouch_LButtonMask = ovrTouch_X | ovrTouch_Y | ovrTouch_LThumb | ovrTouch_LThumbRest | ovrTouch_LIndexTrigger,
// Finger pose state
// Finger pose state
// Derived internally based on distance, proximity to sensors and filtering. // Derived internally based on distance, proximity to sensors and filtering.
ovrTouch_RIndexPointing = 0x00000020, ovrTouch_RIndexPointing = 0x00000020,
ovrTouch_RThumbUp = 0x00000040, ovrTouch_RThumbUp = 0x00000040,
@ -883,11 +889,20 @@ typedef struct ovrHapticsPlaybackState_
int SamplesQueued; int SamplesQueued;
} ovrHapticsPlaybackState; } ovrHapticsPlaybackState;
/// Position tracked devices
typedef enum ovrTrackedDeviceType_
{
ovrTrackedDevice_HMD = 0x0001,
ovrTrackedDevice_LTouch = 0x0002,
ovrTrackedDevice_RTouch = 0x0004,
ovrTrackedDevice_Touch = 0x0006,
ovrTrackedDevice_All = 0xFFFF,
} ovrTrackedDeviceType;
/// Provides names for the left and right hand array indexes. /// Provides names for the left and right hand array indexes.
/// ///
/// \see ovrInputState, ovrTrackingState /// \see ovrInputState, ovrTrackingState
///
///
typedef enum ovrHandType_ typedef enum ovrHandType_
{ {
ovrHand_Left = 0, ovrHand_Left = 0,
@ -903,27 +918,43 @@ typedef enum ovrHandType_
/// their inputs are combined. /// their inputs are combined.
typedef struct ovrInputState_ typedef struct ovrInputState_
{ {
// System type when the controller state was last updated.
/// System type when the controller state was last updated.
double TimeInSeconds; double TimeInSeconds;
// Values for buttons described by ovrButton.
/// Values for buttons described by ovrButton.
unsigned int Buttons; unsigned int Buttons;
// Touch values for buttons and sensors as described by ovrTouch.
/// Touch values for buttons and sensors as described by ovrTouch.
unsigned int Touches; unsigned int Touches;
// Left and right finger trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
/// Left and right finger trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
/// Returns 0 if the value would otherwise be less than 0.1176, for ovrControllerType_XBox
float IndexTrigger[ovrHand_Count]; float IndexTrigger[ovrHand_Count];
// Left and right hand trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
/// Left and right hand trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
float HandTrigger[ovrHand_Count]; float HandTrigger[ovrHand_Count];
// Horizontal and vertical thumbstick axis values (ovrHand_Left and ovrHand_Right), in the range -1.0f to 1.0f.
/// Horizontal and vertical thumbstick axis values (ovrHand_Left and ovrHand_Right), in the range -1.0f to 1.0f.
/// Returns a deadzone (value 0) per each axis if the value on that axis would otherwise have been between -.2746 to +.2746, for ovrControllerType_XBox
ovrVector2f Thumbstick[ovrHand_Count]; ovrVector2f Thumbstick[ovrHand_Count];
// The type of the controller this state is for.
/// The type of the controller this state is for.
ovrControllerType ControllerType; ovrControllerType ControllerType;
/// Left and right finger trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
/// Does not apply a deadzone
/// Added in 1.7
float IndexTriggerNoDeadzone[ovrHand_Count];
/// Left and right hand trigger values (ovrHand_Left and ovrHand_Right), in the range 0.0 to 1.0f.
/// Does not apply a deadzone
/// Added in 1.7
float HandTriggerNoDeadzone[ovrHand_Count];
/// Horizontal and vertical thumbstick axis values (ovrHand_Left and ovrHand_Right), in the range -1.0f to 1.0f
/// Does not apply a deadzone
/// Added in 1.7
ovrVector2f ThumbstickNoDeadzone[ovrHand_Count];
} ovrInputState; } ovrInputState;
@ -996,8 +1027,8 @@ typedef struct OVR_ALIGNAS(8) ovrInitParams_
/// Use NULL to specify no log callback. /// Use NULL to specify no log callback.
ovrLogCallback LogCallback; ovrLogCallback LogCallback;
/// User-supplied data which is passed as-is to LogCallback. Typically this
/// is used to store an application-specific pointer which is read in the
/// User-supplied data which is passed as-is to LogCallback. Typically this
/// is used to store an application-specific pointer which is read in the
/// callback function. /// callback function.
uintptr_t UserData; uintptr_t UserData;
@ -1014,6 +1045,7 @@ typedef struct OVR_ALIGNAS(8) ovrInitParams_
extern "C" { extern "C" {
#endif #endif
#if !defined(OVR_EXPORTING_CAPI)
// ----------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------
// ***** API Interfaces // ***** API Interfaces
@ -1026,7 +1058,7 @@ extern "C" {
/// followed by a call to ovr_Shutdown. ovr_Initialize calls are idempotent. /// followed by a call to ovr_Shutdown. ovr_Initialize calls are idempotent.
/// Calling ovr_Initialize twice does not require two matching calls to ovr_Shutdown. /// Calling ovr_Initialize twice does not require two matching calls to ovr_Shutdown.
/// If already initialized, the return value is ovr_Success. /// If already initialized, the return value is ovr_Success.
///
///
/// LibOVRRT shared library search order: /// LibOVRRT shared library search order:
/// -# Current working directory (often the same as the application directory). /// -# Current working directory (often the same as the application directory).
/// -# Module directory (usually the same as the application directory, /// -# Module directory (usually the same as the application directory,
@ -1166,21 +1198,21 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_IdentifyClient(const char* identity);
/// ///
/// ovr_Initialize must have first been called in order for this to succeed, otherwise ovrHmdDesc::Type /// ovr_Initialize must have first been called in order for this to succeed, otherwise ovrHmdDesc::Type
/// will be reported as ovrHmd_None. /// will be reported as ovrHmd_None.
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create, else NULL in which /// \param[in] session Specifies an ovrSession previously returned by ovr_Create, else NULL in which
/// case this function detects whether an HMD is present and returns its info if so. /// case this function detects whether an HMD is present and returns its info if so.
/// ///
/// \return Returns an ovrHmdDesc. If the hmd is NULL and ovrHmdDesc::Type is ovrHmd_None then
/// \return Returns an ovrHmdDesc. If the hmd is NULL and ovrHmdDesc::Type is ovrHmd_None then
/// no HMD is present. /// no HMD is present.
/// ///
OVR_PUBLIC_FUNCTION(ovrHmdDesc) ovr_GetHmdDesc(ovrSession session); OVR_PUBLIC_FUNCTION(ovrHmdDesc) ovr_GetHmdDesc(ovrSession session);
/// Returns the number of sensors.
/// Returns the number of sensors.
/// ///
/// The number of sensors may change at any time, so this function should be called before use
/// The number of sensors may change at any time, so this function should be called before use
/// as opposed to once on startup. /// as opposed to once on startup.
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
/// ///
/// \return Returns unsigned int count. /// \return Returns unsigned int count.
@ -1190,15 +1222,15 @@ OVR_PUBLIC_FUNCTION(unsigned int) ovr_GetTrackerCount(ovrSession session);
/// Returns a given sensor description. /// Returns a given sensor description.
/// ///
/// It's possible that sensor desc [0] may indicate a unconnnected or non-pose tracked sensor, but
/// It's possible that sensor desc [0] may indicate a unconnnected or non-pose tracked sensor, but
/// sensor desc [1] may be connected. /// sensor desc [1] may be connected.
/// ///
/// ovr_Initialize must have first been called in order for this to succeed, otherwise the returned /// ovr_Initialize must have first been called in order for this to succeed, otherwise the returned
/// trackerDescArray will be zero-initialized. The data returned by this function can change at runtime. /// trackerDescArray will be zero-initialized. The data returned by this function can change at runtime.
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
///
/// \param[in] trackerDescIndex Specifies a sensor index. The valid indexes are in the range of 0 to
///
/// \param[in] trackerDescIndex Specifies a sensor index. The valid indexes are in the range of 0 to
/// the sensor count returned by ovr_GetTrackerCount. /// the sensor count returned by ovr_GetTrackerCount.
/// ///
/// \return Returns ovrTrackerDesc. An empty ovrTrackerDesc will be returned if trackerDescIndex is out of range. /// \return Returns ovrTrackerDesc. An empty ovrTrackerDesc will be returned if trackerDescIndex is out of range.
@ -1242,6 +1274,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_Create(ovrSession* pSession, ovrGraphicsLuid*
/// ///
OVR_PUBLIC_FUNCTION(void) ovr_Destroy(ovrSession session); OVR_PUBLIC_FUNCTION(void) ovr_Destroy(ovrSession session);
#endif // !defined(OVR_EXPORTING_CAPI)
/// Specifies status information for the current session. /// Specifies status information for the current session.
/// ///
@ -1253,10 +1286,11 @@ typedef struct ovrSessionStatus_
ovrBool HmdPresent; ///< True if an HMD is present. ovrBool HmdPresent; ///< True if an HMD is present.
ovrBool HmdMounted; ///< True if the HMD is on the user's head. ovrBool HmdMounted; ///< True if the HMD is on the user's head.
ovrBool DisplayLost; ///< True if the session is in a display-lost state. See ovr_SubmitFrame. ovrBool DisplayLost; ///< True if the session is in a display-lost state. See ovr_SubmitFrame.
ovrBool ShouldQuit; ///< True if the application should initiate shutdown.
ovrBool ShouldQuit; ///< True if the application should initiate shutdown.
ovrBool ShouldRecenter; ///< True if UX has requested re-centering. Must call ovr_ClearShouldRecenterFlag or ovr_RecenterTrackingOrigin. ovrBool ShouldRecenter; ///< True if UX has requested re-centering. Must call ovr_ClearShouldRecenterFlag or ovr_RecenterTrackingOrigin.
}ovrSessionStatus; }ovrSessionStatus;
#if !defined(OVR_EXPORTING_CAPI)
/// Returns status information for the application. /// Returns status information for the application.
/// ///
@ -1293,7 +1327,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetSessionStatus(ovrSession session, ovrSessi
/// ///
/// When the tracking origin is changed, all of the calls that either provide /// When the tracking origin is changed, all of the calls that either provide
/// or accept ovrPosef will use the new tracking origin provided. /// or accept ovrPosef will use the new tracking origin provided.
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
/// \param[in] origin Specifies an ovrTrackingOrigin to be used for all ovrPosef /// \param[in] origin Specifies an ovrTrackingOrigin to be used for all ovrPosef
/// ///
@ -1305,7 +1339,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_SetTrackingOriginType(ovrSession session, ovr
/// Gets the tracking origin state /// Gets the tracking origin state
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
/// ///
/// \return Returns the ovrTrackingOrigin that was either set by default, or previous set by the application. /// \return Returns the ovrTrackingOrigin that was either set by default, or previous set by the application.
@ -1319,9 +1353,9 @@ OVR_PUBLIC_FUNCTION(ovrTrackingOrigin) ovr_GetTrackingOriginType(ovrSession sess
/// This resets the (x,y,z) positional components and the yaw orientation component. /// This resets the (x,y,z) positional components and the yaw orientation component.
/// The Roll and pitch orientation components are always determined by gravity and cannot /// The Roll and pitch orientation components are always determined by gravity and cannot
/// be redefined. All future tracking will report values relative to this new reference position. /// be redefined. All future tracking will report values relative to this new reference position.
/// If you are using ovrTrackerPoses then you will need to call ovr_GetTrackerPose after
/// If you are using ovrTrackerPoses then you will need to call ovr_GetTrackerPose after
/// this, because the sensor position(s) will change as a result of this. /// this, because the sensor position(s) will change as a result of this.
///
///
/// The headset cannot be facing vertically upward or downward but rather must be roughly /// The headset cannot be facing vertically upward or downward but rather must be roughly
/// level otherwise this function will fail with ovrError_InvalidHeadsetOrientation. /// level otherwise this function will fail with ovrError_InvalidHeadsetOrientation.
/// ///
@ -1343,7 +1377,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_RecenterTrackingOrigin(ovrSession session);
/// Clears the ShouldRecenter status bit in ovrSessionStatus. /// Clears the ShouldRecenter status bit in ovrSessionStatus.
/// ///
/// Clears the ShouldRecenter status bit in ovrSessionStatus, allowing further recenter
/// Clears the ShouldRecenter status bit in ovrSessionStatus, allowing further recenter
/// requests to be detected. Since this is automatically done by ovr_RecenterTrackingOrigin, /// requests to be detected. Since this is automatically done by ovr_RecenterTrackingOrigin,
/// this is only needs to be called when application is doing its own re-centering. /// this is only needs to be called when application is doing its own re-centering.
OVR_PUBLIC_FUNCTION(void) ovr_ClearShouldRecenterFlag(ovrSession session); OVR_PUBLIC_FUNCTION(void) ovr_ClearShouldRecenterFlag(ovrSession session);
@ -1444,11 +1478,11 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_SubmitControllerVibration(ovrSession session,
/// \param[in] outState State of the haptics engine. /// \param[in] outState State of the haptics engine.
/// \return Returns ovrSuccess upon success. /// \return Returns ovrSuccess upon success.
/// \see ovrHapticsPlaybackState /// \see ovrHapticsPlaybackState
///
///
OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetControllerVibrationState(ovrSession session, ovrControllerType controllerType, ovrHapticsPlaybackState* outState); OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetControllerVibrationState(ovrSession session, ovrControllerType controllerType, ovrHapticsPlaybackState* outState);
o">///@}
cp">#endif // !defined(OVR_EXPORTING_CAPI)
//------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------
// @name Layers // @name Layers
@ -1672,7 +1706,7 @@ typedef union ovrLayer_Union_
//@} //@}
#if !defined(OVR_EXPORTING_CAPI)
/// @name SDK Distortion Rendering /// @name SDK Distortion Rendering
/// ///
@ -1695,7 +1729,7 @@ typedef union ovrLayer_Union_
/// \param[in] chain Specifies the ovrTextureSwapChain for which the length should be retrieved. /// \param[in] chain Specifies the ovrTextureSwapChain for which the length should be retrieved.
/// \param[out] out_Length Returns the number of buffers in the specified chain. /// \param[out] out_Length Returns the number of buffers in the specified chain.
/// ///
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// ///
/// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL /// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL
/// ///
@ -1707,7 +1741,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetTextureSwapChainLength(ovrSession session,
/// \param[in] chain Specifies the ovrTextureSwapChain for which the index should be retrieved. /// \param[in] chain Specifies the ovrTextureSwapChain for which the index should be retrieved.
/// \param[out] out_Index Returns the current (free) index in specified chain. /// \param[out] out_Index Returns the current (free) index in specified chain.
/// ///
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// ///
/// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL /// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL
/// ///
@ -1719,7 +1753,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetTextureSwapChainCurrentIndex(ovrSession se
/// \param[in] chain Specifies the ovrTextureSwapChain for which the description should be retrieved. /// \param[in] chain Specifies the ovrTextureSwapChain for which the description should be retrieved.
/// \param[out] out_Desc Returns the description of the specified chain. /// \param[out] out_Desc Returns the description of the specified chain.
/// ///
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// ///
/// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL /// \see ovr_CreateTextureSwapChainDX, ovr_CreateTextureSwapChainGL
/// ///
@ -1736,7 +1770,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetTextureSwapChainDesc(ovrSession session, o
/// it will synchronize with the app's graphics context and pick up the submitted index, opening up /// it will synchronize with the app's graphics context and pick up the submitted index, opening up
/// room in the swap chain for further commits. /// room in the swap chain for further commits.
/// ///
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// \return Returns an ovrResult for which OVR_SUCCESS(result) is false upon error.
/// Failures include but aren't limited to: /// Failures include but aren't limited to:
/// - ovrError_TextureSwapChainFull: ovr_CommitTextureSwapChain was called too many times on a texture swapchain without calling submit to use the chain. /// - ovrError_TextureSwapChainFull: ovr_CommitTextureSwapChain was called too many times on a texture swapchain without calling submit to use the chain.
/// ///
@ -1864,7 +1898,7 @@ OVR_PUBLIC_FUNCTION(ovrEyeRenderDesc) ovr_GetRenderDesc(ovrSession session,
/// destroyed (ovr_Destroy) and recreated (ovr_Create), and new resources need to be created /// destroyed (ovr_Destroy) and recreated (ovr_Create), and new resources need to be created
/// (ovr_CreateTextureSwapChainXXX). The application's existing private graphics resources do not /// (ovr_CreateTextureSwapChainXXX). The application's existing private graphics resources do not
/// need to be recreated unless the new ovr_Create call returns a different GraphicsLuid. /// need to be recreated unless the new ovr_Create call returns a different GraphicsLuid.
/// - ovrError_TextureSwapChainInvalid: The ovrTextureSwapChain is in an incomplete or inconsistent state.
/// - ovrError_TextureSwapChainInvalid: The ovrTextureSwapChain is in an incomplete or inconsistent state.
/// Ensure ovr_CommitTextureSwapChain was called at least once first. /// Ensure ovr_CommitTextureSwapChain was called at least once first.
/// ///
/// \see ovr_GetPredictedDisplayTime, ovrViewScaleDesc, ovrLayerHeader /// \see ovr_GetPredictedDisplayTime, ovrViewScaleDesc, ovrLayerHeader
@ -1874,7 +1908,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_SubmitFrame(ovrSession session, long long fra
ovrLayerHeader const * const * layerPtrList, unsigned int layerCount); ovrLayerHeader const * const * layerPtrList, unsigned int layerCount);
///@} ///@}
#endif // !defined(OVR_EXPORTING_CAPI)
//------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------
/// @name Frame Timing /// @name Frame Timing
@ -1882,26 +1916,28 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_SubmitFrame(ovrSession session, long long fra
//@{ //@{
#if !defined(OVR_EXPORTING_CAPI)
/// Gets the time of the specified frame midpoint. /// Gets the time of the specified frame midpoint.
/// ///
/// Predicts the time at which the given frame will be displayed. The predicted time
/// is the middle of the time period during which the corresponding eye images will
/// be displayed.
/// Predicts the time at which the given frame will be displayed. The predicted time
/// is the middle of the time period during which the corresponding eye images will
/// be displayed.
/// ///
/// The application should increment frameIndex for each successively targeted frame, /// The application should increment frameIndex for each successively targeted frame,
/// and pass that index to any relevent OVR functions that need to apply to the frame
/// and pass that index to any relevant OVR functions that need to apply to the frame
/// identified by that index. /// identified by that index.
/// ///
/// This function is thread-safe and allows for multiple application threads to target /// This function is thread-safe and allows for multiple application threads to target
/// their processing to the same displayed frame. /// their processing to the same displayed frame.
///
///
/// In the even that prediction fails due to various reasons (e.g. the display being off /// In the even that prediction fails due to various reasons (e.g. the display being off
/// or app has yet to present any frames), the return value will be current CPU time. /// or app has yet to present any frames), the return value will be current CPU time.
///
///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
/// \param[in] frameIndex Identifies the frame the caller wishes to target. /// \param[in] frameIndex Identifies the frame the caller wishes to target.
/// A value of zero returns the next frame index. /// A value of zero returns the next frame index.
/// \return Returns the absolute frame midpoint time for the given frameIndex.
/// \return Returns the absolute frame midpoint time for the given frameIndex.
/// \see ovr_GetTimeInSeconds /// \see ovr_GetTimeInSeconds
/// ///
OVR_PUBLIC_FUNCTION(double) ovr_GetPredictedDisplayTime(ovrSession session, long long frameIndex); OVR_PUBLIC_FUNCTION(double) ovr_GetPredictedDisplayTime(ovrSession session, long long frameIndex);
@ -1917,6 +1953,7 @@ OVR_PUBLIC_FUNCTION(double) ovr_GetPredictedDisplayTime(ovrSession session, long
/// ///
OVR_PUBLIC_FUNCTION(double) ovr_GetTimeInSeconds(); OVR_PUBLIC_FUNCTION(double) ovr_GetTimeInSeconds();
#endif // !defined(OVR_EXPORTING_CAPI)
/// Performance HUD enables the HMD user to see information critical to /// Performance HUD enables the HMD user to see information critical to
/// the real-time operation of the VR application such as latency timing, /// the real-time operation of the VR application such as latency timing,
@ -1958,7 +1995,7 @@ typedef enum ovrLayerHudMode_
///@} ///@}
/// Debug HUD is provided to help developers gauge and debug the fidelity of their app's /// Debug HUD is provided to help developers gauge and debug the fidelity of their app's
/// stereo rendering characteristics. Using the provided quad and crosshair guides,
/// stereo rendering characteristics. Using the provided quad and crosshair guides,
/// the developer can verify various aspects such as VR tracking units (e.g. meters), /// the developer can verify various aspects such as VR tracking units (e.g. meters),
/// stereo camera-parallax properties (e.g. making sure objects at infinity are rendered /// stereo camera-parallax properties (e.g. making sure objects at infinity are rendered
/// with the proper separation), measuring VR geometry sizes and distances and more. /// with the proper separation), measuring VR geometry sizes and distances and more.
@ -1984,7 +2021,7 @@ typedef enum ovrDebugHudStereoMode_
} ovrDebugHudStereoMode; } ovrDebugHudStereoMode;
#if !defined(OVR_EXPORTING_CAPI)
// ----------------------------------------------------------------------------------- // -----------------------------------------------------------------------------------
/// @name Property Access /// @name Property Access
@ -2102,7 +2139,7 @@ OVR_PUBLIC_FUNCTION(ovrBool) ovr_SetString(ovrSession session, const char* prope
///@} ///@}
#endif // !defined(OVR_EXPORTING_CAPI)
#ifdef __cplusplus #ifdef __cplusplus
} // extern "C" } // extern "C"
@ -2163,10 +2200,10 @@ OVR_STATIC_ASSERT(sizeof(ovrLogLevel) == 4, "ovrLogLevel size mismatch");
OVR_STATIC_ASSERT(sizeof(ovrInitParams) == 4 + 4 + sizeof(ovrLogCallback) + sizeof(uintptr_t) + 4 + 4, OVR_STATIC_ASSERT(sizeof(ovrInitParams) == 4 + 4 + sizeof(ovrLogCallback) + sizeof(uintptr_t) + 4 + 4,
"ovrInitParams size mismatch"); "ovrInitParams size mismatch");
OVR_STATIC_ASSERT(sizeof(ovrHmdDesc) ==
OVR_STATIC_ASSERT(sizeof(ovrHmdDesc) ==
+ sizeof(ovrHmdType) // Type + sizeof(ovrHmdType) // Type
OVR_ON64(+ 4) // pad0 OVR_ON64(+ 4) // pad0
+ 64 // ProductName
+ 64 // ProductName
+ 64 // Manufacturer + 64 // Manufacturer
+ 2 // VendorId + 2 // VendorId
+ 2 // ProductId + 2 // ProductId

+ 4
- 0
src/external/OculusSDK/LibOVR/Include/OVR_CAPI_Audio.h 查看文件

@ -17,6 +17,8 @@
#include "OVR_CAPI.h" #include "OVR_CAPI.h"
#define OVR_AUDIO_MAX_DEVICE_STR_SIZE 128 #define OVR_AUDIO_MAX_DEVICE_STR_SIZE 128
#if !defined(OVR_EXPORTING_CAPI)
/// Gets the ID of the preferred VR audio output device. /// Gets the ID of the preferred VR audio output device.
/// ///
/// \param[out] deviceOutId The ID of the user's preferred VR audio device to use, which will be valid upon a successful return value, else it will be WAVE_MAPPER. /// \param[out] deviceOutId The ID of the user's preferred VR audio device to use, which will be valid upon a successful return value, else it will be WAVE_MAPPER.
@ -75,6 +77,8 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetAudioDeviceInGuidStr(WCHAR deviceInStrBuff
/// ///
OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetAudioDeviceInGuid(GUID* deviceInGuid); OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetAudioDeviceInGuid(GUID* deviceInGuid);
#endif // !defined(OVR_EXPORTING_CAPI)
#endif //OVR_OS_MS #endif //OVR_OS_MS
#endif // OVR_CAPI_Audio_h #endif // OVR_CAPI_Audio_h

+ 3
- 0
src/external/OculusSDK/LibOVR/Include/OVR_CAPI_D3D.h 查看文件

@ -14,6 +14,8 @@
#if defined (_WIN32) #if defined (_WIN32)
#include <Unknwn.h> #include <Unknwn.h>
#if !defined(OVR_EXPORTING_CAPI)
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
// ***** Direct3D Specific // ***** Direct3D Specific
@ -149,6 +151,7 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetMirrorTextureBufferDX(ovrSession session,
IID iid, IID iid,
void** out_Buffer); void** out_Buffer);
#endif // !defined(OVR_EXPORTING_CAPI)
#endif // _WIN32 #endif // _WIN32

+ 3
- 0
src/external/OculusSDK/LibOVR/Include/OVR_CAPI_GL.h 查看文件

@ -9,6 +9,8 @@
#include "OVR_CAPI.h" #include "OVR_CAPI.h"
#if !defined(OVR_EXPORTING_CAPI)
/// Creates a TextureSwapChain suitable for use with OpenGL. /// Creates a TextureSwapChain suitable for use with OpenGL.
/// ///
/// \param[in] session Specifies an ovrSession previously returned by ovr_Create. /// \param[in] session Specifies an ovrSession previously returned by ovr_Create.
@ -95,5 +97,6 @@ OVR_PUBLIC_FUNCTION(ovrResult) ovr_GetMirrorTextureBufferGL(ovrSession session,
ovrMirrorTexture mirrorTexture, ovrMirrorTexture mirrorTexture,
unsigned int* out_TexId); unsigned int* out_TexId);
#endif // !defined(OVR_EXPORTING_CAPI)
#endif // OVR_CAPI_GL_h #endif // OVR_CAPI_GL_h

+ 9
- 0
src/external/OculusSDK/LibOVR/Include/OVR_ErrorCode.h 查看文件

@ -88,6 +88,7 @@ typedef enum ovrErrorType_
ovrError_ClientSkippedDestroy = -1012, ///< The client failed to call ovr_Destroy on an active session before calling ovr_Shutdown. Or the client crashed. ovrError_ClientSkippedDestroy = -1012, ///< The client failed to call ovr_Destroy on an active session before calling ovr_Shutdown. Or the client crashed.
ovrError_ClientSkippedShutdown = -1013, ///< The client failed to call ovr_Shutdown or the client crashed. ovrError_ClientSkippedShutdown = -1013, ///< The client failed to call ovr_Shutdown or the client crashed.
ovrError_ServiceDeadlockDetected = -1014, ///< The service watchdog discovered a deadlock. ovrError_ServiceDeadlockDetected = -1014, ///< The service watchdog discovered a deadlock.
ovrError_InvalidOperation = -1015, ///< Function call is invalid for object's current state
/* Audio error range, reserved for Audio errors. */ /* Audio error range, reserved for Audio errors. */
ovrError_AudioDeviceNotFound = -2001, ///< Failure to find the specified audio device. ovrError_AudioDeviceNotFound = -2001, ///< Failure to find the specified audio device.
@ -115,6 +116,9 @@ typedef enum ovrErrorType_
ovrError_HybridGraphicsNotSupported = -3018, ///< The system is using hybrid graphics (Optimus, etc...), which is not support. ovrError_HybridGraphicsNotSupported = -3018, ///< The system is using hybrid graphics (Optimus, etc...), which is not support.
ovrError_DisplayManagerInit = -3019, ///< Initialization of the DisplayManager failed. ovrError_DisplayManagerInit = -3019, ///< Initialization of the DisplayManager failed.
ovrError_TrackerDriverInit = -3020, ///< Failed to get the interface for an attached tracker ovrError_TrackerDriverInit = -3020, ///< Failed to get the interface for an attached tracker
ovrError_LibSignCheck = -3021, ///< LibOVRRT signature check failure.
ovrError_LibPath = -3022, ///< LibOVRRT path failure.
ovrError_LibSymbols = -3023, ///< LibOVRRT symbol resolution failure.
/* Rendering errors */ /* Rendering errors */
ovrError_DisplayLost = -6000, ///< In the event of a system-wide graphics reset or cable unplug this is returned to the app. ovrError_DisplayLost = -6000, ///< In the event of a system-wide graphics reset or cable unplug this is returned to the app.
@ -130,6 +134,11 @@ typedef enum ovrErrorType_
/* Fatal errors */ /* Fatal errors */
ovrError_RuntimeException = -7000, ///< A runtime exception occurred. The application is required to shutdown LibOVR and re-initialize it before this error state will be cleared. ovrError_RuntimeException = -7000, ///< A runtime exception occurred. The application is required to shutdown LibOVR and re-initialize it before this error state will be cleared.
/* Calibration errors */
ovrError_NoCalibration = -9000, ///< Result of a missing calibration block
ovrError_OldVersion = -9001, ///< Result of an old calibration block
ovrError_MisformattedBlock = -9002, ///< Result of a bad calibration block due to lengths
} ovrErrorType; } ovrErrorType;

+ 1
- 1
src/external/OculusSDK/LibOVR/Include/OVR_Version.h 查看文件

@ -19,7 +19,7 @@
// Master version numbers // Master version numbers
#define OVR_PRODUCT_VERSION 1 // Product version doesn't participate in semantic versioning. #define OVR_PRODUCT_VERSION 1 // Product version doesn't participate in semantic versioning.
#define OVR_MAJOR_VERSION 1 // If you change these values then you need to also make sure to change LibOVR/Projects/Windows/LibOVR.props in parallel. #define OVR_MAJOR_VERSION 1 // If you change these values then you need to also make sure to change LibOVR/Projects/Windows/LibOVR.props in parallel.
#define OVR_MINOR_VERSION 6 //
#define OVR_MINOR_VERSION 7 //
#define OVR_PATCH_VERSION 0 #define OVR_PATCH_VERSION 0
#define OVR_BUILD_NUMBER 0 #define OVR_BUILD_NUMBER 0

二进制
src/external/OculusSDK/LibOVR/LibOVRRT32_1.dll 查看文件


正在加载...
取消
保存