3D Graphics and Virtual Reality

Practical exercise 1 - Example answers

Virtual reality systems

Answer 1. (5 marks)

Possible components are:

Answer 2. (6 marks)

One mark for each description of the four terms. Two extra marks awarded for explaining any interrelations.

Answer 3. (2 marks)

An immersive system involves completely immersing the user within the virtual environment and shielding from their real world surroundings. An augmented reality system overlays information upon the userís view of the real world, they are still fully aware of their real world surroundings.

Answer 4. (2 marks)

A fish tank VR system uses a standard monitor and LCD shutter glasses to create stereoscopic vision. This is coupled with a head tracking device which the system uses to change the viewing perspective (along a 2D plane) as the user moves their head. This gives a much greater sense of depth by providing motion parallax as a depth cue.

Answer 5. (6 marks)

Any three viable VR applications are acceptable. 1 mark for each application described. 1 mark for mentioning the advantages in each case.

Matrix multiplication

Answer 6. (1 mark)

=

Answer 7. (1 mark)

=

Answer 8. (1 mark)

= You cannot multiply these matrices.

Answer 9. (2 marks)

=

Answer 10. (2 marks)

= Ö.

Answer method 1

Answer method 2

Answer 11. (2 marks)

=

Note that the second matrix is an identity matrix - hence the resultant matrix is unchanged.

Answer 12. (1 mark)

=

2D Transformations

Answer 13. (6 marks)

Allocate one mark for each correct answer. The image above shows the original object.

Answer 13(a).
Translation (2, -3).

Answer 13(b).
Scaling (2.5, 0.5) about origin.

Answer 13(c).
Rotation by 45° clockwise about origin.

Answer 13(d).
Translation (-1, -1).

Answer 13(e).
Scaling (0.5, 2.0) about (-1, 1)

Answer 13(f).
Rotation by 90° anticlockwise about (-1, 1).

Answer 14. (7 Marks)

a) A scaling factor of (0.5, 1.5) performed centred on the origin.

You would use the transformation :

Filling in the correct values would give :

Multiplying this by the objectís vertices gives the following operation. Note that this operation has been done using a single matrix multiplication by creating a large matrix containing all of the objectís vertices.

The new position of the object would be :

b) A translation by (-2.0, 1.0).

You would use the transformation :

Filling in the correct values would give :

Multiplying this by the objectís vertices gives the following operation.

The new position of the object would be :

c) A rotation of 30° in a counter-clockwise direction, centred on the origin. Note: the convention used has positive rotation angles going counter-clockwise about the origin.

You would use the transformation :

Filling in the correct values would give :

Multiplying this by the objectís vertices gives the following operation.

The new position of the object would be :

Direction cosines

Answer 15. (6 marks)

The transformation matrices would be derived as :

a)

b)

c)

XYZ angles

Answer 16 (2 marks).

One possible solution is:

Answer 17. (2 marks)

One possible solution is :

Answer 18. (2 marks)

One possible solution is :

Compound transformations

Answer 19. (6 marks)

From Question 16 :

We are going the other way this time, so we must use the inverse transforms:

This equates to the following. Note that inverse transforms simply use the transpose of the transformation matrices.

Evaluating all sine and cosine terms :

Removing the identity matrix:

Multiplying this out gives our transformation matrix:

Now, applying it to the point (3, -2, 2) gives :

Face Sets

Answer 21. (8 marks)

The face list is as follows. Note that the order of faces is not important, though the order of vertices is. However, the order 4 1 0 is exactly the same as 1 0 4, or 0 4 1.

Face

Vertex list

Top front

4 0 1

Top left

4 1 2

Top back

4 2 3

Top right

4 3 0

Bottom front

5 1 0

Bottom left

5 2 1

Bottom back

5 3 2

Bottom right

5 0 3

Peter Young
University of Durham

peter.young@durham.ac.uk