Using interrupt 3 instead of system pause to break on script end while debugging but not when running Added a .bat script to recompile all shaders.
41 lines
1.4 KiB
Batchfile
41 lines
1.4 KiB
Batchfile
@echo off
|
|
setlocal enabledelayedexpansion
|
|
|
|
set TARGET=x64\Debug
|
|
|
|
REM Chemin relatif vers JulietShaderCompiler.exe
|
|
set COMPILER_PATH=..\bin\%TARGET%\JulietShaderCompiler.exe
|
|
echo Compiler Path: !COMPILER_PATH!
|
|
|
|
REM Dossier source contenant les fichiers .frag.hlsl et .vert.hlsl
|
|
set SOURCE_DIR=..\Assets\source
|
|
echo Source Dir: !SOURCE_DIR!
|
|
|
|
REM Dossier de sortie pour les fichiers compilés
|
|
set OUTPUT_DIR=..\Assets\compiled
|
|
echo Output Dir: !OUTPUT_DIR!
|
|
|
|
REM Créer le dossier de sortie s'il n'existe pas
|
|
if not exist "%OUTPUT_DIR%" mkdir "%OUTPUT_DIR%"
|
|
|
|
REM Parcourir tous les fichiers .frag.hlsl et .vert.hlsl dans le dossier source
|
|
for %%F in ("%SOURCE_DIR%\*.frag.hlsl" "%SOURCE_DIR%\*.vert.hlsl") do (
|
|
REM Extraire le nom du fichier sans l'extension
|
|
set "FILENAME=%%~nF"
|
|
REM Extraire l'extension du fichier
|
|
set "EXTENSION=%%~xF"
|
|
REM Remplacer .frag.hlsl par frag et .vert.hlsl par vert
|
|
if "%%~xF"==".frag.hlsl" (
|
|
set "SHORT_EXTENSION=frag"
|
|
) else if "%%~xF"==".vert.hlsl" (
|
|
set "SHORT_EXTENSION=vert"
|
|
)
|
|
REM Construire la ligne de commande
|
|
set "COMMAND=%COMPILER_PATH% %SOURCE_DIR%\!FILENAME!!EXTENSION! -o %OUTPUT_DIR%\!FILENAME!!SHORT_EXTENSION!.dxil"
|
|
REM Afficher la ligne de commande pour le débogage
|
|
echo !COMMAND!
|
|
REM Appeler JulietShaderCompiler.exe avec les arguments spécifiés
|
|
!COMMAND!
|
|
)
|
|
|
|
endlocal |