が、私はちょうど(ShapeGameのような)2人用のゲームを作成しが、問題は選手の一人がゲームのシーンからレフトとき、私はゲームから左にその1(プレイヤー)を検出することができないです。のKinect SDKプレーヤー検出
は、ゲーム内の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
を与える第二のプレーヤーを検出し、1ため(player1それを呼び出す)(player2それを呼び出します)。プレーヤー2がゲームから離れて再び参加したときに問題はありません。再びid = 1
が必要です。 player1がゲームからレフトとき、それはこの時点で最初に検出されたプレーヤーであるのためしかし、player2はid = 0
をとります。
すべてのソリューションはありますか?