Skip to main content
Post Closed as "Duplicate" by Duarte Farrajota Ramos
added 297 characters in body
Source Link

What I want to accomplish: I want the edges of the UV islands to only be horizontal or vertical to alleviate aliasing present in Substance Painter. The aliasing comes from the fact that the edges of the UVs "cross over" the pixels in a 2k texture. This essentialy means there can be NO diagonal edges in the UVs. I also want this to be done automatically or batched as there are thousands of edges among the UV islands.

What went wrong: I have not found a way to align the EDGES to the pixels of the texture automatically. I can only do it by hand. But there are thousands of edges. I have the UV Toolkit addon. This allows me to select the island edges. The gridify option in this addon sadly will only "gridify" the entire UV island and not just the edges. Gridifying the entire UV island causes the UVs to go thermonuclear and islands begin to overlap THEMSELVES hundreds of times.

What I have tried:

  • The gridify option in the UV Toolkit addon. This seems to only work on entire UV islands.
  • Snap to pixels in UV menu with all islands selected. This does snap the vertices to pixels in the grid (kinda arbitrarily though) but the edges remain diagonal.
  • Searching google/StackExcange for answers to either straightening the Uvs in Blender or getting rid of the insane normal seams in Substance Painter.
  • Tried changing UV padding in Substance Painter.

https://substance3d.adobe.com/documentation/bake/aliasing-on-uv-seams-159451864.html

This guide here mentions that aligning the UVs to the texture will alleviate the aliasing that occurs. This aliasing is most present in the normal channel in substance painter. The normal channel is most effected by this aliasing. No matter if a normal stamp is used or the normal map is procedurally generated this seam is pronounced.

Distortion is allowable. Substance painter handles distortion very well but does not handle seams well AT ALL. Uvs have been handplaced and the margins are good. There is no existing texture we are trying to map the UVs to. I am simply trying to prepare the model for Substance Painter. Maybe there is a high iq fix in Substance Painter I don't know about but Adobe recommends fixing the UVs by aligning their edges to the texture so that no crossing over of pixels occurs.

Pictures:

Diagonal lines in UVs that cross over pixels.

Ideal flow of edges of UV islands.

Thanks to Vklidu for the suggestion. The method they described is great for getting the outer edges straight. It will straighten the inner edges however so there may be some distortion. But if it works, it works.

Vklidu face topology

What I want to accomplish: I want the edges of the UV islands to only be horizontal or vertical to alleviate aliasing present in Substance Painter. The aliasing comes from the fact that the edges of the UVs "cross over" the pixels in a 2k texture. This essentialy means there can be NO diagonal edges in the UVs. I also want this to be done automatically or batched as there are thousands of edges among the UV islands.

What went wrong: I have not found a way to align the EDGES to the pixels of the texture automatically. I can only do it by hand. But there are thousands of edges. I have the UV Toolkit addon. This allows me to select the island edges. The gridify option in this addon sadly will only "gridify" the entire UV island and not just the edges. Gridifying the entire UV island causes the UVs to go thermonuclear and islands begin to overlap THEMSELVES hundreds of times.

What I have tried:

  • The gridify option in the UV Toolkit addon. This seems to only work on entire UV islands.
  • Snap to pixels in UV menu with all islands selected. This does snap the vertices to pixels in the grid (kinda arbitrarily though) but the edges remain diagonal.
  • Searching google/StackExcange for answers to either straightening the Uvs in Blender or getting rid of the insane normal seams in Substance Painter.
  • Tried changing UV padding in Substance Painter.

https://substance3d.adobe.com/documentation/bake/aliasing-on-uv-seams-159451864.html

This guide here mentions that aligning the UVs to the texture will alleviate the aliasing that occurs. This aliasing is most present in the normal channel in substance painter. The normal channel is most effected by this aliasing. No matter if a normal stamp is used or the normal map is procedurally generated this seam is pronounced.

Distortion is allowable. Substance painter handles distortion very well but does not handle seams well AT ALL. Uvs have been handplaced and the margins are good. There is no existing texture we are trying to map the UVs to. I am simply trying to prepare the model for Substance Painter. Maybe there is a high iq fix in Substance Painter I don't know about but Adobe recommends fixing the UVs by aligning their edges to the texture so that no crossing over of pixels occurs.

Pictures:

Diagonal lines in UVs that cross over pixels.

Ideal flow of edges of UV islands.

