Compare commits
3 Commits
dirt-path-
...
blank-tile
| Author | SHA1 | Date | |
|---|---|---|---|
|
689c9a4c36
|
|||
|
7d6500a7e7
|
|||
|
fdc22fb6d4
|
@@ -984,9 +984,6 @@ class TileSet(object):
|
|||||||
# Ignore errors if it's "file doesn't exist"
|
# Ignore errors if it's "file doesn't exist"
|
||||||
if e.errno != errno.ENOENT:
|
if e.errno != errno.ENOENT:
|
||||||
raise
|
raise
|
||||||
logging.warning(
|
|
||||||
"Tile %s was requested for render, but no children were found! "
|
|
||||||
"This is probably a bug.", imgpath)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
# Create the actual image now
|
# Create the actual image now
|
||||||
@@ -1049,7 +1046,8 @@ class TileSet(object):
|
|||||||
The argument is a RenderTile object
|
The argument is a RenderTile object
|
||||||
|
|
||||||
The image is rendered and saved to disk in the place this tileset is
|
The image is rendered and saved to disk in the place this tileset is
|
||||||
configured to save images.
|
configured to save images, unless the rendered image is blank, in
|
||||||
|
which case no image is saved to disk.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@@ -1073,18 +1071,6 @@ class TileSet(object):
|
|||||||
logging.debug("%s deleted", tile)
|
logging.debug("%s deleted", tile)
|
||||||
return
|
return
|
||||||
|
|
||||||
# Create the directory if not exists
|
|
||||||
dirdest = os.path.dirname(imgpath)
|
|
||||||
if not os.path.exists(dirdest):
|
|
||||||
try:
|
|
||||||
os.makedirs(dirdest)
|
|
||||||
except OSError as e:
|
|
||||||
# Ignore errno EEXIST: file exists. Due to a race condition,
|
|
||||||
# two processes could conceivably try and create the same
|
|
||||||
# directory at the same time
|
|
||||||
if e.errno != errno.EEXIST:
|
|
||||||
raise
|
|
||||||
|
|
||||||
# Compile this image
|
# Compile this image
|
||||||
tileimg = Image.new("RGBA", (384, 384), self.options['bgcolor'])
|
tileimg = Image.new("RGBA", (384, 384), self.options['bgcolor'])
|
||||||
|
|
||||||
@@ -1120,6 +1106,24 @@ class TileSet(object):
|
|||||||
logging.error("Full error was:", exc_info=1)
|
logging.error("Full error was:", exc_info=1)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
# Don't save if the output is blank (384*384 pixels all colored bgcolor at 0% opacity)
|
||||||
|
# The viewer will fill in this missing tile with the default blank tile created in the
|
||||||
|
# AssetManager, so there's no need to spend compute time on compressing and disk space
|
||||||
|
# & network traffic on serving a blank image.
|
||||||
|
if tileimg.getcolors() == [(147456, self.options['bgcolor'])]:
|
||||||
|
return
|
||||||
|
|
||||||
|
# Create the directory if not exists
|
||||||
|
dirdest = os.path.dirname(imgpath)
|
||||||
|
if not os.path.exists(dirdest):
|
||||||
|
try:
|
||||||
|
os.makedirs(dirdest)
|
||||||
|
except OSError as e:
|
||||||
|
# Ignore errno EEXIST: file exists. Due to a race condition,
|
||||||
|
# two processes could conceivably try and create the same
|
||||||
|
# directory at the same time
|
||||||
|
if e.errno != errno.EEXIST:
|
||||||
|
raise
|
||||||
# Save them
|
# Save them
|
||||||
with FileReplacer(imgpath, capabilities=self.fs_caps) as tmppath:
|
with FileReplacer(imgpath, capabilities=self.fs_caps) as tmppath:
|
||||||
if self.imgextension == 'jpg':
|
if self.imgextension == 'jpg':
|
||||||
|
|||||||
Reference in New Issue
Block a user