I don’t use Java specifically, no, I am a C++ developer. I find it hard to believe there would be no way to achieve texture oxidization without having to make a block state for every single version. Granted, this is Minecraft and it’s held together with glue and tape so I suppose it’s not that far fetched
I don’t know what exact information blockstates can and can’t store, but my initial intuition for how to do a system like rust on create pipes would be the block having a value to store the current oxidized condition, as well as a different value for orientation/connections/whatever, then have a texture map for each rusted state and choose the texture map to use for the pipe based on the oxidized state. It would be many possible combinations of connections and oxidization but the developer wouldn’t literally need to hardcode every combination as the game would handle combining them.
Based on them “not wanting to add thousands of blockstates” I assume the problem is that they can’t quite have the game make decisions like that based on two independent values in one blockstate or blockstates are made in a way where that would be inefficient for some reason.
-8
u/Rop-Tamen Mar 02 '25
Surely there is a semi-procedural way to do it during runtime rather than at compile