forked from ValveSoftware/unity-xr-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
1.0.0-preview.5 - Open source. Display fixes. UWP / IL2CPP fixes.
## [1.0.0-preview.5] - 2020-07-15 ### Changed - See LICENSE.md files for open source updates. - Fixed 32bit builds - Fixed UWP builds - Fixed IL2CPP builds - Fixed some issues with Mirror View Mode. Now defaulting to Right Eye instead of OpenVR. - Fixed issue where SteamVR Beta was required.
- Loading branch information
Showing
151 changed files
with
137,516 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
# This .gitignore file should be placed at the root of your Unity project directory | ||
# | ||
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore | ||
# | ||
/[Ll]ibrary/ | ||
/[Tt]emp/ | ||
/[Oo]bj/ | ||
/[Bb]uild/ | ||
/[Bb]uilds/ | ||
/[Ll]ogs/ | ||
/[Mm]emoryCaptures/ | ||
|
||
# Asset meta data should only be ignored when the corresponding asset is also ignored | ||
!/[Aa]ssets/**/*.meta | ||
|
||
# Uncomment this line if you wish to ignore the asset store tools plugin | ||
# /[Aa]ssets/AssetStoreTools* | ||
|
||
# Autogenerated Jetbrains Rider plugin | ||
[Aa]ssets/Plugins/Editor/JetBrains* | ||
|
||
# Visual Studio cache directory | ||
.vs/ | ||
|
||
# Gradle cache directory | ||
.gradle/ | ||
|
||
# Autogenerated VS/MD/Consulo solution and project files | ||
ExportedObj/ | ||
.consulo/ | ||
*.csproj | ||
*.unityproj | ||
*.sln | ||
*.suo | ||
*.tmp | ||
*.user | ||
*.userprefs | ||
*.pidb | ||
*.booproj | ||
*.svd | ||
*.pdb | ||
*.mdb | ||
*.opendb | ||
*.VC.db | ||
*.vcxproj | ||
*.vcxproj.filters | ||
|
||
# Unity3D generated meta files | ||
*.pidb.meta | ||
*.pdb.meta | ||
*.mdb.meta | ||
|
||
# Unity3D generated file on crash reports | ||
sysinfo.txt | ||
|
||
# Builds | ||
Debug/ | ||
*.apk | ||
*.unitypackage | ||
*_export.h | ||
|
||
# Crashlytics generated file | ||
crashlytics-build.properties | ||
|
||
# CMake | ||
CMakeLists.txt.user | ||
CMakeCache.txt | ||
CMakeFiles | ||
CMakeScripts | ||
Testing | ||
Makefile | ||
cmake_install.cmake | ||
install_manifest.txt | ||
compile_commands.json | ||
CTestTestfile.cmake | ||
_deps | ||
*.dir | ||
|
||
# Valve internal | ||
*.vpc | ||
*.vpc.sentinel | ||
*.vpc_crc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,143 @@ | ||
cmake_minimum_required(VERSION 3.10) | ||
set(CMAKE_SUPPRESS_REGENERATION true) | ||
project(unity_xr_openvr_plugin) | ||
|
||
# C++ 17 - note cmake minver is 3.10 supported only on MS C++ 2015 Update 3 and above | ||
message(STATUS "Project language set to C++17") | ||
|
||
set(CMAKE_CXX_STANDARD 17) | ||
set(CMAKE_CXX_STANDARD_REQUIRED True) | ||
set(BINARY_RUNTIME_PATH "${CMAKE_SOURCE_DIR}/com.valve.openvr/Runtime") | ||
|
||
# Determine platform architecture | ||
message(STATUS "Checking platform architecture...") | ||
|
||
# Auto determine platform if none is provided | ||
if(NOT PLATFORM) | ||
if(CMAKE_SIZEOF_VOID_P MATCHES 8) | ||
set(PLATFORM 64) | ||
else() | ||
set(PLATFORM 32) | ||
endif() | ||
endif() | ||
|
||
# Platform binary path | ||
if(PLATFORM MATCHES 64) | ||
set(PLATFORMX "x64") | ||
else() | ||
set(PLATFORMX "x86") | ||
endif() | ||
|
||
set(BINARY_PATH "${CMAKE_SOURCE_DIR}/com.valve.openvr/Runtime/${PLATFORMX}") | ||
message(STATUS "Platform binary path set to: ${BINARY_PATH}") | ||
|
||
# Set Platform | ||
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||
add_definitions(-DLINUX -DPOSIX) | ||
set(OPENVR_API_NAME "libopenvr_api") | ||
set(COMPILED_LIB_TYPE "so") | ||
set(IMPORT_LIB_TYPE "a") | ||
set(ARCH_TARGET linux64) | ||
|
||
if(${PLATFORM} MATCHES 32) | ||
message(WARNING "OpenVR x86 binaries not provided on GNU/Linux.") | ||
endif() | ||
|
||
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows") | ||
add_definitions(-D_WIN32) | ||
set(OPENVR_API_NAME "openvr_api") | ||
set(COMPILED_LIB_TYPE "dll") | ||
set(IMPORT_LIB_TYPE "lib") | ||
set(ARCH_TARGET win${PLATFORM}) | ||
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS True) | ||
endif() | ||
|
||
message(STATUS "Compilation set for ${CMAKE_SYSTEM_NAME} ${PLATFORM}bit") | ||
|
||
# XRSDKOpenVR | ||
message(STATUS "Adding XRSDKOpenVR...") | ||
|
||
add_library(XRSDKOpenVR SHARED | ||
${CMAKE_SOURCE_DIR}/Providers/dllmain.cpp | ||
${CMAKE_SOURCE_DIR}/Providers/OpenVRProviderContext.h | ||
${CMAKE_SOURCE_DIR}/Providers/OpenVRSystem.h ${CMAKE_SOURCE_DIR}/Providers/OpenVRSystem.cpp | ||
${CMAKE_SOURCE_DIR}/Providers/UserProjectSettings.h ${CMAKE_SOURCE_DIR}/Providers/UserProjectSettings.cpp | ||
|
||
${CMAKE_SOURCE_DIR}/Providers/Display/Display.h ${CMAKE_SOURCE_DIR}/Providers/Display/Display.cpp | ||
${CMAKE_SOURCE_DIR}/Providers/Input/Input.h ${CMAKE_SOURCE_DIR}/Providers/Input/Input.cpp | ||
|
||
${CMAKE_SOURCE_DIR}/CommonHeaders/UnityInterfaces.h ${CMAKE_SOURCE_DIR}/CommonHeaders/UnityInterfaces.cpp | ||
|
||
${CMAKE_SOURCE_DIR}/CommonHeaders/Singleton.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/CommonTypes.h | ||
|
||
${CMAKE_SOURCE_DIR}/CommonHeaders/OpenVR/openvr.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/OpenVR/openvr_driver.h | ||
|
||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityEventQueue.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityGraphics.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityGraphicsD3D11.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityGraphicsD3D12.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityGraphicsMetal.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityGraphicsVulkan.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityInterface.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityProfilerCallbacks.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityRenderingExtensions.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityShaderCompilerAccess.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRDisplay.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRInput.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRMeshing.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRPreInit.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRStats.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/IUnityXRTrace.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/UnitySubsystemTypes.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/UnityXRDisplayStats.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/UnityXRTypes.h | ||
${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/XRMath.h ${CMAKE_SOURCE_DIR}/CommonHeaders/ProviderInterface/XRMath.cpp | ||
) | ||
|
||
target_include_directories(XRSDKOpenVR PUBLIC | ||
${CMAKE_SOURCE_DIR}/Providers | ||
${CMAKE_SOURCE_DIR}/CommonHeaders | ||
${CMAKE_SOURCE_DIR}/ThirdParty | ||
) | ||
|
||
include(GenerateExportHeader) | ||
generate_export_header(XRSDKOpenVR) | ||
|
||
|
||
message(STATUS "Runtime output directory set to: ${BINARY_PATH}") | ||
set_target_properties(XRSDKOpenVR | ||
PROPERTIES | ||
ARCHIVE_OUTPUT_DIRECTORY_DEBUG "${BINARY_PATH}" | ||
LIBRARY_OUTPUT_DIRECTORY_DEBUG "${BINARY_PATH}" | ||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${BINARY_PATH}" | ||
ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${BINARY_PATH}" | ||
LIBRARY_OUTPUT_DIRECTORY_RELEASE "${BINARY_PATH}" | ||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${BINARY_PATH}" | ||
) | ||
|
||
|
||
# OpenVR | ||
message(STATUS "Importing OpenVR API...") | ||
|
||
add_library(openvr_api SHARED IMPORTED) | ||
set_target_properties(openvr_api PROPERTIES IMPORTED_LOCATION ${CMAKE_SOURCE_DIR}/lib/${PLATFORMX}/${OPENVR_API_NAME}.${COMPILED_LIB_TYPE}) | ||
set_target_properties(openvr_api PROPERTIES IMPORTED_IMPLIB ${CMAKE_SOURCE_DIR}/lib/${PLATFORMX}/${OPENVR_API_NAME}.${IMPORT_LIB_TYPE}) | ||
set_target_properties(openvr_api PROPERTIES LINKER_LANGUAGE CXX) | ||
target_link_libraries(XRSDKOpenVR PUBLIC openvr_api) | ||
|
||
# Post-Build - Copy OpenVR api | ||
add_custom_command(TARGET XRSDKOpenVR POST_BUILD | ||
COMMAND ${CMAKE_COMMAND} -E copy | ||
${CMAKE_SOURCE_DIR}/lib/${PLATFORMX}/${OPENVR_API_NAME}.${COMPILED_LIB_TYPE} | ||
${BINARY_PATH}/${OPENVR_API_NAME}.${COMPILED_LIB_TYPE} | ||
|
||
COMMAND ${CMAKE_COMMAND} -E copy | ||
${CMAKE_SOURCE_DIR}/lib/${PLATFORMX}/${OPENVR_API_NAME}.${COMPILED_LIB_TYPE}.sig | ||
${BINARY_PATH}/${OPENVR_API_NAME}.${COMPILED_LIB_TYPE}.sig | ||
|
||
COMMAND ${CMAKE_COMMAND} -E copy | ||
${CMAKE_SOURCE_DIR}/lib/${PLATFORMX}/${OPENVR_API_NAME}.${IMPORT_LIB_TYPE} | ||
${BINARY_PATH}/${OPENVR_API_NAME}.${IMPORT_LIB_TYPE} | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
#pragma once | ||
|
||
#include "ProviderInterface/IUnityXRTrace.h" | ||
#include "ProviderInterface/IUnityXRStats.h" | ||
|
||
extern IUnityXRTrace *s_pXRTrace; | ||
//extern IUnityXRStats* sXRStats; | ||
|
||
#define XR_TRACE_PTR s_pXRTrace |
Oops, something went wrong.