Intro to Graphics 01 - Introduction

Cem Yuksel
30 Jan 202122:00

Summary

TLDRIn this introductory lecture for a computer graphics course, instructor Januxil sets the stage for the semester, highlighting the interactive nature of Zoom lectures and the supplementary YouTube live streams. The lecture focuses on the foundational pillars of computer graphics: modeling, rendering, and animation. Januxil emphasizes the course's aim to provide a broad overview of these topics, with an emphasis on algorithms and data structures rather than specific tools. The course will also touch on related fields like VR, AR, and computational photography. Projects will be conducted using JavaScript and WebGL, promoting platform independence and easy showcasing of student work.

Takeaways

  • 👨‍🏫 The instructor's name is Januxil, and this is an introductory course to computer graphics.
  • 🖥️ The course will be interactive, with lectures available on Zoom and live-streamed on YouTube for quality assurance.
  • 📈 Januxil is redesigning the course, so the content might differ from previous years, focusing on computer science aspects.
  • 🎨 The three pillars of computer graphics are modeling, rendering, and animation, which will be the main focus of the course.
  • 🤖 The course will not cover specific tools but will concentrate on the underlying math, algorithms, and data structures.
  • 🌐 Computer graphics is a broad field with applications in entertainment, simulations, medical imaging, and more.
  • 📚 The textbook by Steve Marschner and Pete Shirley is recommended but not required, as the course will provide additional insights.
  • 💻 Students will work on seven projects using JavaScript and WebGL, emphasizing platform independence and ease of showcasing work.
  • 🛠️ JavaScript is chosen for its wide usage, ease of learning, and the ability to create interactive computer graphics directly in the browser.
  • ⏰ The next lecture will cover math background, with some content from Chapter 2 of the textbook, though not exhaustively.

Q & A

  • Who is the instructor for the 'Introduction to Computer Graphics' course?

    -The instructor for the 'Introduction to Computer Graphics' course is Januxil.

  • What are the three pillars of computer graphics mentioned in the lecture?

    -The three pillars of computer graphics mentioned are modeling, rendering, and animation.

  • What does the instructor plan to focus on regarding the modeling aspect of computer graphics?

    -The instructor plans to focus on the math, algorithms, and data structures of modeling, rather than the tools for using specific software.

  • How does the instructor plan to handle the live streaming of the lectures?

    -The instructor is live streaming the lectures on YouTube as an alternative to Zoom for those who might experience quality issues.

  • What is the instructor's approach to teaching this course for the first time?

    -The instructor is redesigning the course content rather than relying on existing materials, which may lead to adjustments in the course structure as the semester progresses.

  • What are some of the additional areas of computer graphics discussed in the lecture?

    -Additional areas of computer graphics discussed include virtual reality, augmented reality, visualization, image processing, computational photography, 3D scanning, and fabrication.

  • What are some applications of computer graphics outside of entertainment mentioned in the script?

    -Applications of computer graphics outside of entertainment include computer-aided design, medical imaging, and data visualization.

  • Why is JavaScript chosen as the programming language for the course projects?

    -JavaScript is chosen for the course projects because it is platform-independent, works on any browser, and allows for easy showcasing of work through web pages.

  • What is the recommended textbook for the course, and is it required?

    -The recommended textbook is by Steve Marschner and Pete Shirley, but it is not required. The instructor had discussions with the authors and recommends it for its clarity and depth.

  • How does the instructor suggest students should engage with the course material?

    -The instructor suggests attending lectures live, asking questions, and then referring to the textbook for related chapters to enhance understanding.

  • What is the instructor's plan for the Thursday lecture?

    -The instructor plans to cover some math background on Thursday, which is related to Chapter 2 of the textbook, but will only cover a part of it, with the rest being discussed as relevant to other topics.

Outlines

00:00

👨‍🏫 Introduction to the Course

The instructor, Januxil, welcomes students to the introductory course on computer graphics. He discusses the structure of the course, which includes a light lecture followed by a Q&A session. Januxil mentions that the course will be interactive and will be streamed on Zoom and YouTube to accommodate any quality issues. He explains that this is his first time teaching the course, which he has redesigned, and there may be adjustments throughout the semester as he refines the content. The lecture focuses on the three pillars of computer graphics: modeling, rendering, and animation. Modeling involves creating visual representations, rendering is the process of generating images from model data, and animation encompasses moving and deforming objects. The course will concentrate on the mathematical, algorithmic, and data structure aspects rather than the use of specific tools.

