Looking at a way to save worktime when making tiles and one thing that I haven’t quite figured out yet is how to make objects appear more distant/near.
A cool future function for Tiled would be to have some sort of gradient tool to simulate 2D lighting.
If this was implemented directly into Tiled you could make light-layers in you maps which in turn would bring your game to a whole new level.
Again as I’m not a programmer this might be much harder than I imagine but… Made a mockup
So, first you select your lighting tool. Then you select the layer or object you wish to tint. Click - drag - release and:
Now there is a gradient “light map” affecting the layer providing a bit of depth.
Further features might be radial gradient, to make stuff light around spotlights etc.
*People will likely ask for a way to trim the light effect as soon as this is made, but as a first step.
Here is a more complex mockup:
Blue: Size of light
Yellow: Start of light
I’m totally for making these kind of things possible in Tiled, but I’m reluctant to code one specific solution for it since this is an area where you can take a lot of approaches and not every engine will do it the same way.
Of course, the first example with the shadow gradient can already be done by stretching a gradient tile object. I know it doesn’t work in the general case since only plain alpha layer blending is supported currently, but that could also be extended.
The second example shows a really nice custom editing widget for configuring spotlights. However, what I’d like to try here, once there is support for scripting Tiled, would be to provide an API through which such custom widgets could be defined. That way many kinds of game/engine-specific elements could be added. I realize this will be challenging, but it will be a lot more useful than hardcoding such specific controls.
I’ll probably like anything along the way of lighting so if you have ideas that are more flexible it’s even better
I’ll keep following the progress of Tiled, really like it so far. Just becoming more clear I need to learn programming hehe.