godotのkinematicbodyでis_on_floorが有効にならない
godotのkinematicbody3dでis_on_floorが有効にならなかったのでメモ。
ただ単純にmode_and_slideに重力方向を指定するだけだった。よく見ればリファレンスにも書いてある。第二引数に重力方向(y軸)を指定することによって解決。
ただ、マイナス値を設定すると何故か動かないので注意。
https://docs.godotengine.org/en/stable/classes/class_kinematicbody.html
extends KinematicBody
var velocity = Vector3()
func _physics_process(delta):
#velocityを0にリセット
velocity = Vector3()
print(is_on_floor())
#gravity for
velocity.y = -5
#重力方向を指定しないとだめだよ
move_and_slide(velocity,Vector3(0,1,0)
この記事が気に入ったらサポートをしてみませんか?