Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(5 edits) (+16)

Good news! I've finished porting all features to blender 2.8, except decal layers, and since it has become usable now, I've uploaded a beta release here:

https://github.com/ologon/Sprytile/releases

To install the beta, grab the zip file from that page and install it from the preferences -> addons panel as usual.

Here's what changed in the blender 2.8 version:


The sprytile panel is now located in the new panel section, which is hidden by default.
To show it click on the small arrow in the top left corner of the 3D view:

Then select "Sprytile"

Blender 2.8 default viewport settings are not optimal for pixel art, specifically you may notice texture jittering when moving the camera. (This is caused by eevee's temporal anti-aliasing filter) Moreover, blender viewport employs filmic color correction by default, which will cause your unlit tiles to appear slightly brighter than the original image. To fix this issues, select the newly added "Sprytile Utilities" -> "Setup Pixel Viewport". I recommend doing this once before starting to work with sprytile.

Sprytile tools are now located in the toolbar on the right. They will show up once you enter edit mode:

You can use the snap tool by holding "S" while the build tool is active as usual, and the tile picker by holding left Alt while any sprytile tool is active.

The normal tool is not a separate icon , instead it can now be used by holding "N" while the build tool is active.

Everything  else is pretty much the same as it was in 2.7.


The beta hasn't been tested throughly, so crashes/errors may occur while using it. Let me know if you encounter any problem, and be sure to save often just in case :)

(+2)

You're the bomb! Been waiting for a 2.8 compatible release for awhile now, so stoked to give it a try. Thanks a bunch!

YAY!

First thank you very much for porting this to blender 2.8
Next, I tried to use but it crashs so quickly and randomly I can't tell you what is going wrong :/
Do you have a version with some try/catch everywhere writing the errors into a file or at least in the console ?
Or tell me how can I help you to make this version more stable, I would like to help.

Hi LuDK,

Thanks! I've been using it for a while and it appears to work just fine in my case. Are you using the latest beta? (Beta6)

If you are already using the latest beta, open the windows command prompt and start blender from there (by typing for example "C:\Program Files\Blender Foundation\Blender\blender.exe" then enter) . When sprytile/blender crashes the error causing the crash should remain in the command prompt. Can you tell me what you are getting? (Also knowing when it happens would be helpful)

Ok I'm doing that since this morning.
I updated blender to the official release 2.81 too... and... no crash currently.
I let you know if anything happens ;)

Ok I got a crash:

"Error: Not freed memory blocks: 5, total unfreed memory 0.001434 MB

Blender quit"

Wow crashed again when I tried to Ctrl + Z:

"Traceback (most recent call last):

  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Traceback (most recent call last):
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 513, in draw_callback_handler
    VIEW3D_OP_SprytileGui.draw_offscreen(context)
  File "C:\Users\eques\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons\sprytile\sprytile_gui.py", line 573, in draw_offscreen
    target_img.gl_load()
ReferenceError: StructRNA of type Image has been removed
Error   : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF6C7C1101D
Module  : C:\Program Files\Blender Foundation\Blender 2.81\blender.exe"

Thanks! I’ll look into it and see if I can reproduce it :)

(+1)

I was able to reproduce the above crashes and I've released a beta7 with a fix.

Let me know if you encounter other issues! :)

Thanks, I updated I let you know ;)

Uh THANK YOU!!!!

I messed around with sprytile in the past but when 2.8 got here I was so sad to see it was incompatable. Now that it's back, I'm looking forward to learning it again!

Hell yeah!

Hi :)

How can I remove a tileset ?

Thank you !!!

And sometimes the view of the tileset to pick a tile is just missing, is there any way to force to display ?
(I have to close and reopen blender to fix it).

Thank you ;)

(2 edits)

Hi LuDK!

As in 2.7, to delete a tileset you have to first delete its material. Find the tileset material in the material panel and press the  "X" button while holding shift, then save your blend file and reopen it:


Blender will delete the material and it should show up as "Invalid Data" in the tileset list.  Sprytile will eventually delete it for you when you add new tilesets, but to delete it right away click on the down arrow icon and choose "Validate Grids":


Regarding the view not showing, it usually means you are working on an object which currently has a different tileset than the one selected.

Hope that helps! :)

Thanks !!!

Deleted 4 years ago