2人用ゲーム(ShapeGameなど)を作成しましたが、問題は、プレーヤーの1人がゲームシーンから離れたときに、どちらのプレーヤー(どのプレーヤー)がゲームから離れたかを検出できないことです。
ゲームには2台の車があると考えてください。最初に検出されたプレーヤー(player1と呼びます)は左のプレーヤーを使用し、player2は右のプレーヤーを使用します。player1がシーンを離れると、突然player2が左の車の制御を取り、player1がゲームに再び参加すると、player1が再び左の車の制御を取り戻し、player2が右の車の制御を取ります。
int id = 0;
foreach (SkeletonData data in skeletonFrame.Skeletons)
{
if (SkeletonTrackingState.Tracked == data.TrackingState)
{
// do some work
id++;
}
}
プログラムはid = 0
、最初に検出されたプレーヤー(player1と呼びます)と2番目に検出されたプレーヤー(player2と呼びます)に1を与えます。player2がゲームを離れて再参加した場合、問題はありません。再びかかりますid = 1
。ただし、player1がゲームから離れるid = 0
と、この時点で最初に検出されたプレーヤーであるため、player2がテイクします。
解決策はありますか?