OBD:PLEA: Difference between revisions

527 bytes added ,  20 February 2007
m
inequation
(duh)
m (inequation)
Line 55: Line 55:
:It is possible, however, that the definition used is different, e.g. : a * x + b * y + c * z = d .
:It is possible, however, that the definition used is different, e.g. : a * x + b * y + c * z = d .
::In that case, the first package of the above example defines the plane (0 * x + 0 * y + 1 * z = 612), i.e., the vertical plane z = 612.
::In that case, the first package of the above example defines the plane (0 * x + 0 * y + 1 * z = 612), i.e., the vertical plane z = 612.
;Front/back
:The 4 numbers (a, b, c, d) can also serve to define whether a 3D point (x, y, z) is on the "front" side of the plane or in the "back".
::"points are in front of the plane if a * x + b * y + c * z >= d" (from commented Myth source)
:That would mean the plane equation is a * x + b * y + c * z = d , ''not'' a * x + b * y + c * z + d = 0 .
::It's rather easy to check (just flip the "normal" of the plane equation for a known axis-aligned quad).
:The oriented "plane inequation" can be used for: culling; collision.


----
----
{{OBD_File_Footer|align=center|type=PLEA|prev=OTLF|next=PNTA|name=Plane Equation Array|family=Level|onistuff=plea}}
{{OBD_File_Footer|align=center|type=PLEA|prev=OTLF|next=PNTA|name=Plane Equation Array|family=Level|onistuff=plea}}