I'm an Android developer but a beginner of OpenGL. I'm confused by the view frustum. There are two questions:
I'm not proficient in English, hope you can understand my questions ..Any help will be appreciated!
No, they're different concepts and an image plane isn't needed in OpenGL.
Near and far planes exist as a result of using a projection matrix to define the camera's projection. They're quite important when you get into the depth buffer and numerical accuracy. The image is the result of rendering, obviously. The image plane however only exists in real world cameras where light is projected through a pinhole or lens and onto the thing recording the image. In computer graphics it's not really necessary to model it unless you're doing crazy non-thin lens effects. I imagine it like this:

Again, the parts circled "imaginary" don't have any purpose in OpenGL and rasterization. They're necessary for a real camera, but artificially computing an image can take some shortcuts. Firstly, the projection matrix is used to project geometry into image space, keeping depth values. Image space is pretty separate to the concept of the image plane. We don't tend to think of the position and size of the sensor or film in a camera when looking at a photo. The geometry's then rasterized, producing fragments (packets of data for pixels). The depth buffer is used to keep only the front-most, visible, fragments. This is just based on depth comparisons. In one sense a pixel isn't a surface on an explicit image plane, but represents a cut out portion of the viewing volume.
The wiki page for homogeneous coordinates discusses the mapping of points onto the plane z = 1, though arguing this is the depth of the image plane doesn't seem to serve any purpose.
There's a bunch of literature about camera models out there, but I don't know which I should point out. If others do, please comment/edit! Perhaps start with the red book? http://www.glprogramming.com/red/chapter03.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With