概要
PC VR状態ならばカメラを使用、デスクトップならばF12キーを押すことで写真を取ることができます。
このページはそれの仕様などを書き留める場所です。
保存先
デフォルトではC:\Users\(UserName)\Pictures\VRChatのようなMy Pictures/VRChatに保存されます。(確認:Build 1134)
ただし、Build 1137(執筆時点ではβ)以降はC:\Users\(UserName)\Pictures\VRChat\(Year)-(Month)に保存されています。
命名規則
VRChat_1280x720_2021-10-09_11-42-22.508.png
のような
VRChat_(Width)x(Height)_(yyyy)-(MM)-(dd)_(HH)-(mm)-(ss).(コンマ秒).pngの形式で保存されます。
新しいフォルダー階層にするPowerShellスクリプト
Pictures/VRChatで実行してください。 自分の環境では動いた。 二度とPowerShell書かない。
echo "VRChatの新しいフォルダー構造にするスクリプトです。"
pause
Get-ChildItem -File -Name -Filter VRChat_*.png | ForEach-Object {
$filename = $_
$filename -match "[0-9]{4}-[0-9]{2}"
$foldername = [string]$Matches[0]
New-Item $foldername -type directory -Force
Move-Item ./$filename ./$foldername/$filename
}
echo "終了しました。"
pauseスクショのファイル名からタイムスタンプを抽出して作成日・更新日ともにそれに置き換えるPowerShellスクリプト
Google Photoが更新日を基準にソートするので。
なぜか、ps1すると構文エラーで動かない
# 子フォルダの中のVRChat関連の画像を探し、ForEachをぶん回す。
Get-ChildItem -File -Name -Filter "VRChat_*.png" -Recurse | ForEach-Object {
# $_ にファイルパスが格納されるので、ファイルパスから撮影日時を取得。
$file_path = $_
echo $file_path
$file_path -match "VRChat_(?<resolution>[0-9]{4}x[0-9]{4}?)_(?<shooting_date>[0-9]{4}-[0-9]{2}-[0-9]{2}_[0-9]{2}-[0-9]{2}-[0-9]{2}?).[0-9]{3}.png"
# $Matchesに配列としてマッチした文字列が格納される。
$shooting_date = [string]$Matches.shooting_date
echo $shooting_date
# StringからDateTime型にキャストする
$time_stamp = [DateTime]::ParseExact($shooting_date, "yyyy-MM-dd_HH-mm-ss", $null)
echo $time_stamp
# $time_stampに格納した日付情報を使い、対象ファイルの更新日時と作成日時を書き換える。
Set-ItemProperty $file_path -Name CreationTime -Value $time_stamp
Set-ItemProperty $file_path -Name LastWriteTime -Value $time_stamp
echo "======"
}