VIRTUAL REALITY
3D COMPUTER GRAPHICS
Bharat P. Patil
M.Sc. C.S. Part II
64
`
Introduction
• 3 D computer Graphics is a large and complex
subject.
• 3D computer graphics (in contrast to 2D
computer graphics) are graphics that use a
three-dimensional representation of geometric
data (often Cartesian) that is stored in the
computer for the purposes of performing
calculations and rendering 2D images. Such
images may be stored for viewing later or
displayed in real-time.
`
The Virtual World Space
`
• The Cartesian system employs the set of 3D axes
where each axis is a orthogonal to the other two.
• The above figure illustrates a scheme where a
right handed set of axes is used to locate uniquely
any point P with Cartesian co-ordinates (x, y, z).
• The right hand system requires that when using
ones right hand, the outstretched thumb , first and
the middle fingers align with x, y, z axes
respectively.
The Virtual World Space (contd..)
`
Positioning the Virtual Observer
• The VO always has a specific location within
the VE and will gaze along some line of sight.
• The VO has two eyes which, ideally, receive two
different views of the environment to create a
3D stereoscopic image.
• To achieve this two perspective views, a
standard computer graphic procedure is used
to re-compute the VE’s co-ordinate geometry
relative to the VO’s FOR.
`
Positioning the Virtual Observer
(contd…)
`
• The procedure used depends upon y]the
method employed to define the VO’s FOR
within the VE which may involve the use of
direction cosine, XYZ fixed angles, XYZ Euler
angles or Quaternions.
Positioning the Virtual Observer (contd..)
`
Direction Cosines
• A unit 3D vector has three axial components
which are also equal to the cosines of angle
formed between the vector and 3 axes.
• These angles are known as direction cosines
and can be computed by taking dot product of
the vector and the axial unit vectors.
• These direction cosines enable any point P (x,
y, z) in one FOR to be transformed into P’ (x’, y’,
z’) in another FOR as follows:
`
Direction Cosines (contd…)
`
Direction Cosines (contd…)
`
Direction Cosines (contd…)
`
• r11, r12,r13 are the direction cosines of
secondary x-axis.
• r21, r22,r23 are the direction cosines of
secondary y-axis.
• r31, r32,r33 are the direction cosines of
secondary z-axis.
Direction Cosines (contd…)
`
XYZ Fixed Angles
• The orientation involves the use of 3 separate
rotations about a fixed FOR – these angles are
frequently referred to as Yaw, Pitch, Roll.
• The roll, pitch, yaw angles can be defined as
follows: Roll is the angle of rotation about the
Z-axis, Pitch is the angle of rotation about the
X-axis and Yaw is the angle of rotation about
the Y-axis.
`
Rotate through an angle Roll about the
Z-axis
`
Rotate through an angle Pitch about the
X-axis
`
Rotate through an angle Yaw about the
Y-axis
`
XYZ Euler Angles
• XYZ fixed angles are relative to fixed FOR while
XYZ Euler angles are relative to the local
rotating FOR.
• E.g.: A FOR is subjected to a pitch rotation and
then a yaw rotation relative to the rotating
FOR.
• Fig. shows the FOR are mutually aligned.
`
XYZ Euler Angles (contd…)
`
XYZ Euler Angles (contd…)
`
XYZ Euler Angles (contd…)
`
XYZ Euler Angles (contd…)
• Without developing the matrices for roll, pitch,
yaw and translate again, we can state that if a
VO is located in the VE using XYZ Euler angles,
then any point (x, y, z) in the VE is equivalent
to (x’, y’, z’) for the VO given the following –
`
XYZ Euler Angles (contd…)
• This too can be represented by the single
homogenous matrix operation:
`
XYZ Euler Angles (contd…)
• Where,
• T11 = cos yaw cos roll – sin yaw sin pitch sin roll
• T12 = cos yaw sin roll + sin yaw sin pitch cos roll
• T13 = -sin yaw cos pitch
• T14 = -(tx T11+ ty T12 + tz T13 )
• T21 = -cos pitch sin roll
• T22 = cos pitch cos roll
• T23 = sin pitch
• T24 = -(tx T21+ ty T22 + tz T23)
`
XYZ Euler Angles (contd…)
• T31 = sin yaw cos roll + cos yaw sin pitch sin roll
• T32 = sin yaw sin roll – cos yaw sin pitch cos roll
• T33 = cos yaw cos pitch
• T34 = - (tx T31+ ty T32 + tz T33 )
• T41 = 0
• T42 = 0
• T43 = 0
• T44 = 1
`
Quaternions
• It represents the rotation about an arbitrary
axis.
• We use 4D rotation and hence termed as
Quaternion. It is used to define the orientation
of the VO relative to the VE FOR.
• A quaternion ‘q’ is a quadruple of the real nos.
and defined as:
q = [s, v]
Where, s  Scalar
v vector
`
Quaternions (contd…)
• q = [s + xi + yj + zk]
• Here s, x, y and z are the real nos. and i, j and k
represents the unit vector in x, y and z
direction respectively.
• The two quaternions are equal if and only if
their corresponding terms are equal.
• q1 = [s1, v1] q2 = [s2, v2]
• q1 = [s1 + x1i + y1j + z1k]
• q2 = [s2 + x2i + y2j + z2k]
`
Quaternions (contd…)
q1 q2 = [(S1S2 - V1V2), S1V2 + S2V1 + V1 X V2]
`
Perspective projection
`
• Projection plane located at the xy plane.
• The plane is used to capture Perspective
projection of objects located within the VO’s
field of view.
• Any given line its intersection point with the
projection plane identifies the corresponding
position of the point in a Perspective
projection .
Perspective projection (contd…)
`
Back –face removal
• Clipping is relatively computational expensive
process any way the number of polygons to be
clipped must be investigated and back face
removal is one such technique.
• Using the relative orientation of the polygon with
the observer, polygons divided into two classes
visible and bon-visible.
• As the back-face removal strategy remove those
polygon , the VE user will effectively see through
the object.
• If this effect is not required , interiors of object
will require modeling.
`
Back –face removal (contd…)
`
Back –face removal (contd…)
• From the above equation if cosƟ is positive
then the surface is visible. If the VO is in such a
position that all surface normals are pointing
away from him then, the back-face removal
technique removes this polygon so that the
observer can view through the object
`
• Unless we allow for light to be reflected from
one surface to another , there is a very good
chance that some surface will not receive any
illumination at all.
• Consequently , when this surface are rendered,
they will appear black and unnatural.
• In anticipation of this happening , illumination
schema allow the existence of some level of
background light level called the ambient light.
Ambient light
`

Virtual reality

  • 1.
    VIRTUAL REALITY 3D COMPUTERGRAPHICS Bharat P. Patil M.Sc. C.S. Part II 64
  • 2.
    ` Introduction • 3 Dcomputer Graphics is a large and complex subject. • 3D computer graphics (in contrast to 2D computer graphics) are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for the purposes of performing calculations and rendering 2D images. Such images may be stored for viewing later or displayed in real-time.
  • 3.
  • 4.
    ` • The Cartesiansystem employs the set of 3D axes where each axis is a orthogonal to the other two. • The above figure illustrates a scheme where a right handed set of axes is used to locate uniquely any point P with Cartesian co-ordinates (x, y, z). • The right hand system requires that when using ones right hand, the outstretched thumb , first and the middle fingers align with x, y, z axes respectively. The Virtual World Space (contd..)
  • 5.
    ` Positioning the VirtualObserver • The VO always has a specific location within the VE and will gaze along some line of sight. • The VO has two eyes which, ideally, receive two different views of the environment to create a 3D stereoscopic image. • To achieve this two perspective views, a standard computer graphic procedure is used to re-compute the VE’s co-ordinate geometry relative to the VO’s FOR.
  • 6.
    ` Positioning the VirtualObserver (contd…)
  • 7.
    ` • The procedureused depends upon y]the method employed to define the VO’s FOR within the VE which may involve the use of direction cosine, XYZ fixed angles, XYZ Euler angles or Quaternions. Positioning the Virtual Observer (contd..)
  • 8.
    ` Direction Cosines • Aunit 3D vector has three axial components which are also equal to the cosines of angle formed between the vector and 3 axes. • These angles are known as direction cosines and can be computed by taking dot product of the vector and the axial unit vectors. • These direction cosines enable any point P (x, y, z) in one FOR to be transformed into P’ (x’, y’, z’) in another FOR as follows:
  • 9.
  • 10.
  • 11.
  • 12.
    ` • r11, r12,r13are the direction cosines of secondary x-axis. • r21, r22,r23 are the direction cosines of secondary y-axis. • r31, r32,r33 are the direction cosines of secondary z-axis. Direction Cosines (contd…)
  • 13.
    ` XYZ Fixed Angles •The orientation involves the use of 3 separate rotations about a fixed FOR – these angles are frequently referred to as Yaw, Pitch, Roll. • The roll, pitch, yaw angles can be defined as follows: Roll is the angle of rotation about the Z-axis, Pitch is the angle of rotation about the X-axis and Yaw is the angle of rotation about the Y-axis.
  • 14.
    ` Rotate through anangle Roll about the Z-axis
  • 15.
    ` Rotate through anangle Pitch about the X-axis
  • 16.
    ` Rotate through anangle Yaw about the Y-axis
  • 17.
    ` XYZ Euler Angles •XYZ fixed angles are relative to fixed FOR while XYZ Euler angles are relative to the local rotating FOR. • E.g.: A FOR is subjected to a pitch rotation and then a yaw rotation relative to the rotating FOR. • Fig. shows the FOR are mutually aligned.
  • 18.
  • 19.
  • 20.
  • 21.
    ` XYZ Euler Angles(contd…) • Without developing the matrices for roll, pitch, yaw and translate again, we can state that if a VO is located in the VE using XYZ Euler angles, then any point (x, y, z) in the VE is equivalent to (x’, y’, z’) for the VO given the following –
  • 22.
    ` XYZ Euler Angles(contd…) • This too can be represented by the single homogenous matrix operation:
  • 23.
    ` XYZ Euler Angles(contd…) • Where, • T11 = cos yaw cos roll – sin yaw sin pitch sin roll • T12 = cos yaw sin roll + sin yaw sin pitch cos roll • T13 = -sin yaw cos pitch • T14 = -(tx T11+ ty T12 + tz T13 ) • T21 = -cos pitch sin roll • T22 = cos pitch cos roll • T23 = sin pitch • T24 = -(tx T21+ ty T22 + tz T23)
  • 24.
    ` XYZ Euler Angles(contd…) • T31 = sin yaw cos roll + cos yaw sin pitch sin roll • T32 = sin yaw sin roll – cos yaw sin pitch cos roll • T33 = cos yaw cos pitch • T34 = - (tx T31+ ty T32 + tz T33 ) • T41 = 0 • T42 = 0 • T43 = 0 • T44 = 1
  • 25.
    ` Quaternions • It representsthe rotation about an arbitrary axis. • We use 4D rotation and hence termed as Quaternion. It is used to define the orientation of the VO relative to the VE FOR. • A quaternion ‘q’ is a quadruple of the real nos. and defined as: q = [s, v] Where, s  Scalar v vector
  • 26.
    ` Quaternions (contd…) • q= [s + xi + yj + zk] • Here s, x, y and z are the real nos. and i, j and k represents the unit vector in x, y and z direction respectively. • The two quaternions are equal if and only if their corresponding terms are equal. • q1 = [s1, v1] q2 = [s2, v2] • q1 = [s1 + x1i + y1j + z1k] • q2 = [s2 + x2i + y2j + z2k]
  • 27.
    ` Quaternions (contd…) q1 q2= [(S1S2 - V1V2), S1V2 + S2V1 + V1 X V2]
  • 28.
  • 29.
    ` • Projection planelocated at the xy plane. • The plane is used to capture Perspective projection of objects located within the VO’s field of view. • Any given line its intersection point with the projection plane identifies the corresponding position of the point in a Perspective projection . Perspective projection (contd…)
  • 30.
    ` Back –face removal •Clipping is relatively computational expensive process any way the number of polygons to be clipped must be investigated and back face removal is one such technique. • Using the relative orientation of the polygon with the observer, polygons divided into two classes visible and bon-visible. • As the back-face removal strategy remove those polygon , the VE user will effectively see through the object. • If this effect is not required , interiors of object will require modeling.
  • 31.
  • 32.
    ` Back –face removal(contd…) • From the above equation if cosƟ is positive then the surface is visible. If the VO is in such a position that all surface normals are pointing away from him then, the back-face removal technique removes this polygon so that the observer can view through the object
  • 33.
    ` • Unless weallow for light to be reflected from one surface to another , there is a very good chance that some surface will not receive any illumination at all. • Consequently , when this surface are rendered, they will appear black and unnatural. • In anticipation of this happening , illumination schema allow the existence of some level of background light level called the ambient light. Ambient light
  • 34.