Displacement maps apply even to species-specific clothing variants
Description
Likely just an oversight, but species-specific clothing sprites still have displacement maps applied, which feels. Redundant? It makes it annoying to set up species versions of clothing for species that do apply displacement maps, having to account for the distortions that are done for clothing that isn't made with them in mind.
Reproduction
This is a little bit awkward to describe in steps, but
- Create a species-specific clothing variant sprite for a species that has displacement maps
- Wear clothing with species variant sprite
- The displacement map still applies, awkwardly scrunching and stretching the sprite in unintended ways
Expected behavior
- Create a species-specific clothing variant sprite for a species that has displacement maps
- Wear clothing with species variant sprite
- The displacement map does not apply and the clothing renders cleanly, as drawn
I think it's likely that there just wasn't an exception put in place when applying displacement maps, but I'd think of this as an oversight.
Media
Probably not the most useful thing in the world, but here's the intended look of an insulated jacket on a Xelthia (item I ran into this issue with while setting them up, meant for insulation without a glove slot)
This version of the sprite does NOT account for the displacement map
And here's how this looks if I were to apply the sprite I had to use to make it look mostly the same when rendering ingame, which DOES account for being effected by the displacement map (shown without displacement map here to illustrate what the problem is to a degree)
Additional context
It's certainly not an issue that can't be worked around but it feels a bit unintuitive and like an oversight more than an intentional feature. It would be far easier to make things like this without having to consider how displacement maps are going to end up effecting things.
Yeah right now from looking at the code, there seems to be two options.
Either you forbid all other clothing and items for this species, and replace the displacement map with texture with a color like #888888 making the displacement displace nothing or you have to map the clothing to fit to the default human layout, so it automatically displaces it correctly for this species body type.
I can see why its frustrating, but thats the fixes i can figure out that will make it look "right", without reworking the displacement system and do changes that one have to hope won't break items and clothing for all the other species in the game.
There's very few species that actually use displacement maps in a way that would be negatively effected by this being fixed to my understanding, being like. Harpy having a minor displacement map and vox which are unimplemented
I'd imagine you'd just add like a check for if the species has a custom sprite for an article of clothing and disable the displacement map rendering for it if so but I don't know how to code that. Doesn't feel like it'd be incredibly hard though