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

Implement a Tilemap Setup Menu #351

Closed
ilexp opened this issue Jul 9, 2016 · 3 comments
Closed

Implement a Tilemap Setup Menu #351

ilexp opened this issue Jul 9, 2016 · 3 comments
Labels
Feature It doesn't exist yet, but I want it Tilemaps Area: Tilemaps core / editor plugins Usability Related to API and UI usability

Comments

@ilexp
Copy link
Member

ilexp commented Jul 9, 2016

Summary

Currently, setting up tilemaps is a tedious task and additionally, new users have no clue how to start. There should be a setup menu that automatically sets up a simple multi-layer tilemap including collision shape generation.

Analysis

  • The menu can go next to the resize menu.
  • There should be a similar context-based auto-popup of the setup menu when the Tilemap editor is focused / opened in a Scene without an existing tilemap.
  • Options this menu should offer to users:
    • Number of tilemap layers.
    • Size of the tilemap.
    • Tileset to use, with the option to specify a pixmap instead and auto-create the tileset.
    • Flat or deep tilemap?
    • Generate collision shapes or not?
  • Additional improvements related to this:
    • Introduce a "Create Tileset" right-click action for Pixmaps.
    • Provide a DataConverter from Pixmap to Tileset
      • Double-check this and fix potential false-positives for this conversion.
      • As with other converters, implement code paths for re-use of existing Resources.
    • Dragdrop of a Tileset into the Scene Editor could create a GameObject with Tilemap and TilemapRenderer Component.
      • Should be possible using a DataConverter implementation, requiring a CreateObj operation and with GameObject as a target type directly.
    • Dragdrop of a (convertible to) Tileset into the Tilemap Editor should open up the Setup dialog with the Tileset assigned.
      • This would be "hardcoded" as part of the Tilemap Editor, because it doesn't allow other dragdrop operations anyway, nor creating other objects.
@ilexp ilexp added Feature It doesn't exist yet, but I want it Usability Related to API and UI usability Plugin Area: Misc. core / editor plugins labels Jul 9, 2016
@ilexp ilexp added this to the Tilemaps Plugin v1.0 milestone Jul 9, 2016
@ilexp
Copy link
Member Author

ilexp commented Jul 11, 2016

Progress:

  • Introduced a "Create Tileset" right-click action for Pixmaps.
  • Introduced a Pixmap to Tileset DataConverter.
  • Dragdrop of a Tileset into the Scene Editor or Scene View will create a new Tilemap object.

Immediate ToDo:

  • Implement the Tilemap Setup dialog.
  • Trigger the Tilemap Setup dialog when dragging a (convertible to) Tileset into the Tilemap Editor.
  • Introduce a keyboard shortcut for opening the Resize dialog and allow to complete the operation keyboard-only?

@ilexp
Copy link
Member Author

ilexp commented Jul 15, 2016

Idea:

  • For simplicity and flexibility reasons, this dialog could use a PropertyGrid to display all the setup values.
    • Hide the editor header and remove root indentation, should it be there.
    • Auto-focus the PropertyGrid when focusing the dialog. Make sure to provide proper tab support.
    • Make the background colors match.
  • Pro:
    • No implementation overhead for every option's UI control.
    • No need to adjust UI code when changing what settings are available.
    • ContentRef editors including dragdrop support are already there, including previews and convertible support.
    • Automatically upgrades when any of the PropertyEditors are improved.
  • Con:
    • Does not look as nice as a custom-designed dialog with grid layout, groups, etc.
  • Overall, the Pro side seems to outweigh the Con side.

@ilexp
Copy link
Member Author

ilexp commented Jul 16, 2016

Progress:

  • Implemented a Tilemap Setup dialog, accessible via tool action.
  • Dragdrop of a (convertible to) Tileset into the Tilemap Editor will open up the Tilemap Setup dialog.
  • Countless tweaks and fixes.

Closing this.

@ilexp ilexp closed this as completed Jul 16, 2016
@ilexp ilexp added Tilemaps Area: Tilemaps core / editor plugins and removed Plugin Area: Misc. core / editor plugins labels Jul 14, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature It doesn't exist yet, but I want it Tilemaps Area: Tilemaps core / editor plugins Usability Related to API and UI usability
Development

No branches or pull requests

1 participant