deepnight / ldtk

Modern, lightweight and efficient 2D level editor
https://ldtk.io
MIT License
3.4k stars 188 forks source link

[Suggestion] support `Image Layer` and supply `Plugin/Extension System` #616

Open finscn opened 2 years ago

finscn commented 2 years ago

1: ~~I found there is mirror function of tile , but no Rotate By 90/180/270 deg. I hope could support this feature.~~ (it's already in the road-map )

2: Support image layer . User could place some images in this layer with pixel-location (or a image-type entity) (and support move/resize/scale/rotate/flip image, and could be set properties and points , as same as entity)

3: I'm a TiledMap user. It supplies an extension System by javascript I hope LDTK could do .

Thanks

Cammin commented 2 years ago

Looks like it's on the milestone for 1.0 at #207

finscn commented 2 years ago

Looks like it's on the milestone for 1.0 at #207

Yes , the first one is in the roadmap, but I've not found the 2nd & 3rd .

deepnight commented 2 years ago

Hi, thanks for your suggestions :)

2nd is quite close from the #68 , even though I'm not sure yet to support properties per sprite object, as it would be highly redundant with Entities, especially since they fully support Tiles in 1.0 .

3rd is a cool idea, but requires lots of design thinking to determine the needs and limitations. So feel free to give a few use cases here 😃 👍

finscn commented 2 years ago

@deepnight , I create some Extensions of TiledMap , example :

The above is just example, maybe it's not suitable to LDtk .

unitycoder commented 4 days ago

(was googling about plugin/extension systems.. this was only hit)

I would use it for adding generator plugins. Currently i'm trying to do it by outputting / modifying .ldtk file.. (and it kind of works)

but would be better, if could create your own plugins, and then inside LDTK could press custom "generate" button (to for example: generate tiles inside selection or current level etc).

looks like this is slightly related #423 Having intgrid import method would help, but nice if can also import intGridValues (i'm currently generating them externally). And nicer, if can refresh that intgrid (or autorefresh, if the csv file is modified externally).