Game Graphics & Real-time Rendering CMPM 163, S2019 Prof. Angus - - PowerPoint PPT Presentation

game graphics real time rendering
SMART_READER_LITE
LIVE PREVIEW

Game Graphics & Real-time Rendering CMPM 163, S2019 Prof. Angus - - PowerPoint PPT Presentation

Game Graphics & Real-time Rendering CMPM 163, S2019 Prof. Angus Forbes (instructor) angus@ucsc.edu Manu Thomas (TA) David Abramov (TA) mthomas6@ucsc.edu dabramov@ucsc.edu Website: creativecoding.soe.ucsc.edu/courses/cmpm163_s19 Slack:


slide-1
SLIDE 1

Game Graphics & Real-time Rendering

CMPM 163, S2019

  • Prof. Angus Forbes (instructor)

angus@ucsc.edu Manu Thomas (TA) David Abramov (TA) mthomas6@ucsc.edu dabramov@ucsc.edu Website: creativecoding.soe.ucsc.edu/courses/cmpm163_s19 Slack: https://ucsccmpm163.slack.com

slide-2
SLIDE 2

About Me

  • Assistant professor in UCSC’s Computational Media

department

  • Direct the Creative Coding lab
  • Teach courses on data visualization and computer graphics
  • Used to run Synaesthetic Software, a music education

software company

slide-3
SLIDE 3

Research Interests

Main areas:

  • Visualization & Visual Analytics
  • Computer Graphics
  • VR / AR
  • New Media Arts

Also:

  • Applied ML, Digital humanities, HCI, Network science,

Data sonification, etc.

slide-4
SLIDE 4

Recent Research Projects

  • Focus on novel ways to represent and analyze

dynamic, complex networks

  • Collaborate with scientists to design visualization

tools to make it easier to reason about their data

  • Enormous opportunity for creative, computational

researchers and artists to use graphics and “serious games” techniques to help make sense of big data

slide-5
SLIDE 5

IGM-Vis

slide-6
SLIDE 6

Dynamic Influence Networks

slide-7
SLIDE 7

NeuroCave

slide-8
SLIDE 8

Creative Research

  • New forms of representation and interaction
  • AR, VR, Deep Learning
  • Design thinking / Graphic design / Interactive

design

slide-9
SLIDE 9

Inviso

slide-10
SLIDE 10

Deep Illumination

slide-11
SLIDE 11

Computational Art

  • Using computational media to create interactive

artworks

  • Visualizing archives, cultural datasets
  • Algorithmic, generative graphics
slide-12
SLIDE 12

Fluid Automata

slide-13
SLIDE 13

Macondo

slide-14
SLIDE 14

Video Granular Synthesis

slide-15
SLIDE 15

Riverwalk

slide-16
SLIDE 16

What is this class about?

“This course introduces real-time hardware-accelerated graphics programming suitable for game development, visual effects, and interactive projects. Emphasis will be placed on shader programming and developing custom effects using the Unity game development platform, but we will also explore live coding environments and WebGL libraries. No textbook is required, instead we will read from recent journal articles and online publications, and also survey the use of visual effects in films, interactive media, VR experiences, and video games. Invited speakers from industry and academia will present contemporary graphics techniques and provide insight into real-world projects. In addition to quizzes and the completion of shorter assignments throughout the semester, students will be responsible for a project that involves the creation, demonstration, and documentation of a real-time graphics technique.”

slide-17
SLIDE 17

What is this class about?

Programming Real-time Graphics

  • We will gain experience writing shaders to create visual effects

for video games and interactive projects

  • We will focus on Unity to start with, but shaders are used

throughout graphics programming, including in the Unreal game engine, WebGL libraries, and live coding platforms, etc.

Exploring Visual Effects

  • We will use our knowledge of these shader programs, we’re

going to explore a range of visual effects that are used in games, interactive media arts projects, VR experiences, etc.

slide-18
SLIDE 18

What is this class about?

Visual effects techniques

  • Lights & shadows
  • Reflection and refraction for mirrored and transparent materials
  • Noise functions and particle systems for simulating naturalistic

behaviors of explosions, fluids, clouds

  • Procedurally generated textures, etc.
  • Lasers, lens flares, god rays

When to use visual effects?

  • We will learn to analyze visual effects to understand how they were

created, and also to get a sense of when and why they are effective

  • You’ll also be asked to join a team to investigate and implement

your own visual effects technique

slide-19
SLIDE 19

How does this differ from CMPS 160?

Less emphasis on mathematic fundamentals

  • You can’t get away from needing some math, but I won’t be

testing you on your linear algebra or matrix operations — Except as they are used to produce visual effects. Survey of visual effects

  • This course is meant to both be a survey of visual effects used in

interactive projects, and also a bootcamp to learn shader programming. No reason why you can’t take both courses

  • You can definitely take both courses to learn more about graphics,

and if you are interested in becoming a game developer, then you encouraged to do so.

slide-20
SLIDE 20

What will you learn?

By the end of this course:

  • You will have a good understanding of how graphics are

rendered to a display in real-time

  • You will have insight into some of the popular visual

effects that are found in contemporary video games

  • You will have the ability to implement these visual effects

and to customize them or to create your own

slide-21
SLIDE 21

How will you learn?

Homework (30%) Three homework packets will give you an opportunity to practice using shaders to create or customize visual effects. Quizzes (20%) A handful of quizzes will test your knowledge of shader programming concepts Group project (50%) A larger project that will ask you to create your own visual effect or emulate an effect used in a game or media arts project

slide-22
SLIDE 22

Lectures & Labs

  • Lab attendance is mandatory!!!
  • Because this amounts an extra time burden on you, I

plan to use some of the lecture slots: a) to feature guest speakers, and b) to give you time to work on your final group project.

  • Bring laptop to lectures and labs.
slide-23
SLIDE 23

Guest speakers

We’ll invite experts from the game industry, experts who work on graphics software and hardware, and media artists to discuss topics in computer graphics.

slide-24
SLIDE 24

Class information

Class website:

https://creativecoding.soe.ucsc.edu/courses/cmpm163_s19

Slack is the main form of class communication:

https://ucsccmpm163.slack.com

slide-25
SLIDE 25

Questions – Write down answers

  • What was a game you played or video you saw that

had interesting visual effects?

  • What was interesting about it?
  • Was it a realistic effect, or a creative effect?
  • How did it effect the mood or narrative?
  • How do you think it was created?
slide-26
SLIDE 26

Questions – Talk to neighbor(s)

Introduce yourself:

  • What’s your name?
  • Why are you interested in Game Graphics?
  • Have you done any graphics programming before?
  • What software packages and programming

languages are you most familiar with?

  • Have you used Unity?
  • Give your neighbors an overview of your answers to

the questions about visual effects

slide-27
SLIDE 27

For Thursday

Download and explore Unity:

  • Make sure you download and test Unity on your laptop or a lab

computer: https://unity3d.com/get-unity/download (the stable version is “2018.3”, and we are using the “personal” version). Unity should work on any recent laptop or desktop, but runs better with a fast GPU.

  • Follow the introductory tutorials at:

https://unity3d.com/learn/beginner-tutorials

  • Get familiar with the Unity Manual:

https://docs.unity3d.com/Manual/index.html

slide-28
SLIDE 28

Questions?

slide-29
SLIDE 29

Game Graphics & Real-time Rendering

CMPM 163, S2019

  • Prof. Angus Forbes (instructor)

angus@ucsc.edu Manu Thomas (TA) David Abramov (TA) mthomas6@ucsc.edu dabramov@ucsc.edu Website: creativecoding.soe.ucsc.edu/courses/cmpm163_s19 Slack: https://ucsccmpm163.slack.com