No edit summary |
Finished permissions information |
||
Line 34: | Line 34: | ||
== Permissions == | == Permissions == | ||
As exporting a ResonitePackage is treated the same as exporting any other file | As exporting a ResonitePackage is treated the same as exporting any other file, any regular export restrictions still work. This includes: | ||
* Restricting certain roles from exporting in a world | |||
* [[Component:SimpleAvatarProtection|SimpleAvatarProtection]] blocking export for objects you do not own. | |||
=== Simple Avatar Protection handling === | === Simple Avatar Protection handling === | ||
Line 40: | Line 42: | ||
On '''import''': | On '''import''': | ||
# Resonite will notify each copy of [[Component:SimpleAvatarProtection]] found within the package that it is part of a package import. | # Resonite will notify each copy of [[Component:SimpleAvatarProtection|SimpleAvatarProtection]] found within the package that it is part of a package import. | ||
# If the <code>ReassignUserOnPackageImport</code> property on the [[Component:SimpleAvatarProtection]] is set to <code>true</code> | # If the <code>ReassignUserOnPackageImport</code> property on the [[Component:SimpleAvatarProtection|SimpleAvatarProtection]] is set to <code>true</code> | ||
## The User assigned to the [[Component:SimpleAvatarProtection]] will be set to the user who imported the package. | ## The User assigned to the [[Component:SimpleAvatarProtection|SimpleAvatarProtection]] will be set to the user who imported the package. | ||
# If the <code>ReassignUserOnPackageImport</code> property on the [[Component:SimpleAvatarProtection]] is set to <code>false</code> | # If the <code>ReassignUserOnPackageImport</code> property on the [[Component:SimpleAvatarProtection|SimpleAvatarProtection]] is set to <code>false</code> | ||
## The User assignment will be left alone. | ## The User assignment will be left alone. | ||
Revision as of 07:44, 9 June 2024
ResonitePackage is an upcoming package format allowing users to share and import pre-setup avatars and objects easily[1].
Goals
The goals of the ResonitePackage format are to:
- Allow creators to share creations outside of Resonite
- For example an avatar creator adding a ResonitePackage version of their avatar
Non-Goals
- Compatibility with Unity/Unitypackage
- Unitypackage is a proprietary format, that we cannot support/emulate
- Therefore Unity will not support ResonitePackage.
- Compatibility with other VR Platforms
- ResonitePackage files will not be suppoted by other VR Platforms
Contents
ResonitePackages will include everything needed to re-create an object inside Resonite when re-imported. Including:
- All Assets
- Images
- Sounds
- Meshes
- Videos
- Slot Hierarchies
- Including Bones
- Including all components
- ProtoFlux
All assets will be included explicitly, as a file within the package.
Variants
You can also optionally, export a ResonitePackage with all asset variants. This will result in a larger file size though.
Permissions
As exporting a ResonitePackage is treated the same as exporting any other file, any regular export restrictions still work. This includes:
- Restricting certain roles from exporting in a world
- SimpleAvatarProtection blocking export for objects you do not own.
Simple Avatar Protection handling
ResonitePackages have some custom handling for SimpleAvatarProtection.
On import:
- Resonite will notify each copy of SimpleAvatarProtection found within the package that it is part of a package import.
- If the
ReassignUserOnPackageImport
property on the SimpleAvatarProtection is set totrue
- The User assigned to the SimpleAvatarProtection will be set to the user who imported the package.
- If the
ReassignUserOnPackageImport
property on the SimpleAvatarProtection is set tofalse
- The User assignment will be left alone.
It is recommended to review the ReassignUserOnPackageImport
property on any important assets to make sure it is set correctly.
Naming
The name was chosen as it was the most explicit (following in the steps of the Unity engine having the UnityPackage format), and as a way to advertise the platform[2][3].
Sources
- ↑ Frooxius' comment on the package format on GitHub: https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/950#issuecomment-2153588542
- ↑ Shifty's comment on the name: https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/950#issuecomment-2148464652
- ↑ Frooxius' comment on the name: https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/950#issuecomment-2148476139