aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Scripts/Convert-EXR-Assets.ps142
1 files changed, 42 insertions, 0 deletions
diff --git a/Scripts/Convert-EXR-Assets.ps1 b/Scripts/Convert-EXR-Assets.ps1
new file mode 100644
index 0000000..e0faed6
--- /dev/null
+++ b/Scripts/Convert-EXR-Assets.ps1
@@ -0,0 +1,42 @@
+Add-Type -AssemblyName System.Windows.Forms
+
+# Modern folder picker (better looking dialog)
+$dialog = New-Object System.Windows.Forms.OpenFileDialog
+$dialog.Title = "Select a folder"
+$dialog.CheckFileExists = $false
+$dialog.CheckPathExists = $true
+$dialog.Filter = "Folders|*.thisfolderisnotreal"
+$dialog.FileName = "SELECT FOLDER"
+
+if ($dialog.ShowDialog() -ne [System.Windows.Forms.DialogResult]::OK) {
+ Write-Host "No folder selected, exiting..."
+ pause
+ exit
+}
+
+$targetDir = Split-Path -Path $dialog.FileName -Parent
+Write-Host "`nSelected Directory: $targetDir`n"
+
+# Get all EXR files
+$exrFiles = Get-ChildItem -Path $targetDir -Filter *.exr -File
+
+if ($exrFiles.Count -eq 0) {
+ Write-Host "No EXR files found in this directory!"
+ pause
+ exit
+}
+
+Write-Host "Found $($exrFiles.Count) EXR files, starting conversion..."
+
+# Convert
+foreach ($file in $exrFiles) {
+ $inputPath = $file.FullName
+ $outputPath = Join-Path $targetDir ($file.BaseName + ".png")
+
+ & ffmpeg -i $inputPath -vf "scale=1024:-1:flags=lanczos" -pix_fmt rgb24 -compression_level 6 -y $outputPath
+
+ Write-Host "Converted: $($file.Name)"
+}
+
+Write-Host "`nAll done!"
+pause