05:02

🎨 The Broader Scope of Computer Graphics

The lecture expands on the three pillars of computer graphics and introduces additional areas such as user interaction, virtual and augmented reality, visualization, image processing, computational photography, 3D scanning, and fabrication. These areas, while related to computer graphics, are not the primary focus of the course. The instructor emphasizes the wide range of applications for computer graphics, particularly in entertainment like video games, special effects, feature animation, and cartoons. The discussion also touches on non-entertainment applications such as computer-aided design, manufacturing, simulations, medical imaging, and data visualization, highlighting the pervasive influence of computer graphics in various industries.

10:05

📚 Course Structure and Textbook

Januxil outlines the course structure, emphasizing the importance of understanding the algorithms and data structures behind computer graphics. The course aims to provide a broad overview of the field, covering the basics of modeling, rendering, and animation. The instructor introduces the textbook, 'The Ray Traced Rose,' by Steve Marschner and Peter Shirley, which is recommended but not required. The book is praised for its clarity and depth, and the instructor suggests using it in conjunction with the lectures. The course will not cover every detail in the book but will highlight relevant chapters. The instructor also discusses the seven projects that students will undertake, which will be created using JavaScript and WebGL, chosen for their platform independence and ease of showcasing work.

15:06

🛠️ Programming Language and Tools

The instructor clarifies that the course will not use C++, which is commonly associated with computer graphics, but will instead use JavaScript and WebGL. This decision is made to ensure platform independence and to allow students to easily demonstrate their work. The instructor expresses his preference for JavaScript due to its ubiquity and the availability of good debugging tools, particularly in Chrome. He assures students that JavaScript is approachable and will facilitate the learning process by not being overly complex. The use of HTML for the user interface is also mentioned, which will simplify the development of projects. The lecture concludes with a reminder about the upcoming Thursday session, which will cover mathematical background, and the instructor encourages students to read the relevant chapter in the textbook, noting that the lecture will cover only a portion of the material.

20:07

🔚 Conclusion and Upcoming Sessions

In the final paragraph, the instructor thanks the students for attending and provides a brief overview of the next session, which will delve into mathematical foundations relevant to computer graphics. He acknowledges that the textbook's second chapter covers more extensive mathematical topics than what will be discussed in the upcoming lecture. The instructor plans to cover additional mathematical concepts as they become pertinent to the course material. The lecture concludes with a farewell, expressing anticipation for the next session and gratitude for the students' participation.

Mindmap

Keywords

💡Computer Graphics

Computer Graphics is a field that focuses on the creation and manipulation of images using computers. It involves the use of algorithms and mathematical models to represent shapes, colors, and textures in digital form. In the video, the instructor emphasizes that computer graphics is a broad field with various applications, including video games, special effects, and medical imaging. The course aims to provide an introduction to this field, covering the basics of its three core areas: modeling, rendering, and animation.

💡Modeling

Modeling in computer graphics refers to the process of creating a virtual representation of objects, whether 2D or 3D. It involves generating the data that will be used for computer visualization and manipulation. The instructor clarifies that the course will focus on the mathematical and algorithmic aspects of modeling rather than the use of specific tools. Modeling is one of the three pillars of computer graphics discussed in the video.

💡Rendering

Rendering is the process of generating images from model data. It transforms the 3D model data into a 2D image that can be viewed on a screen. The instructor mentions that rendering involves a variety of techniques and will cover the main concepts in the course, although not delving into every detail. Rendering is crucial for creating the final visual output in computer graphics.

💡Animation

Animation in computer graphics involves creating the illusion of motion and change over time. It can include moving or deforming objects within a scene. The video mentions that animation will be discussed in the course, exploring different methods of generating animated content. Animation is one of the core areas of computer graphics that adds dynamism to static models.

💡Virtual Reality (VR)

Virtual Reality is a technology that immerses users in a completely artificial environment, separate from the real world. The instructor explains the difference between VR and augmented reality, noting that VR involves a total disconnection from actual reality. VR is mentioned as an application of computer graphics, highlighting its role in creating immersive experiences.

💡Augmented Reality (AR)

