Difference between revisions of "CISC849 S2022"

From class_wiki
Jump to: navigation, search
(Created page with "==Course information== {| class="wikitable" border="0" cellpadding="5" !width="5%"| !width="95%"| |- |valign="top"|'''Description''' |CISC 849 -- Ethical Issues in Robotics a...")
 
Line 52: Line 52:
 
* [https://www.amazon.com/Second-Machine-Age-Prosperity-Technologies/dp/0393350649/ref=asap_bc?ie=UTF8 ''The Second Machine Age: Work, Progress, and Prosperity in a Time of Brilliant Technologies''], Erik Brynjolfsson and Andrew McAfee, 2016 ('''TSMA''')
 
* [https://www.amazon.com/Second-Machine-Age-Prosperity-Technologies/dp/0393350649/ref=asap_bc?ie=UTF8 ''The Second Machine Age: Work, Progress, and Prosperity in a Time of Brilliant Technologies''], Erik Brynjolfsson and Andrew McAfee, 2016 ('''TSMA''')
 
<!-- ** Chapter 1 [http://secondmachineage.com/excerpt/ here] -->
 
<!-- ** Chapter 1 [http://secondmachineage.com/excerpt/ here] -->
 +
|}
 +
 +
==Schedule==
 +
 +
''Note'': The blue squares in the "#" column below indicate Tuesdays. <br>
 +
<!--UDCapture videos are available in the Media Gallery tab of this course's Canvas page -->
 +
<br>
 +
{| class="wikitable" style="text-align: center" border="1" cellpadding="5"
 +
!width="2%"|#
 +
!width="10%"|Date
 +
!width="22%"|Topic
 +
!width="15%"|Notes
 +
!width="32%"|Readings
 +
!width="15%"|Assignments/slides
 +
|-
 +
|style="background:rgb(102, 204, 255)"|1
 +
|Feb. 8
 +
|Introduction
 +
|Graphics background, course information
 +
|Marschner, 1-1.4
 +
|<!--[https://docs.google.com/presentation/d/16M3Z-oFDE3lvtvBM33jNXLiM3RPytWFE1e8JZUzVNq4/edit?usp=sharing slides] [https://youtu.be/vCIfWg1m-xo recording]-->
 +
|-
 +
|2
 +
|Feb. 10
 +
|2-D, 3-D Geometry
 +
|Vector & matrix review, homogeneous coordinates, 2-D & 3-D transformations, quaternions
 +
|Marschner, 2.4, 5.2-5.2.2, 6-6.3 (skip 6.1.6, 6.2.1-6.2.2), 16.2.2
 +
|<!--[https://docs.google.com/presentation/d/18MkvZW84mFGMO-XjwXATfIa9hcDVti7ejzhSP6GFKRA/edit?usp=sharing slides] [https://youtu.be/eM0K6Bw20QM recording]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|3
 +
|Feb. 15
 +
|3-D Geometry
 +
|More 3-D transformations, camera manipulation & the view volume
 +
|Marschner, 6.5-7.2 <!--; Red book, 3 -->
 +
|<!--[https://docs.google.com/presentation/d/1j7ShUyPHzKNo-y8c7B3BdnJGg94JOqSnr8VVTeraClk/edit?usp=sharing slides] [https://youtu.be/fTEl2agGfRM recording]-->
 +
|-
 +
|4
 +
|Feb. 17<br>
 +
''Add/drop deadline Feb. 26''
 +
|3-D Geometry
 +
|Perspective projection, geometry pipeline, transformations with GLM
 +
|Marschner, 7.3, 7.5; OpenGL tutorials [http://www.opengl-tutorial.org/beginners-tutorials/tutorial-1-opening-a-window/ #1] (including installation instructions), [http://www.opengl-tutorial.org/beginners-tutorials/tutorial-3-matrices/ #3] <!--Red book, 1, 2 (stop before stippling) -->
 +
|<!--[https://docs.google.com/presentation/d/1MV0G0DFUp-esctZfDpjGx00ktcfV17iNOadJsOtqQJk/edit?usp=sharing slides] [https://youtu.be/w8FHw2nbVkk recording]<br>-->
 +
[[CISC440_S2021_HW1|HW #1]]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|5
 +
|Feb. 22<br>
 +
|OpenGL/GLFW
 +
|Program initialization, window creation, geometric primitives <!--, GLUT -->
 +
|Marschner, 17-17.7, 17.9-17.11 <!--Red book 1, 2, 6 "Blending" section, 9 -->
 +
|<!--[https://docs.google.com/presentation/d/1K1KP9LWFwGeHVUIzr8_rM0ddPi3Y8IU37pOnR9NOlzQ/edit?usp=sharing slides] [https://youtu.be/e2sqi1dLi-g recording]-->
 +
|-
 +
|6
 +
|Feb. 24
 +
|OpenGL/GLFW
 +
|Basic animation, user interface callbacks
 +
|OpenGL tutorial [http://www.opengl-tutorial.org/beginners-tutorials/tutorial-6-keyboard-and-mouse/ #6]
 +
|<!--[https://docs.google.com/presentation/d/1pylI2yXpXnKYsPUSjD0m2HEFCOtEydAiYYbmEvlTLhc/edit?usp=sharing slides] [https://youtu.be/MsM8tltFyig recording]<br>
 +
[https://drive.google.com/file/d/1H6Kwpyiy3qXvuHMX3py_GgFPIGYWwZa8/view?usp=sharing interactive_tutorial03.cpp]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|7
 +
|Mar. 1
 +
|GPU programming
 +
|Introduction to GLSL, vertex shaders vs. fragment shaders; GLSL texturing demo
 +
|Marschner, 17.8; [http://wiki.labomedia.org/images/1/10/Orange_Book_-_OpenGL_Shading_Language_2nd_Edition.pdf Orange book Chaps. 2-5]
 +
|<!--[https://docs.google.com/presentation/d/1ebuvz0UYaeqKAYdik61ww6Ef_hjnYUG8DsGGTtS9Oa0/edit?usp=sharing slides] [https://youtu.be/UbJ0yOg5ziU recording]<br>
 +
[https://drive.google.com/file/d/1Rqintt2trrQIu7PIxjte7KYpFo5xn-aN/view?usp=sharing texture_example.zip] (modified 3/11)<br>-->''HW #1 due''
 +
|-
 +
|8
 +
|Mar. 3
 +
|Shading
 +
|Radiometry: irradiance, radiosity, radiance, BRDFs
 +
|Marschner, 10-10.2.1, 20-20.2
 +
|<!--[https://docs.google.com/presentation/d/1d2LqFDk8BSdMSR3pR-Ls1nsLwLLk47oFBmQ9rt0rbBY/edit?usp=sharing slides] [https://youtu.be/Yxp1f_E2teg recording]<br>-->
 +
[[CISC440_S2021_HW2|HW #2]]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|9
 +
|Mar. 8
 +
|Shading
 +
|Diffuse, specular reflection, Gouraud/Phong shading details; OpenGL, GLSL shading methods
 +
|Marschner, 10-10.2.2; [http://www.opengl-tutorial.org/beginners-tutorials/tutorial-8-basic-shading/ OpenGL tutorial #8]
 +
|<!--[https://docs.google.com/presentation/d/1VdJ9aFIqxLODLzLuHfh3WlpnWDQo_lh3CQRBJ7BeBok/edit?usp=sharing slides] [https://youtu.be/Lz_uasq9Ptw recording]-->
 +
|-
 +
|10
 +
|Mar. 10
 +
|Textures
 +
|Finish shading/lighting; texture-mapping basics, bump mapping
 +
|Marschner, 11.2, 11.4 (homogeneous division material--not barycentric coords), 11.5 <!--; Red book, 9 (through "Assigning texture coordinates")    -->
 +
|<!--[https://docs.google.com/presentation/d/1GsstwVkaTZwBkBasnDgfR53cYSoQWc12AowIXB8yJgw/edit?usp=sharing slides] [https://youtu.be/eF8Y9lmXdJc recording]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|11
 +
|Mar. 15
 +
|Textures<!--Motion/simulation-->
 +
|Texturing pipeline, bump maps, lightmaps, environment maps, shadow maps<!--Particle systems, flocking-->
 +
|Marschner, 11.1.3-11.1.4, 11.3<!--Marschner, 16.7-->
 +
|<!--[https://docs.google.com/presentation/d/19aNHiFoJtplt1CTz0DSKYzGaY_X6xAHMeSi7nVl12E4/edit?usp=sharing slides] [https://youtu.be/Y_0KMPbe5p4 recording]-->
 +
<!--[http://nameless.cis.udel.edu/class_data/cg_s2017/midterm_s2014.pdf 2014 midterm] (ignore Q7, Q9, Q10, and Q11)<br>
 +
[http://nameless.cis.udel.edu/class_data/cg/midterm2004.pdf 2004 midterm] (look at questions 1.1, 1.2, 2.1, and 3.2 only)-->
 +
|-
 +
|12
 +
|Mar. 17
 +
|Midterm review
 +
|
 +
|
 +
|<!--[https://docs.google.com/presentation/d/1X3fQg8_dkWT1nh1TDvTT2PEsXQm8Vj39PnUoZRf1aWc/edit?usp=sharing slides] [https://youtu.be/iuB-QE7tBaM recording]<br>
 +
[http://nameless.cis.udel.edu/class_data/cg_s2017/midterm_s2014.pdf 2014 midterm] (ignore Q7, Q9, Q10, and Q11)<br>
 +
[http://nameless.cis.udel.edu/class_data/cg/midterm2004.pdf 2004 midterm] (look at questions 1.1, 1.2, 2.1, and 3.2 only)<br>-->''HW #2 due''
 +
|-
 +
|style="background:rgb(102, 204, 255)"|13
 +
|Mar. 22
 +
|MIDTERM EXAM
 +
|
 +
|
 +
|
 +
|-
 +
|14
 +
|Mar. 25
 +
|Particle systems<!--; finish texturing -->
 +
|Flocking; introduction to [https://pybullet.org/wordpress/ Bullet physics library]<!--; magnification/minification, mipmaps-->
 +
|OpenGL tutorial on [http://www.opengl-tutorial.org/miscellaneous/clicking-on-objects/picking-with-a-physics-library/ clicking], [https://github.com/bulletphysics/bullet3/blob/master/docs/Bullet_User_Manual.pdf Bullet physics manual] (you don't have to read all of it, it's just for reference); Marschner, 11.1.3-11.1.4, 11.3
 +
|<!--[https://docs.google.com/presentation/d/1kzhFGQ4L6556np4ZIyBNwDn-IQvzUqzR0SCr_F_Yc7E/edit?usp=sharing slides] [https://youtu.be/fT4hFO2TDDk recording]<br>-->
 +
[[CISC440_S2021_HW3|HW #3]]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|
 +
|Mar. 29
 +
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Spring break''
 +
|
 +
|
 +
|
 +
|-
 +
|
 +
|Mar. 31
 +
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Spring break''
 +
|
 +
|
 +
|<!--[https://docs.google.com/presentation/d/1fVyTFa0ILAwGoFva13KBHzyzl40HwxN6J3nNFlCL-5U/edit?usp=sharing slides]--><!--<br>''HW #2 due Mar. 21''--><!--<br>
 +
[https://docs.google.com/presentation/d/1IeookkoZP5GEAYuCb40CIUC1S96YroyaAvKfyD9LT8o/edit?usp=sharing slides]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|
 +
|Apr. 5
 +
|style="background:rgb(255, 102, 0)"|NO CLASS<br>''Instructor away''
 +
|
 +
|
 +
|
 +
|-
 +
|15
 +
|Apr. 7
 +
|Textures, clipping
 +
|Bilinear vs. nearest-neighbor filtering, magnification/minification, mipmaps; line and triangle clipping
 +
|Marschner, 11.4.4-11.4.5
 +
|<!--[https://docs.google.com/presentation/d/10dfwmJvCTOjWdD54nQi9SwTmLnbbHr3eG52P96-VLOY/edit?usp=sharing slides] [https://youtu.be/uEUMuFTqWcE recording]-->
 +
<!--[https://docs.google.com/presentation/d/1H0tSJHr07SF8wG6LUxeL2e0_5jjCusG5HHGsYOZiAVM/edit?usp=sharing slides]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|16
 +
|Apr. 12
 +
|Hidden surface elimination
 +
|Backface culling, Z-buffering, painter's algorithm
 +
|Marschner, 8.1.3-8.1.6,, 8.2-8.2.3, 8.4
 +
|<!--[https://docs.google.com/presentation/d/1W_wpq2_qgLsqgfWbEJwAn-kNxUDU8PwLFxJ88iG4TQI/edit?usp=sharing slides] [https://youtu.be/8i-FN7WJM1c recording]<br>=-->''HW #3 due''
 +
|-
 +
|17
 +
|Apr. 14
 +
|Finish hidden surface elimination; line drawing
 +
|BSP trees; DDA, midpoint line-drawing
 +
|Marschner, 12.4, 8.1-8.1.1, 8.3
 +
|<!--[https://docs.google.com/presentation/d/1MX_ZHI8v2I66nM1fJjCWX4_hEsD5qZjGKB3s6q62pbQ/edit?usp=sharing slides] [https://youtu.be/QY59DK9PfQg recording]<br>-->[[CISC440_S2021_HW4|HW #4]]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|18
 +
|Apr. 19
 +
|A little [http://www.blender.org Blender], shape modeling
 +
|Bezier curves and surfaces, Catmull-Rom splines, subdivision
 +
|Marschner, 15-15.6.1 (ignore material on knots, Hermite form)
 +
|<!--[https://docs.google.com/presentation/d/11AfwRA3Hl6Fbto0BphNKoT0Wk_We2lZxOdzOkkheysU/edit?usp=sharing slides] [https://youtu.be/9LIe0C_7fJ8 recording]-->
 +
<!--[https://docs.google.com/presentation/d/1l1iPQGlKUeOgLsd1x0TQnqcccyrT0YZv1NBXAuxNcEM/edit?usp=sharing slides]--><!--[[CISC440_S2019_HW3|HW #3]]-->
 +
|-
 +
|19
 +
|Apr. 21
 +
|Ray tracing
 +
|Ray casting, intersection testing
 +
|Marschner, 4
 +
|<!--[https://docs.google.com/presentation/d/1SVxn_vdDzClXHuCUwVbUX687463CZkTDKt9HeaRQWfE/edit?usp=sharing slides] [https://youtu.be/g6-E99EUBzg recording]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|20
 +
|Apr. 26
 +
|Ray tracing
 +
|Shadow rays (including soft shadows, ambient occlusion)
 +
|Marschner, 4
 +
|<!--[https://docs.google.com/presentation/d/1rIPYy-Ei4bKeWkzLBvq1ZOJziLF0sDbplfDz8-RI5D8/edit?usp=sharing slides] [https://youtu.be/I-8Jqyy3N0Y recording]-->
 +
|-
 +
|21
 +
|Apr. 28<br>''Withdraw deadline May 3''
 +
|Ray tracing
 +
|Reflections (including glossy), distributed/distribution ray tracing 
 +
|Marschner, 4
 +
|<!--[https://docs.google.com/presentation/d/1SvfLdCaRky7AzZVQrg6Z9hhDaP3ENOt_6tn5hCgXNXg/edit?usp=sharing slides] [https://youtu.be/2fpO6eacbnI recording]<br>''HW #4 due May 2''<br>-->[[CISC440_S2021_HW5|HW #5]]
 +
|-
 +
|style="background:rgb(102, 204, 255)"|22
 +
|May 3
 +
|Global illumination
 +
|Finish refractions, super-sampling for anti-aliasing, spatial data structures
 +
|Marschner, 4<!--, [http://nameless.cis.udel.edu/class_data/cg/jensen_photon_mapping_tutorial.pdf tutorial]-->
 +
|<!--[https://docs.google.com/presentation/d/1N4dAL3zSVXg9vAQLLkjppdQKVgBTqrs6A2u_iw5oQcA/edit?usp=sharing slides] [https://youtu.be/k5pB5qale60 recording]-->
 +
<!--[https://docs.google.com/presentation/d/1ouyej5ltRdqlp5x3FnqxWRq1cwmh9Lt-3PdRRHtpFOo/edit?usp=sharing slides]--><!--<br>''HW #3 due''<br>[[CISC440_S2019_HW4|HW #4]]-->
 +
|-
 +
|23
 +
|May 5
 +
|Global illumination
 +
|Bidirectional ray tracing, photon mapping
 +
|Marschner, 4, 12.3, 13.1, 13.4; [http://nameless.cis.udel.edu/class_data/cg/heckbert_bidirectional.pdf "Bidirectional Ray Tracing"] paper, [http://web.cs.wpi.edu/~emmanuel/courses/cs563/write_ups/zackw/photon_mapping/PhotonMapping.html photon mapping introduction], [http://www.cc.gatech.edu/~phlosoft/photon/ online demo]
 +
|<!--[https://docs.google.com/presentation/d/1WH04rXH5x9uTjhsJtp12vP4OrncgaXxAcyqTRiKEaKI/edit?usp=sharing slides] [https://youtu.be/Q58G3JOhXvI recording]-->
 +
|-
 +
|style="background:rgb(102, 204, 255)"|24
 +
|May 10
 +
|Noise, bonus topic: animation basics
 +
|Value/Perlin noise, rigging
 +
|Marschner, 11.5.2-11.5.3, Orange book 15
 +
|<!--[https://docs.google.com/presentation/d/12V2lICdn3lsYzNZxCt8KYqjWInHwQkvjTK_Z460Ysig/edit?usp=sharing slides] [https://youtu.be/C7tauARIF_s recording]-->
 +
|-
 +
|25
 +
|May 12
 +
|Final review
 +
|
 +
|
 +
|<!--[https://docs.google.com/presentation/d/1AtLxPuA42EA0PmlzMkUIBeQXcpCHcMbUrULtvKIAF9M/edit?usp=sharing slides] [https://youtu.be/z2wcCiseZ4E recording]-->
 +
''HW #5 due''
 +
|-
 +
|style="background:rgb(102, 204, 255)"|26
 +
|May 17
 +
|SIGGRAPH videos
 +
|
 +
|
 +
|
 +
|-
 +
|
 +
|May 17-18
 +
|HW #5 demos
 +
|
 +
|
 +
|''demo sign up link will be here''
 +
|-
 +
|
 +
|May 19-26
 +
|FINAL EXAMS
 +
|
 +
|
 +
|
 
|}
 
|}

Revision as of 09:31, 13 January 2022

Course information

Description CISC 849 -- Ethical Issues in Robotics and AI


An examination of issues raised by recent and expected advances in robotic and artificially intelligent (AI) systems, from the perspective of both their designers/creators and members of society generally. We will briefly cover the history and current state of robotics and AI, review relevant philosophical foundations and professional guidelines for engineers, and examine a number of topic areas. These include workplace safety, robots as caregivers and companions, surveillance and data mining, driverless cars, drones and autonomous military systems, and super-intelligent game-players. The format will focus on discussion and analysis of case studies in each topic area, as well as broader economic and social impacts.

Instructor Christopher Rasmussen
E-mail: cer@cis.udel.edu
Office: Smith 446
Office hours: ??
Web page http://nameless.cis.udel.edu/class_wiki/index.php/CISC849_S2022
Shortened URL http://goo.gl/Vmrozg
Schedule Tuesdays and Thursdays from 2 pm to 3:15 pm in ???
Grading
  • 20% Analytical paper, due Oct. 11
  • 20% Presentation, given between Oct. 25 and Nov. 1
  • 30% Final project, alone or team of two. Proposal due Nov. 13, presentations Dec. 4-6
  • 30% Class participation. This includes attendance and how much you talk, but also the quality of what you say

For the presentation, each student will choose a real or hypothetical case/topic involving robotics/AI ethics issues. In 15-20 minutes, you will orally deliver a summary of the topic, outline the ethical issues and stakeholders, and ask the class several questions designed to initiate discussion. Visual aids (i.e., slides) are not required, but may be used for clarity. Presentation subjects must not be too similar to topics already in the syllabus, so you must get instructor approval after choosing a presentation date.

The project will involve a written and presentation component. Similar to the presentation, you will pick a topic (with instructor permission) to summarize and analyze. In fact, if you choose you may use the same topic as your presentation. However, here slides will be required, and you will also be asked to propose a technical "solution" that mitigates one or more ethical concerns related to the topic. The design and justification of this "solution" will constitute the bulk of the deliverables for the project.

All homework artifacts (papers, slides) must be submitted via e-mail to the instructor by midnight of the deadline day (with a grace period of a few hours afterward).

Students can discuss problems with one another in general terms, but must work independently on all assignments except the final project. This also applies to online and printed resources: you may consult them as references (as long as you cite them), but the words you turn in must be yours alone. Any quoting must be clear and appropriately cited--plagiarism in any form will not be tolerated. The University's policies on academic dishonesty are set forth in the student code of conduct here.

For the overall course grade, a preliminary absolute mark will be assigned to each student based on the percentage of the total possible points they earn according to the standard formula: A = 90-100, B = 80-90, C = 70-80, etc., with +'s and -'s given for the upper and lower third of each range, respectively. Based on the distribution of preliminary grades for all students (i.e., "the curve"), the instructor may increase these grades monotonically to calculate final grades. This means that your final grade can't be lower than your preliminary grade, and your final grade won't be higher than that of anyone who had a higher preliminary grade.

I will try to keep you informed about your standing throughout the semester. If you have any questions about grading or expectations at any time, please feel free to ask me.

Book sources

Links/readings

Schedule

Note: The blue squares in the "#" column below indicate Tuesdays.

# Date Topic Notes Readings Assignments/slides
1 Feb. 8 Introduction Graphics background, course information Marschner, 1-1.4
2 Feb. 10 2-D, 3-D Geometry Vector & matrix review, homogeneous coordinates, 2-D & 3-D transformations, quaternions Marschner, 2.4, 5.2-5.2.2, 6-6.3 (skip 6.1.6, 6.2.1-6.2.2), 16.2.2
3 Feb. 15 3-D Geometry More 3-D transformations, camera manipulation & the view volume Marschner, 6.5-7.2
4 Feb. 17

Add/drop deadline Feb. 26

3-D Geometry Perspective projection, geometry pipeline, transformations with GLM Marschner, 7.3, 7.5; OpenGL tutorials #1 (including installation instructions), #3

HW #1

5 Feb. 22
OpenGL/GLFW Program initialization, window creation, geometric primitives Marschner, 17-17.7, 17.9-17.11
6 Feb. 24 OpenGL/GLFW Basic animation, user interface callbacks OpenGL tutorial #6
7 Mar. 1 GPU programming Introduction to GLSL, vertex shaders vs. fragment shaders; GLSL texturing demo Marschner, 17.8; Orange book Chaps. 2-5 HW #1 due
8 Mar. 3 Shading Radiometry: irradiance, radiosity, radiance, BRDFs Marschner, 10-10.2.1, 20-20.2

HW #2

9 Mar. 8 Shading Diffuse, specular reflection, Gouraud/Phong shading details; OpenGL, GLSL shading methods Marschner, 10-10.2.2; OpenGL tutorial #8
10 Mar. 10 Textures Finish shading/lighting; texture-mapping basics, bump mapping Marschner, 11.2, 11.4 (homogeneous division material--not barycentric coords), 11.5
11 Mar. 15 Textures Texturing pipeline, bump maps, lightmaps, environment maps, shadow maps Marschner, 11.1.3-11.1.4, 11.3
12 Mar. 17 Midterm review HW #2 due
13 Mar. 22 MIDTERM EXAM
14 Mar. 25 Particle systems Flocking; introduction to Bullet physics library OpenGL tutorial on clicking, Bullet physics manual (you don't have to read all of it, it's just for reference); Marschner, 11.1.3-11.1.4, 11.3

HW #3

Mar. 29 NO CLASS
Spring break
Mar. 31 NO CLASS
Spring break
Apr. 5 NO CLASS
Instructor away
15 Apr. 7 Textures, clipping Bilinear vs. nearest-neighbor filtering, magnification/minification, mipmaps; line and triangle clipping Marschner, 11.4.4-11.4.5
16 Apr. 12 Hidden surface elimination Backface culling, Z-buffering, painter's algorithm Marschner, 8.1.3-8.1.6,, 8.2-8.2.3, 8.4 HW #3 due
17 Apr. 14 Finish hidden surface elimination; line drawing BSP trees; DDA, midpoint line-drawing Marschner, 12.4, 8.1-8.1.1, 8.3 HW #4
18 Apr. 19 A little Blender, shape modeling Bezier curves and surfaces, Catmull-Rom splines, subdivision Marschner, 15-15.6.1 (ignore material on knots, Hermite form)
19 Apr. 21 Ray tracing Ray casting, intersection testing Marschner, 4
20 Apr. 26 Ray tracing Shadow rays (including soft shadows, ambient occlusion) Marschner, 4
21 Apr. 28
Withdraw deadline May 3
Ray tracing Reflections (including glossy), distributed/distribution ray tracing Marschner, 4 HW #5
22 May 3 Global illumination Finish refractions, super-sampling for anti-aliasing, spatial data structures Marschner, 4
23 May 5 Global illumination Bidirectional ray tracing, photon mapping Marschner, 4, 12.3, 13.1, 13.4; "Bidirectional Ray Tracing" paper, photon mapping introduction, online demo
24 May 10 Noise, bonus topic: animation basics Value/Perlin noise, rigging Marschner, 11.5.2-11.5.3, Orange book 15
25 May 12 Final review

HW #5 due

26 May 17 SIGGRAPH videos
May 17-18 HW #5 demos demo sign up link will be here
May 19-26 FINAL EXAMS