Open4
Cluster Creator Kitについてのメモ
手に持ったGrabbable itemは、Rigidbodyを持たないColliderと接触(Collision)しなくなる。重なり(Trigger)はする。
手に持ったGrabbable item(A)と、デフォルトのCubeの両方に、OnCollideItemTriggerを付けても発火しなかった。しかも、AもCubeもIsTrigger: falseにもかかわらず、AはCubeを突き抜ける。
CubeにRigitdobyを追加すると、不思議な事にAとRigitdobyCubeは接触する様になり、RigitdobyCubeはAによって押されて動くようになる。OnCollideItemTrigger: Collisionも発火する。
CubeのIsTrigger: trueにすると、Aと重なる事でOnCollideItemTrigger: Triggerは発火する。
Grabbable itemの構成
- Grabbable itemを付けたら自動的にRigidbodyが付く。
- 自動では付かないが、Colliderが無いと手に持つ操作が出来ないので、実質Colliderも必須。
- なのでGrabbable itemは接触や重なりを発火する為に必要なRigidbodyとColliderは確実に持っている。
恐らくメモリ不足でワールドのアップロードに失敗するケース
メモリ不足であると確定はしていないが、恐らくPC搭載メモリが8GBだとメモリ不足によりワールドのアップロードが困難。
ワールドをアップロードする為のビルド中にUnityがクラッシュする。Editorログを確認すると、試す度にクラッシュする直前の処理が異なる。PCのメモリ状況は、OSや他のアプリによって変化してるので、試す度にクラッシュのタイミングが変わるのはメモリが不足していると考えられる挙動。
この試す度にクラッシュのタイミングが変わるトラブルを2例見かけた事があり、どちらも搭載メモリが8GBだったので、8GBではclusterのワールドアップロードには不足しているかもしれない。
Ownerが移るケース
On Receive Ownership Item Triggerのドキュメントから分かる。
Voluntary
- Ownerではない状態でInteractItemTriggerを設定したItemを使った時
- Ownerではない状態でGrabbableItemを掴んだ時
- CreateItemGimmickによってItemが作られる時、そのCreateItemGimmickを設定したItemのOwnerである場合
Involuntary
- そのワールドに誰も居ない状態で入室した時
- ItemのOwnerであるプレイヤーが退室したり、そのプレイヤーの通信が途切れた時
不明点
- 退出した時に複数のItemのOwnerである場合、その全てのItemのOwnerが他のプレイヤー1名にまとめて移るのか、ワールドに居る複数のプレイヤーに分散するのか。
- Ridable Itemに乗った時
作りにくい・作れない仕掛け
- Create Item Gimmickで作ったItemにたいし、Create Item Gimmickを持つItemから初期値的なメッセージを渡すもの