README.md
Test Scene Loading Locally in Editor
(1) put all user generated scenes into Assets/Game folder.
(2) put all artifacts (e.g., prefabs that you want to share with others) used in your scene and all their dependencies (e.g., textures, meshes) into a separate folder under Assets/Exports folder.
(3) open the metacity build window in the menu bar Metacity --> BuildProjectWindow
(4) click build and wait for the building progress ends
(5) create a new folder called 'Asset' in your reading path(default:Assets/LocalBundle)
(5) move output bundle to 'Asset' folder
(6) press "Play"
(7) press ~
key in your keyboard and input the following command "LoadSpaceLocal" and hit enter
Test Avator/SinglePlayer Loading Locally in Editor
(1) create a new folder called 'Avator' in your reading path(default:Assets/LocalBundle)
(2) move all files in 'Assets/AvatorBundles' to 'Avator' folder
(3) press "Play"
(4) press ~
and input the following command "FetchAvatarCatalogsLocal" to load catalogs of avators in local path
(5) input the following command "ListAvatars", you can see all available avatar bundle keys in local path, please remember the index of the avatar you want to use
(6) input the following command "LoadSpaceLocal" and hit enter
(7) press ~
and input the following command "PlayerJoinLocal AVATAR_ID", where AVATAR_ID is the index of the specific avatar you want to choose from the avatar list shown in (5). Also, the AVATAR_ID will not be synced since each client load avators locally
(8) input the following command "StartLocal" to play singleplayer mode
Test MultiPlayer Loading Locally in Editor
(1) build Server App which should only has one scene called "Server"
(2) make sure your local "Server" App is on
(3) press "Play"
(4) input the following command "FetchAvatarCatalogsLocal" to load catalogs of avators in local path
(5) input the following command "ListAvatars", you can see all available avatar bundle keys in local path, please remember the index of the avatar you want to use
(6) input the following command "LoadSpaceLocal" and hit enter
(7) press ~
key in your keyboard and input the following command "PlayerJoinLocal AVATAR_ID", where AVATAR_ID is the index of the specific avatar you want to choose from the avatar list shown in (5). Also, the AVATAR_ID will not be synced since each client load avators locally
(8) input the following command "StartClient 127.0.0.1" to play mutiplayer mode
Test Build Custom VRM Avatar
(1) open the build avatar window in Metacity--> VRMAvatarBuildWindow
(2) drag the avatar prefab to the 'ExportRoot'
(3) make the avator compliant to the standard of VRM (e.g., input VRM's name and authors)
(4) toggle 'Use Custom Shader' in the 'ExportSettings' if you don't want to use VRM's built-in shader
(5) press Export
(6) if success, file will be created in 'Assets/AvatorBundles'
Test Workflow with COS
(1) install Postman
(2) use https://api.postman.com/collections/25733561-f2c8a3e2-a9c3-442a-900d-c695e2448add?access_key=PMAT-01GSCQD2KFRXC53F7V8XZMPYVN to initialize the collections in Postman
(3) configue the variable meta_base_url in Environment/Globals to https://metacity-int.unity.cn/
(4) First we test build & publish scene workflow
(5) after build a scene, click "Open Publish Window" to open the publish window
(6) open https://metacity-int.unity.cn and remember your mock user at in the top-right of the screen (like User12345)
(7) open Postman and call the API:mockLogin with your mock user id
(8) copy the returned "access_token"
(9) paste the access_token to the Access Token
(10) fill in the Template Name and Template Description and toggle on "create/update Build"
(11) press "Publish"
(12) after build an avatar, fill in Access Token with the same token you get from (8)
(13) press "Publish"
(14) now the scene & avatar bundles are all uploaded to the COS. We can test the overall runtime flow then
(15) first make sure your local "Server" App is on
(16) open "Launcher" scene and press "Play"
(17) press ~
and type in "FetchAvatarCatalogs"
(18) wait 5 seconds and then press ~
and type in "ListAvatars", you can see all available avatar bundle keys on the COS, please remember the index
of the avatar you want to use
(19) press ~
and type in "LoadSpaceLocal" (we still load the local space because we still need a new metacity API to get a valid template Id before using the "LoadSpace" command)
(20) after the scene is loaded, press ~
and type in "PlayerJoin AVATAR_ID", where AVATAR_ID is the index of
the specific avatar you want to choose from the avatar list shown in (28)
(21) press ~
and type in "StartClient 127.0.0.1"
(22) have fun