Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Similar documents
CHAPTER 1 Graphics Systems and Models 3

Course Title: Computer Graphics Course no: CSC209

CS 130 Final. Fall 2015

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

Models and Architectures

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Pipeline Operations. CS 4620 Lecture 14

For each question, indicate whether the statement is true or false by circling T or F, respectively.

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Computer Graphics. Instructor: Oren Kapah. Office Hours: T.B.A.

Institutionen för systemteknik

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

THE AUSTRALIAN NATIONAL UNIVERSITY Final Examinations(Semester 2) COMP4610/COMP6461 (Computer Graphics) Final Exam

Introduction to Computer Graphics with WebGL

Models and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Computer Graphics I Lecture 11

How do we draw a picture?

Topics and things to know about them:

Surface Graphics. 200 polys 1,000 polys 15,000 polys. an empty foot. - a mesh of spline patches:

Pipeline Operations. CS 4620 Lecture 10

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping

CS 464 Review. Review of Computer Graphics for Final Exam

QUESTION BANK 10CS65 : COMPUTER GRAPHICS AND VISUALIZATION

Shaders (some slides taken from David M. course)

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

Graphics and Interaction Rendering pipeline & object modelling

CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.

Shadows. Prof. George Wolberg Dept. of Computer Science City College of New York

3D Rasterization II COS 426

TSBK03 Screen-Space Ambient Occlusion

Interpolation using scanline algorithm

3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination

The University of Calgary

Computer Graphics: Programming, Problem Solving, and Visual Communication

CEng 477 Introduction to Computer Graphics Fall 2007

End-Term Examination

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK

Advanced 3D Game Programming with DirectX* 10.0

Orthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015

Graphics for VEs. Ruth Aylett

CS 130 Exam I. Fall 2015

Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

Graphics for VEs. Ruth Aylett

6.837 Introduction to Computer Graphics Quiz 2 Thursday November 20, :40-4pm One hand-written sheet of notes allowed

AMCS / CS 247 Scientific Visualization Lecture 10: (GPU) Texture Mapping. Markus Hadwiger, KAUST

Introduction Rasterization Z-buffering Shading. Graphics 2012/2013, 4th quarter. Lecture 09: graphics pipeline (rasterization and shading)

OUTLINE. Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation.

- Rasterization. Geometry. Scan Conversion. Rasterization

C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev

CS GAME PROGRAMMING Question bank

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

CSE 167: Introduction to Computer Graphics Lecture #6: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2014

CSE 690: GPGPU. Lecture 2: Understanding the Fabric - Intro to Graphics. Klaus Mueller Stony Brook University Computer Science Department

9. Illumination and Shading

Computer Graphics Coursework 1

Objectives. Introduce the OpenGL shading Methods 1) Light and material functions on MV.js 2) per vertex vs per fragment shading 3) Where to carry out

Advanced Lighting Techniques Due: Monday November 2 at 10pm

Computer Graphics I. Midterm Examination. October 23, This is a closed-book exam; only one double-sided sheet of notes is permitted.

ECS 175 COMPUTER GRAPHICS. Ken Joy.! Winter 2014

Lahore University of Management Sciences. CS 452 Computer Graphics

[175 points] The purpose of this assignment is to give you practice with shaders in OpenGL.

Z- Buffer Store the depth for each pixel on the screen and compare stored value with depth of new pixel being drawn.

Computer Graphics Introduction. Taku Komura

CS451Real-time Rendering Pipeline

Homework #2. Shading, Ray Tracing, and Texture Mapping

Illumination and Shading

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Rasterizing triangles

CSE Intro to Computer Graphics. ANSWER KEY: Midterm Examination. November 18, Instructor: Sam Buss, UC San Diego

Graphics Pipeline. CS535 Fall Daniel G. Aliaga Department of Computer Science Purdue University

Rasterization Overview

3D Graphics and OpenGl. First Steps

CS559 Computer Graphics Fall 2015

CSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015

CSE 167: Lecture #8: GLSL. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Direct Rendering of Trimmed NURBS Surfaces

CS 4620 Program 3: Pipeline

Problem Max. Points Total 80

Homework #2 and #3 Due Friday, October 12 th and Friday, October 19 th

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Computergrafik. Matthias Zwicker. Herbst 2010

Illumination and Shading

Real-Time Rendering (Echtzeitgraphik) Michael Wimmer

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail

