SlideShare a Scribd company logo
1 of 29
SER332
Introduction to Graphics and
Game Development
Lecture 26:
Final Review
Javier Gonzalez-Sanchez
javiergs@asu.edu
PERALTA 230U
Office Hours: By appointment
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 1
Disclaimer
These slides provide examples of common questions
They are NOT comprehensive
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 2
Viewports
• Divide the screen in two vertical view ports
• Or, add a second viewport to show the score of a
game
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 3
OpenGL
• Write a short programming segment that draws the
triangle fan shown below.
• You do not have to worry about setting projections,
opening windows, setting the camera,
transformations, …. Just the code to draw the
triangle fan. Make sure triangles are in
counterclockwise order
(0,1)
(-3,3)
(-1,5)
(1,4)
(3,2)
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 4
OpenGL
glLoadIdentiy();
glTranslatef(10, 0, 0);
glRotatef(45, 0, 0, 1);
// draw a square from 0,0 to 10,10.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 5
Vector Programming
• Given the arrays
vec3f vertices[NUM_VERTICES]; // float
vec3i indices[NUM_TRIANGLES]; // integer
• Write a procedure that returns the per-vertex
normal vector for a vertex with number index
vec3 computeVertexNormal(int index) {
}
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 6
Vector Programming
• Given the arrays
vec3f vertices[NUM_VERTICES]; // float
vec3i indices[NUM_TRIANGLES]; // integer
• Write a procedure that returns the per-face normal
vector for a face with number index
vec3 computeFaceNormal(int index) {
}
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 7
Mesh Data Structure
Define a mesh data structure able to store:
• vertex/faces,
• normals per face, and
• texture coordinates.
You worked with one like this in your project 4.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 8
Mesh Data Structure
• Store values in the mesh data structure to define a
right-angled triangle at coordinates [0, 0, 0]. Legs
are aligned to axis X and Y, respectively. Its length is
50.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 9
Textures
• Given the BMP image shown below. Store values in
the mesh data structure to apply a texture to the
triangle defined above and make it looks like shown
in the second image below
BMP file Model
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 10
Textures
Create a display list for a cylinder using triangles with a
texture as done in the previous question.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 11
Materials
• Write the code to create a triangle that has the
highest emissive values. It should be the brightest
object in any scenario.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 12
Materials
• Write the code to create a triangle and apply
Emerald material
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 13
Materials
a) Is the shininess value for chrome greater than or
lower than rubber? __________________
b) Are the diffuse constants for pearls greater than or
lower than plastic (black)? __________
c) Are the specular constants for metals greater than
or lower than pearl? ________________
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 14
Procedural Textures
Which of the next equations is useful for (a) clouds, (b) marble, (c) fire
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 15
Navigation (Assignment 4)
• Make the camera move autonomously from point
A to point B. Given that the method scenario()
return a display list with the four buildings described
below. Buildings are 100x100x100 units
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 16
Display List
Create a display list for: spaceship, ufo, asteroid
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 17
Animation
• Move the spaceship using the keyboard
• Move asteroids randomly
• Move ufo around the screen
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 18
OpenGL
• What does OpenGL stand for?
• What does GLU stand for?
• What does GLUT stand for?
• Give three OpenGL commands as example?
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 19
Hardware
Define the following terms:
• refresh rate,
• resolution,
• frame buffer,
• pixel,
• aspect ratio,
• depth of the frame buffer
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 20
Lines
• Give an example of a line equation?
• Give a line equation for the line l1. The line l1
contains the points (5,5) and (15,10).
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 21
Linear Algebra
• Given three vertices of a triangle (v1, v2, v3), how
can you compute the normal vector for v2?
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 22
Coordinate Systems
• What is a right handed coordinate system?
• What is a left handed coordinate system?
• What is the difference between a right handed and
a left handed coordinate system?
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 23
Fonts
• Give one advantage and one disadvantage of a
bitmap font.
• Give one advantage and one disadvantage of an
outline font.
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 24
Frame Buffer
1) How many bits does a frame buffer need for:
o 1024 x 768 resolution
o RGB values and alpha values and 8 bit z- buffer
2) How many bytes does a frame buffer need for:
o 1000 x 1000 resolution
o RGBA values
o Double buffering
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 25
OpenGL
• Write the glut command to request a display mode
that has: double buffering and RGBA color values.
• Write the glut command to request a display mode
that has: single buffering and RGB color values
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 26
Projection
• Camera Point (3,4,5)
• Look at Point (6,3,2)
• “up” vector (0,1,0)
Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 27
Matrix
• Add
• Subtract
• Dot Product
• Cross Product
• Multiply
SER332 Introduction to Graphics
Javier Gonzalez-Sanchez
javiergs@asu.edu
Spring 2017
Disclaimer. These slides can only be used as study material for the class SER332 at ASU. They cannot be distributed or used for another purpose.

