Question about perspective
2d
Coco Dleite
Hello, Perspective beginner here, I have been experimenting with 2 points perspective recently and I have found a problem that I can't solve
How can I move a cube horizontally (X-axis) in the same position without changing its distance from the viewer? I have tried with many different methods and I still struggle with it
In one point perspective is pretty easy to keep the same height and width, but when I try the same method in two point perspective it doesn't work
Do anyone know how to do it accurately?
*In the cubes (the one I got from a app) Image is a example of what I mean,
Both cube are in the distance from the viewer but different positions and they have the same height and width
Christopher is right, if you move the cube horizontally on the x-axis it will get further away from the viewer (or closer if it's moving towards the center). I think I know what you mean anyways, the cube stays on the same picture plane that is perpendicular to the viewer. So if you are standing on the 10 yard line on a football field and the cube is on the 20 yard line, it moves left or right on the 20 yard line.
Either way to get it accurate you can use a plan projection (learned this in Marshall's perspective course, he explains it better and in much more detail... highly recommended).
First part is you set up the top view of your scene (see image 1):
1. put a line for the picture plane
2. put the object touching the picture plane
3. put the viewer relative to the object
4. figure out the vanishing points for the object. Take the angles of the planes of the objects sides, transpose those over to where the viewer is. Where those angles intersect with the picture plane are you vanishing points for that object.
5. get the reference points for the width of the cube. Straight line from the cube corners to the viewer, mark where those lines intersect the picture plane.
Now you are ready to use these points in your 3D view. Drop all the lines down to your frame (viewer will be in the middle of the frame (see image 2).
1. Pick your horizon line
2. choose where the object will sit relative to the horizon (above / below)
3. choose the height for the object
4. use the vanishing points and the width points to finish the cube
Go back to the top view, slide your object along the x-axis and repeat the steps. When you get to the 3D view use the same height as the first cube (see image 3).
If you think of the position of your eye / the viewer as a center, then things that are equally distant from you (say, 3m away) cannot be arranged in a straight line, they must be arranged on a circle. This is just basic geometry because a circle is defined as a set of points equally distant from a center point, so any objects equally distant from you would fall along a circle with you at the center.
So if you want to move an object in your field of view and keep its apparent distance from you constant, you have to shift it as if it were traveling in an arc with you at the center, rather than sliding it along a straight line. I believe this would be true in 1-point perspective as well - if you shift along a horizontal line the object should be getting farther away even if its apparent front-face size looks the same due to the limited perspective system.
I think one way to do this would be to draw an ellipse (as circle in perspective that conforms to your perspective system and which would place you at its center), which passes through the object, and then move the object along the ellipse. If you don't want to also rotate it (e.g. if it's a building and you want its sides to stay parallel to other builings), you would need to have its edges and vanishing points adapt to the perspective grid as you shift it.
I am curious if others have other methods of approaching this as well.