Some requests and some +1s
Posted: Mon Jul 01, 2013 5:47 am
Here's a load of thoughts, in rough order of importance to me. I've seen reference to a feature voting page but I can't find it, so apologies if there's a load of repetition here. I found the proposed future updates page, so I've at least avoided some repetition :0)
* +1 for a custom property type that is a link to another item. I'd just like to clarify what I'd want from this. As others have noted, you can work around this by simply using a string property and typing in the name of the item you want to link to, and this is what I currently do. The problem is, when you duplicate items that are linked together, the links will still be pointing back to the original items rather than the duplicates. So for this feature to be truly useful it would need to handle duplicating items intelligently, and rewire any links to the new items.
* +1 for grid snap, I've posted an idea for how this could work into that thread.
* +1 for spline support. The potential problem with this (apart from all the UI issues!) is there are any number of methods of generating good-looking but not-excessive line segments from the curve descriptions, so there wouldn't necessarily be a 1:1 relationship between the Player and the game code any more, but that's not a big deal to me. I wouldn't expect to use the Player much, if at all.
* Pulley joints
* Groups. I currently use Inkscape for level creation, and use its Groups extensively. They are a little complex in the UI, but basically you can select multiple items and group them, creating a Group item that they then nest under. You can freely add to or remove from the groups, but this does rely a lot on Inkscape's tree view of the xml code, so it might be a tricky thing to add to RUBE. The reason this is so important to me is the fact that you can give Inkscape Groups properties just like any other item, and using this I can simplify tasks like scripting multiple objects simultaneously (eg for complex moving scenery), and unifying multiple images into single atlas-based meshes.
* +1 for layers, or at least some kind of organisational tool. A freeform tree view would be ideal to me, so the user could do any sort of nesting and organisation they need. And it would make my Groups request easier to deal with :0)
* I'm not sure if this has been requested before, but it would be great to be able to nudge items up and down the render order. The current type-in render order is definitely useful, but generally I'd be fine just with order of creation. A tree view would be good for this too :0)
* +1 for some kind of instancing solution, preferably with the ability to have the sources for instances kept in separate files.
* Tool for calculating the axis for prismatic joints based on where the bodies are, and/or placing items where Box2D is going to want to place them (I currently have a bit of patch-up code that projects body B onto the prismatic axis, a tool for this in RUBE would be much better) (and this is perhaps more about me learning the RUBE UI better, but it still might be useful).
* Selecting bodies by clicking within any of their fixtures/images, in addition to clicking the glowing ball. A minor point though :0)
* It would be good to make any new items created (by adding them new, or by copy & pasting) automatically selected, so you can immediately work with them (translate, rotate etc).
* It would be great to have multiple rooms within a file. I work around this by simply having big boxes that denote rooms' extents, and a bit of game-side processing to put items in their correct rooms, but an official way to make rooms would be brilliant. Items would still need to be able to reference items in other rooms. Rooms would ideally have editable properties.
* +1 for simpler collision filtering. I currently use strings defining object groups, so an 'official' method along similar lines would be great. (eg I have groups like 'Player', 'Enemies', 'Bullets', 'Static scenery' etc...)
* Some other things I've thought of could probably be addressed simply by having script callbacks. I'm not sure if these already exist but having scripts that run on startup, that are notified on things like creating new items, would allow folk to roll their own solutions to many needs.
...this is just from a couple of hours checking out RUBE, so I've no doubt there are workarounds for a lot of this stuff.
Some of these things that aren't currently in RUBE are unfortunately vital to me, but all the stuff that RUBE does currently do is very impressive, good work!
Dave
* +1 for a custom property type that is a link to another item. I'd just like to clarify what I'd want from this. As others have noted, you can work around this by simply using a string property and typing in the name of the item you want to link to, and this is what I currently do. The problem is, when you duplicate items that are linked together, the links will still be pointing back to the original items rather than the duplicates. So for this feature to be truly useful it would need to handle duplicating items intelligently, and rewire any links to the new items.
* +1 for grid snap, I've posted an idea for how this could work into that thread.
* +1 for spline support. The potential problem with this (apart from all the UI issues!) is there are any number of methods of generating good-looking but not-excessive line segments from the curve descriptions, so there wouldn't necessarily be a 1:1 relationship between the Player and the game code any more, but that's not a big deal to me. I wouldn't expect to use the Player much, if at all.
* Pulley joints
* Groups. I currently use Inkscape for level creation, and use its Groups extensively. They are a little complex in the UI, but basically you can select multiple items and group them, creating a Group item that they then nest under. You can freely add to or remove from the groups, but this does rely a lot on Inkscape's tree view of the xml code, so it might be a tricky thing to add to RUBE. The reason this is so important to me is the fact that you can give Inkscape Groups properties just like any other item, and using this I can simplify tasks like scripting multiple objects simultaneously (eg for complex moving scenery), and unifying multiple images into single atlas-based meshes.
* +1 for layers, or at least some kind of organisational tool. A freeform tree view would be ideal to me, so the user could do any sort of nesting and organisation they need. And it would make my Groups request easier to deal with :0)
* I'm not sure if this has been requested before, but it would be great to be able to nudge items up and down the render order. The current type-in render order is definitely useful, but generally I'd be fine just with order of creation. A tree view would be good for this too :0)
* +1 for some kind of instancing solution, preferably with the ability to have the sources for instances kept in separate files.
* Tool for calculating the axis for prismatic joints based on where the bodies are, and/or placing items where Box2D is going to want to place them (I currently have a bit of patch-up code that projects body B onto the prismatic axis, a tool for this in RUBE would be much better) (and this is perhaps more about me learning the RUBE UI better, but it still might be useful).
* Selecting bodies by clicking within any of their fixtures/images, in addition to clicking the glowing ball. A minor point though :0)
* It would be good to make any new items created (by adding them new, or by copy & pasting) automatically selected, so you can immediately work with them (translate, rotate etc).
* It would be great to have multiple rooms within a file. I work around this by simply having big boxes that denote rooms' extents, and a bit of game-side processing to put items in their correct rooms, but an official way to make rooms would be brilliant. Items would still need to be able to reference items in other rooms. Rooms would ideally have editable properties.
* +1 for simpler collision filtering. I currently use strings defining object groups, so an 'official' method along similar lines would be great. (eg I have groups like 'Player', 'Enemies', 'Bullets', 'Static scenery' etc...)
* Some other things I've thought of could probably be addressed simply by having script callbacks. I'm not sure if these already exist but having scripts that run on startup, that are notified on things like creating new items, would allow folk to roll their own solutions to many needs.
...this is just from a couple of hours checking out RUBE, so I've no doubt there are workarounds for a lot of this stuff.
Some of these things that aren't currently in RUBE are unfortunately vital to me, but all the stuff that RUBE does currently do is very impressive, good work!
Dave