Augmented Reality is a technology that overlays digital information or visuals onto the real world, enhancing the user's perception of reality. The instructor uses the example of see-through glasses to illustrate AR, where the real world is still visible, but with added visual elements. AR is discussed as another application of computer graphics, showing its potential in various fields.

💡Visualization

Visualization in the context of computer graphics refers to the representation of data or information in a visual format. It can be a part of computer graphics, helping to understand complex data through visual means. The instructor mentions that visualization, while sometimes considered a separate field, is closely related to computer graphics and can involve techniques for displaying data in an understandable way.

💡Computational Photography

Computational Photography is the use of computational methods to enhance or modify the process of photography. It involves using algorithms to create effects that are not possible with traditional cameras. The instructor gives an example of computational photography where the goal is to capture photographs but with the aid of computational tools, allowing for innovative image manipulation.

💡3D Scanning

3D Scanning is a process used to create a digital 3D model of a real-world object or environment. It is mentioned as a part of computer graphics, particularly in relation to modeling, where it can be used to generate model data. The instructor suggests that 3D scanning is a significant aspect of computer graphics, allowing for the digital replication of physical objects.

💡Fabrication

Fabrication in the context of computer graphics refers to the process of converting digital models into physical objects. The instructor mentions that fabrication can be considered a part of computer graphics, especially when it involves technologies like 3D printing or computer-controlled knitting machines. This keyword is relevant to the video's discussion on the practical applications of computer graphics in creating tangible products.

💡JavaScript and WebGL

JavaScript is a programming language commonly used for web development, and WebGL is a technology that allows for 3D graphics within web browsers without the use of plugins. The instructor decides to use JavaScript and WebGL for the course projects, emphasizing platform independence and ease of showcasing work online. This choice reflects the course's aim to make computer graphics accessible and practical for students.

Highlights

Introduction to the course 'Introduction to Computer Graphics' and its structure.

Instructor Januxil's introduction and his approach to teaching the course.

Use of Zoom and YouTube for interactive and high-quality lecture streaming.

Instructor's first-time teaching experience and redesigning the course content.

Emphasis on the computer science aspects of computer graphics over tools.

The three pillars of computer graphics: modeling, rendering, and animation.

Overview of the broader field of computer graphics beyond the three core areas.

Differences between virtual reality and augmented reality in computer graphics.

Applications of computer graphics in various fields including entertainment and engineering.

Course focus on providing a broad overview of important topics in computer graphics.

Recommendation of the textbook 'The Ray Tracer Challenge' for deeper understanding.

Use of JavaScript and WebGL for practical assignments instead of C++.

Advantages of JavaScript for platform independence and ease of showcasing work.

Plan for seven projects throughout the course to apply computer graphics concepts.

Instructor's advice on learning JavaScript for those unfamiliar with the language.

Course's approach to not requiring the textbook but recommending it for additional insights.

Details on accessing the online version of the textbook through the University of Utah.

Upcoming lecture on Thursday focusing on math background for computer graphics.

Transcripts

play00:00

hi everyone well thanks for joining

play00:03

um i i'm hoping that you guys can

play00:06

see me now and and hear me as well

play00:10

right i'm seeing some of you you're not

play00:12

enhanced that that's great all right so

play00:15

uh this is going to be 4 600

play00:18

introduction to computer graphics

play00:19

uh my name is januxil i'm going to be

play00:21

your instructor for this course

play00:23

um so today

play00:27

my topic is

play00:32

how this is going to go i'm going to

play00:33

talk a little bit about computer

play00:34

graphics

play00:35

this is going to be a relatively light

play00:36

lecture and um then i'm going to open it

play00:39

up for

play00:40

questions right so that's the that's the

play00:41

idea from there just they have

play00:45

so my camera is over here

play00:48

you guys are over there so when i look

play00:51

like i am not looking at you

play00:54

that's when i'm going to be actually

play00:55

looking at you so

play00:58

don't feel good that i'm looking to

play00:59

decide all right so

play01:01

um first things first uh

play01:04

so this course right now you're all

play01:09

joined in zoom which is great this is

play01:11

one place where you can

play01:13

see this content and everything um it's

play01:16

it's

play01:18

it's nice i i like this i'll be able to

play01:20

see you you can you guys can see me you

play01:22

can

play01:22

talk and i can hear this is all

play01:25

interactive and i like that and i like

play01:26

