Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New TileSet Editor #20585

Merged
merged 1 commit into from
Aug 10, 2018
Merged

New TileSet Editor #20585

merged 1 commit into from
Aug 10, 2018

Conversation

MarianoGnu
Copy link
Contributor

This new editor allows to select a texture and add tiles from it selecting a regiond and then configure it's collision, oclusion, navigation, and bitmask in the case of autotiling.
Also adds the ATLAS_TILE mode, wich is configured the same way as the AUTO_TILE, but it doesn't have a bitmask, instead a subpalette popups to pick wich tile to draw on the tilemap

@MarianoGnu
Copy link
Contributor Author

I'm not sure if this can be chery picked for Godot 3.0.7, would be nice, but i'm not aware of backward compatibility with some changes on tilesets that could not be chery picked on previous 3.0.x releases

@MarianoGnu
Copy link
Contributor Author

Also i had some trouble to merge it so tell me if it doesnt works as ezpected, but at least i know it compiles thx to travis ci

@NathanLovato
Copy link
Contributor

NathanLovato commented Jul 29, 2018

Glad to see that! Do you still need me to test it UX-wise? I can build and test it later today :)

@reduz
Copy link
Member

reduz commented Jul 29, 2018

A small video would be nice showing some very basic usage so users can test it

@MarianoGnu
Copy link
Contributor Author

@NathanLovato would be glad to, if you can still compile it

@isaacremnant
Copy link
Contributor

isaacremnant commented Jul 30, 2018

Just tried this, feels like it will be a very useful and intuitive enhancement! Thanks! A few comments while playing with it :

  1. Clicking on the small + and loading something that is not an image crashes the engine.
  2. Adding a texture, removing it then adding it again says "1 file(s) was not added because [sic]it was already on the list".
  3. I just realized the snap options were in the inspector, I'm really liking this change.
  4. I can't see the zoom in/zoom out buttons.
  5. I can't seem to edit the tile properties in the inspector. I can change the tile's Name, but nothing else.
  6. I think the most confusing thing is that I can't see a list of the tiles I already made in the tileset editor. I had to use a tilemap to visualize what I had.

And this is totally unrelated to your PR so feel free to ignore this, but could you consider adding a shortcut to make a tile's collision/occluder/navigation shape take the full region they are defined on? That would be a huge time saver.

@NathanLovato
Copy link
Contributor

Okay I'll test it a little later and make a short demo video for other testers here

@maxwellnewage
Copy link

Amazing!

@NathanLovato
Copy link
Contributor

I worked on the Godot course update and support over the past 2 days, productivity went down a little bit but I'm testing it today! Sorry for having you wait 😅

@NathanLovato
Copy link
Contributor

Tested it, and although you're off to a great start, it needs some work UX-wise. Maybe it's because some things don't work at the moment, but it's hard to understand and to use.
Here's a video commentary of the things that bugged me:

  • The left column takes a lot of screen space
  • The tool to select tiles also changes the region just by clicking: changing region should be click-and-drag
  • I'd like to see the name of the currently selected tile in the editor, and maybe its type
  • I can't update a tile's name at the moment
  • The selected tile/autotile sub-category in the inspector hides essential properties, it should at least be unfolded by default. And if possible I'd recommend just merging them in the "Selected tile" category
  • I'd also give the Occluder etc. properties their own category as they're less common than the tile size etc. If a tile doesn't have an occluder etc. you don't even want to see them

There are some more notes in the video. Please tell me if you need anything else!
As there are some things to work on right now, I'll let you ping me when you've updated the PR, and I can do a video to get people started at that point! Just @ mention me :)

@henriiquecampos
Copy link
Contributor

henriiquecampos commented Aug 3, 2018

In @NathanLovato video he suggests to depreciate the "Convert to Tileset" (7:38), raising the problem: how will a beginner unveil the Tileset edit pipeline?

I think that that's not a real concern, since by using Tilemap node, creating a Tileset resource it will invoke this editor right the way, won't it? It would be the exact workflow as for any other resource, the user(node) of that resource allows you to create a new resource of that type from the inspector, just like Nathan showed for sprites.

Or isn't this the current behavior already?

@NathanLovato
Copy link
Contributor

True! Didn't think about that

@MarianoGnu
Copy link
Contributor Author

Yes, these buttons where always there, even since Godot 1, but they where hidden in a menu, first on the bottom, hiden behind the animation button, and later on the canvas2D toolbar. I dont think removing this option from the scene menu is worth yet, because first we should make a similar editor for gripmap's meshlib or it would be strange imo, then yeah, it would be fine

@blurymind
Copy link

This is a fantastic addition. I hope it gets in 3.1 :) 👍
Awesome work @MarianoGnu

@MarianoGnu
Copy link
Contributor Author

All right, PR has just been updated, have fun testing it.

@MarianoGnu MarianoGnu force-pushed the tileset_editor branch 2 times, most recently from 5266cd3 to 8a0223e Compare August 9, 2018 00:26
@MarianoGnu
Copy link
Contributor Author

Made a short video to explain how it works
https://youtu.be/a4QvkFno5UU

@MarianoGnu
Copy link
Contributor Author

forgot to mention you can show/hide the tile names pressing Alt
https://gyazo.com/9ab5eb85cbaecf371d0d5d9df7b8de33

@MarianoGnu
Copy link
Contributor Author

Build errors for x11 and server, looks like i can't get ALT key's scancode from keyboard.h any idea about what can i do about this?

editor/plugins/tile_set_editor_plugin.cpp: In member function 'void TileSetEditor::_on_workspace_process()':
editor/plugins/tile_set_editor_plugin.cpp:824:45: error: 'KeyList' is not a class or namespace

The error on osx seems unrelated, but i'm not sure

@MarianoGnu
Copy link
Contributor Author

Just updated the PR again fixing many issues i found while recording the video (like not being able to select the subtile to edit collisions in Atlas tiles and subpalette not displaying automatically for Atlas tiles)

@MarianoGnu
Copy link
Contributor Author

osx is failing compile but seems unrelated to the PR
imagen

@ghost
Copy link

ghost commented Sep 17, 2018

when copying tiles from an atlas, it copies the first image, not the corresponding atlas tile:

example in action:
https://i.gyazo.com/e737ddb5231dad5f24f7847dfc688371.gif

also, when deleting a tile by right click, it deletes and changes the adjacent ones
https://i.gyazo.com/388117a3d12693b23707eb6723f275cd.gif

i compiled 2 days ago btw

@vnen
Copy link
Member

vnen commented Sep 17, 2018

@girng please open a new issue about it. It's hard to keep track of discussion on merged PRs and it can be easily missed.

@ghost
Copy link

ghost commented Sep 18, 2018

@vnen done thx.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants