diff options
Diffstat (limited to 'generate_previews.sh')
-rwxr-xr-x | generate_previews.sh | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/generate_previews.sh b/generate_previews.sh new file mode 100755 index 0000000..22c978c --- /dev/null +++ b/generate_previews.sh @@ -0,0 +1,48 @@ +#!/bin/sh +# This script is used to generate the previews needed by the mod +# It requires blender with the latest python API (2.6x is tested) +# A script that works with older blenders and, maybe, without python, is available in older commits. +# This script can also use pngcrush and imagemagick to reduce output size, +# please enable them if you want to push to the git repository of the mod. +# Pngcrush output will be written to .previews/pngcrush_output +# Warning: any file in .previews/ and u_skins/textures might be deleted without asking. +PNGCRUSH=true +IMAGEMAGICK=true +cd .previews +rm ../u_skins/textures/*_preview*.png # Remove all previous previews +blender -b skin_previews.blend --python-text "Generate previews" > /dev/null +if $IMAGEMAGICK + then echo "Stripping metadata from generated files..." + else echo "Moving files..." +fi +rm -rf output # remove my output +mkdir -p output +for i in blender_out/character_*_00.png; +do + out_name=$(basename $i | sed -e 's/_00.png//g') + out_file=output/"$out_name"_preview.png + if $IMAGEMAGICK + then + convert -strip $i $out_file + else + mv $i $out_file + fi +done +for i in blender_out/character_*_01.png; +do + out_name=$(basename $i | sed -e 's/_01.png//g') + out_file=output/"$out_name"_preview_back.png + if $IMAGEMAGICK + then + convert -strip $i $out_file + else + mv $i $out_file + fi +done +if $PNGCRUSH + then + echo "Running pngcrush..." + pngcrush -d ../u_skins/textures/ output/*_preview*.png 2> pngcrush_output + else mv output/*_preview*.png ../u_skins/textures/ +fi +echo "Done !" |