3d to 2d transformation with alignment

i have a 3d model with multiple imprint areas on them.
i have the UV map of the bottle aligned with the texture.
but the UV map of imprints is not aligned to the texture of the bottle. it is placed in the center of the texture

Are there any tools/libraries/scripts available to position these UV map pf the imprints with respect to the bottle automatically. Any help/guidance would be highly appreciated. Thanks.

I didn’t understand exactly what the problem was :sweat_smile:
However, I think the Addon below will be helpful.

the problem is that the coordinates of the imprint is not aligned according with the coordinates of the bottle in 2d. The coordinates of the imprint are on the center instead it should be on as the image shown in the desired outcome.

It will be easier to adjust if you use the shader with mapping and texture coordinate.

i can do it manually but i have lots of imprint areas and lots of different models. i am looking for automatic tools/libraries that can find the appropriate position of imprint with respect to the position of the bottle.

1 Like

I am not sure if there is one that can do all of that, but good luck with that.

There will be no function that automatically creates UV the same as 3D space.

It has functions such as adjusting the object size and UV size in 3D space or aligning them without overlapping.
Use Addon to handle this cumbersome process.

You have to do things yourself, such as placing the UV where you need it.

I think the video below will help you with UV work.

※ For your information


  1. You don’t have to be in the same position if it’s for decals.

  2. If you want to put it in exactly the same position, first grab the UV of the water bottle, copy the water bottle, delete it, leaving only the necessary part, and it will align in the perfect position.

In this case, the UV may be deformed by moving vertex, so you can prevent the deformation by activating Correct Face Attributes in options in 3D space.

https://docs.blender.org/manual/en/latest/modeling/meshes/tools/tool_settings.html

I think that what you want to do can be done with the Data Transfer modifier.

Here, when I apply the modifier with these settings


the UVs of the label are projected onto those of the bottle:

You can then join the 2 objects if you wish.

2 Likes

thank you for your helpful guidance. the UV labels are projected onto the bottle but it is not accurate enough. I put some color on the imprint area projected by the modifier. the color should be inside the selected imprint area on the 3d view as well which is not happening. What can be the solution to this?

Hard to say

Can you post a .blend file ?

It works with your file.
Maybe you hadn’t selected the right Mapping parameter?
Try one of these 2 : Nearest Face Interpolated or Projected Face Interpolated.

Capture d’écran 2024-05-02 à 12.14.30

Also, you should apply the scale on all your objects


1 Like

UV is a good fit as a DataTransfer modifier, but maybe it’s a problem caused by the gap between the object and the object.

it works perfectly using Projected Face Interpolated Mapping. Thanks a lot for helping me!! Now all i need to do is automate the process from scripting. Is it possible to do it from scripting?

Great :+1:
I’ll leave that question to the experts (I don’t know anything about this field).

1 Like