動画のエクスポート
エディターは、コンピューターにインストールされたffmpegを使って、開いているレベルを動画ファイルにレンダリングします。レンダリングはオフラインで1フレームずつ行われるので、マシンがどれだけ遅くても動画は正確です
エクスポートはWindows、macOS、Linuxで動作します。スマートフォンでは使えません
開き方
- レベル設定のサイド列にある
動画をエクスポート - コマンドパレットのコマンド
動画をエクスポート
ウィンドウはエディターの上に開きます。レベル設定から開いた場合は、閉じるとレベル設定に戻ります。動画のレンダリング中はウィンドウを閉じられません:停止でレンダリングを終了します
ffmpegのインストール
ffmpegはゲームに含まれていません。一度インストールすれば、ウィンドウが自動で見つけます。バージョン7.0以降が必要です。それより古いものは拒否され、見つかったバージョンがウィンドウに表示されます
| システム | インストールコマンド |
|---|---|
| Windows | winget install ffmpeg |
| macOS | brew install ffmpeg |
| Linux | ディストリビューションのパッケージ。たとえばsudo apt install ffmpeg |
一部のLinuxディストリビューションは、7.0より古いffmpegを同梱しています(Ubuntu 24.04は6.1)。その場合は、ffmpegのサイトから新しいビルドをインストールし、ウィンドウでそのファイルを指定してください
ウィンドウは次の順でffmpegを探します:
ffmpegを指定…で選んだファイル。この場合、ほかの場所は探しません- 環境変数
BH_FFMPEGのパス - ゲームのデータフォルダー内の
tools/ffmpeg PATHにあるすべてのフォルダー- 一般的なインストーラーが書き込むフォルダー
自動で検索は選んだファイルを忘れて、もう一度探します。再確認はチェックをやり直します。たとえばインストール直後に使います
ffmpegにはハードウェアエンコーダー(NVIDIA、AMD、Intel、Apple)が含まれている場合があります。ウィンドウは0.1秒の黒い映像でそれぞれを試し、このコンピューターで実際に動作するものだけを使います
ウィンドウのオプション
| オプション | 機能 |
|---|---|
コンテナー、コーデック | ファイルの種類と圧縮方法。下の形式を参照してください |
解像度 | 動画のサイズ。幅と高さは16から7680までの偶数です |
フレームレート | 動画の1秒あたりのフレーム数で、最大240。レベル自体のフレームレートには依存しません。60未満では各フレームが複数のステップでシミュレートされるので、ボットはゲーム内と同じようにプレイします |
範囲 | レベル全体、タイムラインのループ範囲、または自分で決めた開始フレームと終了フレーム |
品質 | 動画が占める容量。もともとロスレスの形式では非表示です |
フルカラー(4:4:4) | 1ピクセルおきではなく、すべてのピクセルに色を持たせます。細い色付きの線がくっきりしますが、ファイルは大きくなります |
シード(0 = エディターと同じ) | レベルのランダム性のシード。0ならエディターが使っているシードのままです |
プリロール(秒) | 開始前の何秒間を、記録せずに再生するか。これでエフェクトはすでに履歴を持った状態になります。デフォルトは2、最大10 |
プレイヤー | デフォルトはReflex Bot v1で、ほかにWarm Bot v1、またはアバターなしの動画用のボットなしがあります。エクスポート中は被弾しても何も起きません |
ポストプロセス、エフェクト | エディターと同じスイッチで、動画だけに適用されます |
オーディオ | 動画に入れるレベルのオーディオトラック |
ウィンドウでは、各オプションに専用の?があります
エディターのUI、グリッド、ギズモ、選択、カメラの境界は、動画には入りません。画面はレベルのカメラで構成され、そのアスペクト比で覆えない部分は黒い帯で埋まります
レンダリング速度
動画はコンピューターの速さに左右されません。レンダリングするフレーム1つごとに、レベルの時間とボットはどちらも動画のちょうど1フレーム分だけ進みます。そのため、遅いマシンでも同じ動画がレンダリングされ、時間が余分にかかるだけです
Warm Bot v1は最初のフレームの前にルート全体を計算し、ウィンドウにその進み具合が表示されます。ルートが見つからない場合、エクスポートは停止し、別のボットを選ぶよう求めます
形式
形式は2つの選択で決まります:コンテナーとコーデックです。リストには、ffmpegで作れる組み合わせだけが並びます。その下の行に、組み合わせに付くサウンドと、できるファイルが表示されます
コンテナー | コーデック | サウンド | 用途 |
|---|---|---|---|
MP4 | H.264、HEVC、AV1 | AAC、320 kbit/s | どこへでも送信・アップロードできる |
MKV(Matroska) | H.264、HEVC、AV1、VP9、FFV1 | FLAC、ロスレス | アーカイブ。FFV1なら一切の劣化なし |
MOV(QuickTime) | H.264、HEVC、ProRes | PCM 16ビット、非圧縮 | Premiere、DaVinci Resolve、Final Cutでの編集 |
WebM | VP9、AV1 | Opus、256 kbit/s | Web |
GIF、WebP(アニメーション)、APNG | なし | サウンドなし | チャットやページ向けの短いループクリップ |
連番画像 | PNG、JPEG、WebP、TIFF | フレームの横にaudio.wav | どの編集ソフトでもインポートできる |
サウンドのみ | WAV、FLAC、MP3、Opus | 形式そのもの | レベルのサウンドだけ。何もレンダリングされない |
GIFはクリップ全体で256色のパレットを1つ使います。短く小さく保ってください:レベル全体のGIFは、同じレベルのMP4よりはるかに重くなります
動画の保存先
デフォルトでは、動画はゲームのデータフォルダーのrecordings/<level id>/に、レベル名とエクスポート時刻を含む名前で保存されます。録画フォルダーを開くでそのフォルダーを開きます。選択…を使うと、次の動画をほかの任意の場所に保存します
録画はレベルを削除しても残ります。録画にチェックを入れない限り、プロファイル転送には含まれません
サウンド
動画のサウンドはスピーカーから録音されるわけではなく、エクスポート中は何も聞こえません
エンジン経由のサウンド(エフェクト付き)がオン(デフォルト)で、オーディオトラックにエフェクトがある場合、フレームのレンダリング中にレベルのサウンドがリアルタイムで再生され、エフェクトを含むゲーム自身のサウンドが録音されます。エクスポートには少なくとも範囲の長さだけ時間がかかります:速いコンピューターはサウンドが終わるまで待ちます。オフの場合、オーディオトラックは別々にミックスされ、音量とパンのキーフレームは反映されますが、エフェクトは反映されません。サウンドのみは常に別々にミックスします
プレビューの下に、ウィンドウは2本の進行バーフレームとサウンドを表示します:これらは独立して進みます。重いレベルでは、並行して録音するサウンドが途切れることがあります。その場合はフレームの後にサウンドを録音をオンにします:サウンドは最後のフレームの後に録音され、エクスポートは範囲の長さの分だけ長くかかります
動画のレンダリング中はゲームを閉じないでください。ウィンドウには、実行中ずっとその注意が表示されます
動画に入らないもの
- オーディオトラックのエフェクト。ただし、
エンジン経由のサウンド(エフェクト付き)がオフの場合か、サウンドのみの場合だけです。レベルにエフェクトがあると、ウィンドウが警告します - 透明な背景
- 自分がプレイした様子の記録:動画内でプレイできるのはボットだけです