An active ragdoll game in the style of GORN, TABS, etc
Describe the problem or limitation you are having in your project
Collision masks for games can quickly become complex, but often entity types will share the same collision behaviour. Adding a new layer that all entities of a type need to collide with can be cumbersome.
For instance, let's say halfway through development, you add something like an Overwatch-style shield to your game, which allows characters to pass through but obstructs projectiles. You will have to manually open each projectile's scene and add the layer to that projectile's collision mask.
Some games can have many physics bodies (in my case, active ragdoll games) that will always share the same collision mask. One character can have up to 10 physical bones and each will need they collision layers manually changed if I need to change something with which layers they interact with.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
I'm not sure how it should be implemented - the most consistent way might be to use a resource type, that can be set inline if unique behaviour is desired.
Ideally, under collision layer, I can have a drop down with entries that I have defined layer settings for. When I create a new physicsbody, I can select e.g. "Character" or "Projectile" or "Prop" from that list. If one of these need to change, I can then just edit the collision mask settings for that category and it will update on all objects that have it defined.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
n/a
If this enhancement will not be used often, can it be worked around with a few lines of script?
There might be some way of making a tool, but this seems like such a commonplace workplace optimisation that really I'm just worried I'm missing a way of doing this already!
Is there a reason why this should be core and not an add-on in the asset library?
I believe this is a very common workflow optimisation that should be useful for all games that are reliant on physics.
Describe the project you are working on
An active ragdoll game in the style of GORN, TABS, etc
Describe the problem or limitation you are having in your project
Collision masks for games can quickly become complex, but often entity types will share the same collision behaviour. Adding a new layer that all entities of a type need to collide with can be cumbersome.
For instance, let's say halfway through development, you add something like an Overwatch-style shield to your game, which allows characters to pass through but obstructs projectiles. You will have to manually open each projectile's scene and add the layer to that projectile's collision mask.
Some games can have many physics bodies (in my case, active ragdoll games) that will always share the same collision mask. One character can have up to 10 physical bones and each will need they collision layers manually changed if I need to change something with which layers they interact with.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
I'm not sure how it should be implemented - the most consistent way might be to use a resource type, that can be set inline if unique behaviour is desired.
Ideally, under collision layer, I can have a drop down with entries that I have defined layer settings for. When I create a new physicsbody, I can select e.g. "Character" or "Projectile" or "Prop" from that list. If one of these need to change, I can then just edit the collision mask settings for that category and it will update on all objects that have it defined.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
n/a
If this enhancement will not be used often, can it be worked around with a few lines of script?
There might be some way of making a tool, but this seems like such a commonplace workplace optimisation that really I'm just worried I'm missing a way of doing this already!
Is there a reason why this should be core and not an add-on in the asset library?
I believe this is a very common workflow optimisation that should be useful for all games that are reliant on physics.