-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbleed.sh
23 lines (20 loc) · 920 Bytes
/
bleed.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
spritesheetFileName=$1
spritesheetFileType=$2
newFileSuffix=$3
spritesheetWidth=$4
spritesheetHeight=$5
tileSize=$6
rowCount=$(( spritesheetHeight / tileSize ))
columnCount=$(( spritesheetWidth / tileSize ))
numberOfTiles=$(( columnCount * rowCount ))
tileSizeWithPadding=$((tileSize + 2))
for (( i = 0; i < numberOfTiles; i++ )); do
sprites+=" ./temp/sprite-$i.png"
spriteBleeds+=" ./temp/sprite-bleed-$i.png"
done
rm -rf temp
mkdir temp
convert -crop "$tileSize"x"$tileSize" "$spritesheetFileName.$spritesheetFileType" ./temp/sprite.png
convert $sprites -set option:distort:viewport "$tileSizeWithPadding"x"$tileSizeWithPadding"-1-1 -virtual-pixel Edge -filter point -distort SRT 0 +repage ./temp/sprite-bleed.png
montage $spriteBleeds -tile "$columnCount"x"$rowCount" -geometry "$tileSizeWithPadding"x"$tileSizeWithPadding"-0-0 -background none "$spritesheetFileName$newFileSuffix.$spritesheetFileType"
rm -rf temp