Preserving Texture Coordinates through SubDivision

Hey fellow nerds,
I have a question regarding TextureCoordinates of meshes. While meddling with the awesome implementations provided in the Heat Method topic I noticed that Weaverbird is able to perfectly preserve TextureCoordinates through its subdivision algorithms.

In search of an open subdivision implementation that I could play around with, I stumbled across this awesome work by @dave_stasiuk :

Unfortunately, the latter method won’t preserve the TextureCoordinates, so subdividing after something like the Heat Method won’t work. For this reason I’m asking if somebody more proficient in this could point me into the right direction how I could preserve or respectively compute TextureCoordinates through the subdivision shown by Dave.

I’m blatantly tagging @piac and @DanielPiker because I assume they have great knowledge about this, hope this is alright :cold_sweat:

Any help and/or insight appreciated!

Hi @efestwin

Subdivision is essentially a way to mix vertices with one another. If you use the same rules, but do so for the TextureCoordinates space (as well as for the other spaces, like colors), you’ll get working subdivisions also for those spaces.

I hope this helps,



Giulio Piacentino
for Robert McNeel & Associates

1 Like