diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 620e8c05ce..ac441af2c8 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -7,10 +7,10 @@ Metrics/ @Unity-Technologies/multiplayer-tools /com.unity.netcode.gameobjects/Runtime/Transports/ @Unity-Technologies/multiplayer-workflows /com.unity.netcode.gameobjects/Tests/Editor/Transports/ @Unity-Technologies/multiplayer-workflows /com.unity.netcode.gameobjects/Tests/Runtime/Transports/ @Unity-Technologies/multiplayer-workflows -*.asmdef @chrispope @miniwolf @NoelStephensUnity @fluong6 -package.json @chrispope @miniwolf @NoelStephensUnity @fluong6 -AssemblyInfo.cs @chrispope @miniwolf @NoelStephensUnity @fluong6 -.editorconfig @chrispope @miniwolf @NoelStephensUnity @fluong6 -.gitignore @chrispope @miniwolf @NoelStephensUnity @fluong6 -.github/ @chrispope @miniwolf @NoelStephensUnity @fluong6 -.yamato/ @chrispope @miniwolf @NoelStephensUnity @fluong6 +*.asmdef @chrispope @miniwolf +package.json @chrispope @miniwolf +AssemblyInfo.cs @chrispope @miniwolf +.editorconfig @chrispope @miniwolf +.gitignore @chrispope @miniwolf +.github/ @chrispope @miniwolf +.yamato/ @chrispope @miniwolf diff --git a/.github/workflows/conventional-pr.yml b/.github/workflows/conventional-pr.yml index ec3a6512e3..6090fe2ab2 100644 --- a/.github/workflows/conventional-pr.yml +++ b/.github/workflows/conventional-pr.yml @@ -6,6 +6,7 @@ on: branches: - develop - develop-2.0.0 + # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" diff --git a/.yamato/_triggers.yml b/.yamato/_triggers.yml index 6bafa5ff1b..e225500f59 100644 --- a/.yamato/_triggers.yml +++ b/.yamato/_triggers.yml @@ -64,7 +64,7 @@ pull_request_trigger: - "develop" - "develop-2.0.0" - "/release\/.*/" - + # Currently, we need to have a trigger to updated badges # Only package badges currently exist badges_test_trigger: diff --git a/.yamato/project-standards.yml b/.yamato/project-standards.yml index 64cf1ecb3e..c4335cc50a 100644 --- a/.yamato/project-standards.yml +++ b/.yamato/project-standards.yml @@ -4,7 +4,7 @@ standards_{{ projects.first.name }}: name: Standards Check {{ projects.first.name }} agent: type: Unity::VM - image: desktop/logging-testing-linux:v0.1.2-926285 + image: package-ci/ubuntu-20.04:v4 flavor: b1.large commands: - dotnet --version diff --git a/.yamato/project.metafile b/.yamato/project.metafile index c0ec992fc0..191842fd5e 100644 --- a/.yamato/project.metafile +++ b/.yamato/project.metafile @@ -1,5 +1,5 @@ -validation_editor: 2021.3 -mobile_validation_editor: 2021.3 +validation_editor: 6000.0 +mobile_validation_editor: 6000.0 # Platforms that will be tested. The first entry in this array will also # be used for validation @@ -42,9 +42,7 @@ projects: - name: com.unity.netcode.gameobjects path: com.unity.netcode.gameobjects test_editors: - - 2021.3 - - 2022.2 - - 2023.1 + - 6000.0 - trunk - name: minimalproject path: minimalproject @@ -55,23 +53,22 @@ projects: - name: com.unity.netcode.gameobjects path: com.unity.netcode.gameobjects test_editors: - - 2021.3 + - 6000.0 - name: testproject-tools-integration path: testproject-tools-integration validate: false publish: false has_tests: true test_editors: - - 2021.3 - - 2022.2 + - 6000.0 - trunk # Package dependencies dependencies: - name: com.unity.transport - version: 2.0.0-pre.2 + version: 2.2.1 test_editors: - - 2022.2 + - 6000.0 - trunk # Scripting backends used by Standalone Playmode Tests diff --git a/.yamato/wrench/api-validation-jobs.yml b/.yamato/wrench/api-validation-jobs.yml new file mode 100644 index 0000000000..03dbad8669 --- /dev/null +++ b/.yamato/wrench/api-validation-jobs.yml @@ -0,0 +1,60 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module. + +# upm-ci validation tests for API Validation - netcode.gameobjects - 6000.0 - windows (6000.0 - Windows). +api_validation_-_netcode_gameobjects_-_6000_0_-_windows: + name: API Validation - netcode.gameobjects - 6000.0 - windows + agent: + image: package-ci/win10:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/PackageJsonCondersor.py + timeout: 1 + retries: 0 + - command: upm-ci package test -u .Editor --package-path com.unity.netcode.gameobjects --type vetting-tests || exit 0 + timeout: 30 + retries: 0 + - command: python PythonScripts/parse_upm_ci_results.py --package-path=com.unity.netcode.gameobjects + timeout: 2 + retries: 0 + after: + - command: cmd.exe /c "curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.bat --output run_standalone_instability_detection-latest.bat --retry 5 || exit 0" + - command: cmd.exe /c "run_standalone_instability_detection-latest.bat 0.5.0 || exit 0" + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + browsable: onNonSuccess + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + triggers: + expression: push.branch match "^release/.*" + cancel_old_ci: true + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + diff --git a/.yamato/wrench/package-pack-jobs.yml b/.yamato/wrench/package-pack-jobs.yml new file mode 100644 index 0000000000..0dfb1e44cf --- /dev/null +++ b/.yamato/wrench/package-pack-jobs.yml @@ -0,0 +1,36 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module. + +# Pack and Sign Netcode for GameObjects +package_pack_-_netcode_gameobjects: + name: Package Pack - netcode.gameobjects + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: upm-ci package pack --package-path com.unity.netcode.gameobjects + - command: cp upm-ci~/packages/packages.json upm-ci~/packages/com.unity.netcode.gameobjects_packages.json + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + packages: + paths: + - upm-ci~/packages/**/* + variables: + UPMCI_ACK_LARGE_PACKAGE: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + diff --git a/.yamato/wrench/preview-a-p-v.yml b/.yamato/wrench/preview-a-p-v.yml new file mode 100644 index 0000000000..9ad7ec7b24 --- /dev/null +++ b/.yamato/wrench/preview-a-p-v.yml @@ -0,0 +1,366 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module. + +# Parent Preview APV Job. +all_preview_apv_jobs: + name: All Preview APV Jobs + dependencies: + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_0_-_macos + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_0_-_ubuntu + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_0_-_windows + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_1_-_macos + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_1_-_ubuntu + - path: .yamato/wrench/preview-a-p-v.yml#preview_apv_-_6000_1_-_windows + triggers: + expression: push.branch match "^release/.*" + cancel_old_ci: true + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.0 manifest (MacOS). +preview_apv_-_6000_0_-_macos: + name: Preview APV - 6000.0 - macos + agent: + image: package-ci/macos-13:default + type: Unity::VM::osx + flavor: b1.xlarge + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.0 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: echo 'Skipping Editor Manifest Validator as it is only supported on Windows' + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh macos 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.0 manifest (Ubuntu). +preview_apv_-_6000_0_-_ubuntu: + name: Preview APV - 6000.0 - ubuntu + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.0 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: echo 'Skipping Editor Manifest Validator as it is only supported on Windows' + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.0 manifest (Windows). +preview_apv_-_6000_0_-_windows: + name: Preview APV - 6000.0 - windows + agent: + image: package-ci/win10:default + type: Unity::VM + flavor: b1.large + commands: + - command: reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.0 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: python PythonScripts/editor_manifest_validator.py --version=6000.0 --wrench-config=.yamato/wrench/wrench_config.json + after: + - command: cmd.exe /c "curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.bat --output run_standalone_instability_detection-latest.bat --retry 5 || exit 0" + - command: cmd.exe /c "run_standalone_instability_detection-latest.bat 0.5.0 || exit 0" + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + interpreter: powershell + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.1 manifest (MacOS). +preview_apv_-_6000_1_-_macos: + name: Preview APV - 6000.1 - macos + agent: + image: package-ci/macos-13:default + type: Unity::VM::osx + flavor: b1.xlarge + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.1 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: echo 'Skipping Editor Manifest Validator as it is only supported on Windows' + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh macos 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.1 manifest (Ubuntu). +preview_apv_-_6000_1_-_ubuntu: + name: Preview APV - 6000.1 - ubuntu + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.1 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: echo 'Skipping Editor Manifest Validator as it is only supported on Windows' + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Functional tests for dependents found in the latest 6000.1 manifest (Windows). +preview_apv_-_6000_1_-_windows: + name: Preview APV - 6000.1 - windows + agent: + image: package-ci/win10:default + type: Unity::VM + flavor: b1.large + commands: + - command: reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm + timeout: 20 + retries: 10 + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: python PythonScripts/preview_apv.py --wrench-config=.yamato/wrench/wrench_config.json --editor-version=6000.1 --testsuite=editor,playmode --artifacts-path=PreviewApvArtifacts~ + - command: python PythonScripts/editor_manifest_validator.py --version=6000.1 --wrench-config=.yamato/wrench/wrench_config.json + after: + - command: cmd.exe /c "curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.bat --output run_standalone_instability_detection-latest.bat --retry 5 || exit 0" + - command: cmd.exe /c "run_standalone_instability_detection-latest.bat 0.5.0 || exit 0" + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + logs: + paths: + - '*.log' + - '*.xml' + - upm-ci~/test-results/**/* + - upm-ci~/temp/*/Logs/** + - upm-ci~/temp/*/Library/*.log + - upm-ci~/temp/*/*.log + - upm-ci~/temp/Builds/*.log + packages: + paths: + - upm-ci~/packages/**/* + PreviewAPVResults: + paths: + - PreviewApvArtifacts~/** + - APVTest/**/manifest.json + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + interpreter: powershell + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + diff --git a/.yamato/wrench/promotion-jobs.yml b/.yamato/wrench/promotion-jobs.yml new file mode 100644 index 0000000000..d3f5d202d2 --- /dev/null +++ b/.yamato/wrench/promotion-jobs.yml @@ -0,0 +1,172 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module. + +# Publish Dry Run for netcode.gameobjects to https://artifactory-slo.bf.unity3d.com/artifactory/api/npm/upm-npm +publish_dry_run_netcode_gameobjects: + name: Publish Dry Run netcode.gameobjects + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/report_valid_editors.py + - command: python PythonScripts/ignore_existing_package_failure.py + - command: python PythonScripts/run_publish_if_any_package_left.py --dry-run + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + logs: + paths: + - results/UTR/**/* + browsable: onNonSuccess + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_macos + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-macos + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-macos + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_ubuntu + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-ubuntu + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-ubuntu + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_windows + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-windows + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-windows + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_macos + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-macos + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-macos + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_ubuntu + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-ubuntu + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-ubuntu + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_windows + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-windows + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-windows + unzip: true + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + triggers: + expression: push.branch match "^release/.*" + cancel_old_ci: true + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + +# Publish for netcode.gameobjects to https://artifactory-slo.bf.unity3d.com/artifactory/api/npm/upm-npm +publish_netcode_gameobjects: + name: Publish netcode.gameobjects + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/report_valid_editors.py + - command: python PythonScripts/ignore_existing_package_failure.py + - command: python PythonScripts/run_publish_if_any_package_left.py + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + logs: + paths: + - results/UTR/**/* + browsable: onNonSuccess + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_macos + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-macos + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-macos + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_ubuntu + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-ubuntu + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-ubuntu + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_0_-_windows + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.0-windows + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.0-windows + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_macos + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-macos + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-macos + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_ubuntu + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-ubuntu + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-ubuntu + unzip: true + - path: .yamato/wrench/validation-jobs.yml#validate_-_netcode_gameobjects_-_6000_1_-_windows + specific_options: + UTR: + location: results/UTR/validate-netcode.gameobjects-6000.1-windows + unzip: true + pvp-results: + location: results/pvp/validate-netcode.gameobjects-6000.1-windows + unzip: true + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + diff --git a/.yamato/wrench/recipe-regeneration.yml b/.yamato/wrench/recipe-regeneration.yml new file mode 100644 index 0000000000..03a579082d --- /dev/null +++ b/.yamato/wrench/recipe-regeneration.yml @@ -0,0 +1,30 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module. + +# Test that Generated Wrench Jobs are up to date. +test_-_wrench_jobs_up_to_date: + name: Test - Wrench Jobs up to date + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: dotnet run --project Tools\CI\NGO.Cookbook.csproj + - command: |- + if [ -n "$(git status --porcelain)" ]; then + git status + echo "Your repo is not clean - diff output:" + git diff + echo "You must run recipe generation after updating recipes to update the generated YAML!" + echo "Run 'dotnet run --project Tools\CI\NGO.Cookbook.csproj' from the root of your repository to regenerate all job definitions created by wrench." + exit 1 + fi + variables: + DOTNET_CLI_TELEMETRY_OPTOUT: 1 + triggers: + expression: push.branch match "^release/.*" + cancel_old_ci: true + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + diff --git a/.yamato/wrench/validation-jobs.yml b/.yamato/wrench/validation-jobs.yml new file mode 100644 index 0000000000..db48d0b2bc --- /dev/null +++ b/.yamato/wrench/validation-jobs.yml @@ -0,0 +1,405 @@ +# Auto-generated by Recipe Engine, do not modify manually. +# This job is generated by the wrench recipe engine module, see find the docs here: http://Go/ii2fb + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.0 - macos (6000.0 - MacOS). +validate_-_netcode_gameobjects_-_6000_0_-_macos: + name: Validate - netcode.gameobjects - 6000.0 - macos + agent: + image: package-ci/macos-13:default + type: Unity::VM::osx + flavor: b1.xlarge + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh macos 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.0 - ubuntu (6000.0 - Ubuntu). +validate_-_netcode_gameobjects_-_6000_0_-_ubuntu: + name: Validate - netcode.gameobjects - 6000.0 - ubuntu + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.0 - windows (6000.0 - Windows). +validate_-_netcode_gameobjects_-_6000_0_-_windows: + name: Validate - netcode.gameobjects - 6000.0 - windows + agent: + image: package-ci/win10:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.0 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner.exe --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: cmd.exe /c "curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.bat --output run_standalone_instability_detection-latest.bat --retry 5 || exit 0" + - command: cmd.exe /c "run_standalone_instability_detection-latest.bat 0.5.0 || exit 0" + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.1 - macos (6000.1 - MacOS). +validate_-_netcode_gameobjects_-_6000_1_-_macos: + name: Validate - netcode.gameobjects - 6000.1 - macos + agent: + image: package-ci/macos-13:default + type: Unity::VM::osx + flavor: b1.xlarge + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh macos 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.1 - ubuntu (6000.1 - Ubuntu). +validate_-_netcode_gameobjects_-_6000_1_-_ubuntu: + name: Validate - netcode.gameobjects - 6000.1 - ubuntu + agent: + image: package-ci/ubuntu-20.04:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.sh --output run_standalone_instability_detection-latest.sh --retry 5 || exit 0 + - command: bash ./run_standalone_instability_detection-latest.sh ubuntu 0.5.0 || exit 0 + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + +# PVP Editor and Playmode tests for Validate - netcode.gameobjects - 6000.1 - windows (6000.1 - Windows). +validate_-_netcode_gameobjects_-_6000_1_-_windows: + name: Validate - netcode.gameobjects - 6000.1 - windows + agent: + image: package-ci/win10:default + type: Unity::VM + flavor: b1.large + commands: + - command: curl https://artifactory.prd.it.unity3d.com/artifactory/stevedore-unity-internal/wrench-localapv/1-2-54_4ed3929f39f0279ecefec81a437d0eb42e21a4f9c6469a88d31e8f3d764709fe.zip -o wrench-localapv.zip + - command: 7z x -aoa wrench-localapv.zip + - command: pip install semver requests --index-url https://artifactory-slo.bf.unity3d.com/artifactory/api/pypi/pypi/simple + - command: python PythonScripts/print_machine_info.py + - command: unity-downloader-cli -u 6000.1 -c Editor --fast + timeout: 10 + retries: 3 + - command: upm-pvp create-test-project test-netcode.gameobjects --packages "upm-ci~/packages/*.tgz" --unity .Editor + timeout: 10 + retries: 1 + - command: echo No internal packages to add. + - command: upm-pvp test --unity .Editor --packages "upm-ci~/packages/*.tgz" --results upm-ci~/pvp + timeout: 20 + retries: 0 + - command: echo Skipping check for PVP-160-1 as there is a bug on Windows. https://jira.unity3d.com/browse/PETS-1462 + - command: upm-pvp require "rme PVP-160-1 supported" --results upm-ci~/pvp --exemptions upm-ci~/pvp/failures.json + timeout: 10 + retries: 0 + - command: UnifiedTestRunner.exe --testproject=test-netcode.gameobjects --editor-location=.Editor --reruncount=1 --clean-library-on-rerun --artifacts_path=artifacts --suite=Editor --suite=Playmode "--ff={ops.upmpvpevidence.enable=true}" + timeout: 30 + retries: 1 + after: + - command: cmd.exe /c "curl -s https://artifactory-slo.bf.unity3d.com/artifactory/automation-and-tooling/infrastructure-instability-detection/standalone/setup/run_standalone_instability_detection-latest.bat --output run_standalone_instability_detection-latest.bat --retry 5 || exit 0" + - command: cmd.exe /c "run_standalone_instability_detection-latest.bat 0.5.0 || exit 0" + timeout: 10 + retries: 1 + artifacts: + Crash Dumps: + paths: + - CrashDumps/** + packages: + paths: + - upm-ci~/packages/**/* + pvp-results: + paths: + - upm-ci~/pvp/**/* + browsable: onDemand + UTR: + paths: + - '*.log' + - '*.xml' + - artifacts/**/* + - test-netcode.gameobjects/Logs/** + - test-netcode.gameobjects/Library/*.log + - test-netcode.gameobjects/*.log + - test-netcode.gameobjects/Builds/*.log + - build/test-results/** + browsable: onDemand + dependencies: + - path: .yamato/wrench/package-pack-jobs.yml#package_pack_-_netcode_gameobjects + variables: + UPMPVP_ACK_UPMPVP_DOES_NO_API_VALIDATION: 1 + UPMPVP_CONTEXT_WRENCH: 0.10.31.0 + metadata: + Job Maintainers: '#rm-packageworks' + Wrench: 0.10.31.0 + labels: + - Packages:netcode.gameobjects + diff --git a/.yamato/wrench/wrench_config.json b/.yamato/wrench/wrench_config.json new file mode 100644 index 0000000000..2ef87583c3 --- /dev/null +++ b/.yamato/wrench/wrench_config.json @@ -0,0 +1,37 @@ +{ + "schema_version": 0.7, + "packages": { + "com.unity.netcode.gameobjects": { + "directory": "com.unity.netcode.gameobjects/", + "prePackCommands": [], + "preTestCommands": { + "MacOS": [], + "Ubuntu": [], + "Windows": [] + }, + "InternalOnly": false, + "NeverPublish": false, + "MaxEditorVersion": "", + "coverageEnabled": false, + "coverageCommands": [ + "generateAdditionalMetrics;generateHtmlReport;assemblyFilters:ASSEMBLY_NAME;pathReplacePatterns:@*,,**/PackageCache/,;sourcePaths:YAMATO_SOURCE_DIR/Packages;" + ], + "dependantsToIgnoreInPreviewApv": {} + } + }, + "releasing_packages": [ + "com.unity.netcode.gameobjects" + ], + "jobs_to_monitor": { + "com.unity.netcode.gameobjects": [ + ".yamato/wrench/api-validation-jobs.yml#api_validation_-_netcode_gameobjects_-_6000_0_-_windows", + ".yamato/wrench/preview-a-p-v.yml#all_preview_apv_jobs", + ".yamato/wrench/promotion-jobs.yml#publish_dry_run_netcode_gameobjects" + ] + }, + "publishing_job": ".yamato/wrench/promotion-jobs.yml#publish_netcode_gameobjects", + "branch_pattern": "ReleaseSlash", + "wrench_version": "0.10.31.0", + "pvp_exemption_path": ".yamato/wrench/pvp-exemptions.json", + "cs_project_path": "Tools\\CI\\NGO.Cookbook.csproj" +} \ No newline at end of file diff --git a/Examples/CharacterControllerMovingBodies/.gitignore b/Examples/CharacterControllerMovingBodies/.gitignore new file mode 100644 index 0000000000..2800399634 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/.gitignore @@ -0,0 +1,83 @@ +# 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/ +/[Uu]ser[Ss]ettings/ + +# MemoryCaptures can get excessive in size. +# They also could contain extremely sensitive data +/[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 + +# Unity3D generated meta files +*.pidb.meta +*.pdb.meta +*.mdb.meta + +# Unity3D generated file on crash reports +sysinfo.txt + +# Builds +*.apk +*.aab +*.unitypackage + +# Crashlytics generated file +crashlytics-build.properties + +# Packed Addressables +/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin* + +# Temporary auto-generated Android Assets +/[Aa]ssets/[Ss]treamingAssets/aa.meta +/[Aa]ssets/[Ss]treamingAssets/aa/* +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json.meta + +# Secrets +*.pem +*.pem.meta + +InitTestScene* + +boot.config +SceneTemplateSettings.json +*BurstAotSettings*.json diff --git a/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset b/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset new file mode 100644 index 0000000000..073f4484e8 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset @@ -0,0 +1,31 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e651dbb3fbac04af2b8f5abf007ddc23, type: 3} + m_Name: DefaultNetworkPrefabs + m_EditorClassIdentifier: + IsDefault: 1 + List: + - Override: 0 + Prefab: {fileID: 2522762726852386808, guid: 380c984d34fc8664c8f53fc1d8733a25, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: 89b57e576a8d47643b2dbd45b1f8cab1, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 3439633038736912633, guid: 398aad09d8b2a47eba664a076763cdcc, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset.meta b/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset.meta new file mode 100644 index 0000000000..fee27b3ade --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/DefaultNetworkPrefabs.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa82390bfdde2564f828b8e5be375282 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/com.unity.netcode.gameobjects/Samples.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials.meta similarity index 77% rename from com.unity.netcode.gameobjects/Samples.meta rename to Examples/CharacterControllerMovingBodies/Assets/Materials.meta index 5a5e3b286a..463de70d61 100644 --- a/com.unity.netcode.gameobjects/Samples.meta +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d48e3f2a8be084f8aae6470ef87063d9 +guid: d5b7ad71451c27e4291295cfffc10328 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat new file mode 100644 index 0000000000..b6fd2dd9a1 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocal + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.8980392, g: 0.039215658, b: 0.7682729, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat.meta new file mode 100644 index 0000000000..35e4d565be --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocal.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 45fc555bc05bfee4ab8b0d536799ecee +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat new file mode 100644 index 0000000000..c44172e7a7 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocalNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.78592235, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat.meta new file mode 100644 index 0000000000..3a26e43d98 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildLocalNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: affef70511a06dd46b8f52636020af4a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat new file mode 100644 index 0000000000..0c2bf4b187 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorld + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.3783494, g: 0.039215658, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat.meta new file mode 100644 index 0000000000..9a00ded8c6 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorld.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 15d0bda12a233964086aee5c0c357e24 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat new file mode 100644 index 0000000000..86b27eb5c9 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorldNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.8980392, b: 0.09095798, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat.meta new file mode 100644 index 0000000000..5ab7ff2e72 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ChildWorldNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a5e199307b2e0894294d9c8bee99a691 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat new file mode 100644 index 0000000000..ed5ed117c3 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Direction + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8962264, g: 0.52830994, b: 0.038047332, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat.meta new file mode 100644 index 0000000000..c93791fac0 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/Direction.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5324c76c2bab7344badd5ea27a40bcb5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat new file mode 100644 index 0000000000..9009817e26 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridBlue + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 0.5438323, g: 0.88474977, b: 0.9528302, a: 1} + - _EmissionColor: {r: 0, g: 0.6988592, b: 1, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat.meta new file mode 100644 index 0000000000..b8caf3cbac --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridBlue.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1448a5da57523ce4bbc377143e02fe3c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat new file mode 100644 index 0000000000..38a4e9808b --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridOrange + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 0.49475378, b: 0, a: 1} + - _EmissionColor: {r: 0.990566, g: 0.48359674, b: 0.378471, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat.meta new file mode 100644 index 0000000000..bf2873069e --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridOrange.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2e2c886f4af8e304eb9a1e2e50d023b3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat new file mode 100644 index 0000000000..f44981f387 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridPattern + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _GLOSSYREFLECTIONS_OFF + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: a092c5fa8c60ed04aa1d72555f1740bc, type: 3} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0.785 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0.254717, g: 0.23188858, b: 0.23188858, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat.meta new file mode 100644 index 0000000000..cbca0f4485 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridPattern.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 42c4a0ad1f9d67a45b12f68697321aad +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat new file mode 100644 index 0000000000..7345253099 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2624353793879203111 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridWhite + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _EMISSION + - _GLOSSYREFLECTIONS_OFF + - _NORMALMAP + m_InvalidKeywords: [] + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 2800000, guid: b94463ba36040ec4082132c54dd1bbad, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 2800000, guid: 8bf2cf149563066489e749ea032dbca7, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e71f43865e91e6b418bd0d67be2445dc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 1 + - _Glossiness: 0.477 + - _GlossyReflections: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _UVSec: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} + - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat.meta new file mode 100644 index 0000000000..4559482bba --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/GridWhite.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a53ba8919fa78c14caac473c7e7ce7d3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat new file mode 100644 index 0000000000..252ea1a0ed --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Ground + m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.14769986, g: 0.1509434, b: 0.1473834, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat.meta new file mode 100644 index 0000000000..6dbcac16d3 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/Ground.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c73b921ea39f4344a19c2d1c7d6b314 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat new file mode 100644 index 0000000000..e7f5729956 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat @@ -0,0 +1,80 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlayerMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat.meta new file mode 100644 index 0000000000..1ceca58536 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/PlayerMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 44e292334941fe148b997ca2b01b5789 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat b/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat new file mode 100644 index 0000000000..5161ac9b8e --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat @@ -0,0 +1,134 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ShaderGraphGrid_01_Mat + m_Shader: {fileID: -6465566751694194690, guid: b8d7679189d4a5940af46004f3870920, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - Texture2D_C5E3E723: + m_Texture: {fileID: 2800000, guid: d4d6919451fe3e24388816386a6d15a4, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Grid_Normal_Map: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: d9c0dd5cdac07b145be73329e489869a, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0.004, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - Boolean_35A71344: 0 + - Boolean_7A5F3F39: 1 + - Boolean_7AC8D832: 1 + - Vector1_3402D67A: 1 + - Vector1_3655428E: 5 + - Vector1_5B05FA1F: 0.062 + - Vector1_6B67A8FF: -20 + - Vector1_7810F718: 1 + - Vector1_B6126E6E: 0.335 + - Vector1_CA7D5F3: 30 + - Vector1_D5FBE925: 0.3 + - Vector1_F2A922B4: 1.73 + - Vector1_F5FD9210: 33.9 + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.119 + - _GlossyReflections: 1 + - _Grid_Normal_Strength: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 0 + - _Parallax: 0.02 + - _QueueControl: 0 + - _QueueOffset: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - Color_2B671050: {r: 0.23202202, g: 0.6245157, b: 0.745283, a: 0} + - Color_30A0CA2F: {r: 0.02745098, g: 1, b: 0.7565653, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] +--- !u!114 &6450197988115792188 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 7 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta b/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta new file mode 100644 index 0000000000..efd03db61f --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Materials/ShaderGraphGrid_01_Mat.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7be68f3cac640fd40a7663ac97380a9c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/com.unity.netcode.gameobjects/Components/Messages.meta b/Examples/CharacterControllerMovingBodies/Assets/Models.meta similarity index 77% rename from com.unity.netcode.gameobjects/Components/Messages.meta rename to Examples/CharacterControllerMovingBodies/Assets/Models.meta index fcf8b73d3a..21910d8d7a 100644 --- a/com.unity.netcode.gameobjects/Components/Messages.meta +++ b/Examples/CharacterControllerMovingBodies/Assets/Models.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a9db1d18fa0117f4da5e8e65386b894a +guid: bd50c879f39d9d94b92706513b4f56ef folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx new file mode 100644 index 0000000000..2fa479b052 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx.meta b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx.meta new file mode 100644 index 0000000000..2ebb0bb69b --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_100x100x200_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 4c31b0c9eb3dcdf4890cd904bf277cdf +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx new file mode 100644 index 0000000000..ac24ee24d6 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx.meta b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx.meta new file mode 100644 index 0000000000..f9aabd0c03 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Models/Ramp_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 5d8449220d5795b448a4cee5cbde4b56 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx b/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx new file mode 100644 index 0000000000..7ec9d4bb74 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx.meta b/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx.meta new file mode 100644 index 0000000000..75c9997470 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Models/Tunnel_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 63fcabcd345d556498e09f748683088e +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx b/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx new file mode 100644 index 0000000000..0bfc7f6493 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx.meta b/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx.meta new file mode 100644 index 0000000000..15452589e0 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Models/Wall_Mesh.fbx.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 34560503bf9d61046b252db98a8cf770 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs.meta new file mode 100644 index 0000000000..c867cd3a70 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4b97118ef11ec3347bc72b8d681e094b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial new file mode 100644 index 0000000000..5aeefdde15 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicsMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Floor + serializedVersion: 2 + m_DynamicFriction: 2.5 + m_StaticFriction: 2 + m_Bounciness: 0 + m_FrictionCombine: 3 + m_BounceCombine: 2 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial.meta new file mode 100644 index 0000000000..a55550d94a --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Floor.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2c574f6ade946d94f9ec0183e3bc4579 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab new file mode 100644 index 0000000000..ca1d2b414e --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab @@ -0,0 +1,960 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2819221948576051598 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8815849029736207364} + - component: {fileID: 3042900316038666559} + - component: {fileID: 1437858011576020080} + - component: {fileID: 8264281895793262867} + m_Layer: 0 + m_Name: PlayerBallChild1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8815849029736207364 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3042900316038666559 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1437858011576020080 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &8264281895793262867 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2819221948576051598} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 2 + RotationSpeed: 1.5 +--- !u!1 &3959781627078922459 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 394823601370723229} + - component: {fileID: 1530657457870194733} + - component: {fileID: 8179170832269307327} + - component: {fileID: 8231288296501785146} + m_Layer: 0 + m_Name: PlayerBallPrime + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &394823601370723229 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.25, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8815849029736207364} + - {fileID: 7136463849438099188} + - {fileID: 5551906405844277949} + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1530657457870194733 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8179170832269307327 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a53ba8919fa78c14caac473c7e7ce7d3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &8231288296501785146 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3959781627078922459} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &3973637191948275635 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8797190989880117053} + - component: {fileID: 1956256172504790623} + - component: {fileID: 2171905566637076429} + m_Layer: 0 + m_Name: ParentedText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8797190989880117053 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1.91, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1956256172504790623 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!102 &2171905566637076429 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3973637191948275635} + m_Text: "Hello \nWorld" + m_OffsetZ: 0 + m_CharacterSize: 0.15 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 20 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!1 &7133739606324490315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5551906405844277949} + - component: {fileID: 1792842414970541714} + - component: {fileID: 6744917009213370100} + - component: {fileID: 6571689152541036907} + m_Layer: 0 + m_Name: PlayerBallChild3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5551906405844277949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 1} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1792842414970541714 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6744917009213370100 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &6571689152541036907 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7133739606324490315} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 1 + ExpandNetworkTransform: 1 + RotationAxis: 1 + RotationSpeed: 1.5 +--- !u!1 &7484009658662050968 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7136463849438099188} + - component: {fileID: 8767029715903736994} + - component: {fileID: 186997181429634371} + - component: {fileID: 4424954456620528769} + m_Layer: 0 + m_Name: PlayerBallChild2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7136463849438099188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 394823601370723229} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8767029715903736994 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &186997181429634371 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &4424954456620528769 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7484009658662050968} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 792d7ce524eb358469373fe12babef88, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 0 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.001 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.01 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 1 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 1 + ExpandPlayerBallMotion: 0 + ExpandNetworkTransform: 1 + RotationAxis: 0 + RotationSpeed: 1.5 +--- !u!1 &8837707216906300506 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3256164543801378073} + - component: {fileID: 5138046720836505354} + - component: {fileID: 1048758437790369019} + - component: {fileID: 3232232006964461868} + m_Layer: 0 + m_Name: Direction + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3256164543801378073 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.529, z: 0.36} + m_LocalScale: {x: 0.5, y: 0.35, z: 0.5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8921789205124766473} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5138046720836505354 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1048758437790369019 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 5324c76c2bab7344badd5ea27a40bcb5, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &3232232006964461868 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8837707216906300506} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 0 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8921789205124766477 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8921789205124766473} + - component: {fileID: 8921789205124766472} + - component: {fileID: 8921789205124766479} + - component: {fileID: 8921789205124766478} + - component: {fileID: 3121348088455848731} + - component: {fileID: 8921789205124766474} + - component: {fileID: 871737567343884637} + - component: {fileID: 571224925323069553} + - component: {fileID: 2509722539211228765} + m_Layer: 0 + m_Name: PlayerNoRigidbody + m_TagString: Player + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8921789205124766473 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3256164543801378073} + - {fileID: 8797190989880117053} + - {fileID: 394823601370723229} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8921789205124766472 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8921789205124766479 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 44e292334941fe148b997ca2b01b5789, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!136 &8921789205124766478 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0, y: 0, z: 0} +--- !u!143 &3121348088455848731 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Height: 2 + m_Radius: 0.5 + m_SlopeLimit: 45 + m_StepOffset: 0.3 + m_SkinWidth: 0.08 + m_MinMoveDistance: 0.001 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &8921789205124766474 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 2508530451 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 0 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 0 + AllowOwnerToParent: 1 +--- !u!114 &871737567343884637 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e5128237997be649af0cc87dd0eb563, type: 3} + m_Name: + m_EditorClassIdentifier: + ApplyColorToChildren: 1 + IgnoreChildren: + - {fileID: 8837707216906300506} +--- !u!114 &571224925323069553 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5ce25b0b3f15e6446a88a85787c2f94a, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.01 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.1 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 0 + SwitchTransformSpaceWhenParented: 1 + Interpolate: 1 + SlerpPosition: 0 + ExpandMoverScriptNoRigidbody: 0 + ExpandNetworkTransform: 1 + SpawnRadius: 10 + Increment: 1 + RotationSpeed: 1.26 + MovementSpeed: 15 + JumpSpeed: 10 + AirSpeedFactor: 0.35 + Gravity: -9.8 +--- !u!65 &2509722539211228765 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8921789205124766477} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1.4, z: 1} + m_Center: {x: 0, y: 0, z: 0} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab.meta new file mode 100644 index 0000000000..9199f72759 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/PlayerNoRigidbody.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8ae02ac62e2067144b8ff06d48aeb47a +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab new file mode 100644 index 0000000000..edcdf3071c --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab @@ -0,0 +1,111 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8924170145835402666 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8111781018561290000} + - component: {fileID: 5133274882688487605} + - component: {fileID: 6978882906433643647} + - component: {fileID: 894093325933845257} + m_Layer: 0 + m_Name: Ramp_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &8111781018561290000 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5133274882688487605 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &6978882906433643647 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &894093325933845257 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8924170145835402666} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: -8512782951310809723, guid: 426a2785f8a940049aac2c246661cf09, type: 3} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab.meta new file mode 100644 index 0000000000..14e8009f6b --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Ramp_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7ab2ae375810b5641a36d327b9f022cf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial new file mode 100644 index 0000000000..f76e8e1f5a --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicsMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: RotatingBody + serializedVersion: 2 + m_DynamicFriction: 2.5 + m_StaticFriction: 2 + m_Bounciness: 0 + m_FrictionCombine: 3 + m_BounceCombine: 2 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial.meta new file mode 100644 index 0000000000..4650ebf5b0 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c16e8d98094923449892b28a230ddb9c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab new file mode 100644 index 0000000000..73c04c02fa --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab @@ -0,0 +1,1138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &755183729697733696 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 522841341294848418} + - component: {fileID: 6376943934387906635} + - component: {fileID: 4793038284696412839} + m_Layer: 0 + m_Name: WallPusherA_Inner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &522841341294848418 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.05, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &6376943934387906635 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &4793038284696412839 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 755183729697733696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 1 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &1070469363212057228 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4967607898511807569} + - component: {fileID: 4081511419635538304} + - component: {fileID: 3264090684553753291} + - component: {fileID: 2074962368930179783} + - component: {fileID: 2659845886479429441} + - component: {fileID: 365707591732078506} + m_Layer: 0 + m_Name: Tunnel_Prefab (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &4967607898511807569 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + serializedVersion: 2 + m_LocalRotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!33 &4081511419635538304 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &3264090684553753291 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &2074962368930179783 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.25225586} + m_Center: {x: 0, y: -5.4553292e-15, z: 2.3838842} +--- !u!65 &2659845886479429441 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.19382703, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1314733, y: -1.7786642e-15, z: 1.1251621} +--- !u!65 &365707591732078506 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1070469363212057228} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.16720939, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1123942, y: -1.893427e-15, z: 1.1332378} +--- !u!1 &1227036625448805321 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6179387521291227856} + - component: {fileID: 6043205804484853104} + - component: {fileID: 7583159525709273484} + - component: {fileID: 8095289646395249164} + m_Layer: 0 + m_Name: Ramp_PrefabA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &6179387521291227856 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.25, z: 7.993} + m_LocalScale: {x: 8, y: 0.5, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3394725634534525932} + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6043205804484853104 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &7583159525709273484 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &8095289646395249164 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1227036625448805321} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!1 &1451894099667441545 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3394725634534525932} + - component: {fileID: 2385627259374300527} + m_Layer: 0 + m_Name: BridgeGap + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3394725634534525932 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1451894099667441545} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 1, z: -0.000000021855694, w: 0} + m_LocalPosition: {x: 0, y: 0.14, z: -1.0100002} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6179387521291227856} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &2385627259374300527 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1451894099667441545} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.1 + m_Height: 1.15 + m_Direction: 0 + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &2406660182425334495 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1877966211327071347} + - component: {fileID: 3334163744623252575} + - component: {fileID: 5776191766534439988} + - component: {fileID: 6535282611511474253} + - component: {fileID: 8963258823839906869} + - component: {fileID: 7304575238635320140} + m_Layer: 0 + m_Name: Tunnel_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &1877966211327071347 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 4.96, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!33 &3334163744623252575 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &5776191766534439988 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &6535282611511474253 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.258326} + m_Center: {x: 0, y: 5.4121983e-15, z: 2.3808491} +--- !u!65 &8963258823839906869 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2527809, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1249466, y: 1.7786642e-15, z: 1.1251621} +--- !u!65 &7304575238635320140 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2406660182425334495} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.26525307, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1187105, y: 1.893427e-15, z: 1.1332378} +--- !u!1 &2492174073242389836 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6182591213277846585} + - component: {fileID: 3395949877673187758} + m_Layer: 0 + m_Name: BridgeGap (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6182591213277846585 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2492174073242389836} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -1, z: 0.000000021855694, w: 0} + m_LocalPosition: {x: 0, y: 0.14, z: -1.01} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7826839884382864090} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &3395949877673187758 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2492174073242389836} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.1 + m_Height: 1.15 + m_Direction: 0 + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &3038314618705458857 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3570252208687936609} + - component: {fileID: 4156819582579138816} + - component: {fileID: 2806575150631930745} + m_Layer: 0 + m_Name: WallPusherB_Inner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &3570252208687936609 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4.07, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &4156819582579138816 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &2806575150631930745 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3038314618705458857} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 0 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &4405129256840456534 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5628673131512617452} + - component: {fileID: 1065561891622964567} + - component: {fileID: 4468158207537748033} + m_Layer: 0 + m_Name: WallPusherA_Outer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &5628673131512617452 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.89, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1065561891622964567 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &4468158207537748033 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4405129256840456534} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 0 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} +--- !u!1 &5415449980466536476 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4291553105548296809} + - component: {fileID: 8134939553748259768} + - component: {fileID: 3307166493715739449} + - component: {fileID: 850162744905636139} + m_Layer: 0 + m_Name: RotatingBody + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4291553105548296809 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1877966211327071347} + - {fileID: 4967607898511807569} + - {fileID: 522841341294848418} + - {fileID: 5628673131512617452} + - {fileID: 3570252208687936609} + - {fileID: 5389614242607036533} + - {fileID: 6179387521291227856} + - {fileID: 7826839884382864090} + - {fileID: 2053800158975384476} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &8134939553748259768 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 8.023605, y: 8.144613, z: 20.106205} + m_Center: {x: -0.03800702, y: 4.1726913, z: -0.02903366} +--- !u!114 &3307166493715739449 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 1921503253 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 2 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 1 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 +--- !u!114 &850162744905636139 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5415449980466536476} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: + AuthorityMode: 1 + TickSyncChildren: 1 + UseUnreliableDeltas: 0 + SyncPositionX: 1 + SyncPositionY: 1 + SyncPositionZ: 1 + SyncRotAngleX: 1 + SyncRotAngleY: 1 + SyncRotAngleZ: 1 + SyncScaleX: 1 + SyncScaleY: 1 + SyncScaleZ: 1 + PositionThreshold: 0.1 + RotAngleThreshold: 0.01 + ScaleThreshold: 0.1 + UseQuaternionSynchronization: 1 + UseQuaternionCompression: 0 + UseHalfFloatPrecision: 0 + InLocalSpace: 0 + SwitchTransformSpaceWhenParented: 0 + Interpolate: 1 + SlerpPosition: 0 + RotationSpeed: 0.25 + RotateDirection: 0 + ZAxisMove: 0 +--- !u!1 &5463907175177238004 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2053800158975384476} + - component: {fileID: 2688281628964240045} + m_Layer: 0 + m_Name: Point Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2053800158975384476 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5463907175177238004} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 6.54, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &2688281628964240045 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5463907175177238004} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 2 + m_Color: {r: 0.9622642, g: 0.9622642, b: 0.9622642, a: 1} + m_Intensity: 2 + m_Range: 20 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!1 &6529740436184164063 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7826839884382864090} + - component: {fileID: 2797882924116045225} + - component: {fileID: 1097787484049525257} + - component: {fileID: 570708159460268413} + m_Layer: 0 + m_Name: Ramp_PrefabB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &7826839884382864090 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 1, z: 0, w: 0} + m_LocalPosition: {x: 0, y: 0.25, z: -7.993} + m_LocalScale: {x: 8, y: 0.5, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6182591213277846585} + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} +--- !u!33 &2797882924116045225 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!23 &1097787484049525257 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!64 &570708159460268413 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6529740436184164063} + m_Material: {fileID: 13400000, guid: c16e8d98094923449892b28a230ddb9c, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 5 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: -6265776187016570482, guid: 4c31b0c9eb3dcdf4890cd904bf277cdf, type: 3} +--- !u!1 &8002386465640125644 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5389614242607036533} + - component: {fileID: 4101224782146625552} + - component: {fileID: 6895917012766152111} + m_Layer: 0 + m_Name: WallPusherB_Outer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &5389614242607036533 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4.83, y: 2.27, z: 0} + m_LocalScale: {x: 4, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4291553105548296809} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &4101224782146625552 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2, y: 2.25, z: 6} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &6895917012766152111 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8002386465640125644} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2c40721ca0fd31645a742e5ad0e0cdc5, type: 3} + m_Name: + m_EditorClassIdentifier: + PushDirection: 1 + ToCenterDirOrig: {x: 0, y: 0, z: 0} + ToCenterDirCalc: {x: 0, y: 0, z: 0} + ToCenterDirTrans: {x: 0, y: 0, z: 0} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab.meta new file mode 100644 index 0000000000..d22d47036e --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/RotatingBody.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0123d7125346c274da00b38e950a266b +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab new file mode 100644 index 0000000000..f636c60a54 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab @@ -0,0 +1,794 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &910007655143077103 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6283120762215196916} + - component: {fileID: 3739510624437302406} + m_Layer: 0 + m_Name: CornerBumper (1) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6283120762215196916 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 910007655143077103} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.9244967, z: -0, w: -0.38119} + m_LocalPosition: {x: -29.72, y: 0.98, z: 29.82} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -224.815, z: 0} +--- !u!65 &3739510624437302406 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 910007655143077103} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &1854705290947220173 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2290144462706082272} + - component: {fileID: 4559046433245738380} + m_Layer: 0 + m_Name: CornerBumper (2) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2290144462706082272 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1854705290947220173} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.3771283, z: -0, w: -0.92616105} + m_LocalPosition: {x: -29.53, y: 0.98, z: -29.71} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -315.688, z: 0} +--- !u!65 &4559046433245738380 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1854705290947220173} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &4012615691354089848 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691354089844} + - component: {fileID: 4012615691354089845} + - component: {fileID: 4012615691354089850} + - component: {fileID: 4012615691354089851} + m_Layer: 0 + m_Name: Floor + m_TagString: Floor + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691354089844 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: -0.50000006, z: 0} + m_LocalScale: {x: 60, y: 1, z: 60} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691354089845 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691354089850 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 42c4a0ad1f9d67a45b12f68697321aad, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691354089851 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691354089848} + m_Material: {fileID: 13400000, guid: 2c574f6ade946d94f9ec0183e3bc4579, type: 2} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &4012615691503252843 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691503252839} + - component: {fileID: 4012615691503252836} + - component: {fileID: 4012615691503252837} + - component: {fileID: 4012615691503252842} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691503252839 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -30.5, y: 0.49999994, z: 0} + m_LocalScale: {x: 1, y: 3, z: 62} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691503252836 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691503252837 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691503252842 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691503252843} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2, y: 1, z: 1} + m_Center: {x: -0.5, y: 0, z: 0} +--- !u!1 &4012615691965054905 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615691965054901} + - component: {fileID: 4012615691965054906} + - component: {fileID: 4012615691965054907} + - component: {fileID: 4012615691965054904} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615691965054901 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.49999994, z: 30.5} + m_LocalScale: {x: 60, y: 3, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615691965054906 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615691965054907 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615691965054904 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615691965054905} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 2} + m_Center: {x: 0, y: 0, z: 0.5} +--- !u!1 &4012615692269653858 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692269653854} + - component: {fileID: 4012615692269653855} + - component: {fileID: 4012615692269653852} + - component: {fileID: 4012615692269653853} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692269653854 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.49999994, z: -30.5} + m_LocalScale: {x: 60, y: 3, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615692269653855 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615692269653852 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615692269653853 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692269653858} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 2} + m_Center: {x: 0, y: 0, z: -0.5} +--- !u!1 &4012615692778511854 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692778511849} + m_Layer: 0 + m_Name: SceneLevelGeometry + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692778511849 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692778511854} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.000000059604645, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4012615691354089844} + - {fileID: 4012615691965054901} + - {fileID: 4012615692269653854} + - {fileID: 4012615691503252839} + - {fileID: 4012615692791378778} + - {fileID: 3910294717376836327} + - {fileID: 6283120762215196916} + - {fileID: 2290144462706082272} + - {fileID: 6959258897999621209} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4012615692791378782 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4012615692791378778} + - component: {fileID: 4012615692791378779} + - component: {fileID: 4012615692791378776} + - component: {fileID: 4012615692791378777} + m_Layer: 0 + m_Name: Side + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4012615692791378778 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 30.5, y: 0.49999994, z: 0} + m_LocalScale: {x: 1, y: 3, z: 62} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4012615692791378779 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4012615692791378776 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c73b921ea39f4344a19c2d1c7d6b314, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4012615692791378777 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4012615692791378782} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2, y: 1, z: 1} + m_Center: {x: 0.5, y: 0, z: 0} +--- !u!1 &4674276234353933548 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3910294717376836327} + - component: {fileID: 3136259738973340924} + m_Layer: 0 + m_Name: CornerBumper + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3910294717376836327 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4674276234353933548} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0.38268343, z: 0, w: 0.92387956} + m_LocalPosition: {x: 29.7, y: 0.98, z: -29.61} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -45, z: 0} +--- !u!65 &3136259738973340924 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4674276234353933548} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &7080625901286762351 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6959258897999621209} + - component: {fileID: 7672408768716900064} + m_Layer: 0 + m_Name: CornerBumper (3) + m_TagString: Boundary + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6959258897999621209 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7080625901286762351} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.93588465, z: -0, w: -0.35230666} + m_LocalPosition: {x: 29.26, y: 0.98, z: 29.45} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4012615692778511849} + m_LocalEulerAnglesHint: {x: 0, y: -498.74298, z: 0} +--- !u!65 &7672408768716900064 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7080625901286762351} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 4, y: 2, z: 1} + m_Center: {x: 0, y: 0, z: 0} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab.meta new file mode 100644 index 0000000000..154fd718e7 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/SceneLevelGeometry.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3ec484313a7a6754dac871e620df8db2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab new file mode 100644 index 0000000000..c596d7333d --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab @@ -0,0 +1,154 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1604908963751126680 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2093637950428003362} + - component: {fileID: 3071950872142852999} + - component: {fileID: 956227959320364877} + - component: {fileID: 4985949235297978144} + - component: {fileID: 8456313914433245678} + - component: {fileID: 1138964657491743937} + m_Layer: 0 + m_Name: Tunnel_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &2093637950428003362 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: -90.00001, y: 0, z: 0} +--- !u!33 &3071950872142852999 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Mesh: {fileID: 5060444177187149915, guid: 63fcabcd345d556498e09f748683088e, type: 3} +--- !u!23 &956227959320364877 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &4985949235297978144 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 2.502674, y: 6.0000024, z: 0.258326} + m_Center: {x: 0, y: 5.4121983e-15, z: 2.3808491} +--- !u!65 &8456313914433245678 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.2527809, y: 6.0000024, z: 2.2399507} + m_Center: {x: -1.1249466, y: 1.7786642e-15, z: 1.1251621} +--- !u!65 &1138964657491743937 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1604908963751126680} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.26525307, y: 6.0000024, z: 2.256102} + m_Center: {x: 1.1187105, y: 1.893427e-15, z: 1.1332378} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab.meta new file mode 100644 index 0000000000..58def4a902 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Tunnel_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4b50ff3d475fc3f4fa77ac6aa6e679f2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab new file mode 100644 index 0000000000..f8dde4effc --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab @@ -0,0 +1,132 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7993119983977949264 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7324705577624711914} + - component: {fileID: 5911343394670230863} + - component: {fileID: 8497650616581704069} + - component: {fileID: 9105854698657379725} + - component: {fileID: 1277700310800588604} + m_Layer: 0 + m_Name: Wall_Prefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 73 + m_IsActive: 1 +--- !u!4 &7324705577624711914 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + serializedVersion: 2 + m_LocalRotation: {x: 0.000000021855694, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5911343394670230863 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Mesh: {fileID: 6352809919239313146, guid: 34560503bf9d61046b252db98a8cf770, type: 3} +--- !u!23 &8497650616581704069 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e2c886f4af8e304eb9a1e2e50d023b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 2 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &9105854698657379725 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.25, y: 1.0095696, z: 2.9958286} + m_Center: {x: 0, y: 0.5047848, z: 1.5020857} +--- !u!65 &1277700310800588604 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7993119983977949264} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 0.25, y: 2.0055175, z: 3.000146} + m_Center: {x: 0, y: 1.0027587, z: -1.499927} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab.meta b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab.meta new file mode 100644 index 0000000000..42ef5284f2 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Prefabs/Wall_Prefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3b9516be83427084ca3fffca42e7b6da +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Resources.meta b/Examples/CharacterControllerMovingBodies/Assets/Resources.meta new file mode 100644 index 0000000000..edebf21a13 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6a51a9fbd254e544eb3e85853865f80d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json b/Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json new file mode 100644 index 0000000000..6f4bfb7103 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json @@ -0,0 +1 @@ +{"androidStore":"GooglePlay"} \ No newline at end of file diff --git a/com.unity.netcode.gameobjects/ValidationExceptions.json.meta b/Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json.meta similarity index 75% rename from com.unity.netcode.gameobjects/ValidationExceptions.json.meta rename to Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json.meta index 3316cf20bd..557e7d707c 100644 --- a/com.unity.netcode.gameobjects/ValidationExceptions.json.meta +++ b/Examples/CharacterControllerMovingBodies/Assets/Resources/BillingMode.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 2a43005be301c9043aab7034757d4868 +guid: a1890189503409a4bb24dd4f0eab1f0a TextScriptImporter: externalObjects: {} userData: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes.meta b/Examples/CharacterControllerMovingBodies/Assets/Scenes.meta new file mode 100644 index 0000000000..b398c5b4ab --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9bb955f9d9ef9c34d897f353c8643a1d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset b/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset new file mode 100644 index 0000000000..b8bbae0a72 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset @@ -0,0 +1,195 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Camera + m_TargetType: + m_NativeTypeID: 20 + m_ManagedTypePPtr: {fileID: 0} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ClearFlags + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.r + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.g + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.b + value: 0.066037714 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BackGroundColor.a + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_projectionMatrixMode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_GateFitMode + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FOVAxisMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Iso + value: 200 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ShutterSpeed + value: 0.005 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Aperture + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FocusDistance + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_FocalLength + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BladeCount + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Curvature.x + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Curvature.y + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_BarrelClipping + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Anamorphism + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SensorSize.x + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SensorSize.y + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LensShift.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LensShift.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.width + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_NormalizedViewPortRect.height + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: near clip plane + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: far clip plane + value: 1000 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: field of view + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: orthographic + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: orthographic size + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_Depth + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_CullingMask.m_Bits + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RenderingPath + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetTexture + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetDisplay + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TargetEye + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HDR + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AllowMSAA + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AllowDynamicResolution + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ForceIntoRT + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_OcclusionCulling + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_StereoConvergence + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_StereoSeparation + value: 0.022 + objectReference: {fileID: 0} + m_ExcludedProperties: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset.meta b/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset.meta new file mode 100644 index 0000000000..3e327ecf36 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/Camera.preset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1807b530602915743868e6c3bdc1a93c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2655988077585873504 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity b/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity new file mode 100644 index 0000000000..cca8cabbeb --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity @@ -0,0 +1,1434 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 705507994} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &28232985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 28232986} + - component: {fileID: 28232988} + - component: {fileID: 28232987} + - component: {fileID: 28232989} + - component: {fileID: 28232990} + m_Layer: 5 + m_Name: ServerHostClientDisplay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &28232986 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 479361665} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0} + m_AnchorMax: {x: 0.5, y: 0} + m_AnchoredPosition: {x: 0, y: 40} + m_SizeDelta: {x: 180, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &28232987 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 23 + m_FontStyle: 1 + m_BestFit: 1 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: +--- !u!222 &28232988 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_CullTransparentMesh: 1 +--- !u!114 &28232989 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d5a57f767e5e46a458fc5d3c628d0cbb, type: 3} + m_Name: + m_EditorClassIdentifier: + GlobalObjectIdHash: 536662705 + InScenePlacedSourceGlobalObjectIdHash: 0 + DeferredDespawnTick: 0 + Ownership: 1 + AlwaysReplicateAsRoot: 0 + SynchronizeTransform: 1 + ActiveSceneSynchronization: 0 + SceneMigrationSynchronization: 1 + SpawnWithObservers: 1 + DontDestroyWithOwner: 0 + AutoObjectParentSync: 1 + SyncOwnerTransformWhenParented: 1 + AllowOwnerToParent: 0 +--- !u!114 &28232990 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 28232985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6637cd674efb56a48a3d4d545d23a8d3, type: 3} + m_Name: + m_EditorClassIdentifier: + ShowTopMostFoldoutHeaderGroup: 1 +--- !u!1001 &45185844 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 621748559} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 3246499739 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -49.1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-B + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.891119 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: -0.13657665 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1001 &66674670 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: OnExitTransferParentOnStay + value: + objectReference: {fileID: 520394643} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: DontDeparentIfParentedByOtherBody + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 4013775021 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: -33.32 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: StationaryBody-A + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Size.z + value: 19.906477 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.x + value: -0.038006783 + objectReference: {fileID: 0} + - target: {fileID: 8134939553748259768, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Center.z + value: 0.070830345 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &455857869 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 455857870} + - component: {fileID: 455857875} + - component: {fileID: 455857871} + m_Layer: 0 + m_Name: ExtendedNetworkManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &455857870 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &455857871 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6960e84d07fb87f47956e7a81d71c4e6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ProtocolType: 0 + m_UseWebSockets: 0 + m_UseEncryption: 0 + m_MaxPacketQueueSize: 128 + m_MaxPayloadSize: 6144 + m_HeartbeatTimeoutMS: 500 + m_ConnectTimeoutMS: 1000 + m_MaxConnectAttempts: 60 + m_DisconnectTimeoutMS: 30000 + ConnectionData: + Address: 127.0.0.1 + Port: 7777 + ServerListenAddress: 127.0.0.1 + DebugSimulator: + PacketDelayMS: 0 + PacketJitterMS: 0 + PacketDropRate: 0 +--- !u!114 &455857875 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 455857869} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e4d8d44c602b97b47ba488a40c66267c, type: 3} + m_Name: + m_EditorClassIdentifier: + NetworkManagerExpanded: 0 + NetworkConfig: + ProtocolVersion: 0 + NetworkTransport: {fileID: 455857871} + PlayerPrefab: {fileID: 8921789205124766477, guid: 8ae02ac62e2067144b8ff06d48aeb47a, type: 3} + Prefabs: + NetworkPrefabsLists: + - {fileID: 11400000, guid: aa82390bfdde2564f828b8e5be375282, type: 2} + TickRate: 30 + ClientConnectionBufferTimeout: 10 + ConnectionApproval: 0 + ConnectionData: + EnableTimeResync: 0 + TimeResyncInterval: 30 + EnsureNetworkVariableLengthSafety: 0 + EnableSceneManagement: 1 + ForceSamePrefabs: 1 + RecycleNetworkIds: 1 + NetworkIdRecycleDelay: 120 + RpcHashSize: 0 + LoadSceneTimeOut: 120 + SpawnTimeout: 10 + EnableNetworkLogs: 1 + NetworkTopology: 0 + UseCMBService: 0 + AutoSpawnPlayerPrefabClientSide: 1 + NetworkProfilingMetrics: 1 + OldPrefabList: [] + RunInBackground: 1 + LogLevel: 1 + ExtendedNetworkManagerExpanded: 1 + ConnectionType: 1 + TargetFrameRate: 100 + EnableVSync: 0 + m_OriginalVSyncCount: 1 +--- !u!1 &479361661 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 479361665} + - component: {fileID: 479361664} + - component: {fileID: 479361663} + - component: {fileID: 479361662} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &479361662 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &479361663 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &479361664 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &479361665 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 479361661} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 28232986} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!114 &520394643 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 45185844} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &537610708 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 537610709} + m_Layer: 0 + m_Name: PointA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &537610709 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 537610708} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &621748559 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + m_PrefabInstance: {fileID: 66674670} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 374ac199eb18f0f468bc018a722775c2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1001 &748186899 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.x + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalScale.z + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.y + value: -0.25 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511849, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4012615692778511854, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} + propertyPath: m_Name + value: SceneLevelGeometry + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3ec484313a7a6754dac871e620df8db2, type: 3} +--- !u!1001 &857399335 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotateDirection + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1449196534 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: -60.7 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 56.8 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: RotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &946793187 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 946793188} + m_Layer: 0 + m_Name: PointE + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &946793188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 946793187} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &963194225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 963194228} + - component: {fileID: 963194227} + - component: {fileID: 963194226} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &963194226 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 +--- !u!20 &963194227 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.066037714, g: 0.066037714, b: 0.066037714, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &963194228 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + serializedVersion: 2 + m_LocalRotation: {x: 0.15212336, y: 0, z: 0, w: 0.98836154} + m_LocalPosition: {x: 0, y: 4.5, z: -5.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 17.5, y: 0, z: 0} +--- !u!1 &1049334975 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1049334976} + m_Layer: 0 + m_Name: PointF + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1049334976 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1049334975} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 60.5, y: -0.34, z: -68.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1055951929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1055951930} + m_Layer: 0 + m_Name: PointD + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1055951930 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1055951929} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: -0.34, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1184702125 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1184702128} + - component: {fileID: 1184702127} + - component: {fileID: 1184702126} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1184702126 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1184702127 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1184702128 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1184702125} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1281267714 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1281267715} + m_Layer: 0 + m_Name: PointB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1281267715 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1281267714} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: 70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1591298748 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 537610708} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 1281267714} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[2]' + value: + objectReference: {fileID: 1727671589} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[3]' + value: + objectReference: {fileID: 1055951929} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 4258258070 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 10.9 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: 'ElevatorBody ' + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1 &1727671589 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1727671590} + m_Layer: 0 + m_Name: PointC + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1727671590 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1727671589} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.9, y: 40.6, z: -70} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1968567121 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: ZAxisMove + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotationSpeed + value: 0.3 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: PathMovement.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: RotatingBodyLogicExpanded + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[0]' + value: + objectReference: {fileID: 946793187} + - target: {fileID: 850162744905636139, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: 'PathMovement.Array.data[1]' + value: + objectReference: {fileID: 1049334975} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: GlobalObjectIdHash + value: 1259759422 + objectReference: {fileID: 0} + - target: {fileID: 3307166493715739449, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: InScenePlacedSourceGlobalObjectIdHash + value: 1084435762 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.x + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.y + value: -0.34 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalPosition.z + value: 70 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4291553105548296809, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5415449980466536476, guid: 0123d7125346c274da00b38e950a266b, type: 3} + propertyPath: m_Name + value: MovingRotatingBody + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0123d7125346c274da00b38e950a266b, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 963194228} + - {fileID: 705507995} + - {fileID: 455857870} + - {fileID: 479361665} + - {fileID: 1184702128} + - {fileID: 748186899} + - {fileID: 857399335} + - {fileID: 66674670} + - {fileID: 45185844} + - {fileID: 1968567121} + - {fileID: 1591298748} + - {fileID: 537610709} + - {fileID: 1281267715} + - {fileID: 1727671590} + - {fileID: 1055951930} + - {fileID: 946793188} + - {fileID: 1049334976} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity.meta b/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity.meta new file mode 100644 index 0000000000..952bd1e9e1 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/CharacterController.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9fc0d4010bbf28b4594072e72b8655ab +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset b/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset new file mode 100644 index 0000000000..26e47a6487 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e651dbb3fbac04af2b8f5abf007ddc23, type: 3} + m_Name: SampleScenePrefabs + m_EditorClassIdentifier: + IsDefault: 0 + List: [] diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset.meta b/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset.meta new file mode 100644 index 0000000000..402e4425d7 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scenes/SampleScenePrefabs.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3d25a2b1f6c12ee47bf7601c2edd7e70 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts.meta new file mode 100644 index 0000000000..528b6db2ae --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f0135d923712c4438b2facb3ce21fb6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs new file mode 100644 index 0000000000..2c291bbe89 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs @@ -0,0 +1,427 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Unity.Netcode; +using Unity.Services.Authentication; +using Unity.Services.Core; +using Unity.Services.Multiplayer; +using UnityEngine; +using SessionState = Unity.Services.Multiplayer.SessionState; + +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(ExtendedNetworkManager), true)] +[CanEditMultipleObjects] +public class ExtendedNetworkManagerEditor : NetworkManagerEditor +{ + private SerializedProperty m_ConnectionType; + private SerializedProperty m_TargetFrameRate; + private SerializedProperty m_EnableVSync; + + public override void OnEnable() + { + m_ConnectionType = serializedObject.FindProperty(nameof(ExtendedNetworkManager.ConnectionType)); + m_TargetFrameRate = serializedObject.FindProperty(nameof(ExtendedNetworkManager.TargetFrameRate)); + m_EnableVSync = serializedObject.FindProperty(nameof(ExtendedNetworkManager.EnableVSync)); + base.OnEnable(); + } + + private void DisplayExtendedNetworkManagerProperties() + { + EditorGUILayout.PropertyField(m_ConnectionType); + EditorGUILayout.PropertyField(m_TargetFrameRate); + EditorGUILayout.PropertyField(m_EnableVSync); + } + + public override void OnInspectorGUI() + { + var extendedNetworkManager = target as ExtendedNetworkManager; + // Handle switching the appropriate connection type based on the network topology + // Host connectio type can be set for client-server and distributed authority + // Live Service can only be used with distributed authority + // Client-server can only be used with a host connection type + var connectionTypes = Enum.GetValues(typeof(ExtendedNetworkManager.ConnectionTypes)); + var connectionType = ExtendedNetworkManager.ConnectionTypes.LiveService; + if (m_ConnectionType.enumValueIndex > 0 && m_ConnectionType.enumValueIndex < connectionTypes.Length) + { + connectionType = (ExtendedNetworkManager.ConnectionTypes)connectionTypes.GetValue(m_ConnectionType.enumValueIndex); + } + void SetExpanded(bool expanded) { extendedNetworkManager.ExtendedNetworkManagerExpanded = expanded; }; + DrawFoldOutGroup(extendedNetworkManager.GetType(), DisplayExtendedNetworkManagerProperties, extendedNetworkManager.ExtendedNetworkManagerExpanded, SetExpanded); + + var updatedConnectedType = (ExtendedNetworkManager.ConnectionTypes)connectionTypes.GetValue(m_ConnectionType.enumValueIndex); + if (connectionType == updatedConnectedType && updatedConnectedType == ExtendedNetworkManager.ConnectionTypes.LiveService && extendedNetworkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) + { + extendedNetworkManager.ConnectionType = ExtendedNetworkManager.ConnectionTypes.Host; + } + else if (connectionType == ExtendedNetworkManager.ConnectionTypes.Host && updatedConnectedType == ExtendedNetworkManager.ConnectionTypes.LiveService && extendedNetworkManager.NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer) + { + extendedNetworkManager.NetworkConfig.NetworkTopology = NetworkTopologyTypes.DistributedAuthority; + } + base.OnInspectorGUI(); + } +} +#endif + + + +public class ExtendedNetworkManager : NetworkManager +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool ExtendedNetworkManagerExpanded; +#endif + + public static ExtendedNetworkManager Instance; + + public enum ConnectionTypes + { + LiveService, + Host, + } + public ConnectionTypes ConnectionType; + + public int TargetFrameRate = 100; + public bool EnableVSync = false; + + [HideInInspector] + [SerializeField] + private int m_OriginalVSyncCount; + +#if UNITY_EDITOR + + protected override void OnValidateComponent() + { + m_OriginalVSyncCount = QualitySettings.vSyncCount; + base.OnValidateComponent(); + } +#endif + + private ISession m_CurrentSession; + + private string m_SessionName; + private string m_ProfileName; + private Task m_SessionTask; + + private enum ConnectionStates + { + None, + Connecting, + Connected, + } + + private ConnectionStates m_ConnectionState; + + public static string GetRandomString(int length) + { + var r = new System.Random(); + return new string(Enumerable.Range(0, length).Select(_ => (char)r.Next('a', 'z')).ToArray()); + } + + public void SetFrameRate(int targetFrameRate, bool enableVsync) + { + Application.targetFrameRate = targetFrameRate; + QualitySettings.vSyncCount = enableVsync ? m_OriginalVSyncCount : 0; + } + + private void Awake() + { + Screen.SetResolution((int)(Screen.currentResolution.width * 0.40f), (int)(Screen.currentResolution.height * 0.40f), FullScreenMode.Windowed); + SetFrameRate(TargetFrameRate, EnableVSync); + SetSingleton(); + } + + private async void Start() + { + OnClientConnectedCallback += OnClientConnected; + OnClientDisconnectCallback += OnClientDisconnect; + OnConnectionEvent += OnClientConnectionEvent; + if (UnityServices.Instance != null && UnityServices.Instance.State != ServicesInitializationState.Initialized) + { + await UnityServices.InitializeAsync(); + } + if (!AuthenticationService.Instance.IsSignedIn) + { + AuthenticationService.Instance.SignInFailed += SignInFailed; + AuthenticationService.Instance.SignedIn += SignedIn; + if (string.IsNullOrEmpty(m_ProfileName)) + { + m_ProfileName = GetRandomString(5); + } + AuthenticationService.Instance.SwitchProfile(m_ProfileName); + await AuthenticationService.Instance.SignInAnonymouslyAsync(); + } + } + + private void OnDestroy() + { + OnClientConnectedCallback -= OnClientConnected; + OnClientDisconnectCallback -= OnClientDisconnect; + OnConnectionEvent -= OnClientConnectionEvent; + } + + private void SignedIn() + { + AuthenticationService.Instance.SignedIn -= SignedIn; + Debug.Log($"Signed in anonymously with profile {m_ProfileName}"); + } + + private void SignInFailed(RequestFailedException error) + { + AuthenticationService.Instance.SignInFailed -= SignInFailed; + Debug.LogError($"Failed to sign in {m_ProfileName} anonymously: {error}"); + } + + private void OnDrawLiveServiceGUI() + { + m_SessionName = GUILayout.TextField(m_SessionName); + + if (GUILayout.Button("Create or Connect To Session")) + { + NetworkConfig.UseCMBService = true; + OnClientStopped += ClientStopped; + OnClientStarted += ClientStarted; + m_SessionTask = ConnectThroughLiveService(); + m_ConnectionState = ConnectionStates.Connecting; + LogMessage($"Connecting to session {m_SessionName}..."); + } + } + + private void OnDrawDAHostGUI() + { + if (GUILayout.Button("Start Host")) + { + OnClientStopped += ClientStopped; + OnClientStarted += ClientStarted; + StartHost(); + } + + if (GUILayout.Button("Start Client")) + { + OnClientStopped += ClientStopped; + OnClientStarted += ClientStarted; + StartClient(); + } + } + + private void OnUpdateGUIDisconnected() + { + GUILayout.BeginArea(new Rect(10, 10, 300, 800)); + + GUILayout.Label("Session Name", GUILayout.Width(100)); + + var connectionType = ConnectionType; + if (NetworkConfig.NetworkTopology == NetworkTopologyTypes.ClientServer && connectionType != ConnectionTypes.Host) + { + connectionType = ConnectionTypes.Host; + } + + switch (connectionType) + { + case ConnectionTypes.LiveService: + { + OnDrawLiveServiceGUI(); + break; + } + case ConnectionTypes.Host: + { + OnDrawDAHostGUI(); + break; + } + } + + GUILayout.EndArea(); + + GUILayout.BeginArea(new Rect(10, Display.main.renderingHeight - 40, Display.main.renderingWidth - 10, 30)); + var scenesPreloaded = new System.Text.StringBuilder(); + scenesPreloaded.Append("Scenes Preloaded: "); + for (int i = 0; i < UnityEngine.SceneManagement.SceneManager.sceneCount; i++) + { + var scene = UnityEngine.SceneManagement.SceneManager.GetSceneAt(i); + scenesPreloaded.Append($"[{scene.name}]"); + } + GUILayout.Label(scenesPreloaded.ToString()); + GUILayout.EndArea(); + } + + private void OnUpdateGUIConnected() + { + if (CMBServiceConnection) + { + GUILayout.BeginArea(new Rect(10, 10, 800, 800)); + GUILayout.Label($"Session: {m_SessionName}"); + GUILayout.EndArea(); + } + else + { + GUILayout.BeginArea(new Rect(10, 10, 800, 800)); + if (DistributedAuthorityMode) + { + GUILayout.Label($"DAHosted Session"); + } + else + { + GUILayout.Label($"Client-Server Session"); + } + + GUILayout.EndArea(); + } + + GUILayout.BeginArea(new Rect(Display.main.renderingWidth - 160, 10, 150, 80)); + + if (GUILayout.Button("Disconnect")) + { + if (m_CurrentSession != null && m_CurrentSession.State == SessionState.Connected) + { + m_CurrentSession.LeaveAsync(); + m_CurrentSession = null; + } + else + { + Shutdown(); + } + } + + GUILayout.EndArea(); + } + + private void OnGUI() + { + var yAxisOffset = 10; + switch (m_ConnectionState) + { + case ConnectionStates.None: + { + yAxisOffset = 80; + OnUpdateGUIDisconnected(); + break; + } + case ConnectionStates.Connected: + { + yAxisOffset = 40; + OnUpdateGUIConnected(); + break; + } + } + + GUILayout.BeginArea(new Rect(10, yAxisOffset, 600, 800)); + if (m_MessageLogs.Count > 0) + { + GUILayout.Label("-----------(Log)-----------"); + // Display any messages logged to screen + foreach (var messageLog in m_MessageLogs) + { + GUILayout.Label(messageLog.Message); + } + GUILayout.Label("---------------------------"); + } + GUILayout.EndArea(); + } + + private void ClientStarted() + { + OnClientStarted -= ClientStarted; + m_ConnectionState = ConnectionStates.Connected; + LogMessage($"Connected to session {m_SessionName}."); + } + + private void ClientStopped(bool isHost) + { + OnClientStopped -= ClientStopped; + m_ConnectionState = ConnectionStates.None; + m_SessionTask = null; + m_CurrentSession = null; + } + + private async Task ConnectThroughLiveService() + { + try + { + var options = new SessionOptions() + { + Name = m_SessionName, + MaxPlayers = 32 + }.WithDistributedAuthorityNetwork(); + + m_CurrentSession = await MultiplayerService.Instance.CreateOrJoinSessionAsync(m_SessionName, options); + return m_CurrentSession; + } + catch (Exception e) + { + LogMessage($"{e.Message}"); + Debug.LogException(e); + } + return null; + } + + private void Update() + { + if (m_MessageLogs.Count == 0) + { + return; + } + + for (int i = m_MessageLogs.Count - 1; i >= 0; i--) + { + if (m_MessageLogs[i].ExpirationTime < Time.realtimeSinceStartup) + { + m_MessageLogs.RemoveAt(i); + } + } + } + + private void OnClientConnectionEvent(NetworkManager networkManager, ConnectionEventData eventData) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connection event {eventData.EventType} for Client-{eventData.ClientId}."); + } + + private void OnClientConnected(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Connected event invoked for Client-{clientId}."); + } + + private void OnClientDisconnect(ulong clientId) + { + LogMessage($"[{Time.realtimeSinceStartup}] Disconnected event invoked for Client-{clientId}."); + } + + private List m_MessageLogs = new List(); + + private class MessageLog + { + public string Message { get; private set; } + public float ExpirationTime { get; private set; } + + public MessageLog(string msg, float timeToLive) + { + Message = msg; + ExpirationTime = Time.realtimeSinceStartup + timeToLive; + } + } + + public void LogMessage(string msg, float timeToLive = 10.0f) + { + if (m_MessageLogs.Count > 0) + { + m_MessageLogs.Insert(0, new MessageLog(msg, timeToLive)); + } + else + { + m_MessageLogs.Add(new MessageLog(msg, timeToLive)); + } + + Debug.Log(msg); + } + + public ExtendedNetworkManager() + { + Instance = this; + } +} diff --git a/com.unity.netcode.gameobjects/Tests/Runtime/NetworkVariableCollectionsTests.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs.meta similarity index 83% rename from com.unity.netcode.gameobjects/Tests/Runtime/NetworkVariableCollectionsTests.cs.meta rename to Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs.meta index 8a0dfc0af6..6c3e265735 100644 --- a/com.unity.netcode.gameobjects/Tests/Runtime/NetworkVariableCollectionsTests.cs.meta +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ExtendedNetworkManager.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 939ac41f36685f84e94a4b66ebbb6d8c +guid: e4d8d44c602b97b47ba488a40c66267c MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs new file mode 100644 index 0000000000..555ed20113 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs @@ -0,0 +1,363 @@ +using UnityEngine; +using Unity.Netcode.Components; +using Unity.Netcode; +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(MoverScriptNoRigidbody), true)] +[CanEditMultipleObjects] +public class MoverScriptNoRigidbodyEditor : NetworkTransformEditor +{ + private SerializedProperty m_Radius; + private SerializedProperty m_Increment; + private SerializedProperty m_RotateSpeed; + private SerializedProperty m_MovementSpeed; + private SerializedProperty m_AirSpeedFactor; + private SerializedProperty m_Gravity; + private SerializedProperty m_ContinualChildMotion; + + + public override void OnEnable() + { + m_Radius = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.SpawnRadius)); + m_Increment = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.Increment)); + m_RotateSpeed = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.RotationSpeed)); + m_MovementSpeed = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.MovementSpeed)); + m_AirSpeedFactor = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.AirSpeedFactor)); + m_Gravity = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.Gravity)); + m_ContinualChildMotion = serializedObject.FindProperty(nameof(MoverScriptNoRigidbody.ContinualChildMotion)); + + base.OnEnable(); + } + + private void DisplayerMoverScriptNoRigidbodyProperties() + { + EditorGUILayout.PropertyField(m_Radius); + EditorGUILayout.PropertyField(m_Increment); + EditorGUILayout.PropertyField(m_RotateSpeed); + EditorGUILayout.PropertyField(m_MovementSpeed); + EditorGUILayout.PropertyField(m_AirSpeedFactor); + EditorGUILayout.PropertyField(m_Gravity); + EditorGUILayout.PropertyField(m_ContinualChildMotion); + } + + public override void OnInspectorGUI() + { + var moverScriptNoRigidbody = target as MoverScriptNoRigidbody; + void SetExpanded(bool expanded) { moverScriptNoRigidbody.MoverScriptNoRigidbodyExpanded = expanded; }; + DrawFoldOutGroup(moverScriptNoRigidbody.GetType(), DisplayerMoverScriptNoRigidbodyProperties, moverScriptNoRigidbody.MoverScriptNoRigidbodyExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif + +/// +/// The player controller for the player prefab +/// +public class MoverScriptNoRigidbody : NetworkTransform +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool MoverScriptNoRigidbodyExpanded; +#endif + + private static bool s_EnablePlayerParentingText = true; + + [Tooltip("Radius range a player will spawn within.")] + [Range(1.0f, 40.0f)] + public float SpawnRadius = 10.0f; + + [Range(0.001f, 10.0f)] + public float Increment = 1.0f; + + [Tooltip("The rotation speed multiplier.")] + [Range(0.01f, 2.0f)] + public float RotationSpeed = 1.0f; + + [Tooltip("The forward movement speed.")] + [Range(0.01f, 30.0f)] + public float MovementSpeed = 15.0f; + + [Tooltip("The jump launching speed.")] + [Range(1.0f, 20f)] + public float JumpSpeed = 10.0f; + + [Tooltip("Determines how much the player's motion is applied when in the air.")] + [Range(0.01f, 1.0f)] + public float AirSpeedFactor = 0.35f; + + [Range(-20.0f, 20.0f)] + public float Gravity = -9.8f; + + [Tooltip("When enabled, the child spheres will continually move. When disabled, the child spheres will only move when the player moves.")] + public bool ContinualChildMotion = true; + + + private TextMesh m_ParentedText; + private PlayerColor m_PlayerColor; + private float m_JumpDelay; + private Vector3 m_WorldMotion = Vector3.zero; + private Vector3 m_CameraOriginalPosition; + private Quaternion m_CameraOriginalRotation; + private CharacterController m_CharacterController; + private PlayerBallMotion m_PlayerBallMotion; + + protected override void Awake() + { + m_ParentedText = GetComponentInChildren(); + m_ParentedText?.gameObject.SetActive(false); + m_PlayerColor = GetComponent(); + m_PlayerBallMotion = GetComponentInChildren(); + base.Awake(); + } + + /// + /// Invoked after being instantiated, we can do other pre-spawn related + /// initilization tasks here. + /// + /// + /// This provides you with a reference to the current + /// since that is not set on the until it is spawned. + /// + /// + protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) + { + m_CharacterController = GetComponent(); + // By default, we always disable the CharacterController and only enable it on the + // owner/authority side. + m_CharacterController.enabled = false; + base.OnNetworkPreSpawn(ref networkManager); + } + + /// + /// We are using post spawn to handle any final spawn initializations. + /// At this point we know all NetworkBehaviours on this instance has + /// been spawned. + /// + protected override void OnNetworkPostSpawn() + { + m_CharacterController.enabled = CanCommitToTransform; + if (CanCommitToTransform) + { + m_PlayerBallMotion.SetContinualMotion(ContinualChildMotion); + Random.InitState((int)System.DateTime.Now.Ticks); + transform.position += new Vector3(Random.Range(-SpawnRadius, SpawnRadius), 1.25f, Random.Range(0, SpawnRadius)); + SetState(transform.position, null, null, false); + if (IsLocalPlayer) + { + NetworkObject.DontDestroyWithOwner = false; + m_CameraOriginalPosition = Camera.main.transform.position; + m_CameraOriginalRotation = Camera.main.transform.rotation; + Camera.main.transform.SetParent(transform, false); + } + } + + if (NetworkObject.IsPlayerObject) + { + gameObject.name = $"Player-{OwnerClientId}"; + } + + m_ParentedText?.gameObject.SetActive(true); + UpdateParentedText(); + base.OnNetworkPostSpawn(); + } + + public override void OnNetworkDespawn() + { + if (IsLocalPlayer) + { + m_CharacterController.enabled = false; + Camera.main.transform.SetParent(null, false); + Camera.main.transform.position = m_CameraOriginalPosition; + Camera.main.transform.rotation = m_CameraOriginalRotation; + } + base.OnNetworkDespawn(); + } + + /// + /// Bypass NetworkTransform's OnNetworkObjectParentChanged + /// + public override void OnNetworkObjectParentChanged(NetworkObject parentNetworkObject) + { + if (parentNetworkObject != null) + { + Debug.Log($"Parented under {parentNetworkObject.name}"); + } + UpdateParentedText(); + base.OnNetworkObjectParentChanged(parentNetworkObject); + } + + /// + /// This method handles both client-server and distributed authority network topologies + /// client-server: If we are not the server, then we need to send an Rpc to the server to handle parenting since the Character controller is disabled on the server for all client CharacterControllers (i.e. won't trigger). + /// distributed authority: If we are the authority, then handle parenting locally. + /// + /// + public void SetParent(NetworkObject parent) + { + if ((!NetworkManager.DistributedAuthorityMode && (IsServer || (NetworkObject.AllowOwnerToParent && IsOwner))) || (NetworkManager.DistributedAuthorityMode && HasAuthority)) + { + if (parent != null) + { + NetworkObject.TrySetParent(parent); + } + else + { + NetworkObject.TryRemoveParent(); + } + } + else if (!NetworkManager.DistributedAuthorityMode && !IsServer) + { + SetParentRpc(new NetworkObjectReference(parent)); + } + } + + [Rpc(SendTo.Server)] + public void SetParentRpc(NetworkObjectReference parentReference, RpcParams rpcParams = default) + { + var parent = (NetworkObject)null; + parentReference.TryGet(out parent, NetworkManager); + if (parent != null) + { + NetworkObject.TrySetParent(parent); + } + else + { + NetworkObject.TryRemoveParent(); + } + } + + + private void Update() + { + if (!IsSpawned || !CanCommitToTransform) + { + return; + } + ApplyInput(); + } + + + private Vector3 m_PushMotion = Vector3.zero; + /// + /// Since has issues with collisions and rotating bodies, + /// we have to simulate the collision using triggers. + /// + /// + /// + /// + /// direction to push away from + public void PushAwayFrom(Vector3 normal) + { + m_PushMotion += normal * MovementSpeed * 0.10f * Time.deltaTime; + } + + /// + /// Handles player input + /// + private void ApplyInput() + { + // Simple rotation: + // Since the forward vector is perpendicular to the right vector of the player, we can just + // apply the +/- value to our forward direction and lerp our right vector towards that direction + // in order to get a reasonably smooth rotation. + var rotation = transform.forward; + m_WorldMotion = Vector3.Lerp(m_WorldMotion, m_CharacterController.isGrounded ? Vector3.zero : Vector3.up * Gravity, Time.deltaTime * 2f); + var motion = m_WorldMotion * Time.deltaTime + m_PushMotion; + var moveMotion = 0.0f; + + if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow)) + { + motion += transform.forward * MovementSpeed * Time.deltaTime * (m_CharacterController.isGrounded ? 1.0f : AirSpeedFactor); + moveMotion = 1.0f; + m_CharacterController.Move(motion); + } + if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow)) + { + motion += (transform.forward * -MovementSpeed) * Time.deltaTime * (m_CharacterController.isGrounded ? 1.0f : AirSpeedFactor); + moveMotion = -1.0f; + m_CharacterController.Move(motion); + } + + if (!m_CharacterController.isGrounded || m_JumpDelay > Time.realtimeSinceStartup || m_PushMotion.magnitude > 0.01f) + { + m_CharacterController.Move(motion); + } + + if (Input.GetKeyDown(KeyCode.Space) && m_CharacterController.isGrounded) + { + m_JumpDelay = Time.realtimeSinceStartup + 0.5f; + m_WorldMotion = motion + Vector3.up * JumpSpeed; + } + + if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow)) + { + transform.right = Vector3.Lerp(transform.right, rotation * RotationSpeed, Time.deltaTime).normalized; + } + if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow)) + { + transform.right = Vector3.Lerp(transform.right, rotation * -RotationSpeed, Time.deltaTime).normalized; + } + + // Enabled/Disable player name, transform space, and parent TextMesh + if (Input.GetKeyDown(KeyCode.P)) + { + s_EnablePlayerParentingText = !s_EnablePlayerParentingText; + } + + if (Input.GetKeyDown(KeyCode.C)) + { + ContinualChildMotion = !ContinualChildMotion; + m_PlayerBallMotion.SetContinualMotion(ContinualChildMotion); + } + + m_PushMotion = Vector3.Lerp(m_PushMotion, Vector3.zero, 0.35f); + + m_PlayerBallMotion.HasMotion(moveMotion); + } + + /// + /// Updates player TextMesh relative to each client's camera view + /// + private void OnGUI() + { + if (m_ParentedText != null) + { + if (m_ParentedText.gameObject.activeInHierarchy != s_EnablePlayerParentingText) + { + m_ParentedText.gameObject.SetActive(s_EnablePlayerParentingText); + } + if (s_EnablePlayerParentingText) + { + var position = Camera.main.transform.position; + position.y = m_ParentedText.transform.position.y; + m_ParentedText.transform.LookAt(position, transform.up); + m_ParentedText.transform.forward = -m_ParentedText.transform.forward; + } + } + } + + /// + /// Updates the contents of the parented + /// + private void UpdateParentedText() + { + if (m_ParentedText) + { + m_ParentedText.color = m_PlayerColor.Color; + if (transform.parent) + { + m_ParentedText.text = $"{gameObject.name}\n Local Space\n Parent: {transform.parent.name}"; + } + else + { + m_ParentedText.text = $"{gameObject.name}\n WorldSpace\n Parent: None"; + } + } + } +} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs.meta new file mode 100644 index 0000000000..d1b709a9fb --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/MoverScriptNoRigidbody.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5ce25b0b3f15e6446a88a85787c2f94a diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs new file mode 100644 index 0000000000..7e525d6c33 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs @@ -0,0 +1,126 @@ +using System.Collections.Generic; +using Unity.Netcode.Components; +using UnityEngine; +using System.Linq; + + +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(PlayerBallMotion), true)] +[CanEditMultipleObjects] +public class PlayerBallMotionEditor : NetworkTransformEditor +{ + private SerializedProperty m_RotationAxis; + private SerializedProperty m_RotationSpeed; + + + public override void OnEnable() + { + m_RotationAxis = serializedObject.FindProperty(nameof(PlayerBallMotion.RotationAxis)); + m_RotationSpeed = serializedObject.FindProperty(nameof(PlayerBallMotion.RotationSpeed)); + base.OnEnable(); + } + + private void DrawPlayerBallMotionProperties() + { + EditorGUILayout.PropertyField(m_RotationAxis); + EditorGUILayout.PropertyField(m_RotationSpeed); + } + + public override void OnInspectorGUI() + { + var playerBallMotion = target as PlayerBallMotion; + void SetExpanded(bool expanded) { playerBallMotion.ExpandPlayerBallMotion = expanded; }; + DrawFoldOutGroup< PlayerBallMotion>(playerBallMotion.GetType(), DrawPlayerBallMotionProperties, playerBallMotion.ExpandPlayerBallMotion, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif + +public class PlayerBallMotion : NetworkTransform +{ +#if UNITY_EDITOR + public bool ExpandPlayerBallMotion; + public bool ExpandNetworkTransform; +#endif + public enum RotateAroundAxis + { + Up, + Right, + Forward + } + + public RotateAroundAxis RotationAxis; + public float RotationSpeed = 1.5f; + + private Vector3 m_AxisRotation = Vector3.zero; + private List m_Children; + + private bool m_ContinualMotion; + private float m_CurrentRotionMotion = 1.0f; + public void SetContinualMotion(bool continualMotion) + { + m_ContinualMotion = continualMotion; + foreach (var child in m_Children) + { + child.SetContinualMotion(continualMotion); + } + } + + protected override void Awake() + { + m_Children = GetComponentsInChildren().Where((c)=> c != this).ToList(); + base.Awake(); + } + + private void SetRotationAixs() + { + switch (RotationAxis) + { + case RotateAroundAxis.Up: + { + m_AxisRotation = transform.parent.up; + break; + } + case RotateAroundAxis.Right: + { + m_AxisRotation = transform.parent.right; + break; + } + case RotateAroundAxis.Forward: + { + m_AxisRotation = transform.parent.forward; + break; + } + } + } + + public void HasMotion(float direction) + { + if (direction == 0.0f) + { + if(!m_ContinualMotion) + { + return; + } + } + else + { + m_CurrentRotionMotion = RotationSpeed * direction; + } + + + transform.LookAt(transform.parent); + SetRotationAixs(); + transform.RotateAround(transform.parent.position, m_AxisRotation, m_CurrentRotionMotion); + foreach(var child in m_Children) + { + child.HasMotion(direction); + } + } +} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs.meta new file mode 100644 index 0000000000..407e0adf7b --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerBallMotion.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 792d7ce524eb358469373fe12babef88 \ No newline at end of file diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs new file mode 100644 index 0000000000..3e2fa5b00a --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using Unity.Netcode; +using UnityEngine; + + +public class PlayerColor : NetworkBehaviour +{ + private static Color[] s_Colors = { Color.red, Color.green, Color.blue, Color.cyan, Color.magenta, Color.yellow}; + public bool ApplyColorToChildren; + public Color Color { get; private set; } + public List IgnoreChildren; + + public override void OnNetworkSpawn() + { + MeshRenderer meshRenderer = GetComponent(); + ulong myId = GetComponent().OwnerClientId - (ulong)(NetworkManager.DistributedAuthorityMode && NetworkManager.CMBServiceConnection ? 1 : 0); + Color = s_Colors[myId % Convert.ToUInt64(s_Colors.Length)]; + meshRenderer.material.color = Color; + if (ApplyColorToChildren) + { + var meshRenderers = GetComponentsInChildren(); + foreach (var childMeshRenderer in meshRenderers) + { + if (IgnoreChildren != null && IgnoreChildren.Contains(childMeshRenderer.gameObject)) + { + continue; + } + childMeshRenderer.material.color = Color; + } + } + + if (IsLocalPlayer) + { + var gameObject = GameObject.Find("ServerHostClientDisplay"); + if (gameObject != null) + { + var serverHost = gameObject.GetComponent(); + serverHost?.SetColor(Color); + } + } + base.OnNetworkSpawn(); + } +} diff --git a/com.unity.netcode.gameobjects/Components/AssemblyInfo.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs.meta similarity index 83% rename from com.unity.netcode.gameobjects/Components/AssemblyInfo.cs.meta rename to Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs.meta index 36524ba59b..90b6ca4628 100644 --- a/com.unity.netcode.gameobjects/Components/AssemblyInfo.cs.meta +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/PlayerColor.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 5b8086dc75d86473f9e3c928dd773733 +guid: 8e5128237997be649af0cc87dd0eb563 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs new file mode 100644 index 0000000000..eaa32a77d6 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs @@ -0,0 +1,201 @@ +using System.Collections.Generic; +using Unity.Netcode; +using Unity.Netcode.Components; +using UnityEngine; +#if UNITY_EDITOR +using Unity.Netcode.Editor; +using UnityEditor; + +/// +/// The custom editor for the component. +/// +[CustomEditor(typeof(RotatingBodyLogic), true)] +[CanEditMultipleObjects] +public class RotatingBodyLogicEditor : NetworkTransformEditor +{ + private SerializedProperty m_RotationSpeed; + private SerializedProperty m_RotateDirection; + private SerializedProperty m_OnExitTransferParentOnStay; + private SerializedProperty m_PathMotion; + + + public override void OnEnable() + { + m_RotationSpeed = serializedObject.FindProperty(nameof(RotatingBodyLogic.RotationSpeed)); + m_RotateDirection = serializedObject.FindProperty(nameof(RotatingBodyLogic.RotateDirection)); + m_OnExitTransferParentOnStay = serializedObject.FindProperty(nameof(RotatingBodyLogic.OnExitTransferParentOnStay)); + m_PathMotion = serializedObject.FindProperty(nameof(RotatingBodyLogic.PathMovement)); + base.OnEnable(); + } + + private void DisplayRotatingBodyLogicProperties() + { + EditorGUILayout.PropertyField(m_RotationSpeed); + EditorGUILayout.PropertyField(m_RotateDirection); + EditorGUILayout.PropertyField(m_OnExitTransferParentOnStay); + EditorGUILayout.PropertyField(m_PathMotion); + } + + public override void OnInspectorGUI() + { + var rotatingBodyLogic = target as RotatingBodyLogic; + void SetExpanded(bool expanded) { rotatingBodyLogic.RotatingBodyLogicExpanded = expanded; }; + DrawFoldOutGroup(rotatingBodyLogic.GetType(), DisplayRotatingBodyLogicProperties, rotatingBodyLogic.RotatingBodyLogicExpanded, SetExpanded); + base.OnInspectorGUI(); + } +} +#endif + +/// +/// Handles rotating the large in-scene placed platform/tunnels and parenting/deparenting players +/// +public class RotatingBodyLogic : NetworkTransform +{ +#if UNITY_EDITOR + // Inspector view expand/collapse settings for this derived child class + [HideInInspector] + public bool RotatingBodyLogicExpanded; +#endif + + public enum RotationDirections + { + Clockwise, + CounterClockwise + } + + [Range(0.0f, 2.0f)] + public float RotationSpeed = 1.0f; + public RotationDirections RotateDirection; + public RotatingBodyLogic OnExitTransferParentOnStay; + public List PathMovement; + + private TagHandle m_TagHandle; + private float m_RotationDirection; + + private int m_CurrentPathObject = -1; + private GameObject m_CurrentNavPoint; + + protected override void OnNetworkPreSpawn(ref NetworkManager networkManager) + { + m_TagHandle = TagHandle.GetExistingTag("Player"); + m_RotationDirection = RotateDirection == RotationDirections.Clockwise ? 1.0f : -1.0f; + SetNextPoint(); + base.OnNetworkPreSpawn(ref networkManager); + } + + private void SetNextPoint() + { + if (PathMovement == null || PathMovement.Count == 0) + { + return; + } + m_CurrentPathObject++; + m_CurrentPathObject %= PathMovement.Count; + m_CurrentNavPoint = PathMovement[m_CurrentPathObject]; + } + + + /// + /// When triggered, the player is parented under the rotating body. + /// + /// + /// This is only triggered on the owner side since we disable the CharacterController + /// on all non-owner instances. + /// + private void OnTriggerEnter(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + nonRigidPlayerMover.SetParent(NetworkObject); + } + } + + // This is used to handle NetworkObject to NetworkObject parenting detection + private List m_TriggerStayBodies = new List(); + + private void OnTriggerStay(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + if (!m_TriggerStayBodies.Contains(nonRigidPlayerMover)) + { + m_TriggerStayBodies.Add(nonRigidPlayerMover); + } + } + } + + internal bool HandleParentingForTriggerStayBodies(MoverScriptNoRigidbody moverScriptNoRigidbody) + { + if (m_TriggerStayBodies.Contains(moverScriptNoRigidbody)) + { + moverScriptNoRigidbody.SetParent(NetworkObject); + return true; + } + return false; + } + + /// + /// When triggered, the player is deparented from the rotating body. + /// + /// + /// This is only triggered on the owner side since we disable the CharacterController + /// on all non-owner instances. + /// + private void OnTriggerExit(Collider other) + { + if (!IsSpawned || !other.CompareTag(m_TagHandle)) + { + return; + } + + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null) + { + m_TriggerStayBodies.Remove(nonRigidPlayerMover); + if (OnExitTransferParentOnStay && OnExitTransferParentOnStay.HandleParentingForTriggerStayBodies(nonRigidPlayerMover)) + { + return; + } + // Otherwise, set parent back to root + nonRigidPlayerMover.SetParent(null); + } + } + + /// + /// We rotate the body during late update to avoid fighting between the host/owner (depending upon network topology) + /// motion and the body's motion/rotation. + /// + private void LateUpdate() + { + if (!IsSpawned || !CanCommitToTransform) + { + return; + } + + if (m_CurrentNavPoint != null) + { + if (Vector3.Distance(m_CurrentNavPoint.transform.position, transform.position) <= 0.05f) + { + SetNextPoint(); + } + + var direction = (m_CurrentNavPoint.transform.position - transform.position).normalized; + transform.position = Vector3.Lerp(transform.position, transform.position + direction * 10, Time.deltaTime); + } + + if (RotationSpeed > 0.0f) + { + transform.right = Vector3.Lerp(transform.right, transform.forward * m_RotationDirection, Time.deltaTime * RotationSpeed); + } + } +} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs.meta new file mode 100644 index 0000000000..ce0ea09165 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/RotatingBodyLogic.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 374ac199eb18f0f468bc018a722775c2 \ No newline at end of file diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs new file mode 100644 index 0000000000..e2ff41dfa6 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs @@ -0,0 +1,79 @@ +using Unity.Netcode; +using UnityEngine; +using UnityEngine.UI; + +public class ServerHostClientText : NetworkBehaviour +{ + private Text m_DisplayText; + + private Color m_Color; + private Color m_ColorAlpha; + private Vector3 m_LocalPosition; + + public void SetColor(Color color) + { + m_Color = color; + m_ColorAlpha = color; + m_ColorAlpha.a = 0.35f; + } + + private void Awake() + { + m_LocalPosition = transform.localPosition; + m_DisplayText = GetComponent(); + } + + private void Start() + { + if (m_DisplayText != null) + { + m_DisplayText.text = string.Empty; + SetColor(m_DisplayText.color); + } + } + + public override void OnNetworkSpawn() + { + if (m_DisplayText != null) + { + if (NetworkManager.IsServer) + { + m_DisplayText.text = NetworkManager.IsHost ? "Host" : "Server"; + } + else if (NetworkManager.IsClient) + { + m_DisplayText.text = $"Client-{NetworkManager.LocalClientId}"; + } + } + transform.localPosition = m_LocalPosition; + } + + public override void OnNetworkDespawn() + { + if (m_DisplayText != null) + { + m_DisplayText.text = string.Empty; + } + base.OnNetworkDespawn(); + } + + private bool m_LastFocusedValue; + private void OnGUI() + { + if (!IsSpawned || m_LastFocusedValue == Application.isFocused) + { + return; + } + + m_LastFocusedValue = Application.isFocused; + + if (m_LastFocusedValue) + { + m_DisplayText.color = m_Color; + } + else + { + m_DisplayText.color = m_ColorAlpha; + } + } +} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs.meta new file mode 100644 index 0000000000..081f5a96a8 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/ServerHostClientText.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6637cd674efb56a48a3d4d545d23a8d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs b/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs new file mode 100644 index 0000000000..ade22f3ed6 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs @@ -0,0 +1,63 @@ +using UnityEngine; + +/// +/// This helper class is used to push a player away from a rotating body. +/// s without a don't +/// handle collision with rotating bodies. This simulates a "collision". +/// +public class TriggerPush : MonoBehaviour +{ + public enum RightOrLeft + { + Right, + Left + } + + [Tooltip("Determines if this trigger will push the player to the left or right of the root transform")] + public RightOrLeft PushDirection; + + private TagHandle m_TagHandle; + + private void Awake() + { + m_TagHandle = TagHandle.GetExistingTag("Player"); + } + + private void PushObject(Collider other, bool isInside = false) + { + var nonRigidPlayerMover = other.GetComponent(); + if (nonRigidPlayerMover != null && nonRigidPlayerMover.CanCommitToTransform) + { + // We determine the direction to push and if within a trigger we push a little more to prevent from + // completely clipping through the object. + var direction = (PushDirection == RightOrLeft.Right ? 1.0f : -1.0f) * (isInside ? 1.75f : 1.0f); + nonRigidPlayerMover.PushAwayFrom(transform.parent.right * direction); + } + } + + /// + /// Pushes the player away from the object + /// + private void OnTriggerEnter(Collider other) + { + if (!other.CompareTag(m_TagHandle)) + { + return; + } + PushObject(other); + } + + /// + /// When the trigger is in a "stay" state, we need to signal that + /// the amount to "push away" should be increased. + /// + /// + private void OnTriggerStay(Collider other) + { + if (!other.CompareTag(m_TagHandle)) + { + return; + } + PushObject(other, true); + } +} diff --git a/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs.meta b/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs.meta new file mode 100644 index 0000000000..7c07b1ebfc --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Scripts/TriggerPush.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 2c40721ca0fd31645a742e5ad0e0cdc5 \ No newline at end of file diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures.meta new file mode 100644 index 0000000000..84caff0700 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 22c34a08d52a0644fae5e90dbcc0ba52 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png b/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png new file mode 100644 index 0000000000..e2f648aacc Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png.meta new file mode 100644 index 0000000000..305bd2392c --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures/GridPattern.png.meta @@ -0,0 +1,153 @@ +fileFormatVersion: 2 +guid: a092c5fa8c60ed04aa1d72555f1740bc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Windows Store Apps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png new file mode 100644 index 0000000000..3f311d2225 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png.meta new file mode 100644 index 0000000000..3a05497054 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_BaseMap.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: e71f43865e91e6b418bd0d67be2445dc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png new file mode 100644 index 0000000000..df81ac1268 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png.meta new file mode 100644 index 0000000000..bcfe13d8d7 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Emissive.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: 8bf2cf149563066489e749ea032dbca7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png new file mode 100644 index 0000000000..1d060fba61 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png.meta new file mode 100644 index 0000000000..4a5b2ad61c --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_01_Normal.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: b94463ba36040ec4082132c54dd1bbad +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 1 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png new file mode 100644 index 0000000000..b3069b03d1 Binary files /dev/null and b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png differ diff --git a/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png.meta b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png.meta new file mode 100644 index 0000000000..7fbedef673 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Assets/Textures/Grid_02_BaseMap.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: 844faea9c35b2464c8ecb09f66e2e2f8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CharacterControllerMovingBodies/Packages/manifest.json b/Examples/CharacterControllerMovingBodies/Packages/manifest.json new file mode 100644 index 0000000000..de9d632e57 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Packages/manifest.json @@ -0,0 +1,55 @@ +{ + "dependencies": { + "com.unity.2d.sprite": "1.0.0", + "com.unity.2d.tilemap": "1.0.0", + "com.unity.ads": "4.4.2", + "com.unity.ai.navigation": "2.0.3", + "com.unity.analytics": "3.8.1", + "com.unity.collab-proxy": "2.4.4", + "com.unity.feature.development": "1.0.2", + "com.unity.ide.rider": "3.0.31", + "com.unity.ide.visualstudio": "2.0.22", + "com.unity.netcode.gameobjects": "https://github.com/Unity-Technologies/com.unity.netcode.gameobjects.git?path=com.unity.netcode.gameobjects#develop-2.0.0", + "com.unity.purchasing": "4.12.2", + "com.unity.services.multiplayer": "1.0.0-pre.1", + "com.unity.test-framework": "1.4.5", + "com.unity.timeline": "1.8.7", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.9", + "com.unity.transport": "2.3.0", + "com.unity.ugui": "2.0.0", + "com.unity.visualscripting": "1.9.4", + "com.unity.xr.legacyinputhelpers": "2.1.10", + "com.unity.modules.accessibility": "1.0.0", + "com.unity.modules.ai": "1.0.0", + "com.unity.modules.androidjni": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.cloth": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.physics2d": "1.0.0", + "com.unity.modules.screencapture": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.terrainphysics": "1.0.0", + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.umbra": "1.0.0", + "com.unity.modules.unityanalytics": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.unitywebrequesttexture": "1.0.0", + "com.unity.modules.unitywebrequestwww": "1.0.0", + "com.unity.modules.vehicles": "1.0.0", + "com.unity.modules.video": "1.0.0", + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.wind": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } +} diff --git a/Examples/CharacterControllerMovingBodies/ProjectSettings/EditorBuildSettings.asset b/Examples/CharacterControllerMovingBodies/ProjectSettings/EditorBuildSettings.asset new file mode 100644 index 0000000000..a6cd971819 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/ProjectSettings/EditorBuildSettings.asset @@ -0,0 +1,12 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1045 &1 +EditorBuildSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Scenes: + - enabled: 1 + path: Assets/Scenes/CharacterController.unity + guid: 9fc0d4010bbf28b4594072e72b8655ab + m_configObjects: {} + m_UseUCBPForAssetBundles: 0 diff --git a/Examples/CharacterControllerMovingBodies/ProjectSettings/ProjectSettings.asset b/Examples/CharacterControllerMovingBodies/ProjectSettings/ProjectSettings.asset new file mode 100644 index 0000000000..b12ab6ff29 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/ProjectSettings/ProjectSettings.asset @@ -0,0 +1,687 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!129 &1 +PlayerSettings: + m_ObjectHideFlags: 0 + serializedVersion: 28 + productGUID: 6859c206e4885eb4d9a885722be3daa1 + AndroidProfiler: 0 + AndroidFilterTouchesWhenObscured: 0 + AndroidEnableSustainedPerformanceMode: 0 + defaultScreenOrientation: 4 + targetDevice: 2 + useOnDemandResources: 0 + accelerometerFrequency: 60 + companyName: DefaultCompany + productName: CharacterControllerMovingBodies + defaultCursor: {fileID: 0} + cursorHotspot: {x: 0, y: 0} + m_SplashScreenBackgroundColor: {r: 0.12156863, g: 0.12156863, b: 0.1254902, a: 1} + m_ShowUnitySplashScreen: 1 + m_ShowUnitySplashLogo: 1 + m_SplashScreenOverlayOpacity: 1 + m_SplashScreenAnimation: 1 + m_SplashScreenLogoStyle: 1 + m_SplashScreenDrawMode: 0 + m_SplashScreenBackgroundAnimationZoom: 1 + m_SplashScreenLogoAnimationZoom: 1 + m_SplashScreenBackgroundLandscapeAspect: 1 + m_SplashScreenBackgroundPortraitAspect: 1 + m_SplashScreenBackgroundLandscapeUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenBackgroundPortraitUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenLogos: [] + m_VirtualRealitySplashScreen: {fileID: 0} + m_HolographicTrackingLossScreen: {fileID: 0} + defaultScreenWidth: 1920 + defaultScreenHeight: 1080 + defaultScreenWidthWeb: 960 + defaultScreenHeightWeb: 600 + m_StereoRenderingPath: 0 + m_ActiveColorSpace: 0 + unsupportedMSAAFallback: 0 + m_SpriteBatchVertexThreshold: 300 + m_MTRendering: 1 + mipStripping: 0 + numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} + m_StackTraceTypes: 010000000100000001000000010000000100000001000000 + iosShowActivityIndicatorOnLoading: -1 + androidShowActivityIndicatorOnLoading: -1 + iosUseCustomAppBackgroundBehavior: 0 + allowedAutorotateToPortrait: 1 + allowedAutorotateToPortraitUpsideDown: 1 + allowedAutorotateToLandscapeRight: 1 + allowedAutorotateToLandscapeLeft: 1 + useOSAutorotation: 1 + use32BitDisplayBuffer: 1 + preserveFramebufferAlpha: 0 + disableDepthAndStencilBuffers: 0 + androidStartInFullscreen: 1 + androidRenderOutsideSafeArea: 1 + androidUseSwappy: 1 + androidBlitType: 0 + androidResizeableActivity: 1 + androidDefaultWindowWidth: 1920 + androidDefaultWindowHeight: 1080 + androidMinimumWindowWidth: 400 + androidMinimumWindowHeight: 300 + androidFullscreenMode: 1 + androidAutoRotationBehavior: 1 + androidPredictiveBackSupport: 0 + androidApplicationEntry: 2 + defaultIsNativeResolution: 1 + macRetinaSupport: 1 + runInBackground: 0 + captureSingleScreen: 0 + muteOtherAudioSources: 0 + Prepare IOS For Recording: 0 + Force IOS Speakers When Recording: 0 + deferSystemGesturesMode: 0 + hideHomeButton: 0 + submitAnalytics: 1 + usePlayerLog: 1 + dedicatedServerOptimizations: 1 + bakeCollisionMeshes: 0 + forceSingleInstance: 0 + useFlipModelSwapchain: 1 + resizableWindow: 0 + useMacAppStoreValidation: 0 + macAppStoreCategory: public.app-category.games + gpuSkinning: 1 + meshDeformation: 1 + xboxPIXTextureCapture: 0 + xboxEnableAvatar: 0 + xboxEnableKinect: 0 + xboxEnableKinectAutoTracking: 0 + xboxEnableFitness: 0 + visibleInBackground: 1 + allowFullscreenSwitch: 1 + fullscreenMode: 1 + xboxSpeechDB: 0 + xboxEnableHeadOrientation: 0 + xboxEnableGuest: 0 + xboxEnablePIXSampling: 0 + metalFramebufferOnly: 0 + xboxOneResolution: 0 + xboxOneSResolution: 0 + xboxOneXResolution: 3 + xboxOneMonoLoggingLevel: 0 + xboxOneLoggingLevel: 1 + xboxOneDisableEsram: 0 + xboxOneEnableTypeOptimization: 0 + xboxOnePresentImmediateThreshold: 0 + switchQueueCommandMemory: 1048576 + switchQueueControlMemory: 16384 + switchQueueComputeMemory: 262144 + switchNVNShaderPoolsGranularity: 33554432 + switchNVNDefaultPoolsGranularity: 16777216 + switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 + switchNVNMaxPublicTextureIDCount: 0 + switchNVNMaxPublicSamplerIDCount: 0 + switchMaxWorkerMultiple: 8 + switchNVNGraphicsFirmwareMemory: 32 + vulkanNumSwapchainBuffers: 3 + vulkanEnableSetSRGBWrite: 0 + vulkanEnablePreTransform: 0 + vulkanEnableLateAcquireNextImage: 0 + vulkanEnableCommandBufferRecycling: 1 + loadStoreDebugModeEnabled: 0 + visionOSBundleVersion: 1.0 + tvOSBundleVersion: 1.0 + bundleVersion: 1.0 + preloadedAssets: [] + metroInputSource: 0 + wsaTransparentSwapchain: 0 + m_HolographicPauseOnTrackingLoss: 1 + xboxOneDisableKinectGpuReservation: 1 + xboxOneEnable7thCore: 1 + vrSettings: + enable360StereoCapture: 0 + isWsaHolographicRemotingEnabled: 0 + enableFrameTimingStats: 0 + enableOpenGLProfilerGPURecorders: 1 + allowHDRDisplaySupport: 0 + useHDRDisplay: 0 + hdrBitDepth: 0 + m_ColorGamuts: 00000000 + targetPixelDensity: 30 + resolutionScalingMode: 0 + resetResolutionOnWindowResize: 0 + androidSupportedAspectRatio: 1 + androidMaxAspectRatio: 2.1 + androidMinAspectRatio: 1 + applicationIdentifier: + Standalone: com.DefaultCompany.CharacterControllerMovingBodies + buildNumber: + Standalone: 0 + VisionOS: 0 + iPhone: 0 + tvOS: 0 + overrideDefaultApplicationIdentifier: 0 + AndroidBundleVersionCode: 1 + AndroidMinSdkVersion: 23 + AndroidTargetSdkVersion: 0 + AndroidPreferredInstallLocation: 1 + aotOptions: + stripEngineCode: 1 + iPhoneStrippingLevel: 0 + iPhoneScriptCallOptimization: 0 + ForceInternetPermission: 0 + ForceSDCardPermission: 0 + CreateWallpaper: 0 + androidSplitApplicationBinary: 0 + keepLoadedShadersAlive: 0 + StripUnusedMeshComponents: 0 + strictShaderVariantMatching: 0 + VertexChannelCompressionMask: 4054 + iPhoneSdkVersion: 988 + iOSSimulatorArchitecture: 0 + iOSTargetOSVersionString: 13.0 + tvOSSdkVersion: 0 + tvOSSimulatorArchitecture: 0 + tvOSRequireExtendedGameController: 0 + tvOSTargetOSVersionString: 13.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 + uIPrerenderedIcon: 0 + uIRequiresPersistentWiFi: 0 + uIRequiresFullScreen: 1 + uIStatusBarHidden: 1 + uIExitOnSuspend: 0 + uIStatusBarStyle: 0 + appleTVSplashScreen: {fileID: 0} + appleTVSplashScreen2x: {fileID: 0} + tvOSSmallIconLayers: [] + tvOSSmallIconLayers2x: [] + tvOSLargeIconLayers: [] + tvOSLargeIconLayers2x: [] + tvOSTopShelfImageLayers: [] + tvOSTopShelfImageLayers2x: [] + tvOSTopShelfImageWideLayers: [] + tvOSTopShelfImageWideLayers2x: [] + iOSLaunchScreenType: 0 + iOSLaunchScreenPortrait: {fileID: 0} + iOSLaunchScreenLandscape: {fileID: 0} + iOSLaunchScreenBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreenFillPct: 100 + iOSLaunchScreenSize: 100 + iOSLaunchScreeniPadType: 0 + iOSLaunchScreeniPadImage: {fileID: 0} + iOSLaunchScreeniPadBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreeniPadFillPct: 100 + iOSLaunchScreeniPadSize: 100 + iOSLaunchScreenCustomStoryboardPath: + iOSLaunchScreeniPadCustomStoryboardPath: + iOSDeviceRequirements: [] + iOSURLSchemes: [] + macOSURLSchemes: [] + iOSBackgroundModes: 0 + iOSMetalForceHardShadows: 0 + metalEditorSupport: 1 + metalAPIValidation: 1 + metalCompileShaderBinary: 0 + iOSRenderExtraFrameOnPause: 0 + iosCopyPluginsCodeInsteadOfSymlink: 0 + appleDeveloperTeamID: + iOSManualSigningProvisioningProfileID: + tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: + iOSManualSigningProvisioningProfileType: 0 + tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 + appleEnableAutomaticSigning: 0 + iOSRequireARKit: 0 + iOSAutomaticallyDetectAndAddCapabilities: 1 + appleEnableProMotion: 0 + shaderPrecisionModel: 0 + clonedFromGUID: 00000000000000000000000000000000 + templatePackageId: + templateDefaultScene: + useCustomMainManifest: 0 + useCustomLauncherManifest: 0 + useCustomMainGradleTemplate: 0 + useCustomLauncherGradleManifest: 0 + useCustomBaseGradleTemplate: 0 + useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 + useCustomProguardFile: 0 + AndroidTargetArchitectures: 2 + AndroidSplashScreenScale: 0 + androidSplashScreen: {fileID: 0} + AndroidKeystoreName: + AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 + AndroidEnableArm64MTE: 0 + AndroidBuildApkPerCpuArchitecture: 0 + AndroidTVCompatibility: 0 + AndroidIsGame: 1 + AndroidEnableTango: 0 + androidEnableBanner: 1 + androidUseLowAccuracyLocation: 0 + androidUseCustomKeystore: 0 + m_AndroidBanners: + - width: 320 + height: 180 + banner: {fileID: 0} + androidGamepadSupportLevel: 0 + AndroidMinifyRelease: 0 + AndroidMinifyDebug: 0 + AndroidValidateAppBundleSize: 1 + AndroidAppBundleSizeToValidate: 200 + AndroidReportGooglePlayAppDependencies: 1 + androidSymbolsSizeThreshold: 800 + m_BuildTargetIcons: [] + m_BuildTargetPlatformIcons: [] + m_BuildTargetBatching: [] + m_BuildTargetShaderSettings: [] + m_BuildTargetGraphicsJobs: [] + m_BuildTargetGraphicsJobMode: [] + m_BuildTargetGraphicsAPIs: [] + m_BuildTargetVRSettings: [] + m_DefaultShaderChunkSizeInMB: 16 + m_DefaultShaderChunkCount: 0 + openGLRequireES31: 0 + openGLRequireES31AEP: 0 + openGLRequireES32: 0 + m_TemplateCustomTags: {} + mobileMTRendering: + Android: 1 + VisionOS: 1 + iPhone: 1 + tvOS: 1 + m_BuildTargetGroupLightmapEncodingQuality: [] + m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] + m_BuildTargetNormalMapEncoding: [] + m_BuildTargetDefaultTextureCompressionFormat: [] + playModeTestRunnerEnabled: 0 + runPlayModeTestAsEditModeTest: 0 + actionOnDotNetUnhandledException: 1 + enableInternalProfiler: 0 + logObjCUncaughtExceptions: 1 + enableCrashReportAPI: 0 + cameraUsageDescription: + locationUsageDescription: + microphoneUsageDescription: + bluetoothUsageDescription: + macOSTargetOSVersion: 11.0 + switchNMETAOverride: + switchNetLibKey: + switchSocketMemoryPoolSize: 6144 + switchSocketAllocatorPoolSize: 128 + switchSocketConcurrencyLimit: 14 + switchScreenResolutionBehavior: 2 + switchUseCPUProfiler: 0 + switchEnableFileSystemTrace: 0 + switchLTOSetting: 0 + switchApplicationID: 0x01004b9000490000 + switchNSODependencies: + switchCompilerFlags: + switchTitleNames_0: + switchTitleNames_1: + switchTitleNames_2: + switchTitleNames_3: + switchTitleNames_4: + switchTitleNames_5: + switchTitleNames_6: + switchTitleNames_7: + switchTitleNames_8: + switchTitleNames_9: + switchTitleNames_10: + switchTitleNames_11: + switchTitleNames_12: + switchTitleNames_13: + switchTitleNames_14: + switchTitleNames_15: + switchPublisherNames_0: + switchPublisherNames_1: + switchPublisherNames_2: + switchPublisherNames_3: + switchPublisherNames_4: + switchPublisherNames_5: + switchPublisherNames_6: + switchPublisherNames_7: + switchPublisherNames_8: + switchPublisherNames_9: + switchPublisherNames_10: + switchPublisherNames_11: + switchPublisherNames_12: + switchPublisherNames_13: + switchPublisherNames_14: + switchPublisherNames_15: + switchIcons_0: {fileID: 0} + switchIcons_1: {fileID: 0} + switchIcons_2: {fileID: 0} + switchIcons_3: {fileID: 0} + switchIcons_4: {fileID: 0} + switchIcons_5: {fileID: 0} + switchIcons_6: {fileID: 0} + switchIcons_7: {fileID: 0} + switchIcons_8: {fileID: 0} + switchIcons_9: {fileID: 0} + switchIcons_10: {fileID: 0} + switchIcons_11: {fileID: 0} + switchIcons_12: {fileID: 0} + switchIcons_13: {fileID: 0} + switchIcons_14: {fileID: 0} + switchIcons_15: {fileID: 0} + switchSmallIcons_0: {fileID: 0} + switchSmallIcons_1: {fileID: 0} + switchSmallIcons_2: {fileID: 0} + switchSmallIcons_3: {fileID: 0} + switchSmallIcons_4: {fileID: 0} + switchSmallIcons_5: {fileID: 0} + switchSmallIcons_6: {fileID: 0} + switchSmallIcons_7: {fileID: 0} + switchSmallIcons_8: {fileID: 0} + switchSmallIcons_9: {fileID: 0} + switchSmallIcons_10: {fileID: 0} + switchSmallIcons_11: {fileID: 0} + switchSmallIcons_12: {fileID: 0} + switchSmallIcons_13: {fileID: 0} + switchSmallIcons_14: {fileID: 0} + switchSmallIcons_15: {fileID: 0} + switchManualHTML: + switchAccessibleURLs: + switchLegalInformation: + switchMainThreadStackSize: 1048576 + switchPresenceGroupId: + switchLogoHandling: 0 + switchReleaseVersion: 0 + switchDisplayVersion: 1.0.0 + switchStartupUserAccount: 0 + switchSupportedLanguagesMask: 0 + switchLogoType: 0 + switchApplicationErrorCodeCategory: + switchUserAccountSaveDataSize: 0 + switchUserAccountSaveDataJournalSize: 0 + switchApplicationAttribute: 0 + switchCardSpecSize: -1 + switchCardSpecClock: -1 + switchRatingsMask: 0 + switchRatingsInt_0: 0 + switchRatingsInt_1: 0 + switchRatingsInt_2: 0 + switchRatingsInt_3: 0 + switchRatingsInt_4: 0 + switchRatingsInt_5: 0 + switchRatingsInt_6: 0 + switchRatingsInt_7: 0 + switchRatingsInt_8: 0 + switchRatingsInt_9: 0 + switchRatingsInt_10: 0 + switchRatingsInt_11: 0 + switchRatingsInt_12: 0 + switchLocalCommunicationIds_0: + switchLocalCommunicationIds_1: + switchLocalCommunicationIds_2: + switchLocalCommunicationIds_3: + switchLocalCommunicationIds_4: + switchLocalCommunicationIds_5: + switchLocalCommunicationIds_6: + switchLocalCommunicationIds_7: + switchParentalControl: 0 + switchAllowsScreenshot: 1 + switchAllowsVideoCapturing: 1 + switchAllowsRuntimeAddOnContentInstall: 0 + switchDataLossConfirmation: 0 + switchUserAccountLockEnabled: 0 + switchSystemResourceMemory: 16777216 + switchSupportedNpadStyles: 22 + switchNativeFsCacheSize: 32 + switchIsHoldTypeHorizontal: 1 + switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 + switchSocketConfigEnabled: 0 + switchTcpInitialSendBufferSize: 32 + switchTcpInitialReceiveBufferSize: 64 + switchTcpAutoSendBufferSizeMax: 256 + switchTcpAutoReceiveBufferSizeMax: 256 + switchUdpSendBufferSize: 9 + switchUdpReceiveBufferSize: 42 + switchSocketBufferEfficiency: 4 + switchSocketInitializeEnabled: 1 + switchNetworkInterfaceManagerInitializeEnabled: 1 + switchDisableHTCSPlayerConnection: 0 + switchUseNewStyleFilepaths: 1 + switchUseLegacyFmodPriorities: 0 + switchUseMicroSleepForYield: 1 + switchEnableRamDiskSupport: 0 + switchMicroSleepForYieldTime: 25 + switchRamDiskSpaceSize: 12 + switchUpgradedPlayerSettingsToNMETA: 0 + ps4NPAgeRating: 12 + ps4NPTitleSecret: + ps4NPTrophyPackPath: + ps4ParentalLevel: 11 + ps4ContentID: ED1633-NPXX51362_00-0000000000000000 + ps4Category: 0 + ps4MasterVersion: 01.00 + ps4AppVersion: 01.00 + ps4AppType: 0 + ps4ParamSfxPath: + ps4VideoOutPixelFormat: 0 + ps4VideoOutInitialWidth: 1920 + ps4VideoOutBaseModeInitialWidth: 1920 + ps4VideoOutReprojectionRate: 60 + ps4PronunciationXMLPath: + ps4PronunciationSIGPath: + ps4BackgroundImagePath: + ps4StartupImagePath: + ps4StartupImagesFolder: + ps4IconImagesFolder: + ps4SaveDataImagePath: + ps4SdkOverride: + ps4BGMPath: + ps4ShareFilePath: + ps4ShareOverlayImagePath: + ps4PrivacyGuardImagePath: + ps4ExtraSceSysFile: + ps4NPtitleDatPath: + ps4RemotePlayKeyAssignment: -1 + ps4RemotePlayKeyMappingDir: + ps4PlayTogetherPlayerCount: 0 + ps4EnterButtonAssignment: 2 + ps4ApplicationParam1: 0 + ps4ApplicationParam2: 0 + ps4ApplicationParam3: 0 + ps4ApplicationParam4: 0 + ps4DownloadDataSize: 0 + ps4GarlicHeapSize: 2048 + ps4ProGarlicHeapSize: 2560 + playerPrefsMaxSize: 32768 + ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ + ps4pnSessions: 1 + ps4pnPresence: 1 + ps4pnFriends: 1 + ps4pnGameCustomData: 1 + playerPrefsSupport: 0 + enableApplicationExit: 0 + resetTempFolder: 1 + restrictedAudioUsageRights: 0 + ps4UseResolutionFallback: 0 + ps4ReprojectionSupport: 0 + ps4UseAudio3dBackend: 0 + ps4UseLowGarlicFragmentationMode: 1 + ps4SocialScreenEnabled: 0 + ps4ScriptOptimizationLevel: 2 + ps4Audio3dVirtualSpeakerCount: 14 + ps4attribCpuUsage: 0 + ps4PatchPkgPath: + ps4PatchLatestPkgPath: + ps4PatchChangeinfoPath: + ps4PatchDayOne: 0 + ps4attribUserManagement: 0 + ps4attribMoveSupport: 0 + ps4attrib3DSupport: 0 + ps4attribShareSupport: 0 + ps4attribExclusiveVR: 0 + ps4disableAutoHideSplash: 0 + ps4videoRecordingFeaturesUsed: 0 + ps4contentSearchFeaturesUsed: 0 + ps4CompatibilityPS5: 0 + ps4AllowPS5Detection: 0 + ps4GPU800MHz: 1 + ps4attribEyeToEyeDistanceSettingVR: 0 + ps4IncludedModules: [] + ps4attribVROutputEnabled: 0 + monoEnv: + splashScreenBackgroundSourceLandscape: {fileID: 0} + splashScreenBackgroundSourcePortrait: {fileID: 0} + blurSplashScreenBackground: 1 + spritePackerPolicy: + webGLMemorySize: 32 + webGLExceptionSupport: 1 + webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 + webGLDataCaching: 1 + webGLDebugSymbols: 0 + webGLEmscriptenArgs: + webGLModulesDirectory: + webGLTemplate: APPLICATION:Default + webGLAnalyzeBuildSize: 0 + webGLUseEmbeddedResources: 0 + webGLCompressionFormat: 1 + webGLWasmArithmeticExceptions: 0 + webGLLinkerTarget: 1 + webGLThreadsSupport: 0 + webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 + webGLEnableWebGPU: 0 + webGLPowerPreference: 2 + webGLWebAssemblyTable: 0 + webGLWebAssemblyBigInt: 0 + webGLCloseOnQuit: 0 + webWasm2023: 0 + scriptingDefineSymbols: {} + additionalCompilerArguments: {} + platformArchitecture: {} + scriptingBackend: {} + il2cppCompilerConfiguration: {} + il2cppCodeGeneration: {} + il2cppStacktraceInformation: {} + managedStrippingLevel: {} + incrementalIl2cppBuild: {} + suppressCommonWarnings: 1 + allowUnsafeCode: 0 + useDeterministicCompilation: 1 + additionalIl2CppArgs: + scriptingRuntimeVersion: 1 + gcIncremental: 1 + gcWBarrierValidation: 0 + apiCompatibilityLevelPerPlatform: {} + editorAssembliesCompatibilityLevel: 1 + m_RenderingPath: 1 + m_MobileRenderingPath: 1 + metroPackageName: CharacterControllerMovingBodies + metroPackageVersion: 1.0.0.0 + metroCertificatePath: + metroCertificatePassword: + metroCertificateSubject: + metroCertificateIssuer: + metroCertificateNotAfter: 0000000000000000 + metroApplicationDescription: CharacterControllerMovingBodies + wsaImages: {} + metroTileShortName: CharacterControllerMovingBodies + metroTileShowName: 0 + metroMediumTileShowName: 0 + metroLargeTileShowName: 0 + metroWideTileShowName: 0 + metroSupportStreamingInstall: 0 + metroLastRequiredScene: 0 + metroDefaultTileSize: 1 + metroTileForegroundText: 2 + metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} + metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} + metroSplashScreenUseBackgroundColor: 0 + syncCapabilities: 0 + platformCapabilities: {} + metroTargetDeviceFamilies: {} + metroFTAName: + metroFTAFileTypes: [] + metroProtocolName: + vcxProjDefaultLanguage: + XboxOneProductId: + XboxOneUpdateKey: + XboxOneSandboxId: + XboxOneContentId: + XboxOneTitleId: + XboxOneSCId: + XboxOneGameOsOverridePath: + XboxOnePackagingOverridePath: + XboxOneAppManifestOverridePath: + XboxOneVersion: 1.0.0.0 + XboxOnePackageEncryption: 0 + XboxOnePackageUpdateGranularity: 2 + XboxOneDescription: + XboxOneLanguage: + - enus + XboxOneCapability: [] + XboxOneGameRating: {} + XboxOneIsContentPackage: 0 + XboxOneEnhancedXboxCompatibilityMode: 0 + XboxOneEnableGPUVariability: 1 + XboxOneSockets: {} + XboxOneSplashScreen: {fileID: 0} + XboxOneAllowedProductIds: [] + XboxOnePersistentLocalStorageSize: 0 + XboxOneXTitleMemory: 8 + XboxOneOverrideIdentityName: + XboxOneOverrideIdentityPublisher: + vrEditorSettings: {} + cloudServicesEnabled: {} + luminIcon: + m_Name: + m_ModelFolderPath: + m_PortalFolderPath: + luminCert: + m_CertPath: + m_SignPackage: 1 + luminIsChannelApp: 0 + luminVersion: + m_VersionCode: 1 + m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 0 + embeddedLinuxEnableGamepadInput: 0 + hmiCpuConfiguration: + hmiLogStartupTiming: 0 + qnxGraphicConfPath: + apiCompatibilityLevel: 6 + captureStartupLogs: {} + activeInputHandler: 0 + windowsGamepadBackendHint: 0 + cloudProjectId: + framebufferDepthMemorylessMode: 0 + qualitySettingsNames: [] + projectName: + organizationId: + cloudEnabled: 0 + legacyClampBlendShapeWeights: 0 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 + virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 + androidVulkanDenyFilterList: [] + androidVulkanAllowFilterList: [] diff --git a/Examples/CharacterControllerMovingBodies/Readme.md b/Examples/CharacterControllerMovingBodies/Readme.md new file mode 100644 index 0000000000..2403b27a35 --- /dev/null +++ b/Examples/CharacterControllerMovingBodies/Readme.md @@ -0,0 +1,27 @@ +# Netcode for GameObjects Smooth Transform Space Transitions +## Non-Rigidbody CharacterController Parenting with Moving Bodies +![image](https://github.com/user-attachments/assets/096953ca-5d7d-40d5-916b-72212575d258) +This example provides you with the fundamental building blocks for smooth synchronized transitions between two non-rigidbody based objects. This includes transitioning from world to local, local to world, and local to local transform spaces. + +### The `CharacterController` +![image](https://github.com/user-attachments/assets/13c627bd-920d-40c8-8947-69aa37b44ebf) +The `CharacterController` component is assigned to the `PlayerNoRigidbody` player prefab. It includes a `MoverScriptNoRigidbody` that handles all of the player's motion and includes some additional "non-rigidbody to non-rigidbody" collision handling logic that is applied when a player bumps into a rotation and/or moving body. The player prefab includes a child "PlayerBallPrime" that rotates around the player in local space (nested `NetworkTransform`), and the "PlayerBallPrime" has 3 children ("PlayerBallChild1-3") that each rotates around a different axis of the "PlayerBallPrime". While the end resulting effect is kind of cool looking, they provide a point of reference as to whether there is any deviation of each child's given axial path relative to each parent level. Additionally, it shows how tick synchronized nested `NetworkTransform` components keep synchronized with their parent and how that persists when the parent is parented or has its parent removed. + +### Rotating Bodies +#### StationaryBodyA&B +The stationary bodies are representative of changing the parenting of a `NetworkObject` between two `NetworkObject` instances while remaining in local space, interpolating, and smoothly transitioning between the two parents. +![image](https://github.com/user-attachments/assets/1b234fdc-efc9-4053-a947-531c4fe5dd96) + +#### RotatingBody +The RotatingBody are just provide an example of a rotating non-Rigidbody object and one way to handle a rotation based collision. This also tests world to local and local to world transform space updates. +![image](https://github.com/user-attachments/assets/f5da2374-08b6-4eeb-9a4a-cddc67ecb33b) + +#### MovingRotatingBody & ElevatorBody +Both of these bodies use a simple path to follow. +The MovingRotatingBody moves between two points on the world Z-axis and rotates while moving. The ElevatorBody moves between 4 points (forming a rectangular path) to show motion on more than one axis. +![image](https://github.com/user-attachments/assets/146912eb-0dcc-4089-a6ba-3e0dbb51fd4e) + + +### Example Limitations +This example is primarily to provide a starting point for anyone interested in exploring a non-Rigidbody motion based project and is not to be considered a full working solution but more of a place to start. As an example. you might notice there is no consideration of Y-axis motion when on the elevator so it impacts the `MoverScriptNoRigidbody` jumping. This could be extended to take into consideration the bodies within the `RotatingBodyLogic` script that would increase the upward velocity amount when on a moving body that does move in the Y Axis. This could be further extended by adding a `MonoBehaviour` component to the path points that define its direction of movement or by a normalized direction vector between points to determine the movement of the body. These kind of details are left up to you to determine what style best fits your project. + diff --git a/Examples/PingTool/.gitignore b/Examples/PingTool/.gitignore new file mode 100644 index 0000000000..2800399634 --- /dev/null +++ b/Examples/PingTool/.gitignore @@ -0,0 +1,83 @@ +# 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/ +/[Uu]ser[Ss]ettings/ + +# MemoryCaptures can get excessive in size. +# They also could contain extremely sensitive data +/[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 + +# Unity3D generated meta files +*.pidb.meta +*.pdb.meta +*.mdb.meta + +# Unity3D generated file on crash reports +sysinfo.txt + +# Builds +*.apk +*.aab +*.unitypackage + +# Crashlytics generated file +crashlytics-build.properties + +# Packed Addressables +/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin* + +# Temporary auto-generated Android Assets +/[Aa]ssets/[Ss]treamingAssets/aa.meta +/[Aa]ssets/[Ss]treamingAssets/aa/* +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json +/[Aa]ssets/[Ss]treamingAssets/BuildInfo.json.meta + +# Secrets +*.pem +*.pem.meta + +InitTestScene* + +boot.config +SceneTemplateSettings.json +*BurstAotSettings*.json diff --git a/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset b/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset new file mode 100644 index 0000000000..72cef84a6d --- /dev/null +++ b/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset @@ -0,0 +1,31 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e651dbb3fbac04af2b8f5abf007ddc23, type: 3} + m_Name: DefaultNetworkPrefabs + m_EditorClassIdentifier: + IsDefault: 1 + List: + - Override: 0 + Prefab: {fileID: 8921789205124766477, guid: 89b57e576a8d47643b2dbd45b1f8cab1, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 4874009706086500699, guid: 3f5e8ae5613c82a4f9f859c11a4f2e09, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} + - Override: 0 + Prefab: {fileID: 3439633038736912633, guid: 398aad09d8b2a47eba664a076763cdcc, type: 3} + SourcePrefabToOverride: {fileID: 0} + SourceHashToOverride: 0 + OverridingTargetPrefab: {fileID: 0} diff --git a/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset.meta b/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset.meta new file mode 100644 index 0000000000..fee27b3ade --- /dev/null +++ b/Examples/PingTool/Assets/DefaultNetworkPrefabs.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa82390bfdde2564f828b8e5be375282 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials.meta b/Examples/PingTool/Assets/Materials.meta new file mode 100644 index 0000000000..463de70d61 --- /dev/null +++ b/Examples/PingTool/Assets/Materials.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d5b7ad71451c27e4291295cfffc10328 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/ChildLocal.mat b/Examples/PingTool/Assets/Materials/ChildLocal.mat new file mode 100644 index 0000000000..b6fd2dd9a1 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildLocal.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocal + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.8980392, g: 0.039215658, b: 0.7682729, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/ChildLocal.mat.meta b/Examples/PingTool/Assets/Materials/ChildLocal.mat.meta new file mode 100644 index 0000000000..35e4d565be --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildLocal.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 45fc555bc05bfee4ab8b0d536799ecee +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat b/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat new file mode 100644 index 0000000000..c44172e7a7 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildLocalNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.78592235, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat.meta b/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat.meta new file mode 100644 index 0000000000..3a26e43d98 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildLocalNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: affef70511a06dd46b8f52636020af4a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/ChildWorld.mat b/Examples/PingTool/Assets/Materials/ChildWorld.mat new file mode 100644 index 0000000000..0c2bf4b187 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildWorld.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorld + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.3783494, g: 0.039215658, b: 0.8980392, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/ChildWorld.mat.meta b/Examples/PingTool/Assets/Materials/ChildWorld.mat.meta new file mode 100644 index 0000000000..9a00ded8c6 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildWorld.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 15d0bda12a233964086aee5c0c357e24 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat b/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat new file mode 100644 index 0000000000..86b27eb5c9 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ChildWorldNoParentSync + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _ALPHAPREMULTIPLY_ON + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 0.039215658, g: 0.8980392, b: 0.09095798, a: 0.2509804} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat.meta b/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat.meta new file mode 100644 index 0000000000..5ab7ff2e72 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/ChildWorldNoParentSync.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a5e199307b2e0894294d9c8bee99a691 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/Direction.mat b/Examples/PingTool/Assets/Materials/Direction.mat new file mode 100644 index 0000000000..ed5ed117c3 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/Direction.mat @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Direction + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8962264, g: 0.52830994, b: 0.038047332, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/Direction.mat.meta b/Examples/PingTool/Assets/Materials/Direction.mat.meta new file mode 100644 index 0000000000..c93791fac0 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/Direction.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5324c76c2bab7344badd5ea27a40bcb5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/GridPattern.mat b/Examples/PingTool/Assets/Materials/GridPattern.mat new file mode 100644 index 0000000000..f44981f387 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/GridPattern.mat @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GridPattern + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _GLOSSYREFLECTIONS_OFF + - _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 1 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: a092c5fa8c60ed04aa1d72555f1740bc, type: 3} + m_Scale: {x: 6, y: 6} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0.785 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 1 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0.254717, g: 0.23188858, b: 0.23188858, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/GridPattern.mat.meta b/Examples/PingTool/Assets/Materials/GridPattern.mat.meta new file mode 100644 index 0000000000..cbca0f4485 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/GridPattern.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 42c4a0ad1f9d67a45b12f68697321aad +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/Ground.mat b/Examples/PingTool/Assets/Materials/Ground.mat new file mode 100644 index 0000000000..252ea1a0ed --- /dev/null +++ b/Examples/PingTool/Assets/Materials/Ground.mat @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Ground + m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.14769986, g: 0.1509434, b: 0.1473834, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/Ground.mat.meta b/Examples/PingTool/Assets/Materials/Ground.mat.meta new file mode 100644 index 0000000000..6dbcac16d3 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/Ground.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c73b921ea39f4344a19c2d1c7d6b314 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/Materials/PlayerMaterial.mat b/Examples/PingTool/Assets/Materials/PlayerMaterial.mat new file mode 100644 index 0000000000..e7f5729956 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/PlayerMaterial.mat @@ -0,0 +1,80 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlayerMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Examples/PingTool/Assets/Materials/PlayerMaterial.mat.meta b/Examples/PingTool/Assets/Materials/PlayerMaterial.mat.meta new file mode 100644 index 0000000000..1ceca58536 --- /dev/null +++ b/Examples/PingTool/Assets/Materials/PlayerMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 44e292334941fe148b997ca2b01b5789 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/PingTool.meta b/Examples/PingTool/Assets/PingTool.meta new file mode 100644 index 0000000000..ba9359124c --- /dev/null +++ b/Examples/PingTool/Assets/PingTool.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce8d435e959ea9a41b4c776fc31f9550 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PingTool/Assets/PingTool/NetStateMonitorConfiguration.asset b/Examples/PingTool/Assets/PingTool/NetStateMonitorConfiguration.asset new file mode 100644 index 0000000000..8748ea24db --- /dev/null +++ b/Examples/PingTool/Assets/PingTool/NetStateMonitorConfiguration.asset @@ -0,0 +1,188 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f51159758cdc14734b2cb6ec1e40e18e, type: 3} + m_Name: NetStateMonitorConfiguration + m_EditorClassIdentifier: + k__BackingField: + - k__BackingField: 1 + k__BackingField: 2 +