グラフィックをぼかすことなくベクターグラフィックゲームを録画するにはどうすればよいですか?


15

多くの人が私のゲームの予告編を要求しました。スクリーンショットではうまくいかないからです。PlayClaw、Fraps、CamStudio、VirtualDub、およびその他のマイナーツールをテストしました。実行可能な結果を​​生み出したものはありません。私のゲームはベクターグラフィックスを使用し、60 fpsで実行するように設計されているため、通常のスクリーンキャプチャビデオの非可逆圧縮はグラフィカルな魅力を破壊します。

グラフィックをぼかすことなく、フレームレートを遅くせずにゲームプレイを記録するにはどうすればよいですか?


2
フラップは遅すぎますか?デフォルトの30fpsではなく60fpsで記録するように設定してください。
デビッドヤング

あなたの質問をもう少し広くしてもらえますか?単純な予告編のためにゲーム自体を記録することについてオンラインで知るのではなく、ゲームで表示されるビデオ、いわゆるカットシーン、または切り替えなどの視覚効果を追加した予告編を作成することも知っていると面白いと思います私は信じて周りを問わずどんな質問研そこからあなたの質問にそれを勧めるなど、映像の部分... ...
グランプリ

1
あまりにも違う賞品...カットシーンの作成は、まったく別の分野です!
スピーダー

3
本当にフラップを再考すべきだと思います。私が見たすべてのソリューションの中で、それは最高の品質を持ち、小さな投資のためのロゴはありません。(あなたの質問では、無料とは言わなかった)
ジェシードーシー

3
私は以前の答えに立ち向かいます。入力をリプレイしてタイムステップを強制(またはリプレイ)できる場合は、生のフレームを記録し品質を損なうことなく好きように処理できます。
カイ

回答:


22

ゲームのフレームレートを独立させて、固定のタイムステップでプレイするように設定できます。ゲームをプレイし、入力を記録します。固定タイムステップ、記録された入力でリプレイし、すべてのフレームをファイルに書き込みます-固定タイムステップでリプレイするため、フレームの書き出しにどれだけ時間がかかりますか。そうすることで、ソース映像は非圧縮になり、速度を犠牲にすることなく、またはキャプチャプログラムによる不具合を発生させることなく、後で品質を決定できます。その後、After Effectsのようなものが入ります-少なくとも、鮮明なソースマテリアルが得られます。

編集して追加します。ええ、わかっています。フレームレートに依存せずに固定のタイムステップで再生するのは馬鹿げています。ああ。まあ、それがフレームレートの独立したフラップであれば、問題が少ないかもしれません; o)ゲームはとにかくフレームレートに依存しないはずです!


5
フレームレートの独立性と確定的な再生は、テストにも役立ちます。Noel Llopisの良い記事があります:gamesfromwithin.com/back-to-the-future-part-1(リンクされている2番目の部分もあります)。
セリオン

だから...あなたのアイデアは、入力全体を記録し、言及された入力を完全に再生する何らかの方法をサポートするようにエンジン全体を再コーディングすることです(私はbtwにはしていません)?申し訳ありませんが、これは機能しません。特に、ゲームは決定論的(視覚効果の場合のみランダム)であるため、物理エンジンは変動する可能性があり、適切に機能しません... 。
スピーダー

物理エンジンが変動する可能性がある場合、決定論的ではありません。入力録音(ほとんどのエンジン)は1つの場所にプラグインするだけで、「エンジン全体を再コーディングする」ことはほとんどありません.....とにかく、私は聞きます。 。ただし、ハードディスクへのアクセスが本当に問題になる場合は、メモリに余裕がある場合はRAMディスクのセットアップを検討できます。マーケティングについてのコメントについては、申し訳ありませんが、あなたは解決策を探していると思いました-これは将来のためにあなたをセットアップします(高解像度が必要な場合はどうなりますか?)範囲外の場合は、ram-diskを試してください。
カイ

なぜ「一定のタイムステップで再生するようにフレームレートを独立させるのは馬鹿げている」のですか?記録したシーケンスを固定フレームレート出力に含めるには、記録時にフレームレートに依存しないようにする必要があります。
ファルストロ

必ずしも。フレームが保証された固定フレームレートで実行されている場合(比較的可能性は低いですが、そうである場合)、キーが入力され、同じタイムステップを仮定してキーをフィードするだけで再生できます。それに、ばかげて聞こえた:op
Kaj

8

Pixel Prospectorに関するこの記事は、あなたが必要とするものかもしれません:

ゲームプレイ動画を録画および編集する方法

ビデオで使用されているゲームは、ベクターグラフィックも使用するNeonPlat 2です。

この記事は、キャプチャから編集まで、すべてをカバーしています。


OK、私はこの賞金を授与しています、それは実際にほとんど正しかったものです...とにかく、ラムドライブについて言及してくれたKajのおかげで(ディスクの速度低下の問題を解決しました)、私は...半額を授与できません-各回答への恩恵。
スピーダー