to keep my lectures interactive so it's

play01:28

all good

play01:28

um but sometimes you might have some

play01:32

quality

play01:32

issues so i'm not sure how

play01:35

good the quality is on your hand like

play01:38

when you look at these

play01:39

these letters if they are looking sort

play01:41

of pixelated sort of

play01:43

blurry in some ways that means that

play01:46

probably the quality of video that

play01:48

you're receiving on your end

play01:49

is not very good in zoom that's what it

play01:51

means so

play01:53

to alleviate this potential problem if

play01:55

you're experiencing it

play01:57

i'm also live streaming these lectures

play01:59

on youtube

play02:00

so that's the other option you can go to

play02:02

youtube um

play02:04

just go to my channel slash live

play02:08

these lectures are publicly streamed

play02:11

let me start by saying that i am

play02:13

teaching this course for the very first

play02:15

time

play02:16

now i'm very familiar with computer

play02:18

graphics but i haven't taught this

play02:19

course

play02:20

in the past uh so the problem for me

play02:23

with that is that i just took over this

play02:24

course couple of weeks ago

play02:26

that means i need to prepare the whole

play02:28

content for the

play02:29

entire course now i didn't want to rely

play02:31

on existing content i actually

play02:33

uh wanted to sort of redesign this

play02:36

course

play02:36

uh so if you guys are familiar with how

play02:38

this course

play02:40

went in previous years this is going to

play02:42

be slightly different of course there's

play02:43

going to be a huge overlap in terms of

play02:45

content

play02:46

but it's not going to be 100 overlap

play02:48

this is going to be um

play02:49

my version of of this course and

play02:53

how i think this course should be

play02:54

thought um

play02:56

but the caveat for me is that i'm going

play02:58

to have to prepare these lectures

play03:00

uh throughout the semester and that's

play03:03

going to have some implications on you

play03:04

that is

play03:05

you know i'm not 100 sure exactly how

play03:08

this course is going to go i think it's

play03:10

going to go well

play03:10

but that's not my point my point is that

play03:13

i'm

play03:14

you know i may need to shift things

play03:15

around as we move forward

play03:17

when i have better ideas about how this

play03:19

course should be structured

play03:20

right all right so let's um

play03:24

jump right into computer graphics we

play03:27

presumably

play03:28

that's why we all are here so the three

play03:31

pillars of computer graphics are

play03:32

as i like to call them that it's that's

play03:34

modeling

play03:36

and rendering and animation right

play03:38

modeling

play03:39

is the the the process of

play03:42

generating of the designing as some some

play03:46

object some visual representation of

play03:47

something this could be a 3d object it

play03:50

could be something 2d doesn't have to be

play03:51

3d

play03:52

modeling is the the is the process where

play03:55

we generate the data that we're going to

play03:57

use for

play03:57

all sorts of computer with us and there

play04:00

are um

play04:01

tools all sorts of tools out there for

play04:03

modeling and there are also sort of

play04:05

algorithms and data structures

play04:06

out there for modeling in this course

play04:08

we're going to concentrate on

play04:10

the the math we're going to concentrate

play04:12

on the algorithms we're going to

play04:13

concentrate on the data structures of

play04:15

modeling

play04:16

we're not going to concentrate on the

play04:17

tools how to use specific tools

play04:19

we're not going to cover that part at

play04:21

all we're just going to deal with the

play04:22

computer science related part of it

play04:25

right

play04:26

the other pillar is rendering that's the

play04:28

process of

play04:29

generating images um that that

play04:32

involves a whole bunch of things you get

play04:35

the

play04:35

data uh from from the model data and you

play04:40

you generate an image a 2d image that

play04:42

you look at at the end so that's the

play04:44

final

play04:44

output that you you wanted to use in

play04:47

computer graphics

play04:48

um rendering involves a lot of pieces in

play04:52

this course we're going to cover some of

play04:53

the basics

play04:54

we're not going to go too deep on

play04:57

every little detail but we're going to

play04:59

cover the the main concepts behind

play05:02

uh rendering right

play05:05

the other one is of course is is

play05:08

animation

play05:09

and animation can be done in various

play05:11

different ways uh

play05:12

of course with with computer graphics

play05:15

oftentimes we have

play05:16

animating objects we have moving objects

play05:18

we have deforming objects like

play05:20

