EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 1 of 9 Page 1 of 9
SEMESTER 2 EXAMINATIONS 2020/2021
MODULE: EE497 - 3D Interface Technologies
PROGRAMME(S):
MECE MEng Electronic & Computer Engineering
ECE BEng Electronic & Computer Engineering
ECSAO Study Abroad (Engineering & Computing)
ECSA Study Abroad (Engineering & Computing)
YEAR OF STUDY: 4,C
STUDENT: Wenxin Yang
EXAMINER(S): Dr Robert Sadleir (Internal) (Ext:8592)
Prof. Roberto Verdone (External) External
Dr Josep R. Casas (External) External
TIME ALLOWED: 3 Hours and 40 Minutes
INSTRUCTIONS: Answer all four questions.
Please also read the information on the following page before
commencing the exam.
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 2 of 9 Page 2 of 9
Additional instructions specific to the EE497 examination:
? Submissions must be uploaded in doc, docx, odt or pdf format.
? Make sure to show all of your calculations in your answer document. It is
acceptable to include scans of handwritten calculations.
? Any material copied directly from the notes or from any other source will be
considered as plagiarism. So make sure that all of your answers are written in
your own words.
? All answer text must be typed. Handwritten answers will not be accepted.
? In the case of figures, you will be permitted to include photos of hand drawn
figures as well as figures created electronically.
? A scientific calculator may be used when doing this exam.
? All of your answer text and any associated figures must be submitted in a
single document (this requirement will be strictly enforced by loopexam).
? It is strongly recommended that you upload drafts of your submission as you
go.
? There will be four question on the EE497 exam paper and you must answer
all four questions.
? If for some reason you are unable to submit your answers using loopexam
then you should submit them by email instead (to Robert.Sadleir@dcu.ie).
Note that any emailed submissions will ultimately be uploaded to loopexam
and will subject to the normal plagiarism checks.
? You should give yourself a sufficient amount of time at the end of the exam to
upload your work (or email it if you are unable to submit via loopexam).
Submissions will not be accepted after the exam submission deadline has
passed.
? Documents submitted to loop exam must be less than 250 MB in size.
? Any exam related announcements that I need to make will be sent to your
student email account, so make sure to keep an eye on this over the course
of the exam.
? If you have any queries regarding the content of the exam, contact the module
coordinator (email: Robert.Sadleir@dcu.ie, phone: +353 1 700 8592) and if
you have any problems using loopexam, contact the DCU exam support
centre (email: examsupport@dcu.ie, phone: +353 1 700 6151)
Permitted materials: Students will only be permitted to access the module course
materials and their own supplemental notes when doing this exam.
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 3 of 9 Page 3 of 9
QUESTION 1 (of 4) [TOTAL MARKS: 25]
Q 1(a) [5 Marks]
What is meant by the term interpolation? Compare and contrast the following two-
dimensional interpolation techniques: bilinear and bicubic. Suggest how these
interpolation techniques could be extended into three dimensions.
Q 1(b) [12 Marks]
Describe the steps required to create the star geometry illustrated in Figure 1.1
based on the following parameters: inner circle radius (ri), outer circle radius (ro) and
number of triangles (t). Your description should assume that back face culling will be
used and that the star is centred at (0, 0, 0). Note that the entire shape is located in
the xy-plane and that the dashed elements do not form part of the geometry.
Figure 1.1: A star geometry represented by an inner circle radius (ri),
an outer circle radius (ro) and a number of triangles (t).
Q 1(c) [8 Marks]
What are texture coordinates used for in 3D computer graphics? How would you
generate texture coordinates for the geometry from Part (b)? Note that the dashed
box is used to indicate the relationship between the geometry and the associated
texture image.
[End of Question 1]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 4 of 9 Page 4 of 9
QUESTION 2 (of 4) [TOTAL MARKS: 25]
Q 2(a) [5 Marks]
Describe in your own words the operation of the Phong reflection model with
reference to all of its configurable parameters. In the case of the ambient reflection
component, what colour would be perceived at a particular vertex if the ambient light
colour was (0.70, 0.39, 0.57) and the ambient colour of the vertex was (0.34, 0.46,
0.55)?
Q 2(b) [10 Marks]
Describe the operation of the WebGL vertex and fragment shaders with specific
reference to all of the relevant inputs and outputs. How would the vertex and
fragment shaders in Listings 2.1 and 2.2 render the gl.LINE_STRIP geometry
described in Table 2.1? Use a diagram to support your answer.
Listing 2.1: An example
vertex shader.
Listing 2.2: An example
fragment shader.
Vertex
coordinates
Vertex colours
(RGBA)
v0 (1.0, 0.0, 0.0) (0.0, 1.0, 0.0, 1.0)
v1 (0.0, 1.0, 0.0) (0.0, 0.0, 1.0, 1.0)
v2 (-1.0, 0.0, 0.0) (1.0, 0.0, 0.0, 1.0)
v3 (-2.0, 1.0, 0.0) (1.0, 0.0, 0.0, 1.0)
Table 2.1: Vertex information for a simple
gl.LINE_STRIP geometry.
Q 2(c) [4 Marks]
What is the purpose of a LOD scene graph node? Use an example scene graph
containing a LOD node to support your answer.
[Question 2 continued overleaf…]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 5 of 9 Page 5 of 9
Q 2(d) [6 Marks]
Compare and contrast the approaches to animation used in X3D and OSG.JS with
reference to the code samples provided below. Your answer should include scene
graph diagrams and make specific reference to the rates of rotation and axes of
rotation.
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
keyValue="0 1 0 0 0 1 0 3.14 0 1 0 6.28">
toField="set_fraction">
toField="rotation">
Listing 2.1: A sample program demonstrating animation in X3D.
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
class SimpleUpdateCallback {
constructor() {
this.rateOfRotationRadsPerSecond = 0.5 * Math.PI;
}
update(node, nodeVisitor) {
let currentTimeSeconds = nodeVisitor.getFrameStamp().getSimulationTime();
let matrix = node.getMatrix();
let angle = currentTimeSeconds * this.rateOfRotationRadsPerSecond;
osg.Matrix.makeRotate(angle, 0.0, 1.0, 0.0, matrix);
return true;
}
}
function createScene() {
var root = new osg.Node();
var matrixTransform = new osg.MatrixTransform();
var size = 7;
var cube = osg.createTexturedBoxGeometry(0,0,0, size,size,size);
matrixTransform.addChild(cube);
var material = new osg.Material();
cube.getOrCreateStateSet().setAttributeAndModes(material);
var updateCallback = new SimpleUpdateCallback();
matrixTransform.addUpdateCallback(updateCallback);
root.addChild(matrixTransform);
return root;
}
Listing 2.2: A sample program demonstrating animation in OSG.JS.
[End of Question 2]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 6 of 9 Page 6 of 9
QUESTION 3 (of 4) [TOTAL MARKS: 25]
Q 3(a) [5 Marks]
Explain how homogenous coordinates can be used to differentiate between 3D
points and 3D vectors. Provide sample translations (using the equation below) to
support your answer.
Q 3(b) [6 Marks]
In what situations is it advantageous to use indexed geometry? How would you
define the prism structure in Figure 3.1 using indexed geometry? Make sure to
include the base and top fo the structure.
Vertex Coordinates
v0 (-1, -1, 1)
v1 (1, -1, 1)
v2 (0, -1, -1)
v3 (-1, 1, 1)
v4 (1, 1, 1)
v5 (0, 1, -1)
Figure 3.1: A prism structure and its vertex coordinates.
[Question 3 continued overleaf…]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 7 of 9 Page 7 of 9
Q 3(c) [8 Marks]
What are degenerate triangles? Why is it beneficial to use degenerate triangles in
conjunction with triangle strip geometry? Explain, with the aid of diagrams, how
degenerate triangles might be used in conjunction with the triangle strip geometry
segments illustrated in Figure 3.2?
Figure 3.2: Two separate triangle strip geometry segments.
Q 3(d) [6 Marks]
Describe in detail, and in your own words, the operation of the following stages from
the WebGL rendering pipeline:
? Rasterization
? Depth Buffer Test
? Vertex Shader
[End of Question 3]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 8 of 9 Page 8 of 9
QUESTION 4 (of 4) [TOTAL MARKS: 25]
Q 4(a) [6 Marks]
Compare and contrast transparent voxel rendering and 2D texture mapping based
volume rendering. Your answer should highlight all of the key aspects associated
with each approach as well as their benefits and drawbacks.
Q 4(b) [10 Marks]
Outline the operation of the shear-warp approach to volume rendering with reference
to the equation below and Figure 4.1. You should calculate the value of the shaded
view plane pixel as part of your description.
Figure 4.1 A 2D representation of the
volume rendering process
Q 4(c) [5 Marks]
Describe the operation of the lookup table generation stage of the standard marching
cubes algorithm. Use a numerical example to support your answer.
[Question 4 continued overleaf…]
EE497 – 3D Interface Technologies
Semester 2 Examinations 2020/2021 Page 9 of 9 Page 9 of 9
Q 4(d) [4 Marks]
What surface patches would the standard marching cubes algorithm generate for the
voxel configuration illustrated in Figure 4.1 if the iso-surface threshold was -190 HU.
Explain how the order of the triangle edges relates to the nature of the data being
visualised.
Figure 4.2: A cubic region consisting of eight voxels.
[End of Question 4]
[END OF EXAM]
keyValue="0 1 0 0 0 1 0 3.14 0 1 0 6.28">
toField="set_fraction">
toField="rotation">
学霸联盟