godot にタイルマップがありますが、すべてのタイルが障害物であり、衝突を引き起こします。タイルのないセルのみが歩行可能です。Navigation2D ノードを介してナビゲーションを追加しようとしています。私が見る限り、「すべてが歩きやすいが、これらのタイルがある場所ではない」と言う方法はありません(「タイルのこの部分は歩きやすい」としか言えませんが、現在のセットアップではタイルはありません歩けるスペース)。
回避策として、タイルのないすべてのセルを次のコードで完全に歩ける「ダミー タイル」に設定しようとしました。
func _ready():
for x in size.x:
for y in size.y:
var cell = get_cell(x, y)
if cell == -1:
set_cell(x, y, WALKABLE)
ただし、Navigation2D ノードはこれらのタイルを認識しません。WALKABLE
タイルを手動で配置すると、すべてが期待どおりに機能します。
この問題が発生している可能性があり、電話する必要があると思いますupdate_dirty_quadrants()
が、問題は解決しません。
バージョン 3.0.6stable、3.1Alpha2、および最近のコミット 9a8569d ( godotwild提供) でこれを試しましたが、結果は常に同じでした。
すべてのタイルを事前に手動で配置せずに、タイルマップを使用してナビゲーションを取得する方法はありますか?