like in this example and they could be

play05:22

generated in various different ways and

play05:24

we're going to talk about those in a

play05:25

little bit

play05:26

so these are the the three pillars of

play05:29

computer graphics

play05:30

that we're mostly going to uh talk about

play05:33

in this course

play05:34

but this doesn't really this doesn't

play05:36

really cover everything that's going on

play05:37

in computer graphics computer graphics

play05:39

is actually

play05:39

a very wide and never expanding field

play05:42

um and a whole bunch of other things

play05:45

that can be considered

play05:46

a part of compute graphics besides these

play05:48

three core areas

play05:50

for example using interaction is

play05:52

oftentimes considered a part of cookie

play05:54

graphics

play05:54

and all sorts of user interaction tools

play05:56

and

play05:58

techniques uh visual reality obviously i

play06:01

mean part of it is definitely computer

play06:03

graphics so of course there are there

play06:04

are parts

play06:05

that may be arguably computer graphics

play06:07

maybe not but you can think about

play06:09

the whole concept of virtual reality as

play06:11

a part of computer graphics

play06:13

and of course if visual reality is

play06:14

computer graphics then you know

play06:16

augmented reality is computer graphics

play06:18

too right

play06:18

uh an organic value could be something

play06:21

like this you're just

play06:22

holding the enterprise or just you're

play06:25

wearing some some goggles that

play06:27

see-through bubbles

play06:29

uh that's not visually augmented reality

play06:31

is happening right

play06:33

uh so you guys know the difference

play06:34

between virtual reality and augmented

play06:36

reality

play06:38

in the visual reality you completely

play06:41

lose

play06:42

your connection with the actual reality

play06:44

in augmented reality the

play06:47

actual reality exists you just add stuff

play06:49

to it you add some visuals to it so

play06:51

that's why we're using

play06:53

see-through glasses with augmented

play06:55

reality or in the other example we're

play06:57

using

play06:58

a camera that's actually seeing the

play07:00

actual scene

play07:01

if we don't see anything at all if

play07:03

everything is completely covered that

play07:04

that will be visual reality

play07:08

all right let's let's move on uh

play07:10

visualization

play07:12

is a field of its own but it's also

play07:13

considered a part of computer graphics

play07:15

while some people do

play07:17

consider part of computer method

play07:20

image processing is another um is

play07:23

another

play07:24

component of computer graphics in this

play07:26

case you know you stop in an image and

play07:28

you manipulate it with using all sorts

play07:29

of algorithms

play07:30

uh for this example if you're trying to

play07:33

understand what's going on here there's

play07:35

some cards

play07:36

at the bottom here and the algorithm

play07:38

sort automatically deletes those cards

play07:40

and they don't exist anymore so this

play07:43

doesn't

play07:44

quite perfectly fit in our modeling

play07:48

animation rendering paradigm but still

play07:50

it's considered

play07:52

image manipulation is considered a part

play07:53

of computer graphics by most people

play07:58

another one is a big one actually is

play08:00

computational photography

play08:02

so um this this is the

play08:06

the process of uh generating photographs

play08:10

so taking photographs

play08:11

using computational tools so the actual

play08:14

goal here is to take a photograph

play08:16

but you don't want to just rely on a

play08:18

good old

play08:19

camera either analog or digital camera

play08:23

but you want to

play08:24

add some computational tools uh to to be

play08:27

able to do things that you couldn't do

play08:29

with with a regular camera

play08:30

combining algorithms to enhance the

play08:32

process

play08:33

of capturing images uh

play08:36

or being able to do stuff that you

play08:38

couldn't do just by a

play08:40

regular visual camera like this called

play08:42

computational photography photography

play08:44

3d scanning is definitely a big part of

play08:47

computer graphics

play08:49

this this can be considered a part of

play08:52

modeling and

play08:52

one way of generating model data could

play08:54

be using 3d scanning tools

play08:58

and if 3d scanning is a part of graphics

play09:00

then

play09:02

fabrication can also be considered a

play09:04

part of graphics right

play09:05

so in this case where taking some

play09:09

bottles and we're converting them into

play09:12

into

play09:12

actual physical objects these examples

play09:15

are done

play09:16

uh through knitting actually these were

play09:19

done

play09:19

by hand knitting they could be done

play09:21

using computer controlled

play09:23

knitting machines as well of course we