Notes on Computer Graphics and OpenGL. Thomas Strathmann

CS 130 Exam I. Fall 2015

CMSC427 Final Practice v2 Fall 2017

COMPUTER GRAPHICS, MULTIMEDIA AND ANIMATION, Second Edition (with CD-ROM) Malay K. Pakhira

The Viewing Pipeline Coordinate Systems

CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK


Exercise Max. Points Total 90

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves

Transcription:

UNIVERSITY OF EAST ANGLIA School of Computing Sciences Main Series PG Examination 2013-14 COMPUTER GAMES DEVELOPMENT CMPSME27 Time allowed: 2 hours Answer any THREE questions. (40 marks each) Notes are not permitted in this examination. Do not turn over until you are told to do so by the invigilator. CMPSME27 Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Page 2 1. (a) Describe the steps for drawing a triangle in OpenGL version 3.0 using a vertex buffer object. Each vertex of the triangle should have a colour defined but the triangle should not be textured. Exact OpenGL commands are not required. (b) The OpenGL Shading Language (GLSL) brings some key advantages to the graphics programmer. Briefly describe the rendering pipeline and the places where the graphics programmer can use their GLSL programs. (8 marks) (c) Describe what is meant by the following terms: i. World space ii. Eye space iii. Clip space (d) Assume we are drawing a triangle with a different colour for each vertex and we would like the colours to be linearly interpolated across the face of the triangle. Describe, with the aid of diagrams how Gouraud shading is calculated to achieve this. (10 marks) (e) We would now like to light the triangle with per-pixel lighting. Describe how to calculate the diffuse and specular components of the Phong Illumination model. (10 marks)

Page 3 2. Assume you are a games programmer creating a virtual environment for a game. The renderer you are creating must be able to display textured triangles forming the models of the environment which can be lit with perpixel lighting effects. (a) The following piece of code is used to define the geometry for the flat ground plane of the environment. verts[0] = -dim; verts[ 1] = -dim; verts[ 2] = 0; verts[3] = -dim; verts[ 4] = dim; verts[ 5] = 0; verts[6] = dim; verts[ 7] = dim; verts[ 8] = 0; verts[9] = dim; verts[10] = -dim; verts[11] = 0; texcoords[0] = A; texcoords[1] = E; texcoords[2] = B; texcoords[3] = F; texcoords[4] = C; texcoords[5] = G; texcoords[6] = D; texcoords[7] = H; Assuming you would like to map the texture to the quad such that it repeats twice in the -axis and three times in the -axis describe what values you would use for A, B, C, D, E, F, G and H? (b) Mapping 2D textures to 3D objects is more complex than traditional 2D texturing. Describe, with the aid of diagrams, the two-part mapping approach to texture mapping. (12 marks) (c) Describe how bilinear and nearest-neighbour filtering work and the effect they have on the quality of textured geometry being rendered. (d) To prepare geometry for lighting calculations we need to calculate vertex normals for our 3D objects. Describe how to calculate per-vertex normals and detail any assumptions you are making. (e) We would now like to shine a spot light at the ground plane. Describe how you would calculate the illumination in the fragment shader using per-pixel lighting. (12 Marks) PLEASE TURN OVER

Page 4 3. (a) What is the difference between object space and image space hidden surface removal algorithms? (b) Explain how coherence helps many hidden surface removal algorithms. (3 marks) (c) Describe the operation of the Z-buffer algorithm. (d) Describe with aid of a diagram the active edge list algorithm. (9 marks) (e) How does spatial partitioning help hidden surface removal? Give three methods of partitioning and illustrate with diagrams. (8 marks) (f) (i) (ii) What is the fundamental property of BSP trees as used in hidden surface removal? Build the BSP tree for the following 2D representation. (The letter is on the front side of the polygon).

Page 5 4. (a) Describe the 3D transformations required to rotate an object around an axis parallel to one of the co-ordinate axis. (There is no need to specify the matrix details). (b) Use suitable diagrams to explain perspective projection and derive the homogeneous matrix which provides a perspective projection in 3D graphics. (9 marks) (c) What is an orthogonal projection? (3 marks) (d) What are the requirements for 3D curves as used in computer graphics and computer-aided design? (e) Explain why parametric cubic curves are used by designers using Computer Graphics and give the general mathematical representation of these curves. (f) What are the differences between Hermite, Bezier and B-Spline curve representations? END OF PAPER