I used a 16x16 sprite pack to make a 640x640 map in pygame:
The problem is that everything is extremely tiny. How could I go about making the expected "JRPG" look, like this for instance:
I have tried so far to double the size of the map tiles using pygame.transform.scale(tile,(32,32))
but that makes everything look terrible:
Here is how I am rendering the map:
import pygame
import pytmx
from pytmx.util_pygame import *
class tileRender:
def __init__(self,filename):
tm = pytmx.load_pygame(filename)
self.width = tm.width * tm.tilewidth
self.height = tm.height * tm.tileheight
self.tmxdata = tm
def render(self,surface):
ti = self.tmxdata.get_tile_image_by_gid
for layer in self.tmxdata.visible_layers:
if isinstance(layer,pytmx.TiledTileLayer):
for x,y,gid in layer:
tile = ti(gid)
tile = pygame.transform.scale(tile,(32,32))
if tile:
surface.blit(tile,(x * self.tmxdata.tilewidth, y * self.tmxdata.tileheight))
def makemap(self):
temp_surface = pygame.Surface((self.width,self.height))
self.render(temp_surface)
return temp_surface
Is there a way of "zooming in" on the sprites in order to get the expected look?