0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Unity】オブジェクトに衝突判定とトリガー判定を実装

Posted at

#やりたいこと
アイテムのバウンドと取得.gif

  • オブジェクトが床をすり抜けない
  • プレイヤーが触れると消える(トリガー判定で消す)

##環境

  • Unity version 2018.3.3f1

##前提

  • 2D
  • 床にはBoxCollider2Dが設定されている
  • 対象オブジェクトにRigidBody2DとBoxCollider2Dを追加

##問題点
対象オブジェクトが床をすり抜けなくするためにBoxCollider2DのIsTriggerを外すが、これだとTrigger系判定が起動しなくなる
Collision系判定でやりたいことを実現することもできるけど、引っかかるような動きになってしまう

##対応策
BoxCollider2Dを二つ付ける
衝突判定とトリガー判定02.jpg
片方のcolliderのIsTriggerを設定、もう片方は外す。
IsTriggerを設定していないcollider(床をすり抜けなくしている方)の範囲は小さくしておくとよさげ。
衝突判定とトリガー判定03.jpg
こんな感じ。

##課題
圧倒的な力業感
もっとスマートなやり方はないのかしら。
調べてもいい解決方法が見つからず。別の方法で実現できれば追記します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?