diff --git a/.config/config.json b/.config/config.json index 88e37fd..ff6cb79 100644 --- a/.config/config.json +++ b/.config/config.json @@ -1,6 +1,6 @@ { "dailyFormat": "YYYY-MM-DD", - "structDir": "R:\\Creative\\artsy\\maya\\0 ProjectStructure", + "structDir": "D:\\0 ProjectStructure", "zipper": "7z", "compression": 0, "Max7zInst": 0 diff --git a/.gitattributes b/.gitattributes index 9862802..c2a0aa3 100644 --- a/.gitattributes +++ b/.gitattributes @@ -107,6 +107,7 @@ *.uni filter=lfs diff=lfs merge=lfs -text *.pdn filter=lfs diff=lfs merge=lfs -text *.pur filter=lfs diff=lfs merge=lfs -text +*.db filter=lfs diff=lfs merge=lfs -text # Python files *.npz filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore index b52a05d..d08d660 100644 --- a/.gitignore +++ b/.gitignore @@ -124,4 +124,4 @@ Adobe Premiere Pro (Beta) Audio Previews/ footage/ plates/ -Pr/RnR/ \ No newline at end of file +RnR/ \ No newline at end of file diff --git a/.specstory/.gitignore b/.specstory/.gitignore index c5b4129..15316ce 100644 --- a/.specstory/.gitignore +++ b/.specstory/.gitignore @@ -1,4 +1,129 @@ -# SpecStory project identity file -/.project.json +# Blender Studio Git Management - .gitignore + +# Blender auto-save files +*.blend1 +*.blend2 +*.blend3 +*.blend4 +*.blend5 +*.blend6 +*.blend7 +*.blend8 +*.blend9 +*.blend10 +*.blend11 +*.blend12 +*.blend13 +*.blend14 +*.blend15 +*.blend16 +*.blend17 +*.blend18 +*.blend19 +*.blend20 +*.blend21 +*.blend22 +*.blend23 +*.blend24 +*.blend25 +*.blend26 +*.blend27 +*.blend28 +*.blend29 +*.blend30 +*.blend31 +*.blend32 + +# Blender cache and temporary files +*.swp +*.swo +*~ +*.tmp +*.temp +BL_proxy/ + +# OS generated files +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +ehthumbs.db +Thumbs.db +desktop.ini + +# Editor files +.vscode/ +.idea/ +*.swp +*.swo +*~ + +# Large media files (uncomment if you want to exclude rendered outputs) +# *.mp4 +# *.avi +# *.mov +# *.png +# *.jpg +# *.jpeg +# *.exr +# *.hdr +# *.tiff +# *.tga + +# Audio files (uncomment if excluding) +# *.wav +# *.mp3 +# *.aac +# *.ogg + +# Log files +*.log + +# Python cache +__pycache__/ +*.pyc +*.pyo +*.pyd +.Python + +# Node modules (if using any web tools) +node_modules/ + +# Environment files +.env +.env.local +.env.development.local +.env.test.local +.env.production.local + +# Backup files +*.bak +*.backup +*.old + +# Temporary files +temp/ +tmp/ +cache/ + +Renders/** +!Renders/_zipped/ +!Renders/_zipped/** +!Renders/**/ +!Renders/**/*.bat +!Renders/**/*.log +seq/ + +# Premiere +*.prlock +Adobe Premiere Pro Video Previews/ +Adobe Premiere Pro Audio Previews/ +Adobe Premiere Pro (Beta) Video Previews/ +Adobe Premiere Pro (Beta) Audio Previews/ +footage/ +plates/ + +RnR/ # SpecStory explanation file /.what-is-this.md diff --git a/.specstory/.project.json b/.specstory/.project.json new file mode 100644 index 0000000..d5e5121 --- /dev/null +++ b/.specstory/.project.json @@ -0,0 +1,8 @@ +{ + "workspace_id": "9d55-8d72-ea7f-291c", + "workspace_id_at": "2025-12-28T18:13:11.037Z", + "project_name": "2025-12-28 ytshorts gigaproj", + "cloud_sync": false, + "git_id": "4bd1-80c5-7776-be34", + "git_id_at": "2025-12-28T18:22:27.244Z" +} \ No newline at end of file diff --git a/Renders/UpdateSequences.bat b/Renders/UpdateSequences.bat new file mode 100644 index 0000000..260c0a6 --- /dev/null +++ b/Renders/UpdateSequences.bat @@ -0,0 +1,64 @@ +@echo off +setlocal EnableExtensions + +set "script_dir=%~dp0" +set "current_dir=%CD%" +set "PROJ_ROOT=" + +REM First, check project level (one directory up from current) - most common case +for %%I in ("%current_dir%..") do set "project_level=%%~fI" +set "project_config=%project_level%\.config\config.json" +if exist "%project_config%" ( + set "PROJ_ROOT=%project_level%" +) + +REM If not found at project level, search up from current working directory +if not defined PROJ_ROOT ( + for /f "usebackq delims=" %%I in (`powershell -NoProfile -ExecutionPolicy Bypass -Command "Set-StrictMode -Version Latest; $dir = '%current_dir%'; $found = $null; while ($dir -and -not $found) { $configPath = Join-Path $dir '.config\config.json'; if (Test-Path -LiteralPath $configPath) { $found = $dir; break }; $parent = Split-Path -Parent $dir; if ($parent -eq $dir) { break }; $dir = $parent }; if ($found) { Write-Output $found } else { Write-Output '' }"`) do set "PROJ_ROOT=%%I" +) + +REM If still not found, try searching from script location +if not defined PROJ_ROOT ( + for /f "usebackq delims=" %%I in (`powershell -NoProfile -ExecutionPolicy Bypass -Command "Set-StrictMode -Version Latest; $dir = '%script_dir%'; $found = $null; while ($dir -and -not $found) { $configPath = Join-Path $dir '.config\config.json'; if (Test-Path -LiteralPath $configPath) { $found = $dir; break }; $parent = Split-Path -Parent $dir; if ($parent -eq $dir) { break }; $dir = $parent }; if ($found) { Write-Output $found } else { Write-Output '' }"`) do set "PROJ_ROOT=%%I" +) + +REM Fallback: try original logic (script in 3 ProjectStructure) +if not defined PROJ_ROOT ( + for %%I in ("%script_dir%..\..") do set "PROJ_ROOT=%%~fI" +) + +set "CONFIG_DIR=%PROJ_ROOT%\.config" +set "CONFIG_PATH=%CONFIG_DIR%\config.json" + +if not exist "%CONFIG_PATH%" ( + echo [ERROR] config.json not found at %CONFIG_PATH% + if defined project_config ( + echo Also checked: %project_config% + ) + echo Please run ConfigLoader.ps1 to deploy helper files. + exit /b 1 +) + +set "GET_STRUCT_DIR=%CONFIG_DIR%\GetStructDir.ps1" + +if not exist "%GET_STRUCT_DIR%" ( + echo [ERROR] GetStructDir.ps1 not found at %GET_STRUCT_DIR% + echo Please run ConfigLoader.ps1 to deploy helper files. + exit /b 1 +) + +for /f "usebackq delims=" %%I in (`powershell -NoProfile -ExecutionPolicy Bypass -Command ^ + "Set-StrictMode -Version Latest; $structDir = & '%GET_STRUCT_DIR%' -ProjectRoot '%PROJ_ROOT%'; if (-not $structDir) { throw \"Failed to get structDir from GetStructDir.ps1\" }; $ps1Path = Join-Path $structDir 'UpdateSequences.ps1'; if (-not (Test-Path -LiteralPath $ps1Path)) { throw \"UpdateSequences.ps1 not found at $ps1Path\" }; Write-Output $ps1Path"`) do set "ps1=%%I" + +if not defined ps1 ( + echo [ERROR] Unable to resolve UpdateSequences.ps1 path from config. + exit /b 1 +) + +echo Running PowerShell update script... +powershell -NoProfile -ExecutionPolicy Bypass -File "%ps1%" +set "rc=%errorlevel%" +echo PowerShell exited with RC=%rc% +echo Done. +pause >nul +exit /b %rc%