I am designing a poster. The printed poster should run around a corner. The content of the poster (text) should look correct from one perspective in the room. So a forced perspective. The flat poster shows a distorted typeface.

To distort the text correctly, I would like to project the text in Blender (3.5) onto a corner (basically a cube) from the camera's point of view and export the resulting texture (i.e. the distorted text) as an image again.

Unfortunately I can't find any good instructions for this. Currently I follow this tutorial: https://youtu.be/p9IfDeNU8K0

Here a UVProject Modifier is used to project time UVMap onto the object. This works moderately well if you increase the geometry by subdivision. As you can see in the picture the edges are not perfectly straight.

But I don't understand how to "bake" or save this texture so that I get my distorted type.

Can someone please help me? How do I get the UVmap of the UVProject Modifier. Or is there a better solution without modifier (the result with it is unfortunately not perfect). Maybe someone can point me to a better tutorial (can't believe the fact that I can't find anything good on this). Thanks a lot!

View from camera

  • $\begingroup$ Place the subdivision before the UV project, maybe. But, ok, you want to bake it at the end, though, I've difficulties to understand what this bake should be (which purpose)? $\endgroup$
    – lemon
    Commented Apr 9, 2023 at 10:10
  • $\begingroup$ is that what you want to do? i.sstatic.net/CXZKZ.png (camera view, side view, bake) $\endgroup$
    – lemon
    Commented Apr 9, 2023 at 16:08
  • $\begingroup$ Thanks for your reply. Yes this looks pretty much like it. I need the baked texture, so I can use it on my poster design (which I will layout in InDesign / Illustrator / Photoshop). The printed poster itself will be folded and pasted on a similar edge as the cube (or maybe a more complex shape) in I use in Blender to generate the distortion. The effect when looking at the poster IRL should be the same as when looking through the camera view. Could you please tell me the steps I'm missing? $\endgroup$
    – Niko
    Commented Apr 10, 2023 at 11:23
  • $\begingroup$ I'm not 100% sure this is what you want, but see below in a moment. $\endgroup$
    – lemon
    Commented Apr 10, 2023 at 11:47

1 Answer 1


I've not used UV project modifier to obtain this:

enter image description here

but the original UV map, rotated and scaled so that the wanted part takes place in the final texture.

The camera is looking at the edge:

enter image description here

And the shader nodes are the following:

enter image description here

The idea is to counteract the 3D perspective, inversing Z depth (from the camera point of view as camera is facing minus Z), so that X, Y values are scaled (multiplied) by 1/Z (with some scale that you can tune). Doing so, the poster looks flat when facing the point of view you want.

  • $\begingroup$ Thanks again! This works very well. And it’s more what was looking for. The UV project was the only solution I could find at first. One thought: I used in my original blender file two area lights, pointing towards the cube. Is there a good way to bake the texture with the lighting? So basicly the same bake of the UV map in your example, but with baked light. I could do this in Photoshop, but if there is an easy way to use the real light from the scene it would be awesome. Sorry for those very basic questions. Still trying to wrap my head around baking and render paths. $\endgroup$
    – Niko
    Commented Apr 10, 2023 at 12:41
  • $\begingroup$ Yes, you can bake with lights. In the blend file above, I've just disabled few things about bake. I've set it to "diffuse" instead of "combined" and I've disabled "direct" and "indirect" (see the bake panel). $\endgroup$
    – lemon
    Commented Apr 10, 2023 at 12:44
  • $\begingroup$ Got it. Perfect. Thanks again for the help! $\endgroup$
    – Niko
    Commented Apr 10, 2023 at 12:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .