2
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?

Unity2Dで壁張り付きが発生した時の対処法

2
Posted at

はじめに

2Dアクションゲーム制作にて、プレイヤーが壁に張り付く事象が発生した。
解決方法は簡単だったが、様々な場面で使える機能であるため備忘として残す。

発生した事象

プレイヤーがジャンプで壁に触れた際、方向キーを押し続けると壁に張り付いてしまう。

レコーディング 2026-05-27 205925.gif

原因

Unityの2D Colliderにはデフォルトで摩擦力(Friction)が設定されている。
今回はその摩擦力によって、壁接触時にプレイヤーが張り付くような挙動になっていた。

解決方法

UnityのPhysics Material 2Dで摩擦力を0に設定する。

スクリーンショット 2026-05-27 210500.png

Friction(摩擦力)を0にしたことで、プレイヤーが壁に接した状態で方向キーを押し続けても真下に落下するようになった。

レコーディング 2026-05-27 211034.gif

弾性力の変更

Physics Material 2DではBounciness(弾性力)も設定することができる。これを使えば、常に弾み続けるプレイヤーを操作するアクションゲームにすることもできる。

レコーディング 2026-05-27 212625.gif

結論

プレイヤーが壁に張り付いてしまう原因はオブジェクトの摩擦力であり、
Physics Material 2Dで摩擦力を0にすることで解決することができる。
特に2Dアクションゲームでは摩擦力や弾性力が操作感に直結するため、
目的に応じて適切に設定することが重要だと感じた。

2
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
2
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?