How to project UVs form the big object to the small one to display part of the image that is behind it as shown in the snapshot below.
-
1$\begingroup$ Use object coordinates with the desired object as target? $\endgroup$– J SargentApr 26, 2016 at 22:03
-
2$\begingroup$ Or try the UV project modifier $\endgroup$– user1853Apr 26, 2016 at 22:08
-
$\begingroup$ @cegaton from what I see UV project modifier uses coordinates of the object only, if I move or rotate the mesh in edit mode it has no influence on the UVs of the small object. $\endgroup$– DenisApr 26, 2016 at 22:15
-
$\begingroup$ maybe if you "Ctrl+A" apply rotation/location it will work? $\endgroup$– eromodApr 26, 2016 at 22:28
2 Answers
I think the simplest way to do this is to join the two planes into a single mesh. Then position the viewport to be perfectly perpendicular to the planes, enter Edit mode and UV Unwrap from View. Then when you apply the image to the material using UV texture coordinates they will align perfectly. You can then separate the meshes and they will keep their UV layouts.
Update:
In order to accomodate the skew of the mesh, the uv layouts must be edited concurrently. Here's how to do that.
- Join the two meshes. Unwrap with project from view.
- In the UV editor select all and size to 90% of the uv grid area.
- Turn on UVs>Constrain to Image Bounds, and Enable Proportional Editing in 2D mode.
- With all vertices selected move the vertex group to the lower left corner. Then in turn, with a fairly large proportional range selected, pull each of the other 3 corners towards each corner of the uv area. If your proportional edit range is large enough, the edits to the large mesh will affect the small mesh.
- Once done, leave Edit mode and check the alignment on the meshes. The two meshes can be separated at this point.
Update 2:
Denis shared his alternative which used the Shear command (CTRLSHIFTALTS) to tilt the vertices instead of using proportional edit. This was a great solution for this specific mesh issue.
-
$\begingroup$ I was thinking to do something like that in the beginning but the problem is that the mesh is not a square, the vertices have a slight offset, if I project from view the image will not cover the whole mesh. $\endgroup$– DenisApr 27, 2016 at 0:40
-
$\begingroup$ You could probably still get away with project from view and then pinning the relevant vertices for the overlap and then unwrapping the rest with a different method. I'll look at the file. $\endgroup$ Apr 27, 2016 at 2:02
-
$\begingroup$ That solution was good, but instead of using proportional editing I used CTRL+ALT+SHIFT to shear the UVs and cursor at 0,0 as Pivot Point to avoid distortion as much as possible. $\endgroup$– DenisApr 27, 2016 at 5:18
-
$\begingroup$ That's a good alternative, I like that, have not used shear before. Maybe I should replace the prop editing answer with the shear one? $\endgroup$ Apr 27, 2016 at 5:26
Here is more convenient way to do so: You need UV mapped object as source and another object with the same texture but any mesh data with assigned UV map as target. For target add DataTransfer modifier, select source object, enable Face Corner Data transfer as Nearest Face Interpolated and below click UVs as face corner data layers to transfer.
The result quality depends on target mesh density.
-
$\begingroup$ This is the correct answer. It doesn't rely on merging objects or manually editing the UV map, and always gives correct results, regardless of geometry. $\endgroup$– JummitJul 22, 2020 at 9:11