2017-09-20 5 views
0

編集 x軸またはzでアプリケーションを実行するところでオフ距離は、だから私はそれが90度にバインドされていないことに気づきました。それは基本的にどこで私がアプリを起動するところです。反対側の壁でアプリケーションを起動すると、180度オフになります。私は同じ壁で始まっても気づきました。部屋の反対側で始めると、その距離だけ離れています。Hololens共有:クライアントHololens回転と私は</p> <p>


私はUnetの例で作業していますが、弾丸と同様にネットワーク上でカプセルを生成するにはわずかに変更しました。しかし、エディターでは起こらないHoloLensで起こるこの奇妙なことがあります。クライアントのHoloLensビューは、x軸またはz軸で90度ずれていますが、実際にどちらを見ることはできません。しかし、y軸はまだ同期しています。

私は2つのHoloLensと、Network Manager HUD経由で接続するコンピュータを持っています。セッションに参加することに問題はありませんが、何らかの理由で第2(クライアント)HoloLensのローテーションがオフになっています。コンピュータ上のシーンビューを見ると、ホストとコンピュータのクライアントは同期しています。しかし、私がHoloクライアントでカプセルを移動すると、シーンビューはそれが異なる方向を見ていることを示し、カプセルはHoloクライアントの左にあります。

他に誰もこれに運があったのですか?これについての洞察は非常に高く評価されます。

答えて

0

これは、オブジェクト上で権限を取得したときに共有ワールドアンカーの逆変換ポイントに基づいて位置を設定するコマンドをオブジェクトコントローラに追加することで解決しました。次のようになります。

private void Update() 
{ 
    if (receivedAuthority) 
    { 
     Vector3 objDir = transform.forward; 
     Vector3 objPos = transform.position + objDir * .01f; 

     localPosition = sharedAnchorTrans.InverseTransformPoint(objPos); 

      CmdTransform(localPosition);   
    } 

    else if(!receivedAuthority) 
    { 

     transform.localPosition = localPosition; 

    } 
} 

[Command] 
public void CmdTransform(Vector3 position) 
{ 
    if (!isLocalPlayer) 
    { 
     localPosition = position; 
    } 
} 
関連する問題