play09:25

could also have

play09:27

additive manufacturing using 3d printers

play09:29

there's a ton of work out there in

play09:31

computer graphics

play09:32

related to fabrication yeah so all this

play09:36

stuff is considered

play09:37

computer graphics by most people but

play09:40

let's uh

play09:41

briefly look at the applications of

play09:42

computer graphics when i say computer

play09:44

graphics most people think about

play09:46

entertainment so let's start with that

play09:48

the first one is

play09:50

video games or one of my favorite video

play09:53

games here

play09:54

obviously video games are a huge part of

play09:57

computer graphics and

play09:58

and entertainment um there's really

play10:01

i'm not gonna say anymore here

play10:04

special effects also you start with some

play10:07

live action and you

play10:08

add some stuff to it either some

play10:10

background or some some foreground

play10:12

objects that's considered you know a big

play10:16

consumer of computer graphics is also

play10:18

the special effects industry

play10:20

uh special effects can be um tools that

play10:24

combine live action or could be just

play10:26

purely compute graphics

play10:28

without using any live action shots none

play10:30

whatsoever right that's

play10:32

also considered special effects and a

play10:35

huge consumer of computer graphics as an

play10:38

application

play10:39

feature animation is another one so we

play10:42

typically separate feature animation

play10:44

and special effects because special

play10:46

effects is typically connected to live

play10:48

action

play10:49

even if live action does not exist in

play10:51

all scenes

play10:52

it exists in some scenes right there

play10:55

some actors

play10:56

playing uh in some scenes with feature

play11:00

animation we don't have any actors

play11:01

and then the the ultimate goal does not

play11:05

always have to be

play11:06

generating realistic images

play11:09

most often feature animation

play11:12

would use uh more stylized images

play11:16

uh and cartoonish looking characters not

play11:19

completely 2d cartoons uh but

play11:22

but you know 3d cartoonish-looking

play11:25

characters is

play11:26

what uh feature animation would

play11:28

typically use

play11:31

of course talking about cartoons

play11:33

computer graphics is also used

play11:35

in cartoons as well in this example uh

play11:38

it's used for generating a background

play11:40

i'm not exactly sure if this is a 3d

play11:42

background

play11:44

but it's definitely something that's

play11:45

that's computer generated one way or

play11:47

another

play11:48

uh and then you can have some foreground

play11:50

hand-drawn characters on top of that

play11:52

this is actually a relatively widespread

play11:55

use case of computer gap it's a

play11:56

relatively widespread use case of

play11:59

computer applications uh there are

play12:03

applications that are outside of

play12:05

entertainment as well of course

play12:06

so this is an example that's using

play12:08

computer aided design and computer

play12:10

manufacturing uh this is very heavily

play12:13

used in

play12:14

all sorts of engineering applications as

play12:16

you can imagine it's definitely a

play12:18

big application of computer graphics uh

play12:22

simulations uh simulations are used for

play12:25

games they're used for special effects

play12:29

but they're also used for the purpose of

play12:32

simulation itself

play12:34

in this case for example training

play12:37

uh pilots right so this is another

play12:40

big application of computer graphics

play12:44

uh medical imaging is another big

play12:46

application of computer graphics so

play12:48

there are various ways that computer

play12:50

graphics is used

play12:52

uh in medical imaging as you can imagine

play12:56

uh and visualization in general can also

play12:59

be considered a

play13:00

an application of computer graphics

play13:01

either information visualization or data

play13:04

visualization

play13:05

can also be considered a big application

play13:07

of computer graphics well basically

play13:09

anything that involves some visual

play13:11

component

play13:12

is an application of computer graphics i

play13:14

would even include

play13:15

our cell phones right and the graphics

play13:18

on those cell phones they

play13:19

are a big application of computer

play13:21

graphics

play13:23

all right so enough about general talk

play13:26

about computer graphics let's be a bit

play13:28

more specific and get back to this

play13:29

course and

play13:30

talk about what we're going to cover in

play13:31

this course uh so

play13:34

mostly in this course we're going to

play13:36

concentrate on these three builders

play13:37

modeling

play13:38

rendering and animation and about

play13:41

these topics we're going to cover the

play13:44

algorithms we're going to cover the data

play13:45

structures

play13:46

so the cg part of it we're not going to

play13:48

talk about existing

play13:50