問題ありません。何かを適切に取得できたことを願っています!
カイ

2
アーカイブされたページはこちらです。彼らはそれのように思えるのページを更新ソフトウェアscreenrecordingの大きなリスト
boboboboを

4

ゲームの映像を記録するには、無料のCamStudioを試すことができます。ただし、全画面モードのゲームでは機能しないため、ウィンドウでゲームを実行することをお勧めします。

実際の予告編の作成に関しては、ビデオ編集ソフトウェアが必要です。いくつかの高価な商用オプションがありますが、無料のものを探している場合、選択はより制限されます。Windowsムービーメーカー、またはMacがあればiMovieを試すことができますが、私が見つけた最高の無料のビデオエディタは、3Dモデリングおよびアニメーションツールとして広く知られているBlenderです。UIは直感的ではありませんが、少し時間をかけて学習すれば、かなり優れたビデオ編集ツールも手に入れることができます。


3

私の最高の経験はFrapsでしたが、制限やロゴのないフルバージョン(素晴らしいユーティリティを購入するための小さな一時的な賞品のように見えました)を使用しました。David Youngがコメントで示唆したように、フレームレートは事前に設定できます。多くのビデオキャプチャツールと同様に、Frapsは記録中に低コストの圧縮を使用し、選択したより高い圧縮形式に変換できます。これには、通常VirtualDubを使用します。

高品質のキャプチャを取得するために、Frapsをゲームの背後でフルスピード(私の場合は50fps)で実行しても問題はありませんでした。

ここでの重要な問題は、キャプチャにはある程度のパフォーマンスが必要であり、常に利用可能な最高のコンピューターでそれを試みる必要があるということです。より具体的には、キャプチャツールは大量かつ継続的なディスク書き込みを行うため、ファイルを高速ハードドライブに保存することが重要です。ラップトップには、アクセスの遅いハードドライブが搭載されていることが多いため、パフォーマンスに大きな影響を与える可能性があります。キャプチャ中により小さいフレームサイズを使用すると、ハードドライブの時間がより簡単になり、フレームレートを上げることができます。Frapsでは、ハーフサイズのフレームを設定できます。

Frapsの場合、最終ムービーの品質は、FPS1エンコードキャプチャAVIを配布可能な形式に変換するときに使用する圧縮によって大きく影響を受けます。ここで損失性を考慮しない場合、当然、キャプチャツールのパフォーマンスは問題になりません。

あなたが言及したプログラムは一般的にそれほど悪いとは真剣に思いませんが、特定のゲームと一緒に最適に動作する前にいくつかの設定が必要です。


すでに速度に問題がある場合は、PNGで個々のフレームをすべて保存することはお勧めできません。すべてのフレームをすべての情報とともに保存する必要があるため、CPUとディスクの時間をより多く消費する可能性があります。ムービーをエンコードして保存する場合、多くのエンコーダーは完全なキーフレームを使用し、その後の連続するフレームを次のフレームとの差として定義します。これにより、サイズを大幅に削減できますが、キーフレームなしで1つのフレームを取り出して読み取ることはできません。

別のファイルにダンプしようとすると、各フレームのサイズが大きくなるだけでなく、ファイルアクセス自体からオーバーヘッドが発生します。これは、映画の場合のように1つのファイルを保持してストリーミングするのではなく、フレームごとに新しいファイルハンドルを開く必要があるためです。

最善の方法は、ロスレスムービーを録画してそこからフレームを抽出すること、または再生中にスクリーンショットのような有限数のフレームをキャプチャすることです。


Frapsにはロスレスレコーディングモードもあります。もちろん、さらに多くのディスクスループットとRAMが必要です。フルバージョン(推奨)を購入すると、ロゴと期限がなくなります。
バッフル

なぜフレームを抽出するのですか?すべてのフレームが欲しい!@Banana Frapsにはロスレスモードがあることを知っています。Frapsが遅くなり、ゲームプレイが不安定になります(フレームを落とすのではなく、どうにかしてゲームを遅くするように見える)
speeder


2

このようなデバイスは非常に安価であり、2台目のコンピューターを実行して実行することができます(特別なものは必要ありません)ので、ゲーム実行マシンからゲームをキャプチャすることができます(必ずコンピューターが必要です)この安価なバージョンではS-Videoを使用しています)。高品質のキャプチャには次のようなものもあります-http://www.blackmagic-design.com/products/intensity/。ただし、USB 3が必要で、より高価ですが、HDMIとより高い解像度をキャプチャできます。私はこれらの2つのうちのどれよりも良いオプションを本当に見ません。


1

Windows Media Encoderを数回使用して、ゲームやツールのビデオを録画しました。無料で、質の高いビデオを提供します。

ただし、ビデオの録画はプロセスの半分に過ぎないので(同じ場合)、同じ質問も考えました。残りの半分は編集、エフェクトの追加などです。Windowsムービーメーカーは動作しますが、かなり単純で...クラッシュします。


