Image not available

600x600

f3474aa672690c67.webm

๐Ÿงต Untitled Thread

Anonymous No. 1001163

What is the best workflow or tool to maintain consistent texel density in Blender? All I can find online is basically either "just place a reference plane with texture and manually scale every single texture comparing to that plane by eyeballing" or "idk bro I just select all my objects and unwrap them all together". This can't be serious right? This is very very far from something I would consider productive. Which is something like: a global setting to set texel density affecting all unwrap, uv and object operations, like 1m for 1024x1024, and then all unwraps take it into consideration and if any face of any object ever goes beyond 1m it will automatically get tiling of its texture. If it's less than 1m texture will not shrink to fit either. Is there anything like this?

Anonymous No. 1001166

Bonus question: when you want consistent pixel density with lowpoly pixel art you probably want to stay on grid in terms of any geometry sizes as well right? I mean, if texels are relatively big like 32x32 for 1m, this means you want all geometry to resize in steps of 1/32 meter so that faces don't hace cropped texels. Is there any way to configure Blender such that it only moves/scales geometry in configured steps?

Image not available

1324x878

follow active quads.webm

Anonymous No. 1001187

>>1001163
You know what? I started typing out a reply, thinking it was impossible. But the more I typed and thought about it, the more it sounded possible. I'm not sure how to do it. And I'm not aware of anyone who has done it. But it sounds doable. It would most likely require cutting up every plane into individual squares.

In any case, I know you can save yourself some work by creating a grid for you UV workspace, and then snapping points to the grid. First you do the thing with seams and unwrapping. And then you make one of your UV planes a perfect square by snapping it to the grid Then you select the square plane as your active element, select the rest of the connected faces, then U > "follow active quads" > even. And it should force everything you selected into an even grid. Once you got everything into grids, you can cut up the UVs manually. Scaling planes bigger or smaller depending on how many texels you want each plane to have.

I know this isn't the speediest solution you were looking for. But maybe it's good enough?

Anonymous No. 1001190

>>1001163
doing it in blender feels like it would be a pain so I'd use RizomUV

Anonymous No. 1001191

>>1001187
This is a neat trick, thanks. Still it's a manual approach. I'm not entirely sure but it seems Blockbench does this automatically.

Anonymous No. 1001222

>>1001163
I work with pixel textures constantly in blender, so it's actually very simple.
multiple addons will do this functionality.
UV Toolkit or ZenUV, which both have tools for matching texel density in UV hulls. A free option is the old textools addon, but it has a tendency to not work in later versions of Blender because of how old it is.

I would also suggest turning on the pixel snap while working with UVs will help alot.

Image not available

1554x797

low poly uv unwra....jpg

Anonymous No. 1001364

>>1001163
>>1001191
Automation should be possible with geometry nodes. But I'm not clever enough to figure it out.
I got as far as separating each face, and scaling them based on their size. Getting them to scale proportionally upon reaching certain thresholds. The only problem is, I can't pack them into a UV space. I got them all lined up on the X axis. But don't know how to get them to fit within the bounds of X and Y in an organized fashion.

Pic related shows the little test mesh I made. And then on the ground is all of the test mesh's faces scaled and aligned to the X Axis. This is as far as I can get. But it should be possible to go all the way.