twitter ■お問い合わせ当サイトへのリンクサイト仕様

現在位置 > LostTechnology > Movie > 音声のノイズを除去する

DirectX系ゲームの画面を動画にする

MMORPGなどDirectXを使用したゲームの画面を動画として録画したいという人もいると思います。ギルドバトルやプレイヤーバトル、ボスとの戦いなどを記念として動画で保存したいという需要はあるはずなのに、ゲームの側でそのような機能を用意しているものは見たことがありません。保存機能は静止画のみですよね。そこで、DirectX(3D)/OpenGL/GDIを使用して画面を描画しているゲームなどの画面を動画として取り込むためのツールを紹介しましょう。

Taksiをインストールする

オープンソースで開発されている3Dアプリケーション録画ツールに「Taksi」というものがあります。これを使えば録画することが可能となるものもあります。100%確実というわけにはいかないようですが、そこはまだ開発途上ということで仕方がないんじゃないでしょうか。動作の安定性を求めるならば「stable」を、最新版ならば「development」のファイルをダウンロードしてインストールしてください。

本稿執筆時の最新版0.7.7.2(development)の場合、ダウンロードしたファイルをダブルクリックしてインストールを開始すると、確認画面が出るのでNextを押します。次にインストール先のフォルダの選択と、自分だけが使うのか(そのPCを使うほかのアカウントを含めて)みんなで使うのかを選択する画面になるので、それぞれ設定していきましょう。インストール先はそのままでよいと思います。使用する人は通常はJust meで自分だけとしておいて大丈夫です。確認画面が続くので、Nextを押して進みCloseを押してインストールを完了させましょう。

設定を済ませる

Taksiをインストールしたら、スタートメニューのプログラムとデスクトップにアイコンが追加されています。それを選んでTaksiを実行してください。ボタンが8個ほどのシンプルなアプリケーションが表示されるので、Configを押して設定を行ないましょう。具体的な設定があったほうがよいと思うので、今回は以下のようなゲームおよび実験時の環境を記しておきます。

対象ソフト
『トリックスター0 -ラブ-』(1024x768のWindow表示)
PC環境
  • CPU:Pentium D/2.8GHz
  • Memory:2GB
  • Video:GeForce6200TC

まず、Configを押した直後に表示されるDirectoryタブは、動画を保存するフォルダの指定となります。短時間でも意外と動画はサイズがでかくなるので、一番容量が空いているハードディスクに保存フォルダを指定するべきでしょうか。Browseボタンを押して保存フォルダを指定すればOKです。

次にFormatタブを選んで、Cideo Codecs...を押して録画する動画で使うCODECを指定しましょう。CODECによっては保存時にエラーとなることがあるようですが、うちの環境においてはXviDならば保存は可能でした。WMVなど一部のCODECは色がおかしくなったので、本命の録画をする前に試しに録画をして確認しておいたほうがよいでしょう。Taksiはまだサウンドの録音には対応していないので、保存できるのは残念ながら現段階では映像のみです。Half Size Video Frameはチェックを付けておいたほうがよいと思います。録画する画面の解像度を半分にするというオプションですが、これにチェックを付けない場合はかなりハードルが高くなると思います。うちの環境ですら15fps(フレーム/秒)での録画にハードウェア側が追いつかず、まともにゲームがプレイできませんでした。将来のハードウェアの性能向上や本ツールの改良で改善されそうではありますが、現状ではやや実解像度で15fps録画は厳しい感じ。Pentium D/2.8GHzでもHalf Sizeならば20fpsまでは問題なく録画できていましたが、多少の余力は持たせておいたほうがよいだろうし、ほかの人に見せるとなるとFlashビデオ(FLV:YouTubeなどの形式)になると思うので、それならば15fpsが推奨されているのでフレームレートは15fpsにしておくと良さそうです。なお、近頃話題のワンセグは15fpsなので、15fpsというのはワンセグレベルのフレームレートで録画できるということを意味します。

XviDを利用する場合、CODECの設定はほぼ好みのままでかまわないと思いますが、画面の乱れを抑えるためにQuantizer:2.0を推奨します。それ以上の値だと画面がにじんだり崩れることがありましたので。あとは圧縮速度を向上させるためのTurbo:Onも選んでおくべきかな。処理速度を優先すべきケースですからね。

Hot Keysタブでは動画の保存開始と一時停止と終了などのキーを設定することができます。録画したいゲームなどのアプリケーションでは使われていないキーを指定しなければなりません。App Hook Modeはこのソフトの画面を取り込みたいというのを本ツール(Taksi)に通知するためのキー設定。Video Record Startは録画を開始するためのキーで、Video Record Pauseは録画の一時停止、Video Record Stopが録画終了のためのキーです。Ctrl+Shift+Sで録画開始、Ctrl+Shift+Eで録画終了というように覚えやすいようなキー設定にするのがよいかと思います。Screenshotは静止画を保存するためのキーなので、必要ならばこれも好みのキーに設定しておくとよいでしょう。もし、これらの機能が設定したキーでうまく動作しない場合は、Use Direct Input API for keysにチェックを付けてみてください。それでもダメな場合は残念ながら録画ができないアプリケーションということになります。

Displayタブでは録画時に監視する範囲を指定することができます。Hook GDIを外しておくとゲーム以外のアプリケーションに反応しなくなります。ほかは設定を変更するとすればAllow capture of full desktopぐらいかと。アプリケーション画面でなく、デスクトップ全体を動画として保存するオプションですね。

本ツールが有効ならば、アプリケーションの画面左上に緑色の■が表示されます。それが取り込み対象となるアプリケーション画面というわけですね。取り込みたいアプリケーションと異なる場合は、取り込みたいアプリケーションに切り換えてから、App Hook Modeのキー(初期状態ではAlt+F2)を押して動画として録画したいという意思表示をしてください。うまくいかない場合は、取り込みたいアプリケーションもTaksiの終了してやり直したほうがよさそうです。念のためPCも再起動してみましょう。それでもダメだったら残念ながら動画として取り込めないアプリケーションということになります。

録画をしてみよう

Taksiを実行した後に取り込みたいアプリケーションを実行します。これは順番を逆にしてはいけません。特にnProtectを採用しているMMORPGなどでは、先にゲームのほうを先に実行してしまうとTaksiがうまく動作しないので注意してください。また、取り込みたいゲームなどを終了した場合は、Taksiもいったん終了することをお薦めします。うまく判別してくれなくなることがありましたので。

録画したいシーンになったら、先ほど設定した録画開始のキーを押します。画面左上の■が赤く変わって録画が始まるはずです。もし赤くならないようであれば、おそらくアプリケーション側で予約されているキーだと思われるので録画のキーを別のものに変更するか、TaksiのRecordボタンを押してみてください。なお、■は録画する画面には入らないのでご安心を。あとは録画を終了したくなったところで録画終了のキーを押せば大丈夫です。録画したAVIファイルはお好みの動画ツールを使って編集・変換・再生などご自由に。もちろん、録画した映像には著作権があるわけで、Flashビデオなどで公開する際にはMMORPGなどならば運営会社の規約で示されている著作権処理が必要となります。

なお、今回録画してみたサンプル動画はこちらです。Flashビデオに変換したので画質はよくないですが参考用として用意してみました。Taksiが出力したAVIファイルは(CODECの設定次第ですが)ゲームの表示ほぼそのままの品質ですので、取り込んだ画面が汚くなるというようなことはありません。

Taksi 0.7.6の場合はAVIファイルの先頭にダミーデータが数分入るようですが、動画編集ツールでカットすればOKです。0.7.7ではこの問題は解消されていました。