system
(system)
1
内容
画像の白い丸の位置に赤いオブジェクトが移動して距離が0.5f以下になれば次の白い位置に移動するという処理を組んで居るのですが、1.0f以下という処理で上手くif文の内部が実行されますが。0.5fだと何が悪いのでしょうか?
ログ
この行の無限ループです
Distance to point: 0.5009107
direction: (0.0051062084, -0.99998677, -0.00051404786)
Distance to point: 0.5009107
direction: (0.0051062084, -0.99998677, -0.00051404786)
Distance to point: 0.5009107
direction: (0.0051062084, -0.99998677, -0.00051404786)
Distance to point: 0.5009107
direction: (0.0051062084, -0.99998677, -0.00051404786)
環境
OS: Ubuntu
Godot: v4.6 C#
https://cdn.discordapp.com/attachments/1500382395197558825/1500382396103528508/Enemy.cs?ex=69f83b7e&is=69f6e9fe&hm=6c3c346a5b75cd84d5208f3e3bba072f04f54cc3502ad35126035886a29c717e&
from Discord by amagichan00
system
(system)
2
追記 知りたいこと ですが 距離が0.5009107 以下にならない原因が知りたい
from Discord by amagichan00
system
(system)
3
・ XYZの三軸共移動していますか?
XZ平面の移動で赤いオブジェクトのサイズが1,1,1でない場合の原点と白いsphereの原点が重ならない可能性があったりする?とか思いました。
from Discord by pkaichi
system
(system)
4
えっっと、コリジョンは存在しないのでぶつかる要因がありません。
from Discord by amagichan00
system
(system)
6
そうすると移動のロジックで赤いオブジェクトの座標の移動量が問題になりそう?
from Discord by pkaichi
system
(system)
7
すいません。どいう意味でしょうか
from Discord by amagichan00
system
(system)
8
移動のロジックで移動量が最低でも0.5以上になっている可能性とかあるのかなー?って思った次第です。
markと自身のGlobalPositionの距離のチェック以外の処理は判らんので推測するしかなくって
from Discord by pkaichi
system
(system)
9
そうですか
from Discord by amagichan00
system
(system)
10
無限ループに入ってからもMoveAndSlide()の返り値がfalseになってますでしょうか?もしtrueを返していたら想定してない衝突が発生してることになるので…
あとよければシーンツリーも見せていただけると他の要因がわかるかもしれません
from Discord by sidge_51300