サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
猫
blackmasqueradegames.com
Unity 2019.3から、あれこれ自作せずともやっと、ようやく、悲願の非同期スクリーンキャプチャが出来るようになりました。 前提知識として、Unity APIの呼び出しは、一部のAPIを除いてメインスレッドからの呼び出しのみが許可されています。レガシーな同期アプローチは検索すると吐いて捨てるほど出てくるのでそっちを見てください。 スクリーンキャプチャの流れは3工程あり、バージョンアップを経て段階的に非同期可能になっています。 レンダーテクスチャのシステムメモリへの読み戻し 画像ファイルフォーマットへのエンコード ファイル書き込み 1は、ScreenCapture.CaptureScreenshotIntoRenderTexture が2019.1で追加され、ようやく非同期でシステムメモリに読み戻せるようになりました。 1で読み戻したメモリはレンダーテクスチャに指定したフォーマットのバイ
Unity 5ではCommand Bufferによる特定タイミング時のレンダリングパイプラインへの描画割り込みが可能になっている。が、新機能でテストが不十分なのか、仕様であるがドキュメントが不十分だかで、よく分からん挙動をする時があるようだ。 特に、CameraEventのAfterImageEffectsとAfterEverythingは、それまでのCameraEventとは挙動が異なる。これは恐らく、Back Bufferか何かしら特殊なバッファへの転送後に割り込むためだと思われる。ここではBack Bufferに転送済みと仮定して記述する。 Unity 5.0.1p1, DX11 Deferred Renderingで確認。他の組み合わせは知らないが、5.0.0p2などでも挙動が若干異なっていた。 スクリーンショットを貼りながらの方が分かりやすいのだが、枚数がえらいことになるので割愛
このページを最初にブックマークしてみませんか?
『blackmasqueradegames.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く