VOGL

提供: ArchWiki
移動先: 案内検索

VOGL は Valve Software と RAD Game Tools により作成された、OpenGL のデバッグのためのツールです。OpenGL のコールトレースファイルを取得・リプレイ・調査することができます。

インストール

AUR より、開発バージョン vogl-gitAUR が利用可能です。

32ビットのアプリケーションをキャプチャ・デバッグするには lib32-vogl-gitAUR から libvogltrace32.so, voglreplay32, vogleditor32 が必要です。

トレースファイルを取得する

以下のコマンドを実行してトレースファイルを取得します:

$ VOGL_CMD_LINE="--vogl_debug --vogl_dump_stats --vogl_tracefile /tmp/vogltrace.bin" LD_PRELOAD=/usr/lib/libvogltrace64.so <command>

<command> の部分は OpenGL アプリケーションを実行するコマンドに置き換えてください。/tmp 以下にトレースファイルが作成されます。

警告: ファイルは急激に巨大化します。1-2分ほどでキャプチャされたコールは約1GBになります。

VOGL はソースの中にテスト用に使える OpenGL のサンプルを含みます。サンプルはパッケージには含まれていませんが手動でビルドすることができます。最新の OpenGL サンプルは OpenGL Samples Pack もしくは OpenGL SuperBible から入手することができます。

トレースファイルをトリミングする

より小さいトレースファイルを作成したい場合、例えばフレーム Y から開始して X フレーム分だけトレースを取得するには:

$ voglreplay64 original_trace.bin --trim_file trimmed_trace.bin --trim_len X --trim_frame Y

トレースファイルのリプレイ

トレースをリプレイするには vogl ディレクトリ内から voglreplayer を実行します:

$ voglreplay64 /tmp/vogltrace.bin

トレースの詳細なデバッグ出力を表示するには:

$ voglreplay64 --debug --verbose vogltrace.bin

GL コールと拡張の統計を表示するには:

$ voglreplay64 --info vogltrace.bin

トレースファイルの調査

vogleditor を実行し、"File - Open Trace" から tracefile.bin を開きます:

$ vogleditor64

制約

制約については ブログの投稿 を読んでください。