I've got another 3D question today. Why is it that when I create planes in Vanishing Point (in this case, 2 walls and a floor) and check off "Render Grids to Photoshop" and "Return 3D Layer to Photoshop" that the grids and planes almost never line up with each other? Is it something I'm doing wrong in VP?
Some may already know that I'm a designer/illustrator/digital artist that is frequently building 2D/3D room settings for a client, and always looking for the quickest and most efficient way to achieve accurate perspective within the rooms.
Any reply is greatly appreciated, as always
The feature is a mess, like just about everything 3D in Photoshop.
If you're very lucky, the camera will be correctly aligned relative to the planes and will only have the wrong focal length to create the correct perspective. For example, it might be 40 mm when it needs to be 35 mm. Fortunately, that's easy to adjust. Note that the focal length control is integer, so it may be impossible to make a perfect correction.
Often, the camera will be misaligned with respect to the planes in addition to having the wrong focal length.
Sometimes, the ground plane of the 3D layer will be at ceiling level instead of floor level when you make walls in addition to floor.
The ground plane will be XY instead of Photoshop's usual XZ.
Thanks for the quick reply, as usual. And I totally agree about the "mess"! Again, I'm at a loss at the poor usability of these 3D features. Anyway, here is a screen of a placement of an illustrated bed in a room that I've been fighting with for the last 45 minutes to get the perspective correct. As you can see my walls and floor have a temporary grid texture to help me out. the headboard simply refuses to line up. In the end, I found that moving the mesh around instead of the camera was a slightly easier way to do it, but of course that will cause extra headaches for me if I want to import any 3D models, as I will have to align everything to the room mesh now. *Sigh...
So, thanks again. Guess I'll anxiously await CS7 and pray for some 3D sense in it.
If the bed doesn't come from a photo on which the VP planes were based then I don't think any of the problems with VP-to-3D-layer are to blame for your difficulties in getting the bed perspective to match your 3D virtual room perspective.
Here's a quick attempt which could be slightly better. The 3D layer created by VP filter had a view with a 30 mm focal length. I dialed that down to 10mm and the 3D planes became an almost perfect match for my VP grids.
Notice that Photoshop created the ground plane at ceiling level, with "above ground" pointing downward.
Thanks so much for experimenting with this. To respond to your first reply, The bed illustration is derived straight from a photo, so no angles were altered in any way as to throw off the natural perspective. So knowing this, I would think PS should be able to find those angles pretty easily once I've layed out accurate planes in VP. Your screenshot does show more accuracy and I'd be quite satisfied with that result, so kudos to you! Working with furniture quite often, I've come to realize you're not ever going to get perfect 90 degree angles in these pieces anyway. I don't think I've ever dropped my FOV setting to 10mm, so maybe it was just me not experiementing enough. But still, if the "return 3D layer to photoshop" function worked as expected, all would be well, and this thread wouldn't exist .
Wow, ok, sorry to say but my result wasn't even close to yours at that 10mm setting. The angles were much too accute and didn't line up with the grid at all. All you did was change the FOV right? Geez, how frustrating...
Yes, I was relieved to find that only the initial focal length was wrong in the 3D layer and simply changing that produced a good result. 9 mm was slightly too wide-angle and 10 mm not quite enough, but the control is integer so I had to settle for 10 mm.
Often, the camera will be initialised in the wrong location relative to the floor and wall, and considerable fiddling around is required to correct that, especially when the focal length also needs adjusted.
..I'm also wondering if the 3D planes get generated differently depending on the order you draw your planes in VP? I mean, I remember from another post where you said you think the "ground" plane should be made first, but I'm also wondering if PS cares about which side of the plane is drawn first..?? I'm gonna do a test and see.
Here's a test doc I just did. 500x500 px. I made the floor plane starting with the top most point first, then built walls, and it made the 3D layer dang near perfect! I only needed to slightly adjust FOV only (using the camera scale tool this time).
Maybe all this seems a little too exhaustive for this function in PS, I might add, but one that if it's code is cracked, can really help others with the same issue.
Ok, so I ran the test, and it turns out that the drawing order simply doesn't matter. I think the problem in this particular case is that the points on wall planes within VP got moved around AFTER drawing the floor plane, which seemed to throw the entire thing off, thus causing PS to really mess up the whole generated 3D mesh. Here's some results from my test...
- The generated 3D "postcards" or planes from VP seem to stay true to perspective ONLY IF any torn off planes' end points are not moved, but only pushed or pulled in a horizontal or vertical fashion.
- If the VP planes extend out beyond the document bounds, then PS will "zoom in" on the generated 3D planes to compensate. The fix for this seems to be adjust the FOV setting only by using the scale camera tool, or typing in a new figure
- It's yet to be determined why PS will sometimes throw the generated 3D planes off to the side, or why the ground plane is at the top. My guess is the moving the points of the torn off planes error.
I wish the behaviour was as predictable as you found with your tests. I think you drew conclusions from far too small a sample.
Here is one where the VP planes are drawn completely inside the canvas and with no tweaking of corners.
The VP grids:
The generated 3D layer has the camera pointing 180 degrees the wrong way and displaced vertically and the focal length is wrong.
To correct it, I need to rotate the camera by 180 deg around its z-axis, move it 120 units along its z-axis then adjust the focal length from 77 mm to 75 mm. Further tweaking would improve it further
Oh my. May I ask about how long did it take you to fiddle with it until it lined up? Also, although my 500x500 doc test gave me my results, I also ran the same test on my bed doc and the results were the same. I deleted my 3D layer, went into VP and started over by drawing my ground plane first, then tore off the 2 walls, not moving their points around at all. The result was the same. Even though it placed the ground plane at the top again, all I had to do was adjust the FOV and it fit perfectly. I'm essentially saying screw PS's ground plane, hiding it, and if I want to import any models, then I'm using the floor as my ground plane. I realize however that the ground plane would be quite useful in other cases.
Now I'm wondering.. what happens if there's simply 1 "floor" plane made? Does PS screw that up too? I mean, there are times when I want to import a model into PS, but once again, since CS6's capabilities are limited, I don't like to merge it with my 3D layer, since I can't then delete it later if I don't like it (I must hide it instead). But if I could create a single plane in VP, then tell the imported model's camera to match that, then I could at least have shadows/reflections from the ground plane, but keep it as a separate layer.
Either 99 percent of Photoshop 3D is not tested before release, or it is tested to some degree and found to be buggy as heck but a decision is made to release it anyway and charge an extra $300 for the garbage. Much of the 3D features are not fit for a public beta, never mind a full release. Some of the 3D problems are, without any doubt, a result of sheer incompetence by at least one member of the Photoshop 3D development team. The actual ray-tracing render engine itself seems good (although excessively slow when considering that it has been restricted to one indirect light bounce), so I think Adobe purchased it or licence it from some other company, but the materials model is absolutely dreadful and ruins the potential of the software.
Oh my. May I ask about how long did it take you to fiddle with it until it lined up?
I was experimenting with multiple documents, simultaneously, but I guess less than a minute of the total time was devoted to correcting that particular example because the camera required a precise 180 degree rotation and movement along a single axis then a tweak of the focal length.
Now I'm wondering.. what happens if there's simply 1 "floor" plane made? Does PS screw that up too?
The focal length of the camera tends to be wrong but I haven't yet noticed any problem with misplacement of camera relative to a single plane, so an easy correction can be made there.