tools uh obviously

play13:54

what i would like to do in this course

play13:55

is to give you a

play13:58

broad overview of the important topics

play14:01

in in these three pillars right

play14:04

so we're going to cover a whole bunch of

play14:06

topics here so for most of them

play14:09

we're not for most of them we won't have

play14:11

time to go into

play14:13

too much detail and this is by design

play14:16

because

play14:16

in an introduction to computer graphics

play14:18

course i would like you all to be

play14:20

knowledgeable about all of these things

play14:21

so this is not a modeling course it's

play14:22

not a rendering course it's not an

play14:24

animation course

play14:25

this is an introduction to computer

play14:26

graphics course that will cover

play14:27

everything

play14:28

to a certain extent right so if you find

play14:32

yourself

play14:32

interested in any of these topics any of

play14:34

the topics that we covered

play14:35

you'll find that in the university of

play14:37

utah we have

play14:38

all sorts of specialized computer

play14:41

graphics courses

play14:42

that dive much deeper into these topics

play14:45

for example i teach uh

play14:47

two rendering courses one of them is

play14:49

about interactive graphics is about

play14:51

interactive rendering

play14:52

and shader programming the other one is

play14:56

ray tracing for graphics is about

play14:57

generating highly realistic images

play15:00

uh starting from from scratch and we

play15:03

also have

play15:04

computer animation courses so if you

play15:06

find yourself interested in these topics

play15:08

you can find specialized courses in

play15:10

these topics but in this course we're

play15:11

gonna

play15:12

have a sort of broad uh relatively

play15:14

higher level overview and we're gonna

play15:16

cover the basics of these topics right

play15:21

so this is our textbook it is

play15:23

recommended

play15:25

but not required and there's a good

play15:26

reason for that

play15:28

while designing this course i actually

play15:30

had an extensive

play15:31

discussion with steve martin and pete

play15:33

shirley those are the the main authors

play15:35

of this book

play15:36

and uh you know we talked about all

play15:38

sorts of stuff and

play15:40

how this book could be used i i got to

play15:42

tell you that

play15:43

both steve marshall and pete shirley are

play15:46

two

play15:47

very strong very well known graphics

play15:49

researchers

play15:51

but on top of that they are people who

play15:54

are

play15:54

really really good at explaining things

play15:57

uh

play15:57

so i'm i'm pretty sure you're gonna be

play16:00

happy with

play16:01

uh with this book and i i haven't read

play16:03

the entire book just yet i've read

play16:06

parts of it uh quite a bit of it

play16:08

actually and

play16:09

i've been very very happy with it um and

play16:11

i'm pretty sure you guys will be happy

play16:12

with it as well so we're gonna

play16:14

follow this book let me actually zoom in

play16:16

but i'm not saying that this is

play16:18

required this is recommended uh so

play16:21

my my recommended style for for this

play16:23

course

play16:24

for you guys to be able to get the most

play16:26

out of this course would be

play16:28

attending these lectures live uh if you

play16:31

can

play16:32

uh and listen to this listen to these

play16:34

lectures

play16:35

and ask your questions live and then go

play16:38

back

play16:38

and and go go to the book and read the

play16:40

related chapter i'm going to highlight

play16:42

the related chapter

play16:43

so i'm not planning to cover everything

play16:45

that's in the book

play16:46

right and for the stuff that i cover in

play16:48

the book i'm not planning to cover

play16:50

every detail necessarily

play16:53

but the book is not going to be a full

play16:55

substitute for these lectures either

play16:57

because i might actually provide more

play17:00

information or additional information

play17:02

that does not exist in the book uh so

play17:05

that's why i would recommend that you

play17:07

uh use both these lectures and the book

play17:10

uh at the same time in connection with

play17:12

each other so

play17:13

this particular introduction uh lecture

play17:17

is related to the very first chapter of

play17:19

the book

play17:20

it's not covering everything that's in

play17:21

the very first chapter but it's covering

play17:23

quite a bit it has a few additional

play17:25

stuff in there as well um

play17:28

but actually mostly i'm talking about

play17:29

how this course is gonna go

play17:33

right so you don't necessarily have to

play17:36

purchase the book

play17:37

uh if you don't want to we also

play17:40

as university of utah students you

play17:42

should have online access to this book

play17:45

as well the details

play17:46

