環境
Unity 2021.3.3f1
UnityRecorder 3.0.3
できたもの
今回やりたかったこと
- Scriptを使わずにスクショを撮りたい
- Game画面のサイズに合わせた画像が欲しい
- 透過画像も撮りたい
いくつかプロジェクトがありそれぞれでScreenShot撮りたい場合、ScriptやPrefabをコピペするのがめんどくさくてこの方法を使ってました
手順
シーンの設定
Cameraの設定
- ClearFlags: SolidColor
- BackGround Alpha: 0
背景の色を決めているのでグリーンバックにしたければ #00FF00 にしつつAlphaを255にすると良いです
撮りたいオブジェクトを配置
今回はLive2D公式のSampleキャラクターを配置してます
UnityRecorderの設定
UnityRecorderをInstallする
「Window/PackageManager」のUnityRegistryにあります
Recorder画面の設定
Recorderを追加
「Window/General/Recorder/RecorderWindow」でWindowを開き
AddRecorderからImageSequenceを選択します
設定
FrameRate
- TargetFPS: Custom
- Value: 1
→ 1秒間に何回スクショを撮るかの設定なので、連番画像を撮りたい場合は30や60、29.97などにすると良いです)
Capture
- Source: GameView
- OutputResolution: MatchWindowSize
→ GameViewのSizeに合わせて撮る設定です、お好みで変えてください
→ GameViewのSizeを4Kなどにすればその通りの画像が書き出せます
Format
OutputFile
スクショが置かれる場所とファイル名などが設定できます、お好みで
ここを押すと画像の保存先が開けるので便利です
撮影する
「START RECORDING」を押すとUnityがPlayされます
録画が開始され1秒ごとに1枚写真が撮られるので必要な画像が撮れたか確認したければ「STOP RECORDING」
止めてよければUnityのSTOPをします
OutputFileの対象ディレクトリにこのように画像群が保存されているので必要なものだけ残して削除してOKです
完成
最初に載せた画像が撮れました、わーい