More Related Content

What's hot

[論文読み]Interpretable Coun.ng for Visual Ques.on Answering
[論文読み]Interpretable Coun.ng for Visual Ques.on Answering[論文読み]Interpretable Coun.ng for Visual Ques.on Answering
[論文読み]Interpretable Coun.ng for Visual Ques.on Answeringhirono kawashima
 
Parallel Algorithm for Graph Coloring
Parallel Algorithm for Graph Coloring Parallel Algorithm for Graph Coloring
Parallel Algorithm for Graph Coloring Heman Pathak
 
31. solving quadratic cas_touchpad
31. solving quadratic cas_touchpad31. solving quadratic cas_touchpad
31. solving quadratic cas_touchpadMedia4math
 
11. constructing an angle touchpad
11. constructing an angle touchpad11. constructing an angle touchpad
11. constructing an angle touchpadMedia4math
 
Texture mapping
Texture mapping Texture mapping
Texture mapping wahab13
 
Population predictor
Population predictorPopulation predictor
Population predictormisskopp
 
Akshay Sharma , BCA Third Year
Akshay Sharma , BCA Third YearAkshay Sharma , BCA Third Year
Akshay Sharma , BCA Third YearDezyneecole
 
Continuously Adaptive Mean Shift(CAMSHIFT)
Continuously Adaptive Mean Shift(CAMSHIFT)Continuously Adaptive Mean Shift(CAMSHIFT)
Continuously Adaptive Mean Shift(CAMSHIFT)Hansol Kang
 
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALS
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALSMATHS ACTIVITY ON MULTIPLICATION OF DECIMALS
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALSLeenu Kapoor
 
Digital Differential Analyzer Line Drawing Algorithm in C
Digital Differential Analyzer Line Drawing Algorithm in CDigital Differential Analyzer Line Drawing Algorithm in C
Digital Differential Analyzer Line Drawing Algorithm in CKasun Ranga Wijeweera
 

What's hot (18)

[論文読み]Interpretable Coun.ng for Visual Ques.on Answering
[論文読み]Interpretable Coun.ng for Visual Ques.on Answering[論文読み]Interpretable Coun.ng for Visual Ques.on Answering
[論文読み]Interpretable Coun.ng for Visual Ques.on Answering
 
Parallel Algorithm for Graph Coloring
Parallel Algorithm for Graph Coloring Parallel Algorithm for Graph Coloring
Parallel Algorithm for Graph Coloring
 
31. solving quadratic cas_touchpad
31. solving quadratic cas_touchpad31. solving quadratic cas_touchpad
31. solving quadratic cas_touchpad
 
Function equations
Function equationsFunction equations
Function equations
 
201801 CSE240 Lecture 19
201801 CSE240 Lecture 19201801 CSE240 Lecture 19
201801 CSE240 Lecture 19
 
Texture Mapping
Texture MappingTexture Mapping
Texture Mapping
 
Bresenham Line Drawing Algorithm
Bresenham Line Drawing AlgorithmBresenham Line Drawing Algorithm
Bresenham Line Drawing Algorithm
 
11. constructing an angle touchpad
11. constructing an angle touchpad11. constructing an angle touchpad
11. constructing an angle touchpad
 
Texture mapping
Texture mapping Texture mapping
Texture mapping
 
Population predictor
Population predictorPopulation predictor
Population predictor
 
cvpr_15_poster_1200dpi
cvpr_15_poster_1200dpicvpr_15_poster_1200dpi
cvpr_15_poster_1200dpi
 
Akshay Sharma , BCA Third Year
Akshay Sharma , BCA Third YearAkshay Sharma , BCA Third Year
Akshay Sharma , BCA Third Year
 
Continuously Adaptive Mean Shift(CAMSHIFT)
Continuously Adaptive Mean Shift(CAMSHIFT)Continuously Adaptive Mean Shift(CAMSHIFT)
Continuously Adaptive Mean Shift(CAMSHIFT)
 
Oblique drawing
Oblique drawingOblique drawing
Oblique drawing
 
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALS
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALSMATHS ACTIVITY ON MULTIPLICATION OF DECIMALS
MATHS ACTIVITY ON MULTIPLICATION OF DECIMALS
 
Pre-Cal 40S March 9, 2009
Pre-Cal 40S March 9, 2009Pre-Cal 40S March 9, 2009
Pre-Cal 40S March 9, 2009
 
Digital Differential Analyzer Line Drawing Algorithm in C
Digital Differential Analyzer Line Drawing Algorithm in CDigital Differential Analyzer Line Drawing Algorithm in C
Digital Differential Analyzer Line Drawing Algorithm in C
 
Math Homework
Math Homework Math Homework
Math Homework
 

Similar to 201707 SER332 Lecture 26

Computer Graphics
Computer GraphicsComputer Graphics
Computer GraphicsAdri Jovin
 
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...JinTaek Seo
 
GSP 215 Enhance teaching/tutorialrank.com
 GSP 215 Enhance teaching/tutorialrank.com GSP 215 Enhance teaching/tutorialrank.com
GSP 215 Enhance teaching/tutorialrank.comjonhson300
 
GSP 215 Inspiring Innovation/tutorialrank.com
GSP 215 Inspiring Innovation/tutorialrank.comGSP 215 Inspiring Innovation/tutorialrank.com
GSP 215 Inspiring Innovation/tutorialrank.comjonhson129
 
GSP 215 Effective Communication - tutorialrank.com
GSP 215  Effective Communication - tutorialrank.comGSP 215  Effective Communication - tutorialrank.com
GSP 215 Effective Communication - tutorialrank.comBartholomew35
 
Overview of graphics systems
Overview of  graphics systemsOverview of  graphics systems
Overview of graphics systemsJay Nagar
 
OpenGL ES on Android
OpenGL ES on AndroidOpenGL ES on Android
OpenGL ES on AndroidChris Farrell
 
Overview of graphics systems.ppt
Overview of graphics systems.pptOverview of graphics systems.ppt
Overview of graphics systems.pptMalleshBettadapura1
 
Dissecting the Rendering of The Surge
Dissecting the Rendering of The SurgeDissecting the Rendering of The Surge
Dissecting the Rendering of The SurgePhilip Hammer
 

Similar to 201707 SER332 Lecture 26 (20)

201707 SER332 Lecture 12
201707 SER332 Lecture 12   201707 SER332 Lecture 12
201707 SER332 Lecture 12
 
201801 SER332 Lecture 02
201801 SER332 Lecture 02201801 SER332 Lecture 02
201801 SER332 Lecture 02
 
201707 SER332 Lecture 05
201707 SER332 Lecture 05   201707 SER332 Lecture 05
201707 SER332 Lecture 05
 
D044051622
D044051622D044051622
D044051622
 
201707 SER332 Lecture 07
201707 SER332 Lecture 07   201707 SER332 Lecture 07
201707 SER332 Lecture 07
 
201801 SER332 Lecture 03
201801 SER332 Lecture 03201801 SER332 Lecture 03
201801 SER332 Lecture 03
 
201801 CSE240 Lecture 16
201801 CSE240 Lecture 16201801 CSE240 Lecture 16
201801 CSE240 Lecture 16
 
201707 SER332 Lecture10
201707 SER332 Lecture10   201707 SER332 Lecture10
201707 SER332 Lecture10
 
201707 SER332 Lecture 13
201707 SER332 Lecture 13   201707 SER332 Lecture 13
201707 SER332 Lecture 13
 
201707 SER332 Lecture 14
201707 SER332 Lecture 14   201707 SER332 Lecture 14
201707 SER332 Lecture 14
 
Computer Graphics
Computer GraphicsComputer Graphics
Computer Graphics
 
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
Beginning direct3d gameprogramming01_thehistoryofdirect3dgraphics_20160407_ji...
 
GSP 215 Enhance teaching/tutorialrank.com
 GSP 215 Enhance teaching/tutorialrank.com GSP 215 Enhance teaching/tutorialrank.com
GSP 215 Enhance teaching/tutorialrank.com
 
GSP 215 Inspiring Innovation/tutorialrank.com
GSP 215 Inspiring Innovation/tutorialrank.comGSP 215 Inspiring Innovation/tutorialrank.com
GSP 215 Inspiring Innovation/tutorialrank.com
 
GSP 215 Effective Communication - tutorialrank.com
GSP 215  Effective Communication - tutorialrank.comGSP 215  Effective Communication - tutorialrank.com
GSP 215 Effective Communication - tutorialrank.com
 
Overview of graphics systems
Overview of  graphics systemsOverview of  graphics systems
Overview of graphics systems
 
OpenGL ES on Android
OpenGL ES on AndroidOpenGL ES on Android
OpenGL ES on Android
 
Overview of graphics systems.ppt
Overview of graphics systems.pptOverview of graphics systems.ppt
Overview of graphics systems.ppt
 
Dissecting the Rendering of The Surge
Dissecting the Rendering of The SurgeDissecting the Rendering of The Surge
Dissecting the Rendering of The Surge
 
201707 SER332 Lecture18
201707 SER332 Lecture18201707 SER332 Lecture18
201707 SER332 Lecture18
 

More from Javier Gonzalez-Sanchez (20)

201804 SER332 Lecture 01
201804 SER332 Lecture 01201804 SER332 Lecture 01
201804 SER332 Lecture 01
 
201801 SER332 Lecture 04
201801 SER332 Lecture 04201801 SER332 Lecture 04
201801 SER332 Lecture 04
 
201801 CSE240 Lecture 26
201801 CSE240 Lecture 26201801 CSE240 Lecture 26
201801 CSE240 Lecture 26
 
201801 CSE240 Lecture 25
201801 CSE240 Lecture 25201801 CSE240 Lecture 25
201801 CSE240 Lecture 25
 
201801 CSE240 Lecture 24
201801 CSE240 Lecture 24201801 CSE240 Lecture 24
201801 CSE240 Lecture 24
 
201801 CSE240 Lecture 23
201801 CSE240 Lecture 23201801 CSE240 Lecture 23
201801 CSE240 Lecture 23
 
201801 CSE240 Lecture 22
201801 CSE240 Lecture 22201801 CSE240 Lecture 22
201801 CSE240 Lecture 22
 
201801 CSE240 Lecture 21
201801 CSE240 Lecture 21201801 CSE240 Lecture 21
201801 CSE240 Lecture 21
 
201801 CSE240 Lecture 20
201801 CSE240 Lecture 20201801 CSE240 Lecture 20
201801 CSE240 Lecture 20
 
201801 CSE240 Lecture 18
201801 CSE240 Lecture 18201801 CSE240 Lecture 18
201801 CSE240 Lecture 18
 
201801 CSE240 Lecture 17
201801 CSE240 Lecture 17201801 CSE240 Lecture 17
201801 CSE240 Lecture 17
 
201801 CSE240 Lecture 15
201801 CSE240 Lecture 15201801 CSE240 Lecture 15
201801 CSE240 Lecture 15
 
201801 CSE240 Lecture 14
201801 CSE240 Lecture 14201801 CSE240 Lecture 14
201801 CSE240 Lecture 14
 
201801 CSE240 Lecture 13
201801 CSE240 Lecture 13201801 CSE240 Lecture 13
201801 CSE240 Lecture 13
 
201801 CSE240 Lecture 12
201801 CSE240 Lecture 12201801 CSE240 Lecture 12
201801 CSE240 Lecture 12
 
201801 CSE240 Lecture 11
201801 CSE240 Lecture 11201801 CSE240 Lecture 11
201801 CSE240 Lecture 11
 
201801 CSE240 Lecture 10
201801 CSE240 Lecture 10201801 CSE240 Lecture 10
201801 CSE240 Lecture 10
 
201801 CSE240 Lecture 09
201801 CSE240 Lecture 09201801 CSE240 Lecture 09
201801 CSE240 Lecture 09
 
201801 CSE240 Lecture 08
201801 CSE240 Lecture 08201801 CSE240 Lecture 08
201801 CSE240 Lecture 08
 
201801 CSE240 Lecture 07
201801 CSE240 Lecture 07201801 CSE240 Lecture 07
201801 CSE240 Lecture 07
 

Recently uploaded

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

201707 SER332 Lecture 26

  • 1. SER332 Introduction to Graphics and Game Development Lecture 26: Final Review Javier Gonzalez-Sanchez javiergs@asu.edu PERALTA 230U Office Hours: By appointment
  • 2. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 1 Disclaimer These slides provide examples of common questions They are NOT comprehensive
  • 3. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 2 Viewports • Divide the screen in two vertical view ports • Or, add a second viewport to show the score of a game
  • 4. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 3 OpenGL • Write a short programming segment that draws the triangle fan shown below. • You do not have to worry about setting projections, opening windows, setting the camera, transformations, …. Just the code to draw the triangle fan. Make sure triangles are in counterclockwise order (0,1) (-3,3) (-1,5) (1,4) (3,2)
  • 5. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 4 OpenGL glLoadIdentiy(); glTranslatef(10, 0, 0); glRotatef(45, 0, 0, 1); // draw a square from 0,0 to 10,10.
  • 6. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 5 Vector Programming • Given the arrays vec3f vertices[NUM_VERTICES]; // float vec3i indices[NUM_TRIANGLES]; // integer • Write a procedure that returns the per-vertex normal vector for a vertex with number index vec3 computeVertexNormal(int index) { }
  • 7. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 6 Vector Programming • Given the arrays vec3f vertices[NUM_VERTICES]; // float vec3i indices[NUM_TRIANGLES]; // integer • Write a procedure that returns the per-face normal vector for a face with number index vec3 computeFaceNormal(int index) { }
  • 8. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 7 Mesh Data Structure Define a mesh data structure able to store: • vertex/faces, • normals per face, and • texture coordinates. You worked with one like this in your project 4.
  • 9. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 8 Mesh Data Structure • Store values in the mesh data structure to define a right-angled triangle at coordinates [0, 0, 0]. Legs are aligned to axis X and Y, respectively. Its length is 50.
  • 10. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 9 Textures • Given the BMP image shown below. Store values in the mesh data structure to apply a texture to the triangle defined above and make it looks like shown in the second image below BMP file Model
  • 11. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 10 Textures Create a display list for a cylinder using triangles with a texture as done in the previous question.
  • 12. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 11 Materials • Write the code to create a triangle that has the highest emissive values. It should be the brightest object in any scenario.
  • 13. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 12 Materials • Write the code to create a triangle and apply Emerald material
  • 14. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 13 Materials a) Is the shininess value for chrome greater than or lower than rubber? __________________ b) Are the diffuse constants for pearls greater than or lower than plastic (black)? __________ c) Are the specular constants for metals greater than or lower than pearl? ________________
  • 15. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 14 Procedural Textures Which of the next equations is useful for (a) clouds, (b) marble, (c) fire
  • 16. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 15 Navigation (Assignment 4) • Make the camera move autonomously from point A to point B. Given that the method scenario() return a display list with the four buildings described below. Buildings are 100x100x100 units
  • 17. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 16 Display List Create a display list for: spaceship, ufo, asteroid
  • 18. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 17 Animation • Move the spaceship using the keyboard • Move asteroids randomly • Move ufo around the screen
  • 19. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 18 OpenGL • What does OpenGL stand for? • What does GLU stand for? • What does GLUT stand for? • Give three OpenGL commands as example?
  • 20. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 19 Hardware Define the following terms: • refresh rate, • resolution, • frame buffer, • pixel, • aspect ratio, • depth of the frame buffer
  • 21. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 20 Lines • Give an example of a line equation? • Give a line equation for the line l1. The line l1 contains the points (5,5) and (15,10).
  • 22. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 21 Linear Algebra • Given three vertices of a triangle (v1, v2, v3), how can you compute the normal vector for v2?
  • 23. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 22 Coordinate Systems • What is a right handed coordinate system? • What is a left handed coordinate system? • What is the difference between a right handed and a left handed coordinate system?
  • 24. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 23 Fonts • Give one advantage and one disadvantage of a bitmap font. • Give one advantage and one disadvantage of an outline font.
  • 25. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 24 Frame Buffer 1) How many bits does a frame buffer need for: o 1024 x 768 resolution o RGB values and alpha values and 8 bit z- buffer 2) How many bytes does a frame buffer need for: o 1000 x 1000 resolution o RGBA values o Double buffering
  • 26. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 25 OpenGL • Write the glut command to request a display mode that has: double buffering and RGBA color values. • Write the glut command to request a display mode that has: single buffering and RGB color values
  • 27. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 26 Projection • Camera Point (3,4,5) • Look at Point (6,3,2) • “up” vector (0,1,0)
  • 28. Javier Gonzalez-Sanchez | SER332 | Spring 2017 | 27 Matrix • Add • Subtract • Dot Product • Cross Product • Multiply
  • 29. SER332 Introduction to Graphics Javier Gonzalez-Sanchez javiergs@asu.edu Spring 2017 Disclaimer. These slides can only be used as study material for the class SER332 at ASU. They cannot be distributed or used for another purpose.