ベンチマーク は何をしますか?
実際の実行ゲームから測定可能な証拠を生成します。リポジトリの tools/benchmark.mjs と tools/snap.mjs を使用し、選択したワークツリーとそのゲームコンテンツのフィンガープリントを維持します。実験的なチェックアウトは /home/jayjay/thrust-zarch-experimental です。クラシックな main は別のゲームバージョンです。実行前に適切なチェックアウトを特定してください。コマンドとシーン API については ワークフロー を参照してください。
変更された動作に到達する短いフィクスチャーを選択します。可能な限り既存のシーンを再利用し、一般的なキャプチャにはデフォルトの coastal-flight/research フィクスチャーを使用します。ブラウザは一度に一つだけ実行してください。ベンチマークは、スクリーンショット、録画、他のテストブラウザ、CPU回帰バッチを同時に実行せずに行います。メディアは後でキャプチャします。
before/after の主張を行うには、以前のコードからベースラインを保持し、同じシーン、シード、ブラウザ、レンダラー、解像度、サンプリングポリシーを繰り返します。ツールは設定が一致しない比較を拒否します。変更されていないコードの繰り返し実行は再現性を測定するものであり、改善ではありません。ベースラインの欠落や失敗した実行をごまかしてはいけません。
PNGとデコードされたクリップのコンタクトシートを検査します。動きが主張である場合、より多くのフレームを検査するか、クリップを再生/シークします。三つのサムネイルではすべての中間フレームを確認できません。レンダリングされた証拠がサポートする内容を、実際のアサーションとともに報告してください。個体数のカウントだけでは目に見える魚を確認できず、空白でないフレームだけでは正しい景色を確認できません。視覚的な観測と自動チェックを区別してください。
実行ディレクトリ、ソースの識別情報、関連する数値、失敗、制限を返してください。SwiftShaderはソフトウェアレンダラーです。XRエミュレーションはヘッドセットの認定ではありません。CPUフェーズは平滑化されたCPUコストであり、ドローカウンターは最後のレンダリングパスからのものです。ビデオエンコードレートはゲームのFPSではなく、エンコードされた時間はキャプチャ時間と異なる場合があります。HTML開発レポートが要求された場合は証拠を $devlog に渡してください。ベンチマークは独立して使用可能です。