CSE 160 -- Spring 2021 -- course overview (2024)

    CSE 160 -- Spring 2021 -- course overview (1)
    Interactive Computer Graphics:A top-down approach with WebGL, 7th edition
    Angel and Shreiner
    <! -------------------------------------------------------- >

    CSE 160L Text

    <! -------------------------------------------------------- >

    Prerequisites:

      Math 12 or 17 or 21 or 27 -- matrix manipulation, determinants,dot products, and cross products.
      CMPS/CSE 101 -- good programming practices/documentation, data structures,algorithms, java/C/C++ programming.You will also need to pick up a new programming language (javascript) on your own.

    Learning Objectives:

    Learn concepts and algorithms for transformations, lighting, shading, viewing, projection, and hidden surface elimination.At the end of the quarter,demonstrate mastery of these topics by implementing a program that canrender objects with proper lighting and shading, and allow users tomanipulate objects and camera, without the aid of higher level libraries.

    Grading Policies:

    • You will receive the same grade for CSE 160 and CSE 160L.
    • The course evaluation will be based on a combination of:quizzes, homeworks, programming assignments, and participation/attendance.Programming assignments account for half your grade.The rest makes up for the other half.Here's the breakdown:
      Programs 50%
      Homeworks 15%
      Quizzes 30%
      Att/Part 5%
    • It is important to note thatprograms are built on top of one another.Make sure you start early on each one so that you don'tend up playing catch-up the whole quarter.
    • Currently, I don't have a pre-determined number of homeworks.But I expect them to be short, supportive components for yourprogramming assignments, or something to help address commonquestions raised during class, or to reinforce something thatmight be important.
    • Quizzes are held during lecture hours.There will be around 6 short quizzes through the quarter usually on Fridays.Each one will be roughly 15-30 minutes.When comparing with past offerings of in-person versions of this course,around 3 quizzes would be about 1 midterm.
    • Attendance in the lecture is required.You are responsible for materials covered in the lecture and the labs.Do ask questions or contribute in class/chat, on piazza, contests, etc.
    • Late submissions are not accepted.
    • THERE WILL BE NO MAKE-UP QUIZZES OR PROGRAMS.
      THERE WILL BE NO INCOMPLETES GIVEN IN THE CLASS.

    Office Hour:A note about office hours:office hours end if/when there is no one else waiting to talk to me unless you let me know inadvance that you need to come later.Send me an email to schedule something else if you can't make it duringmy regular office hours.

    General Policies:All course work are intended as individual effort(unless explicitly mentioned otherwise) and are graded as such.It is okay to discuss general approaches and algorithms withother students, but this should be done without writing, looking,or sharing code.Cheating or plagiarism in any form will not be tolerated.You are responsible for protecting your solutions and programsfrom being copied by others.Refer to the Academic Misconduct Policy for Undergraduates.If anything is not clear, ask me.

    Getting ready for Quizzes:We will be using gradescope for quizzes, etc.Please create a gradescope account as soon as possible -- our first quizwill be 1st Friday of the quarter.Make sure you use the same canvas info for your gradescope account tominimize problems with getting your accounts linked properly.From what I can see on my end, your canvas enrollment in the class isvisible on gradescope.

    Also familiarize yourself with Using Gradescope with Canvas as a Student

    Protecting your work:Because WebGL is run off a browser, it is important that you developyour code "offline" by pointing the browser to a local file as opposed to a publiclyaccessible url.

    Submitting your work:In general, you will be submitting your program on Canvas.Put all the required materials for each programming assignment into its own folderi.e. prog0, prog1, ...Each folder should contain at least 4 files:

    • features.html file -- this is the landing page for your assignment.It should contain your name, login ID,programming assignment number, date, etc.It should have a high-level description of your implementation including what wasimplemented, what was not, any special features, a user-guide if appropriate, etc.It should have at least one output image,a link to your javascript code,and a link to the driver.html file for the user (grader) to test your code.
    • driver.html file -- this "runs" your code.
    • your javascript code including the lib folder (with your extended cuon-matrix-cse160.jsmatrix library), and
    • screen shot of your output.

    All references in both html files should be local i.e.relative to your submit folder.

    Your javascript code should have proper documentationincluding comment blocks for each function, and inline comments as appropriate.Code should be formatted so that it is easy for humans to read.

    You can re-submit as often as you want.We will only grade the most recent submission.

    Zipping your submission folder.Assume you have the following folder: progN.

    $ ls -F progNcode/ driver.html features.html README screenshot1.jpg screenshot2.jpg$ ls -F progN/codelib/ prettyPix.js$ ls -F progN/code/libcuon-matrix-cse160.jscuon-utils.jswebgl-debug.jswebgl-utils.js$ cd progN$ zip -r progN.zip * adding: code/ adding: code/prettyPix.js adding: code/lib/ adding: code/lib/cuon-matrix-cse160.js adding: code/lib/cuon-utils.js adding: code/lib/webgl-debug.js adding: code/lib/webgl-utils.js adding: driver.html adding: features.html adding: README adding: screenshot1.jpg adding: screenshot2.jpg$ _ 
    Make sure that your driver.html file refer to the appropriate js file within the progN folder.

    Contests:In assignments where there's room for expressing personal creativity, etc.i.e. prog2 onwards, we encourage everyone to participate.Participation involves:(a) letting the graders know that you would like to enter the contest,(b) giving your consent to let your peers view and vote on your submission.We encourage everyone to participate by voting to select the winner(s) ofeach programming contest.

    Exception to copying policy:Because programs are built on top of each other, running contests actuallyserves two purpose:(a) make the class more fun by sharing/showing off your work to your peers,(b) learning from your peers -- if you decide that you want to switch yourcode base to your peer's code for the remaining programming assignments,you are allowed to do on the following conditions:(i) you acknowledge/credit your peer's work in your code and documentation, and(ii) proceed from there with your own work/effort as before.This can be done only after a programming assignment has been graded.For example, we run a contest after the prog2 due date,you can decide to use your peer's prog2 code to build your prog3.However, you cannot use your peer's prog3 code to build your prog3 as that wouldbe considered cheating.<! -------------------------------------------------------- >

    Last modifiedMonday, 24-May-2021 09:55:47 PDT.CSE 160 -- Spring 2021 -- course overview (3)

    CSE 160 -- Spring 2021 -- course overview (2024)
    Top Articles
    Latest Posts
    Article information

    Author: Aracelis Kilback

    Last Updated:

    Views: 6160

    Rating: 4.3 / 5 (64 voted)

    Reviews: 87% of readers found this page helpful

    Author information

    Name: Aracelis Kilback

    Birthday: 1994-11-22

    Address: Apt. 895 30151 Green Plain, Lake Mariela, RI 98141

    Phone: +5992291857476

    Job: Legal Officer

    Hobby: LARPing, role-playing games, Slacklining, Reading, Inline skating, Brazilian jiu-jitsu, Dance

    Introduction: My name is Aracelis Kilback, I am a nice, gentle, agreeable, joyous, attractive, combative, gifted person who loves writing and wants to share my knowledge and understanding with you.