What I want to accomplish: I want the edges of the UV islands to only be horizontal or vertical to alleviate aliasing present in Substance Painter. The aliasing comes from the fact that the edges of the UVs "cross over" the pixels in a 2k texture. This essentialy means there can be NO diagonal edges in the UVs. I also want this to be done automatically or batched as there are thousands of edges among the UV islands.

What went wrong: I have not found a way to align the EDGES to the pixels of the texture automatically. I can only do it by hand. But there are thousands of edges. I have the UV Toolkit addon. This allows me to select the island edges. The gridify option in this addon sadly will only "gridify" the entire UV island and not just the edges. Gridifying the entire UV island causes the UVs to go thermonuclear and islands begin to overlap THEMSELVES hundreds of times.

What I have tried:

  • The gridify option in the UV Toolkit addon. This seems to only work on entire UV islands.
  • Snap to pixels in UV menu with all islands selected. This does snap the vertices to pixels in the grid (kinda arbitrarily though) but the edges remain diagonal.
  • Searching google/StackExcange for answers to either straightening the Uvs in Blender or getting rid of the insane normal seams in Substance Painter.
  • Tried changing UV padding in Substance Painter.

https://substance3d.adobe.com/documentation/bake/aliasing-on-uv-seams-159451864.html

This guide here mentions that aligning the UVs to the texture will alleviate the aliasing that occurs. This aliasing is most present in the normal channel in substance painter. The normal channel is most effected by this aliasing. No matter if a normal stamp is used or the normal map is procedurally generated this seam is pronounced.

Distortion is allowable. Substance painter handles distortion very well but does not handle seams well AT ALL. Uvs have been handplaced and the margins are good. There is no existing texture we are trying to map the UVs to. I am simply trying to prepare the model for Substance Painter. Maybe there is a high iq fix in Substance Painter I don't know about but Adobe recommends fixing the UVs by aligning their edges to the texture so that no crossing over of pixels occurs.

Pictures:

Diagonal lines in UVs that cross over pixels.

Ideal flow of edges of UV islands.

Thanks to Vklidu for the suggestion. The method they described is great for getting the outer edges straight. It will straighten the inner edges however so there may be some distortion. But if it works, it works.

Vklidu face topology

Source Link

How would I make all the edges of my UV islands perfectly horizonal or vertical along pixels without doing it one by one?

What I want to accomplish: I want the edges of the UV islands to only be horizontal or vertical to alleviate aliasing present in Substance Painter. The aliasing comes from the fact that the edges of the UVs "cross over" the pixels in a 2k texture. This essentialy means there can be NO diagonal edges in the UVs. I also want this to be done automatically or batched as there are thousands of edges among the UV islands.

What went wrong: I have not found a way to align the EDGES to the pixels of the texture automatically. I can only do it by hand. But there are thousands of edges. I have the UV Toolkit addon. This allows me to select the island edges. The gridify option in this addon sadly will only "gridify" the entire UV island and not just the edges. Gridifying the entire UV island causes the UVs to go thermonuclear and islands begin to overlap THEMSELVES hundreds of times.

What I have tried:

  • The gridify option in the UV Toolkit addon. This seems to only work on entire UV islands.
  • Snap to pixels in UV menu with all islands selected. This does snap the vertices to pixels in the grid (kinda arbitrarily though) but the edges remain diagonal.
  • Searching google/StackExcange for answers to either straightening the Uvs in Blender or getting rid of the insane normal seams in Substance Painter.
  • Tried changing UV padding in Substance Painter.

https://substance3d.adobe.com/documentation/bake/aliasing-on-uv-seams-159451864.html

This guide here mentions that aligning the UVs to the texture will alleviate the aliasing that occurs. This aliasing is most present in the normal channel in substance painter. The normal channel is most effected by this aliasing. No matter if a normal stamp is used or the normal map is procedurally generated this seam is pronounced.

Distortion is allowable. Substance painter handles distortion very well but does not handle seams well AT ALL. Uvs have been handplaced and the margins are good. There is no existing texture we are trying to map the UVs to. I am simply trying to prepare the model for Substance Painter. Maybe there is a high iq fix in Substance Painter I don't know about but Adobe recommends fixing the UVs by aligning their edges to the texture so that no crossing over of pixels occurs.

Pictures:

Diagonal lines in UVs that cross over pixels.

Ideal flow of edges of UV islands.