diff --git a/.gitattributes b/.gitattributes index a6344aac8c09253b3b630fb776ae94478aa0275b..7d4e4e2055ba92f18b2da73e30366b66d886c2c9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,35 +1,65 @@ -*.7z filter=lfs diff=lfs merge=lfs -text -*.arrow filter=lfs diff=lfs merge=lfs -text -*.bin filter=lfs diff=lfs merge=lfs -text -*.bz2 filter=lfs diff=lfs merge=lfs -text -*.ckpt filter=lfs diff=lfs merge=lfs -text -*.ftz filter=lfs diff=lfs merge=lfs -text -*.gz filter=lfs diff=lfs merge=lfs -text -*.h5 filter=lfs diff=lfs merge=lfs -text -*.joblib filter=lfs diff=lfs merge=lfs -text -*.lfs.* filter=lfs diff=lfs merge=lfs -text -*.mlmodel filter=lfs diff=lfs merge=lfs -text -*.model filter=lfs diff=lfs merge=lfs -text -*.msgpack filter=lfs diff=lfs merge=lfs -text -*.npy filter=lfs diff=lfs merge=lfs -text -*.npz filter=lfs diff=lfs merge=lfs -text -*.onnx filter=lfs diff=lfs merge=lfs -text -*.ot filter=lfs diff=lfs merge=lfs -text -*.parquet filter=lfs diff=lfs merge=lfs -text -*.pb filter=lfs diff=lfs merge=lfs -text -*.pickle filter=lfs diff=lfs merge=lfs -text -*.pkl filter=lfs diff=lfs merge=lfs -text -*.pt filter=lfs diff=lfs merge=lfs -text -*.pth filter=lfs diff=lfs merge=lfs -text -*.rar filter=lfs diff=lfs merge=lfs -text -*.safetensors filter=lfs diff=lfs merge=lfs -text -saved_model/**/* filter=lfs diff=lfs merge=lfs -text -*.tar.* filter=lfs diff=lfs merge=lfs -text -*.tar filter=lfs diff=lfs merge=lfs -text -*.tflite filter=lfs diff=lfs merge=lfs -text -*.tgz filter=lfs diff=lfs merge=lfs -text -*.wasm filter=lfs diff=lfs merge=lfs -text -*.xz filter=lfs diff=lfs merge=lfs -text -*.zip filter=lfs diff=lfs merge=lfs -text -*.zst filter=lfs diff=lfs merge=lfs -text -*tfevents* filter=lfs diff=lfs merge=lfs -text +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.avro filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.lz4 filter=lfs diff=lfs merge=lfs -text +*.mds filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text +# Audio files - uncompressed +*.pcm filter=lfs diff=lfs merge=lfs -text +*.sam filter=lfs diff=lfs merge=lfs -text +*.raw filter=lfs diff=lfs merge=lfs -text +# Audio files - compressed +*.aac filter=lfs diff=lfs merge=lfs -text +*.flac filter=lfs diff=lfs merge=lfs -text +*.mp3 filter=lfs diff=lfs merge=lfs -text +*.ogg filter=lfs diff=lfs merge=lfs -text +*.wav filter=lfs diff=lfs merge=lfs -text +# Image files - uncompressed +*.bmp filter=lfs diff=lfs merge=lfs -text +*.gif filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.tiff filter=lfs diff=lfs merge=lfs -text +# Image files - compressed +*.jpg filter=lfs diff=lfs merge=lfs -text +*.jpeg filter=lfs diff=lfs merge=lfs -text +*.webp filter=lfs diff=lfs merge=lfs -text +# Video files - compressed +*.mp4 filter=lfs diff=lfs merge=lfs -text +*.webm filter=lfs diff=lfs merge=lfs -text +worker/node_modules/@cloudflare/workerd-windows-64/bin/workerd.exe filter=lfs diff=lfs merge=lfs -text +worker/node_modules/@esbuild/win32-x64/esbuild.exe filter=lfs diff=lfs merge=lfs -text +worker/node_modules/@img/sharp-win32-x64/lib/libvips-42.dll filter=lfs diff=lfs merge=lfs -text +worker/node_modules/@img/sharp-win32-x64/lib/libvips-cpp.dll filter=lfs diff=lfs merge=lfs -text +worker/node_modules/@img/sharp-win32-x64/lib/sharp-win32-x64.node filter=lfs diff=lfs merge=lfs -text diff --git a/Bunglalow/Bungalow.zip b/Bunglalow/Bungalow.zip new file mode 100644 index 0000000000000000000000000000000000000000..687ccd75d0bc70c352ff98e8c12c2f1b46d469f1 --- /dev/null +++ b/Bunglalow/Bungalow.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12af374496382ac3a8c9ef7ba3cc9566c18787c8f3f7c2376e4a783a70553247 +size 338891758 diff --git a/Bunglalow/metadata.yaml b/Bunglalow/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..2775925f0a7d5b0f96f8a259e4040e0df3a65fd9 --- /dev/null +++ b/Bunglalow/metadata.yaml @@ -0,0 +1,20 @@ +Name: "Bungalow" +Type: Project +Category: Environments +Description: > + A modern bungalow interior pack with complete room layout, meshes, and materials, + ready for quick scene assembly with included prefabs and environment assets. +Tags: + - environment + - interior + - bungalow +Files: + - 'Bungalow.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/ContentVault/Environments/The Bungalow/Bungalow.hscene' + - 'Assets/ContentVault/Environments/The Bungalow/Bungalow.hzr' + - 'Assets/ContentVault/Environments/The Bungalow/Materials/' + - 'Assets/ContentVault/Environments/The Bungalow/Meshes/' + - 'Assets/ContentVault/Environments/The Bungalow/Models/' + - 'Assets/ContentVault/Environments/The Bungalow/Prefabs/' diff --git a/Bunglalow/thumbnail.png b/Bunglalow/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..bc9e5d43cafcdb6ff337c84fcef7063b114cf3ea --- /dev/null +++ b/Bunglalow/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca1f639cc1a8fd4618a657ad676ce6ad6e812b2aaa668bfeef79b683894e7ba7 +size 497877 diff --git a/Go2VelocityTracking/Go2VelocityTracking.zip b/Go2VelocityTracking/Go2VelocityTracking.zip new file mode 100644 index 0000000000000000000000000000000000000000..826d3a84de054dc01c4b307295f393438bf9eb0e --- /dev/null +++ b/Go2VelocityTracking/Go2VelocityTracking.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67681ea962405deb2ff99177271c244ddb14bfe9e42209d4c054cebb945b8513 +size 25399209 diff --git a/Go2VelocityTracking/metadata.yaml b/Go2VelocityTracking/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0b68de12a3f6e936b6594a48e5dc2fd21e32ec2f --- /dev/null +++ b/Go2VelocityTracking/metadata.yaml @@ -0,0 +1,56 @@ +Name: "Go2 Velocity Tracking" +Type: Project +Category: Examples +Description: > + A velocity tracking example scene for the Unitree Go2 that demonstrates commanding + and tracking base motion in a ready-to-run setup. +Tags: + - example + - robotics + - velocity + - tracking + - go2 + - unitree +Files: + - 'Go2VelocityTracking.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/Randomization.cs' + - 'Assets/Scripts/Client/Source/Subroutines/MoveToSubroutine.cs' + - 'Assets/Scripts/Client/Source/Subroutines/Subroutine.cs' + - 'Assets/Scripts/Client/Source/Subroutines/WaitSubroutine.cs' + - 'Assets/Scripts/Client/Source/Task.cs' + - 'Assets/Scripts/Client/Source/TaskComponent.cs' + - 'Assets/Scripts/Client/Source/TaskManager.cs' + - 'Assets/Scripts/Client/Source/TaskOrchestrator.cs' + - 'Assets/Scripts/Client/Source/Utils/Singleton.cs' + - 'Assets/ContentVault/Examples/Go2 Velocity Tracking/Velocity.cs' + - 'Assets/ContentVault/Examples/Go2 Velocity Tracking/VelocityTracking.hscene' + - 'Assets/ContentVault/Examples/Go2 Velocity Tracking/VelocityTracking.hzr' + - 'Assets/ContentVault/Robots/Unitree Go2/Agents/UnitreeGo2Agent.cs' + - 'Assets/ContentVault/Robots/Unitree Go2/CHANGELOG.md' + - 'Assets/ContentVault/Robots/Unitree Go2/LICENSE' + - 'Assets/ContentVault/Robots/Unitree Go2/MG_Velocity.hmograph' + - 'Assets/ContentVault/Robots/Unitree Go2/README.md' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/base_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/base_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/base_2.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/base_3.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/base_4.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/calf_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/calf_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/calf_mirror_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/calf_mirror_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/foot.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/hip_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/hip_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/thigh_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/thigh_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/thigh_mirror_0.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/assets/thigh_mirror_1.obj' + - 'Assets/ContentVault/Robots/Unitree Go2/go2.png' + - 'Assets/ContentVault/Robots/Unitree Go2/go2.xml' + - 'Assets/ContentVault/Robots/Unitree Go2/go2_mjx.png' + - 'Assets/ContentVault/Robots/Unitree Go2/go2_mjx.xml' + - 'Assets/ContentVault/Robots/Unitree Go2/scene.xml' + - 'Assets/ContentVault/Robots/Unitree Go2/scene_mjx.xml' diff --git a/Go2VelocityTracking/thumbnail.png b/Go2VelocityTracking/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..c6c8b23afe3377b7419316a90a6d230baae62dda --- /dev/null +++ b/Go2VelocityTracking/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1d919443609c89906025e099510aa7b99025e41ada7b9a773a92e35e82a6464 +size 104393 diff --git a/Loft/Loft.zip b/Loft/Loft.zip new file mode 100644 index 0000000000000000000000000000000000000000..fc562adaacc1d5e27ee6f0c7f8cefc7b7ac2bb0f --- /dev/null +++ b/Loft/Loft.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce3ab999371abde04ed4803bbde4f1b5c8a2f49181c1fc1a5fa39bce1e78d3c0 +size 462561621 diff --git a/Loft/metadata.yaml b/Loft/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..182d8e1649b857d17c820693c47c6252d98ee36d --- /dev/null +++ b/Loft/metadata.yaml @@ -0,0 +1,19 @@ +Name: "Loft" +Type: Project +Category: Environments +Description: > + A modern loft interior pack with furniture, decor, and deck elements, + including materials and textures for quick scene assembly. +Tags: + - environment + - interior + - loft +Files: + - 'Loft.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/ContentVault/Environments/The Loft/TheLoft.hscene' + - 'Assets/ContentVault/Environments/The Loft/TheLoft.hzr' + - 'Assets/ContentVault/Environments/The Loft/Materials/' + - 'Assets/ContentVault/Environments/The Loft/Meshes/' + - 'Assets/ContentVault/Environments/The Loft/Models/' diff --git a/Loft/thumbnail.png b/Loft/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..526f861c86f5e2c52695bf02199d5d87c5762858 --- /dev/null +++ b/Loft/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1eef8c283f087ac9448c7acb7bd4a53dcac386be34e2356bd128da472a89cff9 +size 350731 diff --git a/MujocoExample/MujocoExample.zip b/MujocoExample/MujocoExample.zip new file mode 100644 index 0000000000000000000000000000000000000000..616866423771c795e8e0b62b41b9dfd3c9947051 --- /dev/null +++ b/MujocoExample/MujocoExample.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5a83340e0bb505d38f60966ddf2087495b6a2f4b2766a30facf0f304c0f4c51 +size 18307921 diff --git a/MujocoExample/metadata.yaml b/MujocoExample/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a8328d5f43199d1893d248189f83bc136d8a84c9 --- /dev/null +++ b/MujocoExample/metadata.yaml @@ -0,0 +1,19 @@ +Name: "Mujoco Example" +Type: Project +Category: Examples +Description: > + A Mujoco example scene for the Unitree G1 in a ready-to-run setup. +Tags: + - example + - mujoco +Files: + - 'MujocoExample.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/' + - 'Assets/Materials/' + - 'Assets/Meshes/Plane.hsmesh' + - 'Assets/ContentVault/Examples/Mujoco Example/MujocoExample.hscene' + - 'Assets/ContentVault/Examples/Mujoco Example/MujocoExample.hzr' + - 'Assets/ContentVault/Examples/Mujoco Example/MujocoExample.xml' + - 'Assets/ContentVault/Examples/Mujoco Example/Scripts/MujocoExampleTendonDebug.cs' diff --git a/MujocoExample/thumbnail.png b/MujocoExample/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..febac774b7fcdffa2b56252bb8521fa4eb59514c Binary files /dev/null and b/MujocoExample/thumbnail.png differ diff --git a/Office/Office.zip b/Office/Office.zip new file mode 100644 index 0000000000000000000000000000000000000000..cb24b1ba69a3c23253e9017cb332021bcf4e1199 --- /dev/null +++ b/Office/Office.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3ee05c6e4391f09f653c356cff0c37baee700859b3ac30b78edd3c5f43c9a08 +size 59570985 diff --git a/Office/metadata.yaml b/Office/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..439db41e01a2d4dffb5bb34f0ecb43910de2e8b0 --- /dev/null +++ b/Office/metadata.yaml @@ -0,0 +1,20 @@ +Name: "Office" +Type: Project +Category: Environments +Description: > + A realistic office interior pack featuring desks, chairs, + workstations, lighting, and common office props for quick + scene assembly. +Tags: + - environment + - interior + - office +Files: + - 'Office.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/ContentVault/Environments/The Office/OfficeRoom01.hscene' + - 'Assets/ContentVault/Environments/The Office/OfficeRoom01.hzr' + - 'Assets/ContentVault/Environments/The Office/Materials/' + - 'Assets/ContentVault/Environments/The Office/Meshes/' + - 'Assets/ContentVault/Environments/The Office/Models/' diff --git a/Office/thumbnail.png b/Office/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..defd41fffc04b78d54471d2114f9114500b2c167 --- /dev/null +++ b/Office/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc914f6c9d0936195a986f6b58ef5d924b1ddaf08fc721a32053eff3c831ca22 +size 243558 diff --git a/Oscillator/Oscillator.zip b/Oscillator/Oscillator.zip new file mode 100644 index 0000000000000000000000000000000000000000..ce9d78e53850ce3cad3b85634a504cb67e36d7c5 --- /dev/null +++ b/Oscillator/Oscillator.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f6cfe2643bf84ff9cfef7188c4b1a1d58d1a7216bd01cebc2ecd31114fb1e24 +size 1153 diff --git a/Oscillator/metadata.yaml b/Oscillator/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..46d51d085ab1d9fc4ff3fb4596157d2e50a22f8f --- /dev/null +++ b/Oscillator/metadata.yaml @@ -0,0 +1,10 @@ +Name: "Oscillator" +Category: Tools +Description: > + A script to oscilate an entity. +Tags: + - Script + - Tools + - Motion +Files: + - 'Oscillator.cs' diff --git a/Panda/Panda.zip b/Panda/Panda.zip new file mode 100644 index 0000000000000000000000000000000000000000..00ebb0cdabc8686356394a074454437ff2baf30b --- /dev/null +++ b/Panda/Panda.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ac6657c7f36874fcb27735c39ca167fdb0818780f4872a5337198ff33110188 +size 7272841 diff --git a/Panda/metadata.yaml b/Panda/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..79047a48f561f8bdcf126c30bb3493e02f63e8ab --- /dev/null +++ b/Panda/metadata.yaml @@ -0,0 +1,84 @@ +Name: "Panda" +Category: Robots +Description: > + A detailed robotic arm asset pack for the Franka Emika Panda manipulator, + including STL and OBJ assets for individual links, hand, fingers, and variants, + plus supporting scene resources. +Tags: + - robot + - manipulator + - panda +Files: + - 'finger_0.obj' + - 'finger_1.obj' + - 'hand.stl' + - 'hand_0.obj' + - 'hand_1.obj' + - 'hand_2.obj' + - 'hand_3.obj' + - 'hand_4.obj' + - 'link0.stl' + - 'link0_0.obj' + - 'link0_1.obj' + - 'link0_10.obj' + - 'link0_11.obj' + - 'link0_2.obj' + - 'link0_3.obj' + - 'link0_4.obj' + - 'link0_5.obj' + - 'link0_7.obj' + - 'link0_8.obj' + - 'link0_9.obj' + - 'link1.obj' + - 'link1.stl' + - 'link2.obj' + - 'link2.stl' + - 'link3.stl' + - 'link3_0.obj' + - 'link3_1.obj' + - 'link3_2.obj' + - 'link3_3.obj' + - 'link4.stl' + - 'link4_0.obj' + - 'link4_1.obj' + - 'link4_2.obj' + - 'link4_3.obj' + - 'link5_0.obj' + - 'link5_1.obj' + - 'link5_2.obj' + - 'link5_collision_0.obj' + - 'link5_collision_1.obj' + - 'link5_collision_2.obj' + - 'link6.stl' + - 'link6_0.obj' + - 'link6_1.obj' + - 'link6_10.obj' + - 'link6_11.obj' + - 'link6_12.obj' + - 'link6_13.obj' + - 'link6_14.obj' + - 'link6_15.obj' + - 'link6_16.obj' + - 'link6_2.obj' + - 'link6_3.obj' + - 'link6_4.obj' + - 'link6_5.obj' + - 'link6_6.obj' + - 'link6_7.obj' + - 'link6_8.obj' + - 'link6_9.obj' + - 'link7.stl' + - 'link7_0.obj' + - 'link7_1.obj' + - 'link7_2.obj' + - 'link7_3.obj' + - 'link7_4.obj' + - 'link7_5.obj' + - 'link7_6.obj' + - 'link7_7.obj' + - 'MG_Panda.hmograph' + - 'MG_TwoPandas.hmograph' + - 'panda.png' + - 'panda.xml' + - 'two_pandas.xml' + diff --git a/Panda/thumbnail.png b/Panda/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..06a1b2824425bf1e62289c34c481f93365553069 Binary files /dev/null and b/Panda/thumbnail.png differ diff --git a/Piper/Piper.zip b/Piper/Piper.zip new file mode 100644 index 0000000000000000000000000000000000000000..a068a82d6bb061ce2db73fe58e4f2d0fa7ced905 --- /dev/null +++ b/Piper/Piper.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d7bfab447bb00d1ac38d32a402a337341d940821e0de98c9a8ef85664c9507c +size 8798506 diff --git a/Piper/metadata.yaml b/Piper/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8c212f5d95850bb14855d53d6b681bd0e0c640fd --- /dev/null +++ b/Piper/metadata.yaml @@ -0,0 +1,100 @@ +Name: "Piper" +Category: Robots +Description: > + A detailed robotic arm asset pack for the Piper manipulator, including STL and + OBJ assets for individual links and variants, plus supporting scene resources. +Tags: + - robot + - manipulator + - piper +Files: + - 'base_link.stl' + - 'link1.stl' + - 'link2.stl' + - 'link2_0.obj' + - 'link2_1.obj' + - 'link2_2.obj' + - 'link2_3.obj' + - 'link2_4.obj' + - 'link2_5.obj' + - 'link2_6.obj' + - 'link2_7.obj' + - 'link2_8.obj' + - 'link2_9.obj' + - 'link2_10.obj' + - 'link2_11.obj' + - 'link2_12.obj' + - 'link2_13.obj' + - 'link2_14.obj' + - 'link2_15.obj' + - 'link2_16.obj' + - 'link2_17.obj' + - 'link2_18.obj' + - 'link2_19.obj' + - 'link2_20.obj' + - 'link2_21.obj' + - 'link2_22.obj' + - 'link2_23.obj' + - 'link2_24.obj' + - 'link2_25.obj' + - 'link2_26.obj' + - 'link2_27.obj' + - 'link2_28.obj' + - 'link2_29.obj' + - 'link2_30.obj' + - 'link2_31.obj' + - 'link2_gray.stl' + - 'link2_red.stl' + - 'link3.stl' + - 'link3_0.obj' + - 'link3_1.obj' + - 'link3_2.obj' + - 'link3_3.obj' + - 'link3_4.obj' + - 'link3_5.obj' + - 'link3_7.obj' + - 'link3_8.obj' + - 'link3_9.obj' + - 'link3_10.obj' + - 'link3_11.obj' + - 'link3_12.obj' + - 'link3_13.obj' + - 'link3_14.obj' + - 'link3_15.obj' + - 'link3_16.obj' + - 'link3_17.obj' + - 'link3_18.obj' + - 'link3_19.obj' + - 'link3_20.obj' + - 'link3_21.obj' + - 'link3_22.obj' + - 'link3_23.obj' + - 'link3_24.obj' + - 'link3_25.obj' + - 'link3_26.obj' + - 'link3_27.obj' + - 'link3_28.obj' + - 'link4.stl' + - 'link4_2.obj' + - 'link4_3.obj' + - 'link4_4.obj' + - 'link4_5.obj' + - 'link4_6.obj' + - 'link5.stl' + - 'link5_2.obj' + - 'link5_3.obj' + - 'link5_4.obj' + - 'link5_5.obj' + - 'link5_6.obj' + - 'link5_7.obj' + - 'link5_8.obj' + - 'link6.stl' + - 'link7.stl' + - 'link8.stl' + - 'linke2_dark_gray.stl' + - 'MG_Piper.hmograph' + - 'piper.png' + - 'piper.xml' + - 'scene.xml' + + diff --git a/Piper/thumbnail.png b/Piper/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..f86c89671214d57c65c5b8d4070202bacd9d1df1 Binary files /dev/null and b/Piper/thumbnail.png differ diff --git a/PiperBlockStacking/PiperBlockStacking.zip b/PiperBlockStacking/PiperBlockStacking.zip new file mode 100644 index 0000000000000000000000000000000000000000..71b6c24f65938df33e5f149ad36f8de57754bd4f --- /dev/null +++ b/PiperBlockStacking/PiperBlockStacking.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aefdfd8a194b45fc3b998bebe64e8733eb90ce34a59c29f654be732a95aae010 +size 27131413 diff --git a/PiperBlockStacking/metadata.yaml b/PiperBlockStacking/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f82c9d9b840cd870e9b99310d14c3457f35c90fb --- /dev/null +++ b/PiperBlockStacking/metadata.yaml @@ -0,0 +1,23 @@ +Name: "Piper Block Stacking" +Type: Project +Category: Examples +Description: > + A block stacking scene built around the Piper robotic arm, + with robot assets, materials, and a ready-to-use scene setup. +Tags: + - example + - robotics + - piper + - block-stacking +Files: + - 'PiperBlockStacking.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/' + - 'Assets/Meshes/Plane.hsmesh' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Piper-Block-Stacking.hscene' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Piper-Block-Stacking.hzr' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Scripts/PiperBlockStacking.cs' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Materials/' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Misc/' + - 'Assets/ContentVault/Examples/Piper Block Stacking/Models/' diff --git a/PiperBlockStacking/thumbnail.png b/PiperBlockStacking/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..e6063f2cf99f369c34775e2f65b410e085e746c2 Binary files /dev/null and b/PiperBlockStacking/thumbnail.png differ diff --git a/PiperPickPlace/PiperPickPlace.zip b/PiperPickPlace/PiperPickPlace.zip new file mode 100644 index 0000000000000000000000000000000000000000..f82be0e3c33b7af5426ccdd3cf507c390675399e --- /dev/null +++ b/PiperPickPlace/PiperPickPlace.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8834bfb4cd82379bbc1320d63d423a1c67fa8e9b47748ad465255a859dcd7c9a +size 47658465 diff --git a/PiperPickPlace/metadata.yaml b/PiperPickPlace/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..3eaf31896cf104253bd6a6f093ae0fc4219e6007 --- /dev/null +++ b/PiperPickPlace/metadata.yaml @@ -0,0 +1,23 @@ +Name: "Piper Pick Place" +Type: Project +Category: Examples +Description: > + A pick and place scene built around the Piper robotic arm, including materials, + prefabs, and a ready-to-use scene setup for manipulation tasks. +Tags: + - example + - robotics + - pick-and-place + - piper +Files: + - 'PiperPickPlace.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/' + - 'Assets/Meshes/Plane.hsmesh' + - 'Assets/ContentVault/Examples/Piper Pick Place/Piper-Pick-Place.hscene' + - 'Assets/ContentVault/Examples/Piper Pick Place/Piper-Pick-Place.hzr' + - 'Assets/ContentVault/Examples/Piper Pick Place/Scripts/PiperLego.cs' + - 'Assets/ContentVault/Examples/Piper Pick Place/Materials/' + - 'Assets/ContentVault/Environments/Skies Vol. 1/' + - 'Assets/ContentVault/Robots/Piper/' diff --git a/PiperPickPlace/thumbnail.png b/PiperPickPlace/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..6a3ee0ca212244c79c372f94be9d90a9bcfa66d8 --- /dev/null +++ b/PiperPickPlace/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891ea0186b8b35776b9bc039db6293fce1f8d4e8fd66dd30610f7b554d6aa53a +size 126564 diff --git a/PiperUnscrewCap/PiperUnscrewCap.zip b/PiperUnscrewCap/PiperUnscrewCap.zip new file mode 100644 index 0000000000000000000000000000000000000000..7c716cfe23a209d2976b75f104e07a9941a94537 --- /dev/null +++ b/PiperUnscrewCap/PiperUnscrewCap.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2cbba61bf11c176d42a33dcc91b16ca338c20ee027ab4580297f1f8c604783d +size 153496080 diff --git a/PiperUnscrewCap/metadata.yaml b/PiperUnscrewCap/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a1a3470baf7ad9b2d449865ae1b55d204617e4cf --- /dev/null +++ b/PiperUnscrewCap/metadata.yaml @@ -0,0 +1,27 @@ +Name: "Piper Unscrew Cap" +Type: Project +Category: Examples +Description: > + Example of 2 piper robots unscrewing a bottle cap from a bottle. + Bottle and cap are created through an sdf plugin similar to nut + and bolt in mujoco. +Tags: + - example + - robotics + - piper + - bottle + - sdf + - unscrew +Files: + - 'PiperUnscrewCap.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Bottle.hscene' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Bottle.hzr' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Scripts/PiperUnscrewCap.cs' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Materials/' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Meshes/' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Misc/' + - 'Assets/ContentVault/Examples/Piper Unscrew Cap/Models/' + - 'Assets/ContentVault/Robots/Piper/' diff --git a/PiperUnscrewCap/thumbnail.png b/PiperUnscrewCap/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..04f5caca5b52dfbaaaeb3ed97369a5fa471424e7 --- /dev/null +++ b/PiperUnscrewCap/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cde4323eec8963c0d63f419d06c64daf07ba6e2752d684d4110bb06df9eb39b5 +size 602827 diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..41ef007a86cbb88300377ca61e68593f085b495c --- /dev/null +++ b/README.md @@ -0,0 +1,209 @@ +# ContentVault + +Content packs for [Lucky Robots](https://luckyrobots.com). Each pack contains a `metadata.yaml`, a `thumbnail.png`, and a `.zip` with the pack contents. + +## Content Packs + +| Pack | Description | +|------|-------------| +| ExamplePack | Example content pack | +| Go1VelocityTracking | Unitree Go1 velocity tracking | +| MujocoExample | MuJoCo simulation example | +| Oscillator | Oscillator environment | +| Panda | Franka Panda robot | +| Piper | Piper robot | +| Piper-Pick-Place | Piper pick and place task | +| PiperUnscrewCap | Piper cap unscrewing task | +| Skies-Vol-1 | Sky HDRIs volume 1 | +| TheBungalow | Bungalow environment | +| TheLoft | Loft environment | +| TheOffice | Office environment | +| UnitreeG1 | Unitree G1 humanoid | +| UnitreeGo1 | Unitree Go1 quadruped | +| Welcome | Welcome / intro pack | + +## CDN + +All content packs are served globally via Cloudflare CDN: + +``` +https://contentvault.luckyrobots.com/{PackName}/{filename} +``` + +For example: +``` +https://contentvault.luckyrobots.com/ExamplePack/metadata.yaml +https://contentvault.luckyrobots.com/TheLoft/TheLoft.zip +``` + +## How sync works + +A Cloudflare Worker (`worker/`) listens for webhooks from HuggingFace. When a push is made to the [HuggingFace dataset repo](https://huggingface.co/datasets/luckyrobots/ContentVault), the Worker: + +1. Lists all files in the repo via the HuggingFace API +2. Streams each file directly to Cloudflare R2 (no buffering, handles large zip files) +3. R2 serves the files through Cloudflare's CDN with a 30-day cache, cached at 300+ edge locations worldwide + +## Worker setup + +```bash +cd worker +npm install +``` + +### Secrets (set via wrangler) + +```bash +npx wrangler secret put HF_WEBHOOK_SECRET +npx wrangler secret put HF_TOKEN +``` + +### Deploy + +```bash +npx wrangler deploy +``` + +### Commands + +## Setup + +```bash +# Install huggingface_hub with fast upload backend +pip install -U "huggingface_hub[hf_xet]" + +# Login (requires write-access token from https://huggingface.co/settings/tokens) +hf auth login +``` + +--- + +## CLI Commands + +### Upload entire folder +```bash +hf upload . --repo-type dataset --commit-message "Your message" +``` + +### Upload a single pack/subfolder +```bash +hf upload / --repo-type dataset --commit-message "Add " +``` + +### Upload a single file +```bash +hf upload --repo-type dataset --commit-message "Add file" +``` + +### Upload large folder (resumable, multi-threaded, auto-retry) +```bash +hf upload-large-folder --repo-type=dataset +``` + +### Delete files remotely (without re-uploading everything) +```bash +hf upload . . --repo-type dataset --include="" --delete="/*" --commit-message "Remove " +``` + +### Create a new dataset repo +```bash +hf repo create --type dataset +``` + +### Create under an organization +```bash +hf repo create --type dataset --organization +``` + +--- + +## Python One-Liners + +### Upload large folder (resumable) +```bash +python -c "from huggingface_hub import HfApi; HfApi().upload_large_folder(repo_id='', repo_type='dataset', folder_path='')" +``` + +### Upload a single folder/pack +```bash +python -c "from huggingface_hub import HfApi; HfApi().upload_folder(folder_path='', path_in_repo='', repo_id='', repo_type='dataset', commit_message='Your message')" +``` + +### Upload a single file +```bash +python -c "from huggingface_hub import HfApi; HfApi().upload_file(path_or_fileobj='', path_in_repo='', repo_id='', repo_type='dataset', commit_message='Your message')" +``` + +### Delete a folder +```bash +python -c "from huggingface_hub import HfApi; HfApi().delete_folder('', repo_id='', repo_type='dataset', commit_message='Remove ')" +``` + +### Delete a single file +```bash +python -c "from huggingface_hub import HfApi; HfApi().delete_file('', repo_id='', repo_type='dataset', commit_message='Remove ')" +``` + +### Create a repo +```bash +python -c "from huggingface_hub import HfApi; HfApi().create_repo(repo_id='', repo_type='dataset')" +``` + +--- + +## Python Script Examples + +### Upload large folder (full script with options) +```python +from huggingface_hub import HfApi + +api = HfApi() +api.upload_large_folder( + repo_id="", + repo_type="dataset", + folder_path="", +) +``` + +### Upload a folder to a specific path in the repo +```python +from huggingface_hub import HfApi + +api = HfApi() +api.upload_folder( + folder_path="", + path_in_repo="", + repo_id="", + repo_type="dataset", + commit_message="Your message", + ignore_patterns=["*.cache", ".git/*"], +) +``` + +### Batch delete + upload in one commit +```python +from huggingface_hub import HfApi, CommitOperationAdd, CommitOperationDelete + +api = HfApi() +operations = [ + CommitOperationDelete(path_in_repo="/"), + CommitOperationAdd(path_in_repo="", path_or_fileobj=""), +] +api.create_commit( + repo_id="", + repo_type="dataset", + operations=operations, + commit_message="Your message", +) +``` + +--- + +## Tips + +- **Resumable uploads**: `upload_large_folder` and `hf upload-large-folder` are resumable. If interrupted, run the same command again. +- **Don't use raw `git push`** for large files -- use the CLI/API instead. They handle LFS/Xet automatically. +- **Write token required**: Tokens default to read-only. Enable write access at https://huggingface.co/settings/tokens. +- **50 GB max per file** on HuggingFace. Split larger files before uploading. +- **Ignore patterns**: Use `--include` and `--exclude` (CLI) or `ignore_patterns` (Python) to filter what gets uploaded. +- **Delete the `.cache/huggingface/` folder** inside your local folder to reset upload state if something goes wrong with `upload_large_folder`. diff --git a/SO100PickAndPlace/SO100PickAndPlace.zip b/SO100PickAndPlace/SO100PickAndPlace.zip new file mode 100644 index 0000000000000000000000000000000000000000..502a2b018dd02086db7a9fca0cd238e07da52c38 --- /dev/null +++ b/SO100PickAndPlace/SO100PickAndPlace.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9ae62c4fab2d2e877b83aa959872834bdc6933adc121acebaae316b9b91d8a1 +size 20355364 diff --git a/SO100PickAndPlace/metadata.yaml b/SO100PickAndPlace/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0f668794f3ad6d0ca4ccf0bcbc3f357d7f85cd98 --- /dev/null +++ b/SO100PickAndPlace/metadata.yaml @@ -0,0 +1,14 @@ +Name: "SO100 Pick And Place" +Type: Project +Category: Examples +Description: > + A pick and place scene built around the SO100 robotic arm, + with robot assets and a ready-to-use scene setup. +Tags: + - example + - robotics + - so100 + - pick-and-place +Files: + - 'SO100PickAndPlace.zip' + - 'thumbnail.png' diff --git a/SO100PickAndPlace/thumbnail.png b/SO100PickAndPlace/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..db430994355751278e60e8b8137b37ce1691d448 --- /dev/null +++ b/SO100PickAndPlace/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36bb734798c2d9398c8edf0698062e86ebb5090f1a3ca1df8b79ef2e5a7b0873 +size 312315 diff --git a/Skies-Vol-1/Skies-Vol-1.zip b/Skies-Vol-1/Skies-Vol-1.zip new file mode 100644 index 0000000000000000000000000000000000000000..97e4eb55dcb1fdba5cf4a82f76fcba20dbcd5a28 --- /dev/null +++ b/Skies-Vol-1/Skies-Vol-1.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10626dfa3b667ceda0b2aea373cf81f8e81ac4ffbe5ba94a547d5e6987edf930 +size 20523736 diff --git a/Skies-Vol-1/metadata.yaml b/Skies-Vol-1/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ec2eae6ccceecc080459bf2eae3615ceab5d5675 --- /dev/null +++ b/Skies-Vol-1/metadata.yaml @@ -0,0 +1,14 @@ +Name: "Skies Vol. 1" +Category: Environments +Description: > + A high dynamic range sky environment pack providing a derelict airfield sky, + suitable for realistic outdoor image-based lighting and reflections. +Tags: + - environment + - sky + - hdri + - lighting +Files: + - 'derelict_airfield_02_4k.hdr' + + diff --git a/Skies-Vol-1/thumbnail.png b/Skies-Vol-1/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..eaeb740af67be59144233dce39e8d574c61df107 --- /dev/null +++ b/Skies-Vol-1/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:808e4bd568accc2959a43bdd3202ad03d6ef3396ca4a15d9d4be197a6e765ee8 +size 222671 diff --git a/UnitreeG1/UnitreeG1.zip b/UnitreeG1/UnitreeG1.zip new file mode 100644 index 0000000000000000000000000000000000000000..eee6d4ca8d9310b36f6681f08ca1ea72c069ab81 --- /dev/null +++ b/UnitreeG1/UnitreeG1.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:738565d137f008ce35d43fe4c17e27f0ea337a7d7fa1140ee05e093627d7069c +size 89511709 diff --git a/UnitreeG1/metadata.yaml b/UnitreeG1/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..034d5f8c1371f8b0942f49d0b12a667d577862f6 --- /dev/null +++ b/UnitreeG1/metadata.yaml @@ -0,0 +1,220 @@ +Name: "Unitree G1" +Category: Robots +Description: > + A detailed humanoid robot asset pack for the Unitree G1 platform, + including STL geometry for all major links of the body and limbs, + plus ready-to-use configuration and scene files. +Tags: + - robot + - humanoid + - unitree +Files: + - 'UnitreeG1/Agents/UnitreeG1Agent.cs' + - 'UnitreeG1/assets/g1.xml' + - 'UnitreeG1/assets/head_link.obj' + - 'UnitreeG1/assets/head_link.STL' + - 'UnitreeG1/assets/left_ankle_pitch_link.obj' + - 'UnitreeG1/assets/left_ankle_pitch_link.STL' + - 'UnitreeG1/assets/left_ankle_roll_link.obj' + - 'UnitreeG1/assets/left_ankle_roll_link.STL' + - 'UnitreeG1/assets/left_elbow_link.obj' + - 'UnitreeG1/assets/left_elbow_link.STL' + - 'UnitreeG1/assets/left_hand_index_0_link.obj' + - 'UnitreeG1/assets/left_hand_index_0_link.STL' + - 'UnitreeG1/assets/left_hand_index_1_link.obj' + - 'UnitreeG1/assets/left_hand_index_1_link.STL' + - 'UnitreeG1/assets/left_hand_middle_0_link.obj' + - 'UnitreeG1/assets/left_hand_middle_0_link.STL' + - 'UnitreeG1/assets/left_hand_middle_1_link.obj' + - 'UnitreeG1/assets/left_hand_middle_1_link.STL' + - 'UnitreeG1/assets/left_hand_palm_link.obj' + - 'UnitreeG1/assets/left_hand_palm_link.STL' + - 'UnitreeG1/assets/left_hand_thumb_0_link.obj' + - 'UnitreeG1/assets/left_hand_thumb_0_link.STL' + - 'UnitreeG1/assets/left_hand_thumb_1_link.obj' + - 'UnitreeG1/assets/left_hand_thumb_1_link.STL' + - 'UnitreeG1/assets/left_hand_thumb_2_link.obj' + - 'UnitreeG1/assets/left_hand_thumb_2_link.STL' + - 'UnitreeG1/assets/left_hip_pitch_link.obj' + - 'UnitreeG1/assets/left_hip_pitch_link.STL' + - 'UnitreeG1/assets/left_hip_roll_link.obj' + - 'UnitreeG1/assets/left_hip_roll_link.STL' + - 'UnitreeG1/assets/left_hip_yaw_link.obj' + - 'UnitreeG1/assets/left_hip_yaw_link.STL' + - 'UnitreeG1/assets/left_knee_link.obj' + - 'UnitreeG1/assets/left_knee_link.STL' + - 'UnitreeG1/assets/left_rubber_hand.obj' + - 'UnitreeG1/assets/left_rubber_hand.STL' + - 'UnitreeG1/assets/left_shoulder_pitch_link.obj' + - 'UnitreeG1/assets/left_shoulder_pitch_link.STL' + - 'UnitreeG1/assets/left_shoulder_roll_link.obj' + - 'UnitreeG1/assets/left_shoulder_roll_link.STL' + - 'UnitreeG1/assets/left_shoulder_yaw_link.obj' + - 'UnitreeG1/assets/left_shoulder_yaw_link.STL' + - 'UnitreeG1/assets/left_wrist_pitch_link.obj' + - 'UnitreeG1/assets/left_wrist_pitch_link.STL' + - 'UnitreeG1/assets/left_wrist_roll_link.obj' + - 'UnitreeG1/assets/left_wrist_roll_link.STL' + - 'UnitreeG1/assets/left_wrist_yaw_link.obj' + - 'UnitreeG1/assets/left_wrist_yaw_link.STL' + - 'UnitreeG1/assets/logo_link.obj' + - 'UnitreeG1/assets/logo_link.STL' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_LuckyCube_Geom_3O1HU3SB22CU6908KGVYEU3E4_LuckyCube_78525.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55672.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55674.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55676.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55729.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55817.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55818.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55820.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55852.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55867.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55868.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55870.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55871.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55872.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55873.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55874.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55875.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55902.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55903.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55904.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55905.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_0_SM_Template_Map_Floor_Geom_5G8106JNGWGV4KE7ASN9Q5ELP_SM_Template_Map_Floor_55952.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_1_floor_Mujoco_Geom_9PF504YOILC6HJDCX9E6MVLVU_floor_Mujoco_54913.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_1_floor_Mujoco_Geom_9PF504YOILC6HJDCX9E6MVLVU_floor_Mujoco_54914.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_1_floor_Mujoco_Geom_9PF504YOILC6HJDCX9E6MVLVU_floor_Mujoco_54916.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_1_floor_Mujoco_Geom_9PF504YOILC6HJDCX9E6MVLVU_floor_Mujoco_77180.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_1_floor_Mujoco_Geom_9PF504YOILC6HJDCX9E6MVLVU_floor_Mujoco_77182.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54740.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54820.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54889.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54891.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54893.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54900.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_54905.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_82367.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_83278.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_83288.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_83294.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_83310.obj' + - 'UnitreeG1/assets/MujocoStaticMeshActor_2_SM_Template_Map_Floor_Mujoco_Geom_AKSM8X6687M05SUMYZ4VVO5OY_SM_Template_Map_Floor_Mujoco_84862.obj' + - 'UnitreeG1/assets/pelvis.obj' + - 'UnitreeG1/assets/pelvis.STL' + - 'UnitreeG1/assets/pelvis_contour_link.obj' + - 'UnitreeG1/assets/pelvis_contour_link.STL' + - 'UnitreeG1/assets/right_ankle_pitch_link.obj' + - 'UnitreeG1/assets/right_ankle_pitch_link.STL' + - 'UnitreeG1/assets/right_ankle_roll_link.obj' + - 'UnitreeG1/assets/right_ankle_roll_link.STL' + - 'UnitreeG1/assets/right_elbow_link.obj' + - 'UnitreeG1/assets/right_elbow_link.STL' + - 'UnitreeG1/assets/right_hand_index_0_link.obj' + - 'UnitreeG1/assets/right_hand_index_0_link.STL' + - 'UnitreeG1/assets/right_hand_index_1_link.obj' + - 'UnitreeG1/assets/right_hand_index_1_link.STL' + - 'UnitreeG1/assets/right_hand_middle_0_link.obj' + - 'UnitreeG1/assets/right_hand_middle_0_link.STL' + - 'UnitreeG1/assets/right_hand_middle_1_link.obj' + - 'UnitreeG1/assets/right_hand_middle_1_link.STL' + - 'UnitreeG1/assets/right_hand_palm_link.obj' + - 'UnitreeG1/assets/right_hand_palm_link.STL' + - 'UnitreeG1/assets/right_hand_thumb_0_link.obj' + - 'UnitreeG1/assets/right_hand_thumb_0_link.STL' + - 'UnitreeG1/assets/right_hand_thumb_1_link.obj' + - 'UnitreeG1/assets/right_hand_thumb_1_link.STL' + - 'UnitreeG1/assets/right_hand_thumb_2_link.obj' + - 'UnitreeG1/assets/right_hand_thumb_2_link.STL' + - 'UnitreeG1/assets/right_hip_pitch_link.obj' + - 'UnitreeG1/assets/right_hip_pitch_link.STL' + - 'UnitreeG1/assets/right_hip_roll_link.obj' + - 'UnitreeG1/assets/right_hip_roll_link.STL' + - 'UnitreeG1/assets/right_hip_yaw_link.obj' + - 'UnitreeG1/assets/right_hip_yaw_link.STL' + - 'UnitreeG1/assets/right_knee_link.obj' + - 'UnitreeG1/assets/right_knee_link.STL' + - 'UnitreeG1/assets/right_rubber_hand.obj' + - 'UnitreeG1/assets/right_rubber_hand.STL' + - 'UnitreeG1/assets/right_shoulder_pitch_link.obj' + - 'UnitreeG1/assets/right_shoulder_pitch_link.STL' + - 'UnitreeG1/assets/right_shoulder_roll_link.obj' + - 'UnitreeG1/assets/right_shoulder_roll_link.STL' + - 'UnitreeG1/assets/right_shoulder_yaw_link.obj' + - 'UnitreeG1/assets/right_shoulder_yaw_link.STL' + - 'UnitreeG1/assets/right_wrist_pitch_link.obj' + - 'UnitreeG1/assets/right_wrist_pitch_link.STL' + - 'UnitreeG1/assets/right_wrist_roll_link.obj' + - 'UnitreeG1/assets/right_wrist_roll_link.STL' + - 'UnitreeG1/assets/right_wrist_yaw_link.obj' + - 'UnitreeG1/assets/right_wrist_yaw_link.STL' + - 'UnitreeG1/assets/torso_link_rev_1_0.obj' + - 'UnitreeG1/assets/torso_link_rev_1_0.STL' + - 'UnitreeG1/assets/waist_roll_link_rev_1_0.obj' + - 'UnitreeG1/assets/waist_roll_link_rev_1_0.STL' + - 'UnitreeG1/assets/waist_yaw_link_rev_1_0.obj' + - 'UnitreeG1/assets/waist_yaw_link_rev_1_0.STL' + - 'UnitreeG1/g1.png' + - 'UnitreeG1/g1.xml' + - 'UnitreeG1/g1_mjx.xml' + - 'UnitreeG1/g1_mjx_colliders.png' + - 'UnitreeG1/g1_with_hands.png' + - 'UnitreeG1/g1_with_hands.xml' + - 'UnitreeG1/Locomotion/Anim/Crouch_End.hanim' + - 'UnitreeG1/Locomotion/Anim/Crouch_Idle.hanim' + - 'UnitreeG1/Locomotion/Anim/Crouch_Start.hanim' + - 'UnitreeG1/Locomotion/Anim/idle.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_BackwardLeft.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_BackwardRight.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_Backward_1.6.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_ForwardLeft.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_ForwardRight.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_Forward_1.6.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_Left.hanim' + - 'UnitreeG1/Locomotion/Anim/Jog_Right.hanim' + - 'UnitreeG1/Locomotion/Anim/RootLeftRotate_15.hanim' + - 'UnitreeG1/Locomotion/Anim/RootLeftRotate_45.hanim' + - 'UnitreeG1/Locomotion/Anim/RootRightRotate_15.hanim' + - 'UnitreeG1/Locomotion/Anim/RootRightRotate_45.hanim' + - 'UnitreeG1/Locomotion/Anim/RootWalkBackward.hanim' + - 'UnitreeG1/Locomotion/Anim/RootWalkForward.hanim' + - 'UnitreeG1/Locomotion/Anim/root_left_walk.hanim' + - 'UnitreeG1/Locomotion/Anim/root_right_walk.hanim' + - 'UnitreeG1/Locomotion/Anim/root_walk_start.hanim' + - 'UnitreeG1/Locomotion/Anim/Run_Backward_3.hanim' + - 'UnitreeG1/Locomotion/Anim/Run_Forward_3.hanim' + - 'UnitreeG1/Locomotion/Anim/UnitreeG1_Calibration.hanim' + - 'UnitreeG1/Locomotion/CalibrationGraph.hanimgraph' + - 'UnitreeG1/Locomotion/LocomotionGraph.hanimgraph' + - 'UnitreeG1/Locomotion/src/Crouch_End.fbx' + - 'UnitreeG1/Locomotion/src/Crouch_Idle.fbx' + - 'UnitreeG1/Locomotion/src/Crouch_Start.fbx' + - 'UnitreeG1/Locomotion/src/idle.fbx' + - 'UnitreeG1/Locomotion/src/Jog_BackwardLeft.fbx' + - 'UnitreeG1/Locomotion/src/Jog_BackwardRight.fbx' + - 'UnitreeG1/Locomotion/src/Jog_Backward_1.6.fbx' + - 'UnitreeG1/Locomotion/src/Jog_ForwardLeft.fbx' + - 'UnitreeG1/Locomotion/src/Jog_ForwardRight.fbx' + - 'UnitreeG1/Locomotion/src/Jog_Forward_1.6.fbx' + - 'UnitreeG1/Locomotion/src/Jog_Left.fbx' + - 'UnitreeG1/Locomotion/src/Jog_Right.fbx' + - 'UnitreeG1/Locomotion/src/RootLeftRotate_15.fbx' + - 'UnitreeG1/Locomotion/src/RootLeftRotate_45.fbx' + - 'UnitreeG1/Locomotion/src/RootRightRotate_15.fbx' + - 'UnitreeG1/Locomotion/src/RootRightRotate_45.fbx' + - 'UnitreeG1/Locomotion/src/RootWalkBackward.fbx' + - 'UnitreeG1/Locomotion/src/RootWalkForward.fbx' + - 'UnitreeG1/Locomotion/src/root_left_walk.fbx' + - 'UnitreeG1/Locomotion/src/root_right_walk.fbx' + - 'UnitreeG1/Locomotion/src/Run_Backward_3.fbx' + - 'UnitreeG1/Locomotion/src/Run_Forward_3.fbx' + - 'UnitreeG1/Locomotion/src/UnitreeG1_Calibration.fbx' + - 'UnitreeG1/Locomotion/src/UnitreeG1_Mesh.fbx' + - 'UnitreeG1/Locomotion/UnitreeController.cs' + - 'UnitreeG1/Locomotion/UnitreeG1_Mesh.hmesh' + - 'UnitreeG1/Locomotion/UnitreeTest.hscene' + - 'UnitreeG1/MoGraphs/Animated Unitree.hmograph' + - 'UnitreeG1/MoGraphs/MG_Tracking.hmograph' + - 'UnitreeG1/scene.xml' + - 'UnitreeG1/scene_mjx.xml' + - 'UnitreeG1/scene_with_hands.xml' + diff --git a/UnitreeG1/thumbnail.png b/UnitreeG1/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..a28c02387fbb3440d2e282d0df1f0f6a2679aec9 Binary files /dev/null and b/UnitreeG1/thumbnail.png differ diff --git a/UnitreeGo2/UnitreeGo2.zip b/UnitreeGo2/UnitreeGo2.zip new file mode 100644 index 0000000000000000000000000000000000000000..2c7ba965a022d29790cdededf5b04245f5235753 --- /dev/null +++ b/UnitreeGo2/UnitreeGo2.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:520ada606cb2554dea1bb977519ea30df3cc54a2754d8f9ec7bd7ba3103b2b6f +size 7068735 diff --git a/UnitreeGo2/metadata.yaml b/UnitreeGo2/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..38976c800f53c7ef0854ad61a38654f99104146a --- /dev/null +++ b/UnitreeGo2/metadata.yaml @@ -0,0 +1,23 @@ +Name: "Unitree Go2" +Category: Robots +Description: > + A detailed quadruped robot asset pack for the Unitree Go2 platform, + including STL geometry for major leg and body links, plus ready-to-use + configuration, scene, and graph assets. +Tags: + - robot + - quadruped + - unitree + - go2 +Files: + - 'UnitreeGo2/Agents/UnitreeGo2Agent.cs' + - 'UnitreeGo2/assets/calf.stl' + - 'UnitreeGo2/assets/hip.stl' + - 'UnitreeGo2/assets/thigh.stl' + - 'UnitreeGo2/assets/thigh_mirror.stl' + - 'UnitreeGo2/assets/trunk.stl' + - 'UnitreeGo2/go1.png' + - 'UnitreeGo2/go1.xml' + - 'UnitreeGo2/MG_Velocity.hmograph' + - 'UnitreeGo2/scene.xml' + diff --git a/UnitreeGo2/thumbnail.png b/UnitreeGo2/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..ac1d936ed51b687a6202f46f46f4dff65b789d58 --- /dev/null +++ b/UnitreeGo2/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7f281adf77ebf506f3cca867d65a66294f21ed0175e04821fdb22cbc3c5ea3f +size 177915 diff --git a/Welcome/Welcome.zip b/Welcome/Welcome.zip new file mode 100644 index 0000000000000000000000000000000000000000..43d8537c91d91fd084c18501ee38d271b63640b8 --- /dev/null +++ b/Welcome/Welcome.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66c27bd1d5b7599c8e1ef63768837cded381a8bc5327b8577291ee420867deb5 +size 94567464 diff --git a/Welcome/metadata.yaml b/Welcome/metadata.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7f8d74c3f7e9b93988a29bc007b674f7df9598db --- /dev/null +++ b/Welcome/metadata.yaml @@ -0,0 +1,26 @@ +Name: "Welcome to Lucky Engine" +Type: Project +Category: Examples +Description: > + The default Welcome project for Lucky Engine, featuring a Panda robot + in a showcase environment with physics demos and interactive examples. +Tags: + - example + - robot + - physics + - tutorial + - panda + - mujoco +Files: + - 'WelcomeToLuckyEngine.hproj' + - 'premake5.lua' + - 'Assets/Scenes/Main.hscene' + - 'Assets/Scripts/Client/Source/' + - 'Assets/ContentVault/Examples/Welcome/Welcome.hscene' + - 'Assets/ContentVault/Examples/Welcome/Welcome.hzr' + - 'Assets/ContentVault/Examples/Welcome/Scripts/' + - 'Assets/ContentVault/Examples/Welcome/Materials/' + - 'Assets/ContentVault/Examples/Welcome/Meshes/' + - 'Assets/ContentVault/Examples/Welcome/Models/' + - 'Assets/ContentVault/Examples/Welcome/Prefabs/' + - 'Assets/ContentVault/Robots/Panda/' diff --git a/Welcome/thumbnail.png b/Welcome/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..d7744112baf90d6d45f53929c1f94b6069c111dc --- /dev/null +++ b/Welcome/thumbnail.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4669ac696b4455b7dc86349fd6de8913b8bc5dc33128b6a4b67537aea2b6062d +size 567137 diff --git a/index.json b/index.json new file mode 100644 index 0000000000000000000000000000000000000000..b56cac83306b37e996e31e4d719972776dcd95f4 --- /dev/null +++ b/index.json @@ -0,0 +1,20 @@ +{ + "packs": [ + "Bunglalow", + "Go2VelocityTracking", + "Loft", + "MujocoExample", + "Office", + "Oscillator", + "Panda", + "Piper", + "PiperBlockStacking", + "PiperPickPlace", + "PiperUnscrewCap", + "SO100PickAndPlace", + "Skies-Vol-1", + "UnitreeG1", + "UnitreeGo2", + "Welcome" + ] +} \ No newline at end of file diff --git a/sync-trigger.txt b/sync-trigger.txt new file mode 100644 index 0000000000000000000000000000000000000000..cf0e578d4c628770407cb26f6e3d6f18b8642c78 --- /dev/null +++ b/sync-trigger.txt @@ -0,0 +1 @@ +sync-trigger: 1775074904