Tanksにおいて物体同士がすり抜けてしまう問題が発生していたので、
念のためTanksチュートリアルのアセットをダウンロードする前にサンプルを作ってみたところ、先日のTanksのときと同じように物体同士がすり抜けていました。
動かしているキューブのスクリプトはチュートリアル内のTankMovementを元にしており、Rigidbodyの設定も同じくY軸移動・X軸Z軸回転に制限をかけています。
また、そのままだとフレームレートが1000近くなっていたのでフォーラムの投稿( http://tech-sta.com/blog/forum/unity-forum/unity%e3%81%ae%ef%bc%91frame%e9%96%93%e9%9a%94%e3%81%af%e4%bd%95%e7%a7%92%e3%81%a7%e3%81%97%e3%82%87%e3%81%86%e3%81%8b/#post-664 )を参考に60fps程度に設定し、Project settings内のV Sync countをDon't syncにしています。
すり抜けはこの設定の有無にかかわらず発生します。
バージョン2019.1.4f1でほぼ同内容のプロジェクト(そのままでも80くらいに収まっていたのでフレームレートの調整をしていません)を作成したところ、すり抜けは起こりませんでした。
Tanksチュートリアルに関しては2019系の更新版をDLすることで解決できるかもしれません。
以下2点の設定を試してみましたが・・・
①白キューブの『Rigidbody』->『Collision Detection』をContinuous Dynamicに変更してみる
=>解決せず(他の2つも効果なし)
②『Project Settings』->『Time』ー>『Fixed Timestep』を0.001くらいに下げてみる
=>解決せず(その上処理が重くなり自分のPCではカクつきが酷い)
どちらも問題解決には至りませんでした。
おそらくですが、Unityのバージョン2020以降のバグではないかと思われます。
ひょっとしたらタンクのSpeedが速すぎるのかもしれません。
・例①:Speed -> 10
・例②:Speed -> 12
Speed速いままだと以下の方法でもダメでした。
https://miyagame.net/obj-continuous/
http://kimama-up.net/unity-collision-detection/
https://tsubakit1.hateblo.jp/entry/2016/07/09/235856
・Speed変数の値を少し下げる
・【Collision Detection】を【Continuous】に設定する
の2段構えで対策するといけますが、
「高速移動するゲームを作りたい」(Speed -> 12でどうしても作りたいんだ!)という場合は難しいですね。