Python (Vizard) を使用して、ラップトップで仮想現実環境をリモートで起動しています。ラップトップが閉じられており、ヘッドマウントディスプレイも装着しているユーザーがバックパックに装着しているため、これをリモートで行う必要があります。ネットワーク接続を開き、仮想現実環境をラップトップにロードさせるコマンドを送信できますが、Vizard を完全に閉じないと環境を閉じることができません。
起動するために、次のようにネットワークを追加します。
myNetwork = viz.addNetwork('computer_name')
次に、ネットワーク イベント コールバックを使用してネットワーク メッセージを待ちます。
def onNetwork(e):
loadWorld(e.preferences)
viz.callback(viz.NETWORK_EVENT, onNetwork)
def loadWorld(preferences):
<<...>>
したがって、これはうまく機能し、 で指定された設定でプレーヤーを仮想現実環境に起動しますpreferences
。しかし、ネットワークを介して別のメッセージを送信すると、新しい世界が古い世界の上に重ねられ、仮想現実環境をきれいに閉じるための有効な方法がないようです。
仮想現実環境をまともに分解できないので、プログラム全体を最初から再起動した方が良さそうです。Vizard には というコマンドがありますが、viz.quit()
これを関数呼び出しの前に挿入するloadWorld
と、プログラムが完全に停止して に到達しませんloadWorld
。だから、私はこれを行うことができる別の方法があるのだろうか.
質問: Python スクリプトに、すべてのリソースを閉じて割り当てを解除し、その後すぐに再起動するように指示するにはどうすればよいですか?