X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=koperkapel%2Fimages%2FMakefile;h=2700e15f49dd17f5251dc4fdac75d8ace1485306;hb=44d78d057a7f0c3e14e327069b1ff5709e8923d4;hp=bef40594d429d73bd8fdfe40db79f2f71d8501da;hpb=311ddc69eab86fee4d9256857c0052954bb87e7f;p=koperkapel.git diff --git a/koperkapel/images/Makefile b/koperkapel/images/Makefile index bef4059..2700e15 100644 --- a/koperkapel/images/Makefile +++ b/koperkapel/images/Makefile @@ -1,37 +1,95 @@ -VPATH=../../sources/vector +VPATH=../../sources -TILE_DIRS=roach -TILE_SVGS=$(shell find $(patsubst %, $(VPATH)/%, $(TILE_DIRS)) -name "*.svg") -TILE_PNGS=$(patsubst $(VPATH)/%.svg, %.png, $(TILE_SVGS)) +# Vector tiles + +TILE_DIRS=roach serum vehicle_tiles +TILE_SVGS=$(shell find $(patsubst %, $(VPATH)/vector/%, $(TILE_DIRS)) -name "*.svg") +TILE_PNGS=$(patsubst $(VPATH)/vector/%.svg, %.png, $(TILE_SVGS)) + +# Bitmap tiles + +BTILE_DIRS=wall floor tunnel underground grate +BTILE_SRC=$(shell find $(patsubst %, $(VPATH)/bitmap/%, $(BTILE_DIRS)) -name "*.png") +BTILE_PNGS=$(patsubst $(VPATH)/bitmap/%, bunker/%, $(BTILE_SRC)) + +# Vector images to rasterize without resizing + +SIMPLE_DIRS=roach_management vehicles +SIMPLE_SVGS=$(shell find $(patsubst %, $(VPATH)/vector/%, $(SIMPLE_DIRS)) -name "*.svg") +SIMPLE_PNGS=$(patsubst $(VPATH)/vector/%.svg, %.png, $(SIMPLE_SVGS)) + +# Aggregate cockroach sprites ROACH=$(filter roach/%, $(TILE_PNGS)) ROACH_32=$(patsubst roach/%, roach_32/%, $(ROACH)) ROACH_21=$(patsubst roach/%, roach_21/%, $(ROACH)) ROACH_QUARTET=$(patsubst roach/%, roach_quartet/%, $(ROACH)) ROACH_NONET=$(patsubst roach/%, roach_nonet/%, $(ROACH)) +ROACH_BIG=$(patsubst roach/%, roach_big/%, $(ROACH)) + +# Aggregate serum sprites -all: $(TILE_PNGS) $(ROACH_32) $(ROACH_21) $(ROACH_QUARTET) $(ROACH_NONET) +SERUM=$(filter serum/%, $(TILE_PNGS)) +SERUM_BIG=$(patsubst serum/%, serum_big/%, $(SERUM)) -# Tile rules +# Default target with everything + +all: $(TILE_PNGS) $(BTILE_PNGS) $(SIMPLE_PNGS)\ + $(ROACH_32) $(ROACH_21) $(ROACH_QUARTET) $(ROACH_NONET) $(ROACH_BIG)\ + $(SERUM_BIG) + +# Vector tile rule define tile -$(1)/%.png: $(1)/%.svg +$(1)/%.png: vector/$(1)/%.svg @mkdir -p `dirname $$@` @inkscape -z -e $$@ -w 64 -h 64 $$< endef $(foreach tiledir,$(TILE_DIRS),$(eval $(call tile,$(tiledir)))) +# No resize rule + +define simple +$(1)/%.png: vector/$(1)/%.svg + @mkdir -p `dirname $$@` + @inkscape -z -e $$@ $$< +endef + +$(foreach simpledir,$(SIMPLE_DIRS),$(eval $(call simple,$(simpledir)))) + +# Bitmap tile rule + +define btile +bunker/$(1)/%.png: bitmap/$(1)/%.png + @mkdir -p `dirname $$@` + @convert $$< -resize 64x64 $$@ +endef + +$(foreach tiledir,$(BTILE_DIRS),$(eval $(call btile,$(tiledir)))) + # Smaller roaches -roach_32/%.png: roach/%.svg +roach_32/%.png: vector/roach/%.svg @mkdir -p `dirname $@` @inkscape -z -e $@ -w 32 -h 32 $< -roach_21/%.png: roach/%.svg +roach_21/%.png: vector/roach/%.svg @mkdir -p `dirname $@` @inkscape -z -e $@ -w 21 -h 21 $< +# Big roaches + +roach_big/%.png: vector/roach/%.svg + @mkdir -p `dirname $@` + @inkscape -z -e $@ -w 192 -h 192 $< + +# Big serums + +serum_big/%.png: vector/serum/%.svg + @mkdir -p `dirname $@` + @inkscape -z -e $@ -w 192 -h 192 $< + # Roach quartet roach_quartet/roach_%.png: $(foreach i, 1 2 3 4, roach_32/roach_$(i).png) @@ -51,5 +109,3 @@ roach_nonet/roach_%.png: $(foreach i, 1 2 3 4, roach_21/roach_$(i).png) roach_nonet/eyes_%.png: $(foreach i, 1 2 3 4, roach_21/eyes_$(i).png) @mkdir -p roach_nonet @montage $(foreach i, -1 0 1 2 3 4 5 6 7 , roach_21/eyes_$$(( ( $(i) + $(patsubst roach_nonet/eyes_%.png,%, $@) ) % 4 + 1 )).png) -geometry +0+0 -background none - | convert - -background none -gravity southeast -splice 1x1 $@ - -