質問編集履歴

2

追記

2022/02/24 06:15

投稿

araragi_dev
araragi_dev

スコア60

test CHANGED
File without changes
test CHANGED
@@ -12,7 +12,10 @@
12
12
  よろしくお願い致します。
13
13
 
14
14
  **・備考** ※2022年2月24日追記
15
- 本ゲームの実装の初期段階では同期ずれがあまり起きていなかったので、何かの実装タイミングでずれが発生した可能性があります。
15
+ 本ゲームの実装の初期段階では同期ずれがあまり起きていなかった認識なので、何かの実装タイミングでずれが発生した可能性があります。
16
+ ②transform.positionでプレイヤー移動時に、引っかかっている様子があります。transform.position以外の方法でプレイヤーを移動するか、衝突判定を一時的にいじれば解消しそうな気がします。(やり方が不明なので検討中)
17
+ ③移動先を変えてみましたが、同じように同期ズレが発生しました。
18
+ ④同期対象が多すぎるのが問題かと考え、同期対象を減らしましたが、問題は解決しませんでした。
16
19
 
17
20
  **・スクリーンショット**
18
21
  ロビー集合時の画面 ※2人の位置は正常に同期されている

1

追記

2022/02/24 06:07

投稿

araragi_dev
araragi_dev

スコア60

test CHANGED
File without changes
test CHANGED
@@ -11,13 +11,42 @@
11
11
  何卒お力をお貸しください。
12
12
  よろしくお願い致します。
13
13
 
14
+ **・備考** ※2022年2月24日追記
15
+ 本ゲームの実装の初期段階では同期ずれがあまり起きていなかったので、何かの実装タイミングでずれが発生した可能性があります。
16
+
14
17
  **・スクリーンショット**
15
18
  ロビー集合時の画面 ※2人の位置は正常に同期されている
16
19
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-02-14/7a99adfb-0174-4831-a0a1-73fd8a5e6aa2.png)
17
20
 
18
- プレイヤーAの視点 ※正常に同期がとれているように見える
21
+ プレイヤーAの視点 ※転送後。正常に同期がとれているように見える
19
22
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-02-14/19c2d92a-ab78-485f-9d6a-3e19d986198a.png)
20
23
 
21
- プレイヤーBの視点 ※プレイヤーAが床に浮いており、同期処理が働いているのか、上に戻ろうと上下にキャラがぶれている
24
+ プレイヤーBの視点 ※転送後。プレイヤーAが床に浮いており、同期処理が働いているのか、上に戻ろうと上下にキャラがぶれている
22
25
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-02-14/e4f7feaa-ad08-45ee-98ed-35e1a1771ef9.png)
23
26
 
27
+
28
+ **・ソースコード 各プレイヤーの転送部分** ※2022年2月24日追記
29
+ ```C#
30
+ //二人そろうとstart_fragが1になり、各スタートポジションへの転送が始まる
31
+ if (start_frag == 1)
32
+ {
33
+ Debug.Log("start_frag 1");
34
+
35
+ if (team == "red")
36
+ {
37
+ Vector3 tmp = GameObject.Find("Start_point_red").transform.position;
38
+ GameObject.Find("Player[" + photonView.OwnerActorNr + "]").transform.position = new Vector3(tmp.x, tmp.y, tmp.z);
39
+ }
40
+
41
+ if (team == "blue")
42
+ {
43
+ Vector3 tmp = GameObject.Find("Start_point_blue").transform.position;
44
+ GameObject.Find("Player[" + photonView.OwnerActorNr + "]").transform.position = new Vector3(tmp.x, tmp.y, tmp.z);
45
+ }
46
+ //start_fragを2にして再転送を避ける
47
+ start_frag = 2;
48
+ Debug.Log("start_frag 2");
49
+
50
+ }
51
+ ```
52
+