because recording a video is only half the process良い点は、私がaswell疑問に思っている最初の質問のコメント...上で述べたように
グランプリ

1

Windowsの場合、コンピューターの速度をほとんど落とさずにゲームビデオが必要な場合は、PlayClawを使用して録画します。Linuxにはglcがあります。



1

基本的に、問題は次のとおりです。

ベクトルベースのゲームの品質。使用されたCPU量。I / Oボトルネック。

編集に使用するソフトウェア。

品質を解決するには、ロスレスコーデック、または圧縮なしが必要でした。圧縮率が低いほど、I / Oの問題が多くなりますが、CPUを多く使用すると、CPUの問題(doh)が多くなります。

解決策は、I / Oボトルネックを解決するためにRamDriveを使用することでした。そのため、私はほとんどどのCPUを使用したいか(つまり、可能な限り最小)を残しました。したがって、理論的には、圧縮はまったく行われませんが、RAMドライブの空き領域に問題がある場合、圧縮は行われません。

それで私は調査し、最速のロスレスコーデック(実際にどれだけ圧縮するかは関係ありません)であり、CamStudio Losslessであることを発見しました

私が使用したソフトウェアはVirtualDubでした(CamStudio自体はウィンドウの内容をキャプチャできず、ウィンドウ全体をキャプチャするため、スペースが無駄になります)。

さて、編集ソフトウェア:さて、ここでは誰も良いオーナをくれませんでしたし、私もしませんが、他のリストは他の場所で見つけることができます。


3
動画をYoutubeにアップロードしたことに気付きました。YoutubeはH.264のすべてのビデオを再エンコードするため、このような手作業をすべて行った後、とにかく損失の多いコーデックを使用することになります。
BlueRaja-ダニーPflughoeft

0

vnc2flvを試してみたいと思うかもしれませんが、それ自体はオーディオを実行しません(ただし、後でオーディオトラックに追加できます)。ただし、実行中のゲームと並行してリアルタイムのFLVエンコーディングを実行しようとするとCPUが嫌になるかどうかはわかりません。


0

おそらく明白に聞こえますが、...ビデオの録画中にゲームをフルスクリーンしないでください。そうしないと、画面解像度をキャプチャするため、「明らかに」非常に遅くなります。私はこれがあなたが少しずつやっているものだと推測しています。

FRAPSはこれをうまく処理します。他の多くの人もそうですが、FRAPSが最も便利で使いやすいことがわかりました。

FRAPSを使用して記録し、Windows Movie Maker を使用して、Starcraft IIで作成したいくつかのマップを作成しました(例)


実際に...私はフルスクリーンで試してさえいませんでした。私のテストはすべてウィンドウモードでした。
スピーダー

0

以下は、ビデオのみの予告編を作成するために過去に行ったことです。

  1. 固定の時間ステップでゲームを実行可能にします。つまり、ゲームループの内部で計算するのではなく、現在と最後のフレームの間の時間を明示的に渡すことを意味します。
  2. フレームをレンダリングした後、フレーム番号を名前として.tiffなどのロスレス画像形式にダンプします。これにより、別のアプリが一連の画像をムービーに簡単にエンコードできます。
  3. 適切なビデオエンコーダー(DirectShowを使用して簡単なものを作成しました)にダンプして、.aviまたは任意のビデオ形式に変換します。

0

最善の方法は、ゲームを自己記録可能にすることです。簡単な方法は、すべてのフレームを固定フレームレートで保存することです。SSDを使用すると、時間はかかりません。より難しい方法は、独自の「フラップ」を作成することです。あなたがそれをすれば。ゲームと直接通信できます。


0

最近、ゲームの予告編を作成しました。実際にアニメーション化するのに十分な速さでスクリーンショットを作成できるエンジンに多少助けられました。私がしたこと:

  • 私はフレームレートを修正しませんでしたが、キャプチャは1秒あたり25の固定間隔で行われました。ゲームセッションを記録し、ドライブ上に数千の画像を生成しました。
  • 次に、これらの画像をkdenliveのクリップにインポートしました
  • いくつかのタイトル、音楽、ロゴを追加し、フェードインとフェードアウトして、より快適な外観にします

実際に画像を直接キャプチャするということは、ゲームからサウンドを取得できなかったことを意味しますが、画像の品質ははるかに向上しました。それを補う以上の音楽を追加する。


-6

2台のPCがある場合、Skypeの画面共有機能を使用します。1台のPCでゲームをプレイし、もう1台のPCを使用してビデオをキャプチャします。このようにして、ゲームに影響を与えず、ビデオキャプチャプログラムのリソースが不足することはありません。

逆に、PC用のビデオキャプチャカードを購入できます。


でも... ..。。。
デビッドマグロウ

3
Skypeは、エンコードせずに魔法のようにビデオを送信することはできません。これは、プログラムからCPU時間を奪います。

1
これは私が見た中で最悪のアイデアです。
マティアスリュックガードローレンツェン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.