Merge branch 'master' of https://github.com/highfidelity/hifi into entityPropertiesRefactor

This commit is contained in:
David Back 2018-10-23 13:28:35 -07:00
commit 9df8ea35bb
455 changed files with 6792 additions and 3193 deletions

View file

@ -36,6 +36,7 @@ module.exports = {
"GlobalServices": false, "GlobalServices": false,
"GooglePoly": false, "GooglePoly": false,
"Graphics": false, "Graphics": false,
"HifiAbout": false,
"HMD": false, "HMD": false,
"LaserPointers": false, "LaserPointers": false,
"location": true, "location": true,

View file

@ -9,6 +9,7 @@
- [cmake](https://cmake.org/download/): 3.9 - [cmake](https://cmake.org/download/): 3.9
- [Qt](https://www.qt.io/download-open-source): 5.10.1 - [Qt](https://www.qt.io/download-open-source): 5.10.1
- [Python](https://www.python.org/downloads/): 3.6 or higher
- [OpenSSL](https://www.openssl.org/): Use the latest available 1.0 version (**NOT** 1.1) of OpenSSL to avoid security vulnerabilities. - [OpenSSL](https://www.openssl.org/): Use the latest available 1.0 version (**NOT** 1.1) of OpenSSL to avoid security vulnerabilities.
- [VHACD](https://github.com/virneo/v-hacd)(clone this repository)(Optional) - [VHACD](https://github.com/virneo/v-hacd)(clone this repository)(Optional)

View file

@ -40,6 +40,11 @@ Install build tools:
sudo apt-get install cmake sudo apt-get install cmake
``` ```
Install Python 3:
```bash
sudo apt-get install python3.6
```
### Get code and checkout the tag you need ### Get code and checkout the tag you need

View file

@ -6,6 +6,10 @@ Please read the [general build guide](BUILD.md) for information on dependencies
brew install cmake openssl qt brew install cmake openssl qt
### Python 3
Download an install Python 3.6.6 or higher from [here](https://www.python.org/downloads/). Execute the `Update Shell Profile.command` script that is provided with the installer.
### OpenSSL ### OpenSSL
Assuming you've installed OpenSSL using the homebrew instructions above, you'll need to set OPENSSL_ROOT_DIR so CMake can find your installations. Assuming you've installed OpenSSL using the homebrew instructions above, you'll need to set OPENSSL_ROOT_DIR so CMake can find your installations.
@ -28,7 +32,9 @@ Note that this uses the version from the homebrew formula at the time of this wr
If Xcode is your editor of choice, you can ask CMake to generate Xcode project files instead of Unix Makefiles. If Xcode is your editor of choice, you can ask CMake to generate Xcode project files instead of Unix Makefiles.
cmake .. -GXcode cmake .. -G Xcode
If `cmake` complains about Python 3 being missing, you may need to update your CMake binary with command `brew upgrade cmake`, or by downloading and running the latest CMake installer, depending on how you originally instaled CMake
After running cmake, you will have the make files or Xcode project file necessary to build all of the components. Open the hifi.xcodeproj file, choose ALL_BUILD from the Product > Scheme menu (or target drop down), and click Run. After running cmake, you will have the make files or Xcode project file necessary to build all of the components. Open the hifi.xcodeproj file, choose ALL_BUILD from the Product > Scheme menu (or target drop down), and click Run.

View file

@ -5,11 +5,17 @@ Note: We are now using Visual Studio 2017 and Qt 5.10.1. If you are upgrading fr
Note: The prerequisites will require about 10 GB of space on your drive. You will also need a system with at least 8GB of main memory. Note: The prerequisites will require about 10 GB of space on your drive. You will also need a system with at least 8GB of main memory.
### Step 1. Visual Studio 2017 ### Step 1. Visual Studio 2017 & Python
If you dont have Community or Professional edition of Visual Studio 2017, download [Visual Studio Community 2017](https://www.visualstudio.com/downloads/). If you dont have Community or Professional edition of Visual Studio 2017, download [Visual Studio Community 2017](https://www.visualstudio.com/downloads/).
When selecting components, check "Desktop development with C++." Also on the right on the Summary toolbar, check "Windows 8.1 SDK and UCRT SDK" and "VC++ 2015.3 v140 toolset (x86,x64)". When selecting components, check "Desktop development with C++". Also on the right on the Summary toolbar, check "Windows 8.1 SDK and UCRT SDK" and "VC++ 2015.3 v140 toolset (x86,x64)". If you do not already have a python development environment installed, also check "Python Development" in this screen.
If you already have Visual Studio installed and need to add python, open the "Add or remove programs" control panel and find the "Microsoft Visual Studio Installer". Select it and click "Modify". In the installer, select "Modify" again, then check "Python Development" and allow the installer to apply the changes.
### Step 1a. Alternate Python
If you do not wish to use the Python installation bundled with Visual Studio, you can download the installer from [here](https://www.python.org/downloads/). Ensure you get version 3.6.6 or higher.
### Step 2. Installing CMake ### Step 2. Installing CMake

View file

@ -24,7 +24,6 @@ android {
'-DANDROID_STL=c++_shared', '-DANDROID_STL=c++_shared',
'-DQT_CMAKE_PREFIX_PATH=' + HIFI_ANDROID_PRECOMPILED + '/qt/lib/cmake', '-DQT_CMAKE_PREFIX_PATH=' + HIFI_ANDROID_PRECOMPILED + '/qt/lib/cmake',
'-DNATIVE_SCRIBE=' + HIFI_ANDROID_PRECOMPILED + '/scribe' + EXEC_SUFFIX, '-DNATIVE_SCRIBE=' + HIFI_ANDROID_PRECOMPILED + '/scribe' + EXEC_SUFFIX,
'-DNATIVE_SHREFLECT=' + HIFI_ANDROID_PRECOMPILED + '/shreflect' + EXEC_SUFFIX,
'-DHIFI_ANDROID_PRECOMPILED=' + HIFI_ANDROID_PRECOMPILED, '-DHIFI_ANDROID_PRECOMPILED=' + HIFI_ANDROID_PRECOMPILED,
'-DRELEASE_NUMBER=' + RELEASE_NUMBER, '-DRELEASE_NUMBER=' + RELEASE_NUMBER,
'-DRELEASE_TYPE=' + RELEASE_TYPE, '-DRELEASE_TYPE=' + RELEASE_TYPE,

View file

@ -161,31 +161,19 @@ def packages = [
] ]
] ]
def scribeLocalFile='scribe' + EXEC_SUFFIX def scribeLocalFile='scribe' + EXEC_SUFFIX
def scribeFile='scribe_linux_x86_64' def scribeFile='scribe_linux_x86_64'
def scribeChecksum='ca4b904f52f4f993c29175ba96798fa6' def scribeChecksum='4635c28192724281d2367ce9e94380ab'
def scribeVersion='u_iTrJDaE95i2abTPXOpPZckGBIim53G' def scribeVersion='mPAY_N846oZH1tPY1bwChB_hzqkiYyoC'
def shreflectLocalFile='shreflect' + EXEC_SUFFIX
def shreflectFile='shreflect_linux_x86_64'
def shreflectChecksum='d6094a8580066c0b6f4e80b5adfb1d98'
def shreflectVersion='jnrpudh6fptIg6T2.Z6fgKP2ultAdKmE'
if (Os.isFamily(Os.FAMILY_MAC)) { if (Os.isFamily(Os.FAMILY_MAC)) {
scribeFile = 'scribe_osx_x86_64' scribeFile = 'scribe_osx_x86_64'
scribeChecksum='72db9d32d4e1e50add755570ac5eb749' scribeChecksum='1ead61c285d265eba9a5ef91ae3b7c26'
scribeVersion='DAW0DmnjCRib4MD8x93bgc2Z2MpPojZC' scribeVersion='4TAXWdo9fviw60N2wUA8HNyQ9TabjZa3'
shreflectFile='shreflect_osx_x86_64'
shreflectChecksum='d613ef0703c21371fee93fd2e54b964f'
shreflectVersion='.rYNzjSFq6WtWDnE5KIKRIAGyJtr__ad'
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) { } else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
scribeFile = 'scribe_win32_x86_64.exe' scribeFile = 'scribe_win32_x86_64.exe'
scribeChecksum='678e43d290c90fda670c6fefe038a06d' scribeChecksum='9c29a62595daf4844f95f6744d568c15'
scribeVersion='PuullrA_bPlO9kXZRt8rLe536X1UI.m7' scribeVersion='DUoxjufeX8ZAIVRBKRczWTuZwT13enTv'
shreflectFile='shreflect_win32_x86_64.exe'
shreflectChecksum='6f4a77b8cceb3f1bbc655132c3665060'
shreflectVersion='iIyCyza1nelkbI7ihybF59bBlwrfAC3D'
} }
def options = [ def options = [
@ -461,27 +449,11 @@ task fixScribePermissions(type: Exec, dependsOn: verifyScribe) {
commandLine 'chmod', 'a+x', HIFI_ANDROID_PRECOMPILED + '/' + scribeLocalFile commandLine 'chmod', 'a+x', HIFI_ANDROID_PRECOMPILED + '/' + scribeLocalFile
} }
task downloadShreflect(type: Download) { task setupScribe(dependsOn: [verifyScribe]) { }
src baseUrl + shreflectFile + '?versionId=' + shreflectVersion
dest new File(baseFolder, shreflectLocalFile)
onlyIfNewer true
}
task verifyShreflect(type: Verify, dependsOn: downloadShreflect) {
src new File(baseFolder, shreflectLocalFile);
checksum shreflectChecksum
}
task fixShreflectPermissions(type: Exec, dependsOn: verifyShreflect) {
commandLine 'chmod', 'a+x', HIFI_ANDROID_PRECOMPILED + '/' + shreflectLocalFile
}
task setupScribe(dependsOn: [verifyScribe, verifyShreflect]) { }
// On Windows, we don't need to set the executable bit, but on OSX and Unix we do // On Windows, we don't need to set the executable bit, but on OSX and Unix we do
if (!Os.isFamily(Os.FAMILY_WINDOWS)) { if (!Os.isFamily(Os.FAMILY_WINDOWS)) {
setupScribe.dependsOn fixScribePermissions setupScribe.dependsOn fixScribePermissions
setupScribe.dependsOn fixShreflectPermissions
} }
task extractGvrBinaries(dependsOn: extractDependencies) { task extractGvrBinaries(dependsOn: extractDependencies) {

42
cmake/externals/glslang/CMakeLists.txt vendored Normal file
View file

@ -0,0 +1,42 @@
set(EXTERNAL_NAME glslang)
string(TOUPPER ${EXTERNAL_NAME} EXTERNAL_NAME_UPPER)
include(ExternalProject)
ExternalProject_Add(
${EXTERNAL_NAME}
URL https://github.com/KhronosGroup/glslang/archive/7.8.2853.zip
URL_MD5 4f93e3818528176c622c137fba05cbf8
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>-$<CONFIG>
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 1
)
# Hide this external target (for ide users)
set_target_properties(${EXTERNAL_NAME} PROPERTIES FOLDER "hidden/externals")
# includes
ExternalProject_Get_Property(${EXTERNAL_NAME} INSTALL_DIR)
set(SUFFIXED_INSTALL_DIR "${INSTALL_DIR}-$<CONFIG>")
list(APPEND INCLUDE_DIRS ${SUFFIXED_INSTALL_DIR}/include)
#list(APPEND INCLUDE_DIRS ${INSTALL_DIR}/include)
set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIR ${INCLUDE_DIRS} CACHE PATH "List of glslang include directories")
set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIRS ${${EXTERNAL_NAME_UPPER}_INCLUDE_DIR} CACHE PATH "List of glslang include directories")
set(LIB_DIR ${SUFFIXED_INSTALL_DIR}/lib)
list(APPEND LIB_NAMES glslang HLSL OGLCompiler OSDependent SPIRV SPVRemapper)
include(SelectLibraryConfigurations)
foreach(BASE_LIB ${LIB_NAMES})
string(TOUPPER ${BASE_LIB} BASE_LIB_UPPER)
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE "${LIB_DIR}/${BASE_LIB}.lib")
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARY_DEBUG "${LIB_DIR}/${BASE_LIB}d.lib")
endforeach()
select_library_configurations(${EXTERNAL_NAME_UPPER})
set(${EXTERNAL_NAME_UPPER}_LIBRARY ${${EXTERNAL_NAME_UPPER}_LIBRARY} CACHE FILEPATH "Location of glslang libraries")
set(${EXTERNAL_NAME_UPPER}_LIBRARIES ${${EXTERNAL_NAME_UPPER}_LIBRARIES} CACHE FILEPATH "Location of glslang libraries")

View file

@ -0,0 +1,34 @@
set(EXTERNAL_NAME spirv_binaries)
string(TOUPPER ${EXTERNAL_NAME} EXTERNAL_NAME_UPPER)
include(ExternalProject)
if (CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
set(DOWNLOAD_URL https://public.highfidelity.com/dependencies/vulkan/vulkansdk-win32-1.1.82.1.tar.gz)
set(DOWNLOAD_MD5 3a83ef490bce248b1a4d6726a3e5893e)
set(BIN_DIR "Bin")
elseif (CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin")
set(DOWNLOAD_URL https://public.highfidelity.com/dependencies/vulkan/vulkansdk-macos-1.1.82.1.tar.gz)
set(DOWNLOAD_MD5 a57d37275b2c5db023ba8e84a63461ff)
set(BIN_DIR "macOS/bin")
else ()
set(DOWNLOAD_URL https://public.highfidelity.com/dependencies/vulkan/vulkansdk-linux-x86_64-1.1.82.1.tar.gz)
set(DOWNLOAD_MD5 5a7c9eeda8cee6b36724da7f7cbe5ec6)
set(BIN_DIR "x86_64/bin")
endif ()
ExternalProject_Add(
${EXTERNAL_NAME}
URL ${DOWNLOAD_URL}
URL_MD5 ${DOWNLOAD_MD5}
BUILD_COMMAND ""
CONFIGURE_COMMAND ""
INSTALL_COMMAND ""
LOG_DOWNLOAD ON
)
# Hide this external target (for ide users)
set_target_properties(${EXTERNAL_NAME} PROPERTIES FOLDER "hidden/externals")
ExternalProject_Get_Property(${EXTERNAL_NAME} SOURCE_DIR)
set(${EXTERNAL_NAME_UPPER}_DIR "${SOURCE_DIR}/${BIN_DIR}" CACHE FILEPATH "SPIRV binary tools location")

View file

@ -0,0 +1,35 @@
set(EXTERNAL_NAME spirv_cross)
include(ExternalProject)
ExternalProject_Add(
${EXTERNAL_NAME}
URL https://github.com/KhronosGroup/SPIRV-Cross/archive/2018-08-07.zip
URL_MD5 11198e4dc6a815ffbdb7a0a56d2d9261
CONFIGURE_COMMAND CMAKE_ARGS ${ANDROID_CMAKE_ARGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>-$<CONFIG> ${EXTRA_CMAKE_FLAGS}
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 1
)
# Hide this external target (for ide users)
set_target_properties(${EXTERNAL_NAME} PROPERTIES FOLDER "hidden/externals")
ExternalProject_Get_Property(${EXTERNAL_NAME} INSTALL_DIR)
set(SUFFIXED_INSTALL_DIR "${INSTALL_DIR}-$<CONFIG>")
string(TOUPPER ${EXTERNAL_NAME} EXTERNAL_NAME_UPPER)
set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIRS ${SUFFIXED_INSTALL_DIR}/include CACHE PATH "List of Draco include directories")
if (UNIX)
set(LIB_PREFIX "lib")
set(LIB_EXT "a")
elseif (WIN32)
set(LIB_EXT "lib")
endif ()
foreach(lib glsl msl cpp hlsl reflect util core)
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARIES ${SUFFIXED_INSTALL_DIR}/lib/spirv-cross-${lib}.${LIB_EXT})
endforeach()
set(${EXTERNAL_NAME_UPPER}_LIBRARIES ${${EXTERNAL_NAME_UPPER}_LIBRARIES} CACHE FILEPATH "Path to SPIRV-Cross libraries")

View file

@ -0,0 +1,18 @@
set(EXTERNAL_NAME spirv_headers)
string(TOUPPER ${EXTERNAL_NAME} EXTERNAL_NAME_UPPER)
include(ExternalProject)
ExternalProject_Add(
${EXTERNAL_NAME}
URL https://github.com/KhronosGroup/SPIRV-Headers/archive/2c512180ca03b5d4f56283efc85745775b45fdc4.zip
URL_MD5 83e652221b5f21d5fdb61c45f5b4d9f9
CONFIGURE_COMMAND CMAKE_ARGS ${ANDROID_CMAKE_ARGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> ${EXTRA_CMAKE_FLAGS}
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 1
)
# Hide this external target (for ide users)
set_target_properties(${EXTERNAL_NAME} PROPERTIES FOLDER "hidden/externals")
ExternalProject_Get_Property(${EXTERNAL_NAME} INSTALL_DIR)
set(${EXTERNAL_NAME_UPPER}_ROOT ${INSTALL_DIR} CACHE PATH "List of include directories")

View file

@ -0,0 +1,33 @@
set(EXTERNAL_NAME spirv_tools)
string(TOUPPER ${EXTERNAL_NAME} EXTERNAL_NAME_UPPER)
include(ExternalProject)
ExternalProject_Add(
${EXTERNAL_NAME}
URL https://github.com/KhronosGroup/SPIRV-Tools/archive/v2018.4.zip
URL_MD5 7a7c69cf6ff0318910b4bfbdf30bcfc9
CONFIGURE_COMMAND CMAKE_ARGS ${ANDROID_CMAKE_ARGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSPIRV-Headers_SOURCE_DIR=${SPIRV_HEADERS_ROOT} -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>-$<CONFIG> ${EXTRA_CMAKE_FLAGS}
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 1
)
# Hide this external target (for ide users)
set_target_properties(${EXTERNAL_NAME} PROPERTIES FOLDER "hidden/externals")
ExternalProject_Get_Property(${EXTERNAL_NAME} INSTALL_DIR)
set(SUFFIXED_INSTALL_DIR "${INSTALL_DIR}-$<CONFIG>")
set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIRS ${SUFFIXED_INSTALL_DIR}/include CACHE PATH "List of SPIRV-Tools include directories")
if (UNIX)
set(LIB_PREFIX "lib")
set(LIB_EXT "a")
elseif (WIN32)
set(LIB_EXT "lib")
endif ()
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARIES ${SUFFIXED_INSTALL_DIR}/lib/SPIRV-Tools-opt.${LIB_EXT})
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARIES ${SUFFIXED_INSTALL_DIR}/lib/SPIRV-Tools-link.${LIB_EXT})
list(APPEND ${EXTERNAL_NAME_UPPER}_LIBRARIES ${SUFFIXED_INSTALL_DIR}/lib/SPIRV-Tools.${LIB_EXT})
set(${EXTERNAL_NAME_UPPER}_LIBRARIES ${${EXTERNAL_NAME_UPPER}_LIBRARIES} CACHE FILEPATH "Path to SPIRV-Tool libraries")

View file

@ -10,6 +10,10 @@ if (POLICY CMP0042)
cmake_policy(SET CMP0042 NEW) cmake_policy(SET CMP0042 NEW)
endif () endif ()
if (POLICY CMP0074)
cmake_policy(SET CMP0074 OLD)
endif ()
set_property(GLOBAL PROPERTY USE_FOLDERS ON) set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMakeTargets") set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMakeTargets")
# Hide automoc folders (for IDEs) # Hide automoc folders (for IDEs)

View file

@ -8,34 +8,132 @@
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html # See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
# #
# FIXME use the built tools
macro(AUTOSCRIBE_APPEND_QRC)
string(CONCAT SHADER_QRC "${SHADER_QRC}" "<file alias=\"${ARGV0}\">${ARGV1}</file>\n")
endmacro()
set(VULKAN_DIR $ENV{VULKAN_SDK})
set(GLSLANG_EXEC "${VULKAN_DIR}/Bin/glslangValidator.exe")
set(SPIRV_CROSS_EXEC "${VULKAN_DIR}/Bin/spirv-cross.exe")
set(SPIRV_OPT_EXEC "${VULKAN_DIR}/Bin/spirv-opt.exe")
set(GLSLC_EXEC "${VULKAN_DIR}/Bin/glslc.exe")
set(SCRIBE_EXEC "D:/scribe.exe")
macro(AUTOSCRIBE_PLATFORM_SHADER)
set(AUTOSCRIBE_PLATFORM_PATH "${ARGV0}")
string(REGEX MATCH "([0-9]+(es)?)(/stereo)?" PLATFORM_PATH_REGEX ${AUTOSCRIBE_PLATFORM_PATH})
set(AUTOSCRIBE_DIALECT "${CMAKE_MATCH_1}")
if (CMAKE_MATCH_3)
set(AUTOSCRIBE_VARIANT "stereo")
else()
set(AUTOSCRIBE_VARIANT "mono")
endif()
string(REGEX REPLACE "/" "\\\\" SOURCE_GROUP_PATH ${AUTOSCRIBE_PLATFORM_PATH})
set(SOURCE_GROUP_PATH "${SHADER_LIB}\\${SOURCE_GROUP_PATH}")
set(AUTOSCRIBE_DIALECT_HEADER "${AUTOSCRIBE_HEADER_DIR}/${AUTOSCRIBE_DIALECT}/header.glsl")
set(AUTOSCRIBE_VARIANT_HEADER "${AUTOSCRIBE_HEADER_DIR}/${AUTOSCRIBE_VARIANT}.glsl")
set(AUTOSCRIBE_OUTPUT_FILE "${SHADERS_DIR}/${SHADER_LIB}/${AUTOSCRIBE_PLATFORM_PATH}/${SHADER_NAME}.${SHADER_TYPE}")
AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/${AUTOSCRIBE_PLATFORM_PATH}/scribe" "${AUTOSCRIBE_OUTPUT_FILE}")
source_group(${SOURCE_GROUP_PATH} FILES ${AUTOSCRIBE_OUTPUT_FILE})
set_property(SOURCE ${AUTOSCRIBE_OUTPUT_FILE} PROPERTY SKIP_AUTOMOC ON)
list(APPEND SCRIBED_SHADERS ${AUTOSCRIBE_OUTPUT_FILE})
set(AUTOSCRIBE_SPIRV_FILE "${AUTOSCRIBE_OUTPUT_FILE}.spv")
# don't add unoptimized spirv to the QRC
#AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/${AUTOSCRIBE_PLATFORM_PATH}/spirv_unopt" "${AUTOSCRIBE_SPIRV_FILE}")
source_group(${SOURCE_GROUP_PATH} FILES ${AUTOSCRIBE_SPIRV_FILE})
set_property(SOURCE ${AUTOSCRIBE_SPIRV_FILE} PROPERTY SKIP_AUTOMOC ON)
list(APPEND SPIRV_SHADERS ${AUTOSCRIBE_SPIRV_FILE})
set(AUTOSCRIBE_SPIRV_OPT_FILE "${AUTOSCRIBE_OUTPUT_FILE}.opt.spv")
AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/${AUTOSCRIBE_PLATFORM_PATH}/spirv" "${AUTOSCRIBE_SPIRV_OPT_FILE}")
source_group(${SOURCE_GROUP_PATH} FILES ${AUTOSCRIBE_SPIRV_OPT_FILE})
set_property(SOURCE ${AUTOSCRIBE_SPIRV_OPT_FILE} PROPERTY SKIP_AUTOMOC ON)
list(APPEND SPIRV_SHADERS ${AUTOSCRIBE_SPIRV_OPT_FILE})
set(AUTOSCRIBE_SPIRV_GLSL_FILE "${AUTOSCRIBE_OUTPUT_FILE}.glsl")
AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/${AUTOSCRIBE_PLATFORM_PATH}/glsl" "${AUTOSCRIBE_SPIRV_GLSL_FILE}")
source_group(${SOURCE_GROUP_PATH} FILES ${AUTOSCRIBE_SPIRV_GLSL_FILE})
set_property(SOURCE ${AUTOSCRIBE_SPIRV_GLSL_FILE} PROPERTY SKIP_AUTOMOC ON)
list(APPEND SPIRV_SHADERS ${AUTOSCRIBE_SPIRV_GLSL_FILE})
set(AUTOSCRIBE_SPIRV_JSON_FILE "${AUTOSCRIBE_OUTPUT_FILE}.json")
AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/${AUTOSCRIBE_PLATFORM_PATH}/json" "${AUTOSCRIBE_SPIRV_JSON_FILE}")
source_group(${SOURCE_GROUP_PATH} FILES ${AUTOSCRIBE_SPIRV_JSON_FILE})
set_property(SOURCE ${AUTOSCRIBE_SPIRV_JSON_FILE} PROPERTY SKIP_AUTOMOC ON)
list(APPEND REFLECTED_SHADERS ${AUTOSCRIBE_SPIRV_JSON_FILE})
unset(SHADER_GEN_LINE)
list(APPEND SHADER_GEN_LINE ${AUTOSCRIBE_DIALECT})
list(APPEND SHADER_GEN_LINE ${AUTOSCRIBE_VARIANT})
file(RELATIVE_PATH TEMP_PATH ${CMAKE_SOURCE_DIR} ${SHADER_FILE})
list(APPEND SHADER_GEN_LINE ${TEMP_PATH})
file(RELATIVE_PATH TEMP_PATH ${CMAKE_SOURCE_DIR} ${AUTOSCRIBE_OUTPUT_FILE})
list(APPEND SHADER_GEN_LINE ${TEMP_PATH})
list(APPEND SHADER_GEN_LINE ${AUTOSCRIBE_SHADER_SEEN_LIBS})
string(CONCAT AUTOSCRIBE_SHADERGEN_COMMANDS "${AUTOSCRIBE_SHADERGEN_COMMANDS}" "${SHADER_GEN_LINE}\n")
# # FIXME need better mechanism for determining the include files
# add_custom_command(
# OUTPUT ${AUTOSCRIBE_OUTPUT_FILE}
# COMMAND ${SCRIBE_COMMAND} ${SHADER_FILE} ${SCRIBE_ARGS} -o ${AUTOSCRIBE_OUTPUT_FILE} -h ${AUTOSCRIBE_DIALECT_HEADER} -h ${AUTOSCRIBE_VARIANT_HEADER}
# DEPENDS ${SCRIBE_COMMAND} ${SHADER_FILE} ${AUTOSCRIBE_DIALECT_HEADER} ${AUTOSCRIBE_VARIANT_HEADER})
# # Generate the spirv file
# add_custom_command(
# OUTPUT ${AUTOSCRIBE_SPIRV_FILE}
# COMMAND ${GLSLANG_EXEC} -V110 -o ${AUTOSCRIBE_SPIRV_FILE} ${AUTOSCRIBE_OUTPUT_FILE}
# DEPENDS ${AUTOSCRIBE_OUTPUT_FILE} ${GLSLANG_EXEC})
# # Generate the optimized spirv file
# add_custom_command(
# OUTPUT ${AUTOSCRIBE_SPIRV_OPT_FILE}
# COMMAND ${SPIRV_OPT_EXEC} -O ${AUTOSCRIBE_SPIRV_FILE} -o ${AUTOSCRIBE_SPIRV_OPT_FILE}
# DEPENDS ${AUTOSCRIBE_SPIRV_FILE} ${SPIRV_OPT_EXEC})
# # Generate the optimized GLSL file
# add_custom_command(
# OUTPUT ${AUTOSCRIBE_SPIRV_GLSL_FILE}
# COMMAND ${SPIRV_CROSS_EXEC} ${SPIRV_CROSS_ARGS} ${AUTOSCRIBE_SPIRV_OPT_FILE} --output ${AUTOSCRIBE_SPIRV_GLSL_FILE}
# DEPENDS ${AUTOSCRIBE_SPIRV_OPT_FILE} ${SPIRV_CROSS_EXEC})
# # Generate the optimized spirv file
# add_custom_command(
# OUTPUT ${AUTOSCRIBE_SPIRV_JSON_FILE}
# COMMAND ${SPIRV_CROSS_EXEC} --reflect json ${AUTOSCRIBE_SPIRV_OPT_FILE} --output ${AUTOSCRIBE_SPIRV_JSON_FILE}
# DEPENDS ${AUTOSCRIBE_SPIRV_OPT_FILE} ${SPIRV_CROSS_EXEC})
endmacro()
macro(AUTOSCRIBE_SHADER) macro(AUTOSCRIBE_SHADER)
#
# Set the include paths
#
# FIXME base the include paths off of output from the scribe tool,
# instead of treating every previously seen shader as a possible header
unset(SHADER_INCLUDE_FILES) unset(SHADER_INCLUDE_FILES)
# Grab include files
foreach(includeFile ${ARGN}) foreach(includeFile ${ARGN})
list(APPEND SHADER_INCLUDE_FILES ${includeFile}) list(APPEND SHADER_INCLUDE_FILES ${includeFile})
endforeach() endforeach()
foreach(SHADER_INCLUDE ${SHADER_INCLUDE_FILES}) foreach(SHADER_INCLUDE ${SHADER_INCLUDE_FILES})
get_filename_component(INCLUDE_DIR ${SHADER_INCLUDE} PATH) get_filename_component(INCLUDE_DIR ${SHADER_INCLUDE} PATH)
list(APPEND SHADER_INCLUDES_PATHS ${INCLUDE_DIR}) list(APPEND SHADER_INCLUDES_PATHS ${INCLUDE_DIR})
endforeach() endforeach()
list(REMOVE_DUPLICATES SHADER_INCLUDES_PATHS)
#Extract the unique include shader paths
set(INCLUDES ${HIFI_LIBRARIES_SHADER_INCLUDE_FILES}) set(INCLUDES ${HIFI_LIBRARIES_SHADER_INCLUDE_FILES})
foreach(EXTRA_SHADER_INCLUDE ${INCLUDES}) foreach(EXTRA_SHADER_INCLUDE ${INCLUDES})
list(APPEND SHADER_INCLUDES_PATHS ${EXTRA_SHADER_INCLUDE}) list(APPEND SHADER_INCLUDES_PATHS ${EXTRA_SHADER_INCLUDE})
endforeach() endforeach()
list(REMOVE_DUPLICATES SHADER_INCLUDES_PATHS) list(REMOVE_DUPLICATES SHADER_INCLUDES_PATHS)
#message(ready for includes ${SHADER_INCLUDES_PATHS}) unset(SCRIBE_INCLUDES)
# make the scribe include arguments
set(SCRIBE_INCLUDES)
foreach(INCLUDE_PATH ${SHADER_INCLUDES_PATHS}) foreach(INCLUDE_PATH ${SHADER_INCLUDES_PATHS})
set(SCRIBE_INCLUDES ${SCRIBE_INCLUDES} -I ${INCLUDE_PATH}/) set(SCRIBE_INCLUDES ${SCRIBE_INCLUDES} -I ${INCLUDE_PATH}/)
endforeach() endforeach()
#
# Figure out the various output names
#
# Define the final name of the generated shader file # Define the final name of the generated shader file
get_filename_component(SHADER_NAME ${SHADER_FILE} NAME_WE) get_filename_component(SHADER_NAME ${SHADER_FILE} NAME_WE)
get_filename_component(SHADER_EXT ${SHADER_FILE} EXT) get_filename_component(SHADER_EXT ${SHADER_FILE} EXT)
@ -46,38 +144,36 @@ macro(AUTOSCRIBE_SHADER)
elseif(${SHADER_EXT} STREQUAL .slg) elseif(${SHADER_EXT} STREQUAL .slg)
set(SHADER_TYPE geom) set(SHADER_TYPE geom)
endif() endif()
file(MAKE_DIRECTORY "${SHADERS_DIR}/${SHADER_LIB}")
set(SHADER_TARGET "${SHADERS_DIR}/${SHADER_LIB}/${SHADER_NAME}.${SHADER_TYPE}")
file(TO_CMAKE_PATH "${SHADER_TARGET}" COMPILED_SHADER)
set(REFLECTED_SHADER "${COMPILED_SHADER}.json")
set(SCRIBE_ARGS -T ${SHADER_TYPE} -D GLPROFILE ${GLPROFILE} ${SCRIBE_INCLUDES} -o ${SHADER_TARGET} ${SHADER_FILE}) set(SCRIBE_ARGS -D GLPROFILE ${GLPROFILE} -T ${SHADER_TYPE} ${SCRIBE_INCLUDES} )
# Generate the frag/vert file # SHADER_SCRIBED -> the output of scribe
add_custom_command( set(SHADER_SCRIBED "${SHADERS_DIR}/${SHADER_LIB}/${SHADER_NAME}.${SHADER_TYPE}")
OUTPUT ${SHADER_TARGET}
COMMAND ${SCRIBE_COMMAND} ${SCRIBE_ARGS}
DEPENDS ${SHADER_FILE} ${SCRIBE_COMMAND} ${SHADER_INCLUDE_FILES})
# Generate the json reflection # SHADER_NAME_FILE -> a file containing the shader name and extension (useful for debugging and for
# FIXME move to spirv-cross for this task after we have spirv compatible shaders # determining the type of shader from the filename)
add_custom_command( set(SHADER_NAME_FILE "${SHADER_SCRIBED}.name")
OUTPUT ${REFLECTED_SHADER} file(TO_CMAKE_PATH "${SHADER_SCRIBED}" SHADER_SCRIBED)
COMMAND ${SHREFLECT_COMMAND} ${COMPILED_SHADER} file(WRITE "${SHADER_SCRIBED}.name" "${SHADER_NAME}.${SHADER_TYPE}")
DEPENDS ${SHREFLECT_DEPENDENCY} ${COMPILED_SHADER}) AUTOSCRIBE_APPEND_QRC("${SHADER_COUNT}/name" "${SHADER_NAME_FILE}")
#output the generated file name if (USE_GLES)
source_group("Compiled/${SHADER_LIB}" FILES ${COMPILED_SHADER}) set(SPIRV_CROSS_ARGS --version 310es)
set_property(SOURCE ${COMPILED_SHADER} PROPERTY SKIP_AUTOMOC ON) AUTOSCRIBE_PLATFORM_SHADER("310es")
list(APPEND COMPILED_SHADERS ${COMPILED_SHADER}) AUTOSCRIBE_PLATFORM_SHADER("310es/stereo")
else()
set(SPIRV_CROSS_ARGS --version 410 --no-420pack-extension)
AUTOSCRIBE_PLATFORM_SHADER("410")
AUTOSCRIBE_PLATFORM_SHADER("410/stereo")
if (NOT APPLE)
set(SPIRV_CROSS_ARGS --version 450)
AUTOSCRIBE_PLATFORM_SHADER("450")
AUTOSCRIBE_PLATFORM_SHADER("450/stereo")
endif()
endif()
source_group("Reflected/${SHADER_LIB}" FILES ${REFLECTED_SHADER})
list(APPEND REFLECTED_SHADERS ${REFLECTED_SHADER})
string(CONCAT SHADER_QRC "${SHADER_QRC}" "<file alias=\"${SHADER_COUNT}\">${COMPILED_SHADER}</file>\n")
string(CONCAT SHADER_QRC "${SHADER_QRC}" "<file alias=\"${SHADER_COUNT}_reflection\">${REFLECTED_SHADER}</file>\n")
string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "${SHADER_NAME} = ${SHADER_COUNT},\n") string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "${SHADER_NAME} = ${SHADER_COUNT},\n")
string(CONCAT SHADER_SHADERS_ARRAY "${SHADER_SHADERS_ARRAY}" "${SHADER_COUNT},\n")
MATH(EXPR SHADER_COUNT "${SHADER_COUNT}+1") MATH(EXPR SHADER_COUNT "${SHADER_COUNT}+1")
endmacro() endmacro()
@ -86,6 +182,8 @@ macro(AUTOSCRIBE_SHADER_LIB)
message(FATAL_ERROR "AUTOSCRIBE_SHADER_LIB can only be used by the shaders library") message(FATAL_ERROR "AUTOSCRIBE_SHADER_LIB can only be used by the shaders library")
endif() endif()
file(MAKE_DIRECTORY "${SHADERS_DIR}/${SHADER_LIB}")
list(APPEND HIFI_LIBRARIES_SHADER_INCLUDE_FILES "${CMAKE_SOURCE_DIR}/libraries/${SHADER_LIB}/src") list(APPEND HIFI_LIBRARIES_SHADER_INCLUDE_FILES "${CMAKE_SOURCE_DIR}/libraries/${SHADER_LIB}/src")
string(REGEX REPLACE "[-]" "_" SHADER_NAMESPACE ${SHADER_LIB}) string(REGEX REPLACE "[-]" "_" SHADER_NAMESPACE ${SHADER_LIB})
string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "namespace ${SHADER_NAMESPACE} {\n") string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "namespace ${SHADER_NAMESPACE} {\n")
@ -165,66 +263,103 @@ macro(AUTOSCRIBE_SHADER_LIB)
# Finish the shader enums # Finish the shader enums
string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "} // namespace ${SHADER_NAMESPACE}\n") string(CONCAT SHADER_ENUMS "${SHADER_ENUMS}" "} // namespace ${SHADER_NAMESPACE}\n")
#file(RELATIVE_PATH RELATIVE_LIBRARY_DIR_PATH ${CMAKE_CURRENT_SOURCE_DIR} "${HIFI_LIBRARY_DIR}")
#foreach(HIFI_LIBRARY ${ARGN})
#list(APPEND HIFI_LIBRARIES_SHADER_INCLUDE_FILES ${HIFI_LIBRARY_DIR}/${HIFI_LIBRARY}/src)
#endforeach()
#endif()
endmacro() endmacro()
macro(AUTOSCRIBE_SHADER_LIBS) macro(AUTOSCRIBE_SHADER_LIBS)
set(SCRIBE_COMMAND scribe) message(STATUS "Shader processing start")
set(SHREFLECT_COMMAND shreflect) set(AUTOSCRIBE_HEADER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/headers)
set(SHREFLECT_DEPENDENCY shreflect)
# Target dependant Custom rule on the SHADER_FILE
if (ANDROID)
set(GLPROFILE LINUX_GL)
set(SCRIBE_COMMAND ${NATIVE_SCRIBE})
set(SHREFLECT_COMMAND ${NATIVE_SHREFLECT})
unset(SHREFLECT_DEPENDENCY)
else()
if (APPLE)
set(GLPROFILE MAC_GL)
elseif(UNIX)
set(GLPROFILE LINUX_GL)
else()
set(GLPROFILE PC_GL)
endif()
endif()
# Start the shader IDs # Start the shader IDs
set(SHADER_COUNT 1)
set(SHADERS_DIR "${CMAKE_CURRENT_BINARY_DIR}/shaders") set(SHADERS_DIR "${CMAKE_CURRENT_BINARY_DIR}/shaders")
set(SHADER_ENUMS "")
file(MAKE_DIRECTORY ${SHADERS_DIR}) file(MAKE_DIRECTORY ${SHADERS_DIR})
set(SHADER_ENUMS "")
set(SHADER_COUNT 1)
# #
# Scribe generation & program defintiion # Scribe generation & program defintiion
# #
foreach(SHADER_LIB ${ARGN}) foreach(SHADER_LIB ${ARGN})
list(APPEND AUTOSCRIBE_SHADER_SEEN_LIBS ${SHADER_LIB})
AUTOSCRIBE_SHADER_LIB(${SHADER_LIB}) AUTOSCRIBE_SHADER_LIB(${SHADER_LIB})
endforeach() endforeach()
# Generate the library files # Generate the library files
configure_file( configure_file(
ShaderEnums.cpp.in ShaderEnums.cpp.in
${CMAKE_CURRENT_BINARY_DIR}/shaders/ShaderEnums.cpp) ${CMAKE_CURRENT_BINARY_DIR}/ShaderEnums.cpp)
configure_file( configure_file(
ShaderEnums.h.in ShaderEnums.h.in
${CMAKE_CURRENT_BINARY_DIR}/shaders/ShaderEnums.h) ${CMAKE_CURRENT_BINARY_DIR}/ShaderEnums.h)
configure_file(
shaders.qrc.in
${CMAKE_CURRENT_BINARY_DIR}/shaders.qrc)
set(AUTOSCRIBE_SHADER_LIB_SRC "${CMAKE_CURRENT_BINARY_DIR}/shaders/ShaderEnums.h;${CMAKE_CURRENT_BINARY_DIR}/shaders/ShaderEnums.cpp") configure_file(shaders.qrc.in ${CMAKE_CURRENT_BINARY_DIR}/shaders.qrc)
set(QT_RESOURCES_FILE ${CMAKE_CURRENT_BINARY_DIR}/shaders.qrc) list(APPEND QT_RESOURCES_FILE ${CMAKE_CURRENT_BINARY_DIR}/shaders.qrc)
list(APPEND AUTOSCRIBE_SHADER_HEADERS ${AUTOSCRIBE_HEADER_DIR}/mono.glsl ${AUTOSCRIBE_HEADER_DIR}/stereo.glsl)
list(APPEND AUTOSCRIBE_SHADER_HEADERS ${AUTOSCRIBE_HEADER_DIR}/450/header.glsl ${AUTOSCRIBE_HEADER_DIR}/410/header.glsl ${AUTOSCRIBE_HEADER_DIR}/310es/header.glsl)
source_group("Shader Headers" FILES ${AUTOSCRIBE_HEADER_DIR}/mono.glsl ${AUTOSCRIBE_HEADER_DIR}/stereo.glsl)
source_group("Shader Headers\\450" FILES ${AUTOSCRIBE_HEADER_DIR}/450/header.glsl)
source_group("Shader Headers\\410" FILES ${AUTOSCRIBE_HEADER_DIR}/410/header.glsl)
source_group("Shader Headers\\310es" FILES ${AUTOSCRIBE_HEADER_DIR}/310es/header.glsl)
list(APPEND AUTOSCRIBE_SHADER_LIB_SRC ${AUTOSCRIBE_SHADER_HEADERS})
list(APPEND AUTOSCRIBE_SHADER_LIB_SRC ${CMAKE_CURRENT_BINARY_DIR}/ShaderEnums.h ${CMAKE_CURRENT_BINARY_DIR}/ShaderEnums.cpp)
# Write the shadergen command list
set(AUTOSCRIBE_SHADERGEN_COMMANDS_FILE ${CMAKE_CURRENT_BINARY_DIR}/shadergen.txt)
file(WRITE ${AUTOSCRIBE_SHADERGEN_COMMANDS_FILE} "${AUTOSCRIBE_SHADERGEN_COMMANDS}")
# grab the SPIRV binaries we require
# note we don't use the normal ADD_DEPENDENCY_EXTERNAL_PROJECTS macro because only a custom command
# depends on these, not any of our build artifacts, so there's no valid target for the add_dependencies
# call in ADD_DEPENDENCY_EXTERNAL_PROJECTS to use
add_subdirectory(${EXTERNAL_PROJECT_DIR}/spirv_binaries ${EXTERNALS_BINARY_DIR}/spirv_binaries)
target_python()
# A custom python script which will generate
if (ANDROID)
add_custom_command(
OUTPUT ${SCRIBED_SHADERS} ${SPIRV_SHADERS} ${REFLECTED_SHADERS}
COMMENT "Generating/updating shaders"
COMMAND ${HIFI_PYTHON_EXEC} ${CMAKE_SOURCE_DIR}/tools/shadergen.py
--commands ${AUTOSCRIBE_SHADERGEN_COMMANDS_FILE}
--spirv-binaries ${SPIRV_BINARIES_DIR}
--scribe ${NATIVE_SCRIBE}
--build-dir ${CMAKE_CURRENT_BINARY_DIR}
--source-dir ${CMAKE_SOURCE_DIR}
DEPENDS ${AUTOSCRIBE_SHADER_HEADERS} spirv_binaries ${CMAKE_SOURCE_DIR}/tools/shadergen.py ${ALL_SCRIBE_SHADERS})
else()
add_custom_command(
OUTPUT ${SCRIBED_SHADERS} ${SPIRV_SHADERS} ${REFLECTED_SHADERS}
COMMENT "Generating/updating shaders"
COMMAND ${HIFI_PYTHON_EXEC} ${CMAKE_SOURCE_DIR}/tools/shadergen.py
--commands ${AUTOSCRIBE_SHADERGEN_COMMANDS_FILE}
--spirv-binaries ${SPIRV_BINARIES_DIR}
--scribe $<TARGET_FILE:scribe>
--build-dir ${CMAKE_CURRENT_BINARY_DIR}
--source-dir ${CMAKE_SOURCE_DIR}
DEPENDS ${AUTOSCRIBE_SHADER_HEADERS} scribe spirv_binaries ${CMAKE_SOURCE_DIR}/tools/shadergen.py ${ALL_SCRIBE_SHADERS})
endif()
add_custom_target(shadergen DEPENDS ${SCRIBED_SHADERS} ${SPIRV_SHADERS} ${REFLECTED_SHADERS})
set_target_properties(shadergen PROPERTIES FOLDER "Shaders")
# Custom targets required to force generation of the shaders via scribe # Custom targets required to force generation of the shaders via scribe
add_custom_target(scribe_shaders SOURCES ${ALL_SCRIBE_SHADERS}) add_custom_target(scribe_shaders SOURCES ${ALL_SCRIBE_SHADERS} ${AUTOSCRIBE_SHADER_HEADERS})
add_custom_target(compiled_shaders SOURCES ${COMPILED_SHADERS})
add_custom_target(reflected_shaders SOURCES ${REFLECTED_SHADERS})
set_target_properties(scribe_shaders PROPERTIES FOLDER "Shaders") set_target_properties(scribe_shaders PROPERTIES FOLDER "Shaders")
set_target_properties(compiled_shaders PROPERTIES FOLDER "Shaders")
add_custom_target(scribed_shaders SOURCES ${SCRIBED_SHADERS})
set_target_properties(scribed_shaders PROPERTIES FOLDER "Shaders")
add_dependencies(scribed_shaders shadergen)
add_custom_target(spirv_shaders SOURCES ${SPIRV_SHADERS})
set_target_properties(spirv_shaders PROPERTIES FOLDER "Shaders")
add_dependencies(spirv_shaders shadergen)
add_custom_target(reflected_shaders SOURCES ${REFLECTED_SHADERS})
set_target_properties(reflected_shaders PROPERTIES FOLDER "Shaders") set_target_properties(reflected_shaders PROPERTIES FOLDER "Shaders")
add_dependencies(reflected_shaders shadergen)
message(STATUS "Shader processing end")
endmacro() endmacro()

View file

@ -0,0 +1,22 @@
macro(TARGET_PYTHON)
if (NOT HIFI_PYTHON_EXEC)
# Find the python interpreter
if (CAME_VERSION VERSION_LESS 3.12)
# this logic is deprecated in CMake after 3.12
# FIXME eventually we should make 3.12 the min cmake verion and just use the Python3 find_package path
set(Python_ADDITIONAL_VERSIONS 3)
find_package(PythonInterp)
set(HIFI_PYTHON_VERSION ${PYTHON_VERSION_STRING})
set(HIFI_PYTHON_EXEC ${PYTHON_EXECUTABLE})
else()
# the new hotness
find_package(Python3)
set(HIFI_PYTHON_VERSION ${Python3_VERSION})
set(HIFI_PYTHON_EXEC ${Python3_EXECUTABLE})
endif()
if ((NOT HIFI_PYTHON_EXEC) OR (HIFI_PYTHON_VERSION VERSION_LESS 3.5))
message(FATAL_ERROR "Unable to locate Python interpreter 3.5 or higher")
endif()
endif()
endmacro()

View file

@ -0,0 +1,15 @@
macro(TARGET_SPIRV)
add_dependency_external_projects(spirv_cross)
target_link_libraries(${TARGET_NAME} ${SPIRV_CROSS_LIBRARIES})
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${SPIRV_CROSS_INCLUDE_DIRS})
# spirv-tools requires spirv-headers
add_dependency_external_projects(spirv_headers)
add_dependency_external_projects(spirv_tools)
target_link_libraries(${TARGET_NAME} ${SPIRV_TOOLS_LIBRARIES})
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${SPIRV_TOOLS_INCLUDE_DIRS})
add_dependency_external_projects(glslang)
target_link_libraries(${TARGET_NAME} ${GLSLANG_LIBRARIES})
target_include_directories(${TARGET_NAME} SYSTEM PRIVATE ${GLSLANG_INCLUDE_DIRS})
endmacro()

View file

@ -0,0 +1,10 @@
#
# Created by Bradley Austin Davis on 2016/02/16
#
# Distributed under the Apache License, Version 2.0.
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
#
macro(TARGET_SPIRV_BINARIES)
add_dependency_external_projects(spirv_binaries)
endmacro()

View file

@ -0,0 +1,19 @@
#
# Created by Bradley Austin Davis on 2016/02/16
#
# Distributed under the Apache License, Version 2.0.
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
#
macro(TARGET_VULKAN)
find_package(Vulkan)
if (Vulkan_FOUND)
add_definitions(-DHAVE_VULKAN)
target_include_directories(${TARGET_NAME} PRIVATE ${Vulkan_INCLUDE_DIRS})
target_link_libraries(${TARGET_NAME} ${Vulkan_LIBRARIES})
add_dependency_external_projects(glslang)
target_include_directories(${TARGET_NAME} PRIVATE ${GLSLANG_INCLUDE_DIRS})
target_link_libraries(${TARGET_NAME} ${GLSLANG_LIBRARIES})
endif()
endmacro()

View file

@ -1,7 +1,7 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../../qml/controls-uit"
import stylesUit 1.0 import "../../qml/styles-uit"
Item { Item {
id: menu id: menu

View file

@ -1,7 +1,7 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../../qml/controls-uit"
import stylesUit 1.0 import "../../qml/styles-uit"
Item { Item {
id: root id: root

View file

@ -1,7 +1,7 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../../qml/controls-uit"
import stylesUit 1.0 import "../../qml/styles-uit"
import "../../qml/dialogs" import "../../qml/dialogs"
QtObject { QtObject {

View file

@ -133,7 +133,7 @@
{ "from": "Keyboard.W", "when": "!Keyboard.Control", "to": "Actions.LONGITUDINAL_FORWARD" }, { "from": "Keyboard.W", "when": "!Keyboard.Control", "to": "Actions.LONGITUDINAL_FORWARD" },
{ "from": "Keyboard.S", "when": "!Keyboard.Control", "to": "Actions.LONGITUDINAL_BACKWARD" }, { "from": "Keyboard.S", "when": "!Keyboard.Control", "to": "Actions.LONGITUDINAL_BACKWARD" },
{ "from": "Keyboard.Shift", "when": ["!Keyboard.Left", "!Keyboard.Right"], "to": "Actions.SPRINT" }, { "from": "Keyboard.Shift", "when": ["!Keyboard.Left", "!Keyboard.Right"], "to": "Actions.SPRINT" },
{ "from": "Keyboard.C", "to": "Actions.VERTICAL_DOWN" }, { "from": "Keyboard.C", "when": "!Keyboard.Control", "to": "Actions.VERTICAL_DOWN" },
{ "from": "Keyboard.Left", "when": "Keyboard.Shift", "to": "Actions.LATERAL_LEFT" }, { "from": "Keyboard.Left", "when": "Keyboard.Shift", "to": "Actions.LATERAL_LEFT" },
{ "from": "Keyboard.Right", "when": "Keyboard.Shift", "to": "Actions.LATERAL_RIGHT" }, { "from": "Keyboard.Right", "when": "Keyboard.Shift", "to": "Actions.LATERAL_RIGHT" },
{ "from": "Keyboard.Up", "when": "Application.CameraFirstPerson", "to": "Actions.LONGITUDINAL_FORWARD" }, { "from": "Keyboard.Up", "when": "Application.CameraFirstPerson", "to": "Actions.LONGITUDINAL_FORWARD" },

View file

@ -10,8 +10,8 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import stylesUit 1.0 import "styles-uit"
import controlsUit 1.0 as HifiControlsUit import "controls-uit" as HifiControlsUit
Item { Item {
id: root id: root

View file

@ -2,9 +2,9 @@ import QtQuick 2.5
import QtWebChannel 1.0 import QtWebChannel 1.0
import QtWebEngine 1.5 import QtWebEngine 1.5
import controlsUit 1.0 import "controls-uit"
import "styles" as HifiStyles import "styles" as HifiStyles
import stylesUit 1.0 import "styles-uit"
import "windows" import "windows"
ScrollingWindow { ScrollingWindow {

View file

@ -10,8 +10,8 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import stylesUit 1.0 import "styles-uit"
import controlsUit 1.0 as HifiControls import "controls-uit" as HifiControls
Item { Item {
id: root id: root

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import Hifi 1.0 as Hifi import Hifi 1.0 as Hifi
import controlsUit 1.0 import "controls-uit"
import "windows" as Windows import "windows" as Windows
Windows.ScrollingWindow { Windows.ScrollingWindow {

View file

@ -12,9 +12,9 @@ import QtQuick 2.3
import "windows" as Windows import "windows" as Windows
import "controls" import "controls"
import controlsUit 1.0 as Controls import "controls-uit" as Controls
import "styles" import "styles"
import stylesUit 1.0 import "styles-uit"
Windows.Window { Windows.Window {
id: root; id: root;

View file

@ -11,8 +11,8 @@
import Hifi 1.0 import Hifi 1.0
import QtQuick 2.4 import QtQuick 2.4
import controlsUit 1.0 import "controls-uit"
import stylesUit 1.0 import "styles-uit"
import "windows" import "windows"
import "LoginDialog" import "LoginDialog"

View file

@ -13,8 +13,8 @@ import QtQuick 2.4
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 as OriginalStyles import QtQuick.Controls.Styles 1.4 as OriginalStyles
import controlsUit 1.0 import "../../controls-uit"
import stylesUit 1.0 import "../../styles-uit"
Item { Item {
id: linkAccountBody id: linkAccountBody

View file

@ -13,8 +13,8 @@ import QtQuick 2.4
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 as OriginalStyles import QtQuick.Controls.Styles 1.4 as OriginalStyles
import controlsUit 1.0 import "../../controls-uit"
import stylesUit 1.0 import "../../styles-uit"
Item { Item {
id: signupBody id: signupBody

View file

@ -12,8 +12,8 @@ import Hifi 1.0
import QtQuick 2.4 import QtQuick 2.4
import QtQuick.Controls.Styles 1.4 as OriginalStyles import QtQuick.Controls.Styles 1.4 as OriginalStyles
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: completeProfileBody id: completeProfileBody

View file

@ -13,9 +13,8 @@ import QtQuick 2.7
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 as OriginalStyles import QtQuick.Controls.Styles 1.4 as OriginalStyles
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: linkAccountBody id: linkAccountBody
clip: true clip: true

View file

@ -12,8 +12,8 @@ import Hifi 1.0
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls.Styles 1.4 as OriginalStyles import QtQuick.Controls.Styles 1.4 as OriginalStyles
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: signInBody id: signInBody

View file

@ -12,8 +12,8 @@ import Hifi 1.0
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: signupBody id: signupBody

View file

@ -12,8 +12,8 @@ import Hifi 1.0
import QtQuick 2.4 import QtQuick 2.4
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: usernameCollisionBody id: usernameCollisionBody

View file

@ -11,8 +11,8 @@
import Hifi 1.0 import Hifi 1.0
import QtQuick 2.4 import QtQuick 2.4
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: welcomeBody id: welcomeBody

View file

@ -13,8 +13,8 @@ import QtWebEngine 1.1
import QtWebChannel 1.0 import QtWebChannel 1.0
import "windows" as Windows import "windows" as Windows
import controlsUit 1.0 as Controls import "controls-uit" as Controls
import stylesUit 1.0 import "styles-uit"
Windows.ScrollingWindow { Windows.ScrollingWindow {
id: root id: root

View file

@ -2,9 +2,9 @@ import QtQuick 2.3
import "windows" as Windows import "windows" as Windows
import "controls" import "controls"
import controlsUit 1.0 as Controls import "controls-uit" as Controls
import "styles" import "styles"
import stylesUit 1.0 import "styles-uit"
Windows.Window { Windows.Window {
id: root id: root

View file

@ -3,9 +3,9 @@ import QtWebChannel 1.0
import QtWebEngine 1.5 import QtWebEngine 1.5
import "controls" import "controls"
import controlsUit 1.0 as HifiControls import "controls-uit" as HifiControls
import "styles" as HifiStyles import "styles" as HifiStyles
import stylesUit 1.0 import "styles-uit"
import "windows" import "windows"
Item { Item {

View file

@ -4,9 +4,9 @@ import QtQuick.Controls 1.3
import QtQuick.Controls.Styles 1.3 import QtQuick.Controls.Styles 1.3
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import controlsUit 1.0 import "controls-uit"
import "styles" as HifiStyles import "styles" as HifiStyles
import stylesUit 1.0 import "styles-uit"
import "windows" import "windows"
ScrollingWindow { ScrollingWindow {

View file

@ -1,6 +1,6 @@
// //
// ImageButton.qml // ImageButton.qml
// interface/resources/qml/controlsUit // interface/resources/qml/controls-uit
// //
// Created by Gabriel Calero & Cristian Duarte on 12 Oct 2017 // Created by Gabriel Calero & Cristian Duarte on 12 Oct 2017
// Copyright 2017 High Fidelity, Inc. // Copyright 2017 High Fidelity, Inc.
@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Layouts 1.3 import QtQuick.Layouts 1.3
import "../stylesUit" as HifiStyles import "../styles-uit" as HifiStyles
Item { Item {
id: button id: button
@ -79,4 +79,4 @@ Item {
} }
} }
] ]
} }

View file

@ -13,8 +13,8 @@ import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Styles 1.4
import QtQuick.XmlListModel 2.0 import QtQuick.XmlListModel 2.0
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
import "../windows" import "../windows"
import "../hifi/models" import "../hifi/models"

View file

@ -12,7 +12,7 @@ import QtQuick 2.7
import QtQuick.Controls 2.3 as Original import QtQuick.Controls 2.3 as Original
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0
import "../stylesUit" import "../styles-uit"
Original.Button { Original.Button {
id: control; id: control;

View file

@ -11,7 +11,7 @@
import QtQuick 2.2 import QtQuick 2.2
import QtQuick.Controls 2.2 as Original import QtQuick.Controls 2.2 as Original
import "../stylesUit" import "../styles-uit"
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0

View file

@ -11,8 +11,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import "../stylesUit" import "../styles-uit"
import "." as HiFiControls import "../controls-uit" as HiFiControls
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0
CheckBox { CheckBox {

View file

@ -11,8 +11,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
FocusScope { FocusScope {
id: root id: root

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import "../stylesUit" import "../styles-uit"
Column { Column {
property string name: "Content Section" property string name: "Content Section"

View file

@ -12,8 +12,8 @@ import QtQuick 2.9
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
Item { Item {
id: root; id: root;

View file

@ -12,7 +12,7 @@ import QtQuick 2.7
import QtQuick.Controls 2.2 as Original import QtQuick.Controls 2.2 as Original
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0
import "../stylesUit" import "../styles-uit"
Original.Button { Original.Button {
id: control id: control

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
Item { Item {
id: root id: root

View file

@ -9,7 +9,7 @@
// //
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
Item { Item {
id: imageBox id: imageBox

View file

@ -10,7 +10,7 @@
import QtQuick 2.7 import QtQuick 2.7
import "../stylesUit" import "../styles-uit"
RalewaySemiBold { RalewaySemiBold {
HifiConstants { id: hifi } HifiConstants { id: hifi }

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "." as HifiControls
HifiControls.Button { HifiControls.Button {

View file

@ -11,8 +11,8 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Controls 2.2 as Original import QtQuick.Controls 2.2 as Original
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0

View file

@ -11,7 +11,7 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import "../stylesUit" import "../styles-uit"
ScrollBar { ScrollBar {
visible: size < 1.0 visible: size < 1.0

View file

@ -9,7 +9,7 @@
// //
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
Item { Item {
property int colorScheme: 0; property int colorScheme: 0;

View file

@ -11,8 +11,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
Slider { Slider {
id: slider id: slider

View file

@ -11,8 +11,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
SpinBox { SpinBox {
id: spinBox id: spinBox

View file

@ -11,7 +11,7 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.2 as Original import QtQuick.Controls 2.2 as Original
import "../stylesUit" import "../styles-uit"
Item { Item {
id: rootSwitch; id: rootSwitch;

View file

@ -13,7 +13,7 @@ import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Styles 1.4
import QtQuick.Controls 2.3 as QQC2 import QtQuick.Controls 2.3 as QQC2
import "../stylesUit" import "../styles-uit"
TableView { TableView {
id: tableView id: tableView

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import "../stylesUit" import "../styles-uit"
Column { Column {
property string name: "Content Section" property string name: "Content Section"

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
Rectangle { Rectangle {

View file

@ -10,8 +10,8 @@
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
Item { Item {
property string icon: "" property string icon: ""

View file

@ -9,7 +9,7 @@
// //
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
TextEdit { TextEdit {

View file

@ -12,8 +12,8 @@ import QtQuick 2.5
import QtQuick.Controls 1.4 import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Styles 1.4
import "../stylesUit" import "../styles-uit"
import "." as HifiControls import "../controls-uit" as HifiControls
TextField { TextField {
id: textField id: textField

View file

@ -15,7 +15,7 @@ import QtQuick.Controls.Styles 1.4
import QtQuick.Controls 2.2 as QQC2 import QtQuick.Controls 2.2 as QQC2
import "../stylesUit" import "../styles-uit"
TreeView { TreeView {
id: treeView id: treeView

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import "../stylesUit" import "../styles-uit"
Item { Item {
id: root id: root

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Controls 2.2 as Original import QtQuick.Controls 2.2 as Original
import "../stylesUit" import "../styles-uit"
Original.Button { Original.Button {
id: control id: control

View file

@ -3,6 +3,7 @@ import QtQuick.Controls 2.2 as Original
import "." import "."
import "../styles" import "../styles"
import "../controls-uit"
Original.Button { Original.Button {
id: control id: control

View file

@ -4,7 +4,7 @@ import QtWebChannel 1.0
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import stylesUit 1.0 as StylesUIt import "../styles-uit" as StylesUIt
Item { Item {
id: flick id: flick

View file

@ -10,7 +10,7 @@
import Hifi 1.0 import Hifi 1.0
import QtQuick 2.4 import QtQuick 2.4
import stylesUit 1.0 import "../styles-uit"
Rectangle { Rectangle {
property alias text: label.text property alias text: label.text

View file

@ -1,5 +1,5 @@
import QtQuick 2.7 import QtQuick 2.7
import controlsUit 1.0 as HiFiControls import "../controls-uit" as HiFiControls
Item { Item {
id: root id: root

View file

@ -1,8 +1,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtWebEngine 1.5 import QtWebEngine 1.5
import controlsUit 1.0 as HiFiControls import "../controls-uit" as HiFiControls
import "../styles" as HifiStyles import "../styles" as HifiStyles
import stylesUit 1.0 import "../styles-uit"
Item { Item {
id: root id: root

View file

@ -1,5 +1,5 @@
import QtQuick 2.7 import QtQuick 2.7
import controlsUit 1.0 as HiFiControls import "../controls-uit" as HiFiControls
Item { Item {
width: parent !== null ? parent.width : undefined width: parent !== null ? parent.width : undefined

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import Qt.labs.settings 1.0 import Qt.labs.settings 1.0
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "assetDialog" import "assetDialog"

View file

@ -12,8 +12,8 @@ import QtQuick 2.7;
import QtQuick.Dialogs 1.2 as OriginalDialogs; import QtQuick.Dialogs 1.2 as OriginalDialogs;
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import controlsUit 1.0 import "../controls-uit";
import stylesUit 1.0 import "../styles-uit";
import "../windows"; import "../windows";
ModalWindow { ModalWindow {

View file

@ -16,8 +16,8 @@ import QtQuick.Controls 1.4 as QQC1
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import ".." import ".."
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "fileDialog" import "fileDialog"

View file

@ -11,8 +11,8 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Dialogs 1.2 as OriginalDialogs import QtQuick.Dialogs 1.2 as OriginalDialogs
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "messageDialog" import "messageDialog"

View file

@ -10,8 +10,8 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 as HifiControls import "../controls-uit" as HifiControls
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "preferences" import "preferences"

View file

@ -11,8 +11,8 @@
import QtQuick 2.7 import QtQuick 2.7
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
ModalWindow { ModalWindow {

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "assetDialog" import "assetDialog"

View file

@ -12,8 +12,8 @@ import QtQuick 2.7
import QtQuick.Dialogs 1.2 as OriginalDialogs import QtQuick.Dialogs 1.2 as OriginalDialogs
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
TabletModalWindow { TabletModalWindow {

View file

@ -16,8 +16,8 @@ import QtQuick.Controls 1.4 as QQC1
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import ".." import ".."
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "fileDialog" import "fileDialog"

View file

@ -11,8 +11,8 @@
import Hifi 1.0 import Hifi 1.0
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "../LoginDialog" import "../LoginDialog"

View file

@ -11,8 +11,8 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Dialogs 1.2 as OriginalDialogs import QtQuick.Dialogs 1.2 as OriginalDialogs
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
import "messageDialog" import "messageDialog"

View file

@ -12,8 +12,8 @@ import QtQuick 2.7
import QtQuick.Dialogs 1.2 as OriginalDialogs import QtQuick.Dialogs 1.2 as OriginalDialogs
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import controlsUit 1.0 import "../controls-uit"
import stylesUit 1.0 import "../styles-uit"
import "../windows" import "../windows"
TabletModalWindow { TabletModalWindow {

View file

@ -12,8 +12,8 @@ import QtQuick 2.7
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtQuick.Controls 1.5 as QQC1 import QtQuick.Controls 1.5 as QQC1
import controlsUit 1.0 import "../../controls-uit"
import stylesUit 1.0 import "../../styles-uit"
import "../fileDialog" import "../fileDialog"

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../../controls-uit"
ComboBox { ComboBox {
id: root id: root

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import QtQuick.Dialogs 1.2 import QtQuick.Dialogs 1.2
import controlsUit 1.0 import "../../controls-uit"
Button { Button {
property var dialog; property var dialog;

View file

@ -10,7 +10,7 @@
import QtQuick 2.5 import QtQuick 2.5
import controlsUit 1.0 import "../../controls-uit"
import "../../hifi/tablet/tabletWindows/preferences" import "../../hifi/tablet/tabletWindows/preferences"
Preference { Preference {

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import "../../dialogs" import "../../dialogs"
import controlsUit 1.0 import "../../controls-uit"
Preference { Preference {
id: root id: root

View file

@ -11,7 +11,7 @@
import QtQuick 2.5 import QtQuick 2.5
import TabletScriptingInterface 1.0 import TabletScriptingInterface 1.0
import controlsUit 1.0 import "../../controls-uit"
Preference { Preference {
id: root id: root

Some files were not shown because too many files have changed in this diff Show more