Difference between revisions of "CISC849 S2022"
(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 08:31, 13 January 2022
Course information
Description | CISC 849 -- Ethical Issues in Robotics and AI
|
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 |
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 | |
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 | |
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 | |
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 |