ウォールハック

ウォールハック（Wallhack）とは、wall（壁）とhack（ソフトウェアの技術的課題を解決する）を掛けた造語である。日本のコンピュータゲーム用語としては、主としてDirect3DやOpenGLなどのAPIをフックするなどの手法で、制作者の意図しない動作をさせる行為を指す。特にシーンの開始時に、レンダリング ステートを変更する手法が一般的である。壁などの前面に表示されるはずのオブジェクトを消したりすることができる。その結果本来見えないはずの部分、例えば壁越しのキャラクターなどを表示させるといった効果がある。

実現方法 
Direct3Dの場合はBeginSceneメソッドをフックし、シーンの開始時にレンダリング ステートを変更する方法が一般的。OpenGLの場合はglBeginをフックすることが多い。

XQZ ウォールハック
ウォールハックで最も著名なのが、XQZ ウォールハックである。壁はquad、キャラクターはtriangleで描画されることを利用し、キャラクターを描画する時のみglDisable(GL_DEPTH_TEST)を呼び出しキャラクターを前面に表示するというものである。XQZという名称はツールの名称XQZ2に由来する。欠点としてキャラクターが崩れて表示されるという問題があった。ゴーストリプレイなど近年のツールはこの表示の乱れの問題を改良している。

関連項目 
バグ
チート

参考文献

Networking and Online Games: Understanding and Engineering Multiplayer Internet Games　ISBN 0470018577

コンピュータグラフィックス
コンピュータセキュリティ