-
Notifications
You must be signed in to change notification settings - Fork 1k
Unity related changes #690
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
atteneder
wants to merge
71
commits into
google:main
Choose a base branch
from
atteneder:unity
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
Show all changes
71 commits
Select commit
Hold shift + click to select a range
cacdb96
feat: Split up Decoder::DecodeMeshFromBuffer into two steps. Step 1 p…
atteneder ac08ac8
feat: Added option to convert mesh's coordinate space from right-hand…
atteneder 5780e03
fix: Compilation for Emscripten
atteneder 84cd91a
fix: Brought back DecodeBufferToGeometry (combined Step 1+2), which f…
atteneder 0f3e467
feat: GitHub action to build Unity libraries
atteneder 6f5f750
fix: UWP arm builds
atteneder 65be1ed
fix: Ensure iOS bitcode generation
atteneder ac1abbf
fix: UWP arm builds
atteneder ff8e6be
feat: Added library that has C bindings for encoding meshes in Unity.
atteneder ce7ca01
fix: Initial, working version of draco encoding in Unity
atteneder 59fabf4
feat: Next version of encoder based on Blender-glTF-IO C bindings yie…
atteneder e9518e9
feat: Added dracoenc_unity to GH actions build for Editor platforms (…
atteneder c568382
fix: MSVC compiler error
atteneder dab5b10
chore: renamed GH action yaml
atteneder 5ab3b31
fix: dracodec_unity is a smaller, single file static lib now for Emsc…
atteneder 615d29c
fix: Renamed action
atteneder ffad4bf
feat: Exposing both encode and decode speed for better fine-tuning
atteneder d969298
fix: Increase backwards compatibility by building Linux libs on Ubunt…
atteneder 1dfaa56
fix: consistent GH action version
atteneder c25c02a
chore: split up long commands/lines
atteneder 09cf8cd
fix: Pinned Xcode version to current live stable
atteneder d7e70ca
fix: Replaced manual ninja-build installation with GH action
atteneder f3061b2
fix: Simplified iOS C++ flag settings
atteneder a62b35f
fix: Simplified WindowsStore C++ flag settings
atteneder 833c4dc
fix: Removing 32 bit Linux build (not supported anymore in Unity 2019…
atteneder 95ae62d
fix: rollback using specific Xcode version
atteneder 2143837
fix: Pinning gha-setup-ninja version
atteneder 00fb3e7
fix: Changed the way coordinate system is converted. Instead of flipp…
atteneder e22c11c
feat: Updated Android NDK to r21e and use GH action for installing it
atteneder ca88721
feat: Updated Emscripten build required for Unity 2021.2
atteneder 59d1bb2
feat: Added support for 16 bit unsigned integer indices to the Unity …
atteneder e2d85b9
feat: Avoid allocation of temporary index buffer by writing indices i…
atteneder 0446a90
add point cloud compression to DRACO_GLTF options
camnewnham 884aab3
Allow DracoMesh to be point cloud (zero faces)
camnewnham cd74db5
decode correct type
camnewnham 7a59a3e
Add is_point_cloud
camnewnham 181d832
default to edgebreaker encoding
camnewnham ce78fca
add support for point cloud encoding
camnewnham 1b565b6
add support for overriding component count (padding color attributes)
camnewnham 1a9465e
chore: Build parameter was renamed
atteneder eeaacc1
feat: Another Emscripten build (version 3.1.8)
atteneder fad7797
Add builds for dracoenc_unity for all platforms
camnewnham f8edba6
Update unity.yml
camnewnham a6fef05
Update unity.yml
camnewnham 6e72149
Update unity.yml
camnewnham 7da92f6
Update unity.yml
camnewnham 792c81a
feat: Added Emscripten 3.1.8 encoder build
atteneder aa0ee9d
fix: Upgrade to windows-2022 to use VS 17
atteneder d08d253
fix: Limit action to releases on unity branch with unity prefixed tag…
atteneder 97cace0
fix: Conflicting Emscripten cache folders
atteneder 0ef74be
fix: typo
atteneder c00ed7b
feat: Easier WebGL binary structure
atteneder c00b810
chore: Updated download-artifact action
atteneder 81afe07
chore: Updated Ubuntu image (18.04 is obsolete now)
atteneder 09cf382
chore: Ignoring various files
atteneder 950dcf6
feat: Support for flipping indices/attributes left-handed to right-ha…
atteneder 6c24182
feat: `dracoEncoderGetEncodeBuffer` gives direct access to the encode…
atteneder a28e4f4
fix: Variable length arrays are not portable C++ (gave errors in MSVC)
atteneder 022589f
feat: Added iOS Simulator binaries
atteneder 34e7728
fix: Replace Ninja setup GitHub action that uses deprecated node.js v…
atteneder a4ee405
Draco Unity native libs refactor (#2)
atteneder 8870e23
Added Unity WebGL sub-packages (#3)
atteneder 402b299
Unity Binaries 3.0.0 and Unity WebGL packages 1.0.0-pre.1 (#4)
atteneder afd6b4e
chore: Post-release (#5)
atteneder 7a4a3e2
fix: Removed warning about missing main package when it was installed…
atteneder fe505f4
chore: Consistent job names
atteneder 2dbfc76
feat: Unity Android x86_64 binary (for Chrome OS)
atteneder 5a8dd8b
Unity Binaries 3.1.0 and Unity WebGL packages 1.0.0-pre.2
atteneder 7dce9c5
chore: Post-release (#9)
atteneder 6c066d8
fix: Adding full license to third party notices. (#10)
atteneder 921a399
Unity WebGL packages 1.0.0
atteneder File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,6 @@ | ||
docs/_site | ||
|
||
/.vscode | ||
/build* | ||
|
||
.DS_Store |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
log_path: "test_results~" | ||
|
||
artifactory_url: "https://artifactory.prd.cds.internal.unity3d.com/artifactory" | ||
homebrew_url: "[email protected]:unity/homebrew-unity.git" | ||
|
||
sonarqube_ci: | ||
url: "https://sonarqube.internal.unity3d.com" | ||
dependency: | ||
name: "com.unity.ide.rider" | ||
version: "3.0.13" | ||
analysis: | ||
- pr | ||
- branch | ||
|
||
generic_project_path: .yamato/common/test_project~ | ||
player_path: build/player | ||
|
||
npm_registry: "https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-candidates" | ||
upm_ci_registry: "https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm" | ||
|
||
ci: | ||
win: | ||
env_sonar_token: "!SONARQUBE_PROD_ACCESS_TOKEN!" | ||
env_unity_path: "%UNITY_EDITOR_PATH%" | ||
env_yamato_src_dir: "%YAMATO_SOURCE_DIR%" | ||
tool_utr: "utr.bat" | ||
android: | ||
env_sonar_token: "!SONARQUBE_PROD_ACCESS_TOKEN!" | ||
env_unity_path: "%UNITY_EDITOR_PATH%" | ||
env_yamato_src_dir: "%YAMATO_SOURCE_DIR%" | ||
tool_utr: "utr.bat" | ||
mac: | ||
env_sonar_token: "$SONARQUBE_PROD_ACCESS_TOKEN" | ||
env_unity_path: "$UNITY_EDITOR_PATH" | ||
env_yamato_src_dir: "$YAMATO_SOURCE_DIR" | ||
tool_utr: "./utr" | ||
|
||
editor_component: | ||
android: | ||
args: "-c Android" | ||
ios: | ||
args: "-c iOS" | ||
|
||
build_and_run: [ build, run ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
is_monorepo: !!bool true | ||
enable_nightly: !!bool true | ||
using_submodule: !!bool false | ||
git_main_branch: main | ||
|
||
enable_codecov: !!bool false | ||
enable_sonarqube: !!bool true | ||
|
||
upm_test_platforms: | ||
- name: win | ||
type: Unity::VM | ||
flavor: b1.large | ||
image: package-ci/win10:v4 | ||
- name: mac | ||
type: Unity::VM::osx | ||
image: package-ci/macos-13:v4 | ||
flavor: m1.mac | ||
|
||
web_packages: | ||
- name: 2020 | ||
emscripten_version: 1.38.48-fastcomp | ||
unity_version: 2020.3 | ||
- name: 2021 | ||
emscripten_version: 2.0.19 | ||
unity_version: 2021.2 | ||
- name: 2022 | ||
emscripten_version: 3.1.8 | ||
unity_version: 2022.2 | ||
- name: 2023 | ||
emscripten_version: 3.1.38 | ||
unity_version: 2023.2 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,166 @@ | ||
{% metadata_file .yamato/environments.metafile %} | ||
{% metadata_file .yamato/project.metafile %} | ||
--- | ||
{% for pkg in web_packages -%} | ||
{% assign emscripten_version_suffix = pkg.emscripten_version | split: "-" | last %} | ||
emscripten_{{pkg.name}}: | ||
name: "Emscripten {{ pkg.name }}" | ||
agent: | ||
type: Unity::VM | ||
image: package-ci/ubuntu-22.04:v4 | ||
flavor: b1.small | ||
commands: | ||
|
||
# TODO: Remove fastcomp support once 2020 is dropped | ||
{% if emscripten_version_suffix == "fastcomp" %} | ||
## Fastcomp requires legacy version (tag 3.1.29 or sooner; Unity fork latest synced tag is 2.0.18) | ||
- git clone -b 2.0.18 --single-branch https://github.com/Unity-Technologies/emsdk.git | ||
{% else %} | ||
# Clone Emscripten | ||
- git clone -b 3.1.38-unity --single-branch https://github.com/Unity-Technologies/emsdk.git | ||
{% endif %} | ||
|
||
# Install and activate correct Emscripten version | ||
- | | ||
pushd emsdk | ||
./emsdk install {{ pkg.emscripten_version }} | ||
./emsdk activate {{ pkg.emscripten_version }} | ||
popd | ||
|
||
# Configure | ||
{% if emscripten_version_suffix == "fastcomp" %} | ||
- | | ||
source ./emsdk/emsdk_env.sh | ||
emcmake cmake . -B build_web -DEMSCRIPTEN_GENERATE_BITCODE_STATIC_LIBRARIES=1 -DCMAKE_BUILD_TYPE=MinSizeRel -DDRACO_JS_GLUE=OFF -DDRACO_UNITY_PLUGIN=ON -DDRACO_GLTF_BITSTREAM=ON -DDRACO_BACKWARDS_COMPATIBILITY=OFF | ||
{% else %} | ||
- | | ||
source ./emsdk/emsdk_env.sh | ||
EMSCRIPTEN="$EMSDK/upstream/emscripten" emcmake cmake . -B build_web -DCMAKE_BUILD_TYPE=MinSizeRel -DDRACO_JS_GLUE=OFF -DDRACO_UNITY_PLUGIN=ON -DDRACO_GLTF_BITSTREAM=ON -DDRACO_BACKWARDS_COMPATIBILITY=OFF | ||
{% endif %} | ||
|
||
# Build | ||
- | | ||
source ./emsdk/emsdk_env.sh | ||
cmake --build build_web --target draco_unity | ||
|
||
# Create and fill results folder | ||
- | | ||
mkdir -p wasm-binaries~/{{ pkg.name }} | ||
mv build_web/libdraco_unity.* wasm-binaries~/{{ pkg.name }} | ||
|
||
artifacts: | ||
wasm-binaries: | ||
paths: | ||
- "wasm-binaries~/**/*" | ||
{% endfor -%} | ||
|
||
{% for pkg in web_packages -%} | ||
upm_ci_pack_{{pkg.name}}: | ||
name: "Pack {{ pkg.name }}" | ||
agent: | ||
type: Unity::VM | ||
image: package-ci/ubuntu-22.04:v4 | ||
flavor: b1.small | ||
commands: | ||
# Install upm-ci | ||
- npm install upm-ci-utils@stable -g --registry {{upm_ci_registry}} | ||
|
||
# Move binaries into package | ||
- mv wasm-binaries~/{{ pkg.name }}/lib*.* UnityPackages/com.unity.cloud.draco.webgl-{{ pkg.name }}/Runtime/Plugins/WebGL | ||
|
||
# Pack | ||
- upm-ci package pack --package-path "UnityPackages/com.unity.cloud.draco.webgl-{{ pkg.name }}" | ||
dependencies: | ||
- .yamato/upm-ci.yml#emscripten_{{pkg.name}} | ||
artifacts: | ||
packages: | ||
paths: | ||
- "upm-ci~/packages/**/*" | ||
{% endfor -%} | ||
|
||
{% for pkg in web_packages -%} | ||
{% for platform in upm_test_platforms -%} | ||
upm_ci_test_{{pkg.name}}_{{pkg.unity_version}}_{{platform.name}}: | ||
name : "Test Editor {{pkg.name}} ({{ pkg.unity_version }}) on {{ platform.name }}" | ||
agent: | ||
type: {{platform.type}} | ||
image: {{platform.image}} | ||
flavor: {{platform.flavor}} | ||
commands: | ||
- npm install upm-ci-utils@stable -g --registry {{upm_ci_registry}} | ||
- upm-ci package test --package-path "UnityPackages/com.unity.cloud.draco.webgl-{{ pkg.name }}" -u {{pkg.unity_version}} --type isolation-tests --enable-load-and-test-isolation | ||
artifacts: | ||
packages: | ||
paths: | ||
- "upm-ci~/packages/**/*" | ||
logs: | ||
paths: | ||
- "upm-ci~/test-results/**/*" | ||
dependencies: | ||
- .yamato/upm-ci.yml#upm_ci_pack_{{pkg.name}} | ||
{% endfor -%} | ||
{% endfor -%} | ||
|
||
{% for pkg in web_packages -%} | ||
upm_ci_publish_dry_run_{{pkg.name}}: | ||
name: "Dry Run Publish {{ pkg.name }}" | ||
agent: | ||
type: Unity::VM | ||
image: package-ci/win10:v4 | ||
flavor: b1.small | ||
commands: | ||
- npm install upm-ci-utils@stable -g --registry {{ upm_ci_registry }} | ||
# going for dry run until we're ready to do a real publish | ||
- upm-ci package publish --package-path "UnityPackages/com.unity.cloud.draco.webgl-{{ pkg.name }}" --dry-run | ||
dependencies: | ||
{% for platform in upm_test_platforms -%} | ||
- .yamato/upm-ci.yml#upm_ci_test_{{pkg.name}}_{{pkg.unity_version}}_{{platform.name}} | ||
{% endfor -%} | ||
artifacts: | ||
logs_{{pkg.name}}: | ||
paths: | ||
- "{{ log_path }}/**/*" | ||
package: | ||
paths: | ||
- "upm-ci~/packages/*.tgz" | ||
{% endfor -%} | ||
|
||
|
||
upm_ci_publish_dry_run: | ||
name: "Dry Run Publish" | ||
dependencies: | ||
{% for pkg in web_packages -%} | ||
- .yamato/upm-ci.yml#upm_ci_publish_dry_run_{{pkg.name}} | ||
{% endfor -%} | ||
|
||
|
||
{% for pkg in web_packages -%} | ||
upm_ci_publish_{{pkg.name}}: | ||
name: "Publish to Internal Registry {{ pkg.name }}" | ||
agent: | ||
type: Unity::VM | ||
image: package-ci/win10:v4 | ||
flavor: b1.small | ||
commands: | ||
- npm install upm-ci-utils@stable -g --registry {{ upm_ci_registry }} | ||
# going for dry run until we're ready to do a real publish | ||
- upm-ci package publish --package-path "UnityPackages/com.unity.cloud.draco.webgl-{{ pkg.name }}" | ||
dependencies: | ||
{% for platform in upm_test_platforms -%} | ||
- .yamato/upm-ci.yml#upm_ci_test_{{pkg.name}}_{{pkg.unity_version}}_{{platform.name}} | ||
{% endfor -%} | ||
artifacts: | ||
logs_{{pkg.name}}: | ||
paths: | ||
- "{{ log_path }}/**/*" | ||
package: | ||
paths: | ||
- "upm-ci~/packages/*.tgz" | ||
{% endfor -%} | ||
|
||
upm_ci_publish: | ||
name: "Publish to Internal Registry" | ||
dependencies: | ||
{% for pkg in web_packages -%} | ||
- .yamato/upm-ci.yml#upm_ci_publish_{{pkg.name}} | ||
{% endfor -%} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 31 additions & 0 deletions
31
UnityPackages/com.unity.cloud.draco.webgl-2020/CHANGELOG.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Changelog | ||
|
||
All notable changes to this project will be documented in this file. | ||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | ||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
||
## [1.0.0] - 2023-12-15 | ||
|
||
### Fixed | ||
|
||
- Added copy of license to `Third Party Notices.md` | ||
|
||
## [1.0.0-pre.2] - 2023-11-13 | ||
|
||
### Added | ||
|
||
- Empty runtime tests | ||
|
||
### Changed | ||
|
||
- Increased minimum required version to Unity 2020.3 | ||
|
||
### Fixed | ||
|
||
- Removed warning about missing main package when it was installed as indirect dependency | ||
- Correct namespace for Editor tests | ||
|
||
## [1.0.0-pre.1] - 2023-11-03 | ||
|
||
Initial sub package publication |
7 changes: 7 additions & 0 deletions
7
UnityPackages/com.unity.cloud.draco.webgl-2020/CHANGELOG.md.meta
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.