Avatar portability
From OpenSimulator
(Difference between revisions)
(→3) |
(→3) |
||
Line 35: | Line 35: | ||
*At the right-bottom of this picture, "ForeginAssetHashTable" is used to solve this. | *At the right-bottom of this picture, "ForeginAssetHashTable" is used to solve this. | ||
*When an user login, | *When an user login, | ||
− | * | + | *#region gets its "inventoryurl", "asseturl" from its "profile" |
− | * | + | *#region gets its appearance(UUIDs) from its "inventoryurl", and add the UUIDs into "ForeginAssetHashTable" |
+ | *#Then | ||
==== 4 ==== | ==== 4 ==== |
Revision as of 07:27, 16 July 2008
Contents |
Basic Idea
To enable user avatar travel from a grid service to another grid service, There are 2 problem to be considered:
- How to enable foreign user login - Authentication
- How to get a foreign user's belongings(including appearance, inventory)
To achieve the 1st, client side changes are needed. SO, so far, I have only implemented 2nd, and would like to explan my idea:
Authentication
Avatar Portability
In "users" table, "UserInventoryURL" and "UserAssetURL" have been there for a long time, and they are not used yet. My idea starts from the 2 properties;
1
- U1 is an user of GridService G1, so probably, U1's "UserInventoryURL" and "UserAssetURL" are pointing to G1's default Inventory/Asset server.
- R1 is a regionserver in GridService G2, so R1 used to fetch assets from G2's default Asset server.
2
- U1 login to R1, If U1 want to also bring in its apearance, R1 should have the ability that can get U1's appearance from U1's "UserInventoryUrl" and get U1's assets(textures) from "UserAssetUrl".
- So, in this case, because an asset request("RequestImagePacket") only sends asset UUID to R1, R1 has to determine which asset server provides the reuqested UUID.
3
>R1 has to determine which asset server provides the reuqested UUID
- At the right-bottom of this picture, "ForeginAssetHashTable" is used to solve this.
- When an user login,
- region gets its "inventoryurl", "asseturl" from its "profile"
- region gets its appearance(UUIDs) from its "inventoryurl", and add the UUIDs into "ForeginAssetHashTable"
- Then