\( \newcommand{\vecIII}[3]{\left[\begin{array}{c} #1\\#2\\#3 \end{array}\right]} \newcommand{\vecIV}[4]{\left[\begin{array}{c} #1\\#2\\#3\\#4 \end{array}\right]} \newcommand{\Choose}[2]{ { { #1 }\choose{ #2 } } } \newcommand{\vecII}[2]{\left[\begin{array}{c} #1\\#2 \end{array}\right]} \newcommand{\vecIII}[3]{\left[\begin{array}{c} #1\\#2\\#3 \end{array}\right]} \newcommand{\vecIV}[4]{\left[\begin{array}{c} #1\\#2\\#3\\#4 \end{array}\right]} \newcommand{\matIIxII}[4]{\left[ \begin{array}{cc} #1 & #2 \\ #3 & #4 \end{array}\right]} \newcommand{\matIIIxIII}[9]{\left[ \begin{array}{ccc} #1 & #2 & #3 \\ #4 & #5 & #6 \\ #7 & #8 & #9 \end{array}\right]} \)
  1. I'm still a little confused about the lookAt and up functions of the camera three.js API, specifically up.set.

    Well, up isn't a function; it's a property of the camera: a vector that determines how the camera is oriented. LookAt is a method that turns the camera to face a given point, preserving position and up.

  2. I hope to talk more about the fovy and lookat, and how we should approach the numbers when we saw different perspective of the same object.

    FOVY is how zoomed in the camera is.

  3. Can you go over how to use keyboard events to call functions and re-render the scene?

    Here's the basic idea:

    function randCam() {
         // overwrite the global used by the render function
         camera = new THREE.PerspectiveCamera( ?, ?, ?, ?);
         camera.position.set(?,?,?);
         camera.up.set(?,?,?);
         camera.lookAt(new THREE.Vector3(?,?,?);
         render();
    }
    
    TW.setKeyboardCallback("c", randCam, "sets up a random camera");
    
  4. Also, can you go over using up in various combinations, ie how to think about (1, 1, 0) or (1, 1, 1) when setting the up?

    I'd be glad to.

  5. Feeling good, would like to go over the final question of the Math problem set in class though.

    The triangle with colors on each vertex and a vertex in the interior with specified distances? Sure!

  6. The teddy bear camera demo is very useful for visualizing the camera and how the variables work together! Will we be having similar demos for future concepts?

    Whenever I can!