最終確認日
Godotのis_zero_approx関数について
https://docs.godotengine.org/en/stable/classes/class_%40globalscope.html#class-globalscope-method-is-zero-approx概要
is_zero_approx(x)は、数値xが「ゼロに非常に近い」かどうかを判定するための関数。- Godotエンジン(GDScript)に標準で用意されている。
- 浮動小数点数(
float)特有の微小な誤差を考慮するために使う。
必要な理由
- 浮動小数点数はコンピュータ内部で完全に正確な計算ができないため。
- 本来ゼロになるはずの値でも、わずかにズレることがある。
== 0だとズレた値をゼロとみなせず、意図した動作をしない可能性がある。is_zero_approx(x)は、「ほぼゼロ」という実用的な判定を行う。
使い所
- 小数同士の比較(速度・位置・スケールなど)。
- プレイヤー入力や速度の無入力判定
- 物理演算で微小な動きを無視するとき
注意点
is_zero_approxは完全一致ではないため、- 厳密なゼロ比較が必要な場面(例:整数の比較)には向かない。
- 誤差許容幅(イプシロン値)は固定されている(通常は
0.00001)。
関連
is_equal_approx(a: float, b: float) と言う関数もある。
公開日
更新日