Interactive Graphics Exam for COMP9015 in Master of Science in Software Development, Exams of Computer Science

An examination paper for the interactive graphics module (comp9015) in the master of science in software development programme at cork institute of technology. Five questions covering various topics such as real-time rendering, affine transformations, scenegraph, projection types, shading, and shader programming. Intended for university students and is in the form of exam questions.

Typology: Exams

2012/2013

Uploaded on 03/24/2013

anandi
anandi 🇮🇳

4.5

(8)

61 documents

1 / 6

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Page 1 of 6
CORK INSTITUTE OF TECHNOLOGY
INSTITIÚID TEICNEOLAÍOCHTA CHORCAÍ
Semester 1 Examinations 2008/09
Module Title: Interactive Graphics
Module Code: COMP9015
School: Science
Programme Title: Master of Science in Software Development - Award
Programme Code: KSDEV_9_Y5
External Examiner(s): Dr. Bing Wu and Dr. James F. Power
Internal Examiner(s): Ms. Helen Fagan
Instructions: Answer 4 of 5
Duration: 2 hours
Sitting: Winter 2008
Requirements for this examination:
Note to Candidates: Please check the Programme Title and the Module Title to ensure that you have received the
correct examination paper.
If in doubt please contact an Invigilator.
pf3
pf4
pf5

Partial preview of the text

Download Interactive Graphics Exam for COMP9015 in Master of Science in Software Development and more Exams Computer Science in PDF only on Docsity!

CORK INSTITUTE OF TECHNOLOGY

INSTITIÚID TEICNEOLAÍOCHTA CHORCAÍ

Semester 1 Examinations 2008/

Module Title: Interactive Graphics

Module Code: COMP

School: Science

Programme Title: Master of Science in Software Development - Award

Programme Code: KSDEV_9_Y

External Examiner(s): Dr. Bing Wu and Dr. James F. Power Internal Examiner(s): Ms. Helen Fagan

Instructions: Answer 4 of 5

Duration: 2 hours

Sitting: Winter 2008

Requirements for this examination:

Note to Candidates: Please check the Programme Title and the Module Title to ensure that you have received the correct examination paper. If in doubt please contact an Invigilator.

Question 1

i) What is meant by the term Real Time Rendering? (3 marks) ii) Describe what is meant by each of the following terms: a) scan Conversion b) colour depth c) double buffering d) interlaced displays e) CIE Chromaticity Diagram (10 marks)

iii) What are the main properties associated with affine transformations. Why are they useful in computer graphics? (6 marks)

iv) Why are homogenous co-ordinates used to represent transformations in computer graphics? How is a 3D translation represented in the homogenous system? (6 marks)

Question 2

i) Describe a data structure that you would use as a node in a simple scenegraph. Explain the purpose of each of the elements in the data structure. (8 marks)

ii) Draw a scenegraph for a scene containing a lamp and a table. Number the nodes to show the order in which the scenegraph will be traversed. (7 marks)

iii) Outline the typical API you would find in a commercial scenegraph API and explain the advantages of using one. (10 marks)

Question 5

i) Explain what is meant by the fixed and non-fixed pipeline.

(9 marks)

ii) Outline how you would invoke a shader from an openGL program.

(8 marks)

iii) What is the minimum code required for

a) a vertex shader that replicates the fixed-pipeline functionality b) a pass-through fragment shader. Explain the inputs and outputs of each. (8 marks)

Shader Related Methods

char* readShaderSource(const char* shaderFile)

glCreateShader(int type);

void glShaderSource(GLuint shader, GLsizei count, const GLchar **string, const

Glint *length);

glCompileShader(GLunit vShader );

glCreateProgram();

glAttachShader(GLunit prgObject , GLunit vShader );

glUseProgram(GLunit prgObject);

glLinkProgram(GLunit prgObject);

GLUT Library Methods

void glutPostRedisplay(void);

void glutSwapBuffers(void);

void glutDisplayFunc(void (GLUTCALLBACK *func)(void));

void glutReshapeFunc(void (GLUTCALLBACK *func)(int width, int height));

void glutKeyboardFunc(void (GLUTCALLBACK *func)(unsigned char key, int x, int

y));

void glutTimerFunc(unsigned int millis, void (GLUTCALLBACK *func)(int value),

int value);

GL Library Methods

void glEnable( GLenum cap );

void glDisable( GLenum cap );

void glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha

void glClear( GLbitfield mask );

Transformation

void glMatrixMode( GLenum mode );

void glOrtho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, void

GLdouble near_val, GLdouble far_val );

void glViewport( GLint x, GLint y, GLsizei width, GLsizei height );

void glPushMatrix( void );

void glPopMatrix( void );

void glLoadIdentity( void );

void glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z );

void glScalef( GLfloat x, GLfloat y, GLfloat z );