are uh you can find the details on on

play17:49

canvas

play17:50

there's a fairly easy way of accessing

play17:54

an online version of this book

play17:57

using your uh university of utah

play18:00

accounts

play18:02

now let's talk about these seven

play18:05

projects

play18:07

uh the de facto language of compute

play18:10

graphics

play18:11

is c plus plus which we're not going to

play18:15

use

play18:16

so a lot of people and a lot of graphics

play18:20

people

play18:21

actually really don't like c plus plus

play18:24

i'm not one of them i love c plus plus i

play18:28

use c plus plus all the time all of my

play18:31

other courses use c

play18:32

plus plus but not this one in this

play18:35

course we're going to use javascript

play18:37

and we're going to use webgl uh now

play18:40

i'm not a big fan of java but i love

play18:42

javascript

play18:44

um mainly because it works on the

play18:46

browser it's

play18:48

uh it's a your platform independent just

play18:51

works on pretty much any browser now

play18:54

it's reasonably fast in the past way

play18:58

way back when it was kind of slow to

play19:00

today you can do a lot of really

play19:02

complicated stuff with javascript and it

play19:04

works just fine

play19:05

um so it's uh and and the debuggers

play19:08

are okay uh not great but it's actually

play19:12

pretty decent uh i would recommend uh

play19:16

that you guys use chrome chrome actually

play19:18

has a very good java debugger javascript

play19:20

debugger

play19:22

i i do use that extensively um

play19:26

and i would i would recommend it um i'm

play19:28

not sure if there are

play19:29

other good debuggers for javascript as

play19:31

well but we're going to be using

play19:32

javascript

play19:33

and the main reason for that is that

play19:35

first of all i wanted this to be

play19:37

sort of platform independent second of

play19:40

all i would like you guys to be able to

play19:41

showcase the stuff that you're doing

play19:43

easily so this is going to be javascript

play19:44

so you can just put it on your web pages

play19:45

and it's going to work right

play19:47

well i don't want you to be sort of uh

play19:52

publicly uh publishing your

play19:55

uh your your projects which is going to

play19:58

be

play19:59

a part of plagiarism so we're not going

play20:00

to go there but you know

play20:02

at the end of this course you will be

play20:04

able to easily do stuff

play20:06

with computer graphics and javascript

play20:08

and that that's one of my intentions

play20:10

that you guys will be able to

play20:12

do this and if you're not familiar with

play20:14

javascript

play20:16

i would say don't worry too much about

play20:18

it because i think you guys

play20:20

can learn javascript fairly easily if

play20:21

you're not familiar with it and you

play20:23

really should be familiar with it it's a

play20:24

very very

play20:26

widely used language and and you guys

play20:28

should know i think

play20:30

so we're going to be using javascript

play20:32

and that's going to make things

play20:33

quite a bit easier uh because um

play20:36

we're not going to be battling with the

play20:38

programming language too much uh

play20:40

doing simple stuff in um

play20:43

relatively lower level languages like c

play20:45

plus plus

play20:46

uh can be can require a bit more effort

play20:49

uh with javascript things are going to

play20:51

be quite a bit easier and we can use

play20:53

html as

play20:54

our user interface so things are going

play20:56

to be much easier

play20:58

uh from user into interface perspective

play21:01

right

play21:04

all right guys um thank you all for

play21:07

joining in

play21:08

um we'll do the same on thursday so

play21:11

thursday's topic is going to be some

play21:15

math background and it's uh

play21:18

the if you want to take a look at the

play21:20

related chapter in the book uh just be

play21:22

warned that the the book

play21:23

is the chapter two of the book is more

play21:26

extensive than what i'm planning to

play21:28

cover it's covering

play21:29

a lot more math than i am planning to

play21:32

cover

play21:32

on thursday so i'm just gonna talk about

play21:35

a part of it

play21:37

uh and i'm gonna talk about the rest

play21:40

when it becomes relevant to the topics

play21:43

that we're covering

play21:45

all right thanks for coming in i'll um

play21:49

i'll see you next time

play21:53

thank you thank you thank you thank you

play21:58

thanks

Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Computer GraphicsJanuxilCourse IntroductionModelingRenderingAnimationInteractive LecturesJavaScriptWebGLEducational ContentUniversity Course
هل تحتاج إلى تلخيص باللغة الإنجليزية؟