Hi!

At first, sorry about my English, if there are any mistakes - it’s not my native)

And now the problem: I’m trying to cope with Clipping in OpenGL. To tell the truth, it’s my first meeting with OpenGL… I have an object and one clipping plane. And I need to control this plane, so that the user could move it, rotate etc. But I can’t understand how should plane’s co-ordinates change. I tried something, but it doesn’t work. So how do the coordinates of the plane change? Really need to know it as soon as possible… I’m very grateful, Michael.

Clip plane is basically a vector defining it’s direction and one value describing it’s offset.

Imagine a vector starting at (0, 0, 0) and pointing up (0, 1, 0) - I assumed +Y is up.

If you assume that this vector always start in (0, 0, 0) then you need only 3 values to define it. A vector pointing up defines a ground plance because if you look at it from where this vector points to, you’ll be looking straight at this plane.

Now, we want this plane to pass through other point than (0, 0, 0). Note that it makes no sense to move ground plane it other direction than +/-Y.

So, you need just one value which describes this offset.

So, plane is defined by a vector, and a value which defines how far you need to move from point (0, 0, 0) in direction pointed by this vector to hit this plane.

If you prefer to have plane defined as point and vector, then this wil probably bbe of use to you:

Your plane:

origin=(xo, yo, zo), direction = (xd, yd, zd)

OpenGL plane made from your plane:

(xd, yd, zd, xo * xd + yo * yd + zo * zd)

Bardzo dziekuje, jestem ci bardzo wdzieczny!