private void HandleOnCreatedLocalPlayer(IAvatar avatar, IRemotePlayer remotePlayer) { ISpatialAnchor anchor = _anchorSystem.GetOrCreateAnchor(remotePlayer.PlayerID); _anchorSystem.CreateTuner(); anchor.AddTransform(avatar.Root); }
private ISpatialAnchor Create(SpatialAnchorID anchorID) { ISpatialAnchor anchor = _anchorFactory.Create(anchorID); AddAnchor(anchorID, anchor); return(anchor); }
private void AddAnchor(SpatialAnchorID anchorID, ISpatialAnchor anchor) { if (Find(anchorID) != null) { Debug.LogWarning($"{anchorID} is already exist in the database. The anchor won't be added this time."); return; } _database.Add(anchorID, anchor); }
private ISpatialAnchor CreateAnchor(PlayerID playerID) { SpatialAnchorID anchorID = CreateNewID(playerID); _database.Add(playerID, anchorID); ISpatialAnchor anchor = _anchorRepository.Create(anchorID); OnCreatedAnchor?.Invoke(anchor); return(anchor); }
void ISpatialAnchorTuner.BindAnchor(ISpatialAnchor anchor) { _spatialAnchor = anchor; }
private void RegisterTuner(ISpatialAnchorTuner tuner, PlayerID playerID) { ISpatialAnchor anchor = GetOrCreateAnchor(playerID); tuner.BindAnchor(anchor); }