mapeditor / tiled

Flexible level editor
https://www.mapeditor.org/
Other
11.19k stars 1.76k forks source link

Feature request: spline objects #562

Open benstahl opened 10 years ago

benstahl commented 10 years ago

Add spline (Bézier and possibly Catmull-Rom) object types and drawing. When exported, export the control points of the curve. Example: I have a game where I want a boat to arrive into and exit from a port using a non-linear path. It would be amazing to just draw this spline path into Tiled, then read those control points in my app to easily construct a movement path.

bjorn commented 10 years ago

Yes, that would be pretty neat, but it's also a large project that I will not have time for unless someone would sponsor the work.

zilluss commented 10 years ago

I have added a bezier type to the existing MapObjects and implemented it in the CreateObjectTool class. However, it complicates the code, since it adds new cases to a lot of switches. Are there any plans to make the objects and the object creation tools polymorphical? If so, I would wait with the changes and implement it.

bjorn commented 10 years ago

@zilluss In the beginning there were few object types, and their creation was very similar. So it made sense to have it all in one tool. But I fully agree that meanwhile a bit of polymorphism would probably lead to clearer code. There are no plans from my side to tackle this issue in the near future due to lack of time, so feel free to refactor things a little as part of adding bezier types (though please do it in separate commits).

It's nice to hear somebody is working on this and I'm looking forward to your pull request!

zilluss commented 10 years ago

The feature is mostly finished. What's missing are the icons for the Bezierline/loop tools and the export to formats other than JSON. Unfortunately, I currently don't have the time to get acquainted with the other formats.

As for the look of the tool, I kept it close to bezier tools in other programs. screen shot 2014-09-18 at 08 26 45

bjorn commented 10 years ago

@zilluss That looks very good! Of course I can help you with the other export formats, so just make a pull request whenever you feel it's ready for review.

kheftel-old commented 10 years ago

that looks great! Excited!

zilluss commented 10 years ago

The PR build up on my previous PR, so it'll have to wait until then.

Arcanorum commented 1 year ago

What ever happened with this?

bjorn commented 1 year ago

What ever happened with this?

It turned into PR #776, which was unfortunately never finished.

I could pick it up when there is demand, but my impression is that there still are a lot of other things to improve that more people would benefit from. Of course, anybody who feels they desperately need this could start working on it. :-)