バグ

提供:APCC
2021年11月11日 (木) 11:05時点におけるRamdos (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動
この記事は秀逸な記事です。

バグとは、ゲームソフトウェアなどのプログラム上の誤りを指す言葉である。

概要

ソフトウェア開発の際、ミスを避けることはできない。ここで、想定通りの動作をしていない場合、それらは広くバグと呼ばれる。 ゲームにおいては、しばしばゲームクリアが極端に困難だったり、ありえない場所に侵入できたりといったような事柄もバグと呼ばれる。

内容

バグは主に、技術的なバグ・仕様上のバグ・性能不足に分けられる。

技術的なバグ

技術的なバグは、主に純粋なプログラム上の誤りを指す。例えば、スコア残り時間で割った値を求めようとして、残り時間が0だった場合に0除算例外が発生するなどのようなバグである。 最も頻繁に見かけられるが、その多くは発見・修正ともに比較的容易である。

仕様上のバグ

仕様上のバグは、そもそも作ろうとしているもの(仕様)が間違っているケースである。例えば、複雑なゲームシステムを持つゲームで、お互いに矛盾する仕様を作成してしまうなどのバグである。 高度化したプログラムでは発見が難しくなるケースも多い。

性能不足

画面に表示しようとしているものが多すぎる、使われているアルゴリズムが非効率的すぎるなどの原因で発生する。例えば、10000件のオブジェクトの衝突判定を行おうとして、全てのオブジェクトの組について衝突判定を行ってしまいフレームの更新処理が間に合わなくなるケースなどが挙げられる。

バグの対策

バグは発生した場合の対策が非常に厄介であることから、しばしばしっかりとした対策が挙げられる。これにはインデント変数名のルールを事前に定めることや、除算する場合は0でわろうとしていないかを判定することなどが挙げられる。

関連項目

ウィキペディアにバグ の解説があります。