Currently, SmartShape2D determines the edge width based on the texture’s dimensions. This limits flexibility when changing or swapping textures, as any variation in texture size alters the visual width of the shape’s borders. This makes it difficult to iterate on art assets and makes reusing shapes across different texture sets a challenge.
Proposed Solution:
- Add a dedicated property (e.g., edge_width) to explicitly control the width of the edge independently from the texture size.
- Bonus points for something like texture_scale_x and texture_scale_y to control how often an edge texture pattern repeats
Benefits:
- Enables non-destructive texture replacement.
- Simplifies iteration and asset pipeline adjustments.
- Improves visual consistency across shapes with differing texture sources.
- Aligns with the general Godot design philosophy of separating visual assets from geometry logic.
Example Use Case:
When designing a 2d terrain, I can fine-tune the edge width for aesthetic balance without needing to edit or rescale the underlying texture.
Currently, SmartShape2D determines the edge width based on the texture’s dimensions. This limits flexibility when changing or swapping textures, as any variation in texture size alters the visual width of the shape’s borders. This makes it difficult to iterate on art assets and makes reusing shapes across different texture sets a challenge.
Proposed Solution:
Benefits:
Example Use Case:
When designing a 2d terrain, I can fine-tune the edge width for aesthetic balance without needing to edit or rescale the underlying texture.