概要
動作確認環境: Godot 4.3+
ステルスゲームでは「敵の視界に入ったら発見される」仕組みが必要です。Metal Gear SolidやHitmanのようなゲームを思い浮かべてください。敵の正面に立てば見つかりますが、背後からこっそり近づけば気づかれません。この「前方だけを見る」仕組みが FOV(Field of View: 視野角) です。
単純な距離判定だけでは、敵の真後ろにいても検知されてしまい、ステルスゲームとして成立しません。「敵からの距離」「敵の視線方向との角度」「間に壁があるか」――この3つすべてを考慮して初めて、リアルな視界判定になります。
この記事では、 Area3D (検知範囲) + ドット積 (角度判定) + RayCast3D (遮蔽チェック)の3段階で視界システムを構築する方法を解説します。コード量は多めですが、基本パターンを理解すれば応用は簡単です。
Sponsored