Instructor: Prof. Tommy Dang
Email: tommy.dang@ttu.edu
Office hours: 3:00 pm - 4:00 am MWF and available to talk right after the class
Office: Eng Center 306C

Class: MCOM 281, 4:00 pm - 4:50 pm MWF Aug 24, 2020 - Dec 09, 2020
Undergraduate level: Special Topics in Computer Science: Virtual Reality - 37564 - CS 4331 - 003
Graduate level: Special Problems in Computer Science: Virtual Reality - 37882 - CS 5331 - 003

Tutorial Assistant (TA): Ngan Nguyen
Email: ngan.v.t.nguyen@ttu.edu
Office hours: 3:00 pm - 4:00 am MWF, Eng Center 305

COVID-19 statements:
  • If Texas Tech University campus operations are required to change because of health concerns related to the COVID-19 pandemic, it is possible that this course will move to a fully online delivery format. Should that be necessary, students will be advised of technical and/or equipment requirements, including remote proctoring software.
  • If at any time during this semester you feel ill, in the interest of your own health and safety as well as the health and safety of your instructors and classmates, you are encouraged not to attend face-to-face class meetings or events.
  • If you are ill and think the symptoms might be COVID-19-related:
  • Call Student Health Services at 806.743.2848 or your health care provider. After hours and on weekends contact TTUHSC Nurse-on-Demand (After Hours/Weekends) at 806.743.2911.
  • Self-report immediately using the Dean of Students COVID-19 webpage COVID-19 Absence Report | Dean of Students | TTU
  • COVID-19 Absence Report Pandemic Policy: Absence due to Illness . Due to our focus on health and safety during the COVID-19 situation, you are encouraged not to attend class or otherwise participate in face-to-face events if you are feeling ill. This website has specific directions about how to upload documentation from a medical provider and what will happen if your illness renders you unable to participate in classes for more than one week.
  • If your illness is determined to be COVID-19-related, all remaining documentation and communication will be handled through the Office of the Dean of Students, including notification of your instructors of the period of time you may be absent from and may return to classes.
  • If your illness is determined not to be COVID-19-related, please follow steps 2.a-2.d in the link.

  • Course Description:
  • During the course, students will get hands-on experiences on building AR/VR for various real-world datasets. Students will be accessed their learning through two AR/VR projects and a final exam.
  • Extensive computer use is required.

  • Prerequisites:
  • Students are expected to have basic programming skills. Completed material in computer programming topics (e.g. CS 2365: Object-Oriented Programming, CS 3364: Design and Analysis of Algorithms or equivalent) is helpful and required.
  • Students majoring in areas other than Computer Science are also encouraged to enroll.
  • Please contact the instructor if you are unsure if you satisfy the prerequisites.

  • Attendance:
    Attendance is required. Part of your grade is from your in-class participation/contribution. So, you should consider to go the all classes, make comments, and ask good questions (including contributions on Piazza).
    Absence due to religious observance:
    The Texas Tech University Catalog states that a student may be excused from attending classes or other required activities, including examinations, for the observance of a religious holy day, including travel for that purpose. A student whose absence is excused for this purpose may not be penalized for that absence and shall be allowed to take an examination or complete an assignment from which the student is excused. (see p.51)
    Absence due to officially approved trips:
    The Texas Tech University Catalog states that the person responsible for a student missing class due to a trip should notify the instructor of the departure and return schedule in advance of the trip. The student may not be penalized and is responsible for the material missed. (see p.50)
    Late Work:
    Assignments are due when specified, but will be accepted late (with a 20% penalty for each day) until graded work is returned. If you know you will be absent ahead of time, turn your assignment in early.
    Ethical Conduct:
  • Students are expected to comply with the Texas Tech Code of Student Conduct in all aspects of this class. The Code of Student Conduct may be found from the Student Handbook and/or Office of Student Conduct.
  • In order to assure that all students have the opportunity to gain from time spent in class, unless otherwise approved by the instructor, students are prohibited from engaging in any other form of distraction, such as reading newspapers, working on other classes, taking cell phone calls, text messaging, and working on laptop computers. Inappropriate behavior in the classroom shall result, minimally, in a request to leave class.
  • Violations of conduct including academic dishonesty, foul language, and classroom citizenship are eligible to be reported to Student Judicial Services.

  • Evaluation:
    All submissions are graded according to the assignment guidelines, course policies, verbal instructions/explanations and materials given in class lectures. The numeric breakdown of your final grade is computed as follows:
    Percentage What to do Notes
    Project 1: 25% Human scale scene experienced from the 'inside out' Individual/group project
    Project 2: 25% Virtual world from data and looking at it from the 'outside in' Group project (teammates are selected by students/instructor)
    Final: 20% Questions on the lectures, videos, and student presentations After Thanksgiving
    Student's Choice Presentations: 10% of interest to you in the area of VR / AR Individual
    Class Contribution: 20%, including 2% online feedback for Student Choice Presentation, 2% online feedback for Project 1, and 2% online feedback for Project 2 Comments/Ask questions Don't ask trivial questions.
    Can contribute via piazza
    One contribution is 0.5%. Max 1% per day.
    Peer evaluation: 2% Feeback from teammates for Project 2

      A = 85 - 100%
      B = 70 - 84%
      C = 55 - 69%
      D = 40 - 54%
      F = 0 - 39%

    Tentative Schedule:
    Topics Face to face Recorded lectures
    Week 1: 08/24-28 - Course overview
    - Covid policies and requrirements Link
    - Student's Choice topic selection is due at 11:59pm, Sunday 08/30
    Wed 08/26 - 08/24 Passcode: sR#u2&dV
    - 08/26 Passcode: d#i0J4Du
    - 08/28 Passcode: ^5.BdJ03
    Week 2: 08/31 - 09/04 - Project 1 is out
    - Introduction to Javascripts
    - Introduction to VR, VR vs. AR
    - Student's Choice presentations
    Wed 09/02 - 08/31 Passcode: R2@E1W6. Starting from 30:00
    - 09/02 Passcode: PMPjK^42 Starting from 32:00
    - 09/04 Passcode: %w$nR7vR Starting from 07:00
    Week 3: 09/07 - 09/11 - Labor day
    - Student's Choice submission is due at 11:59pm, Tuesday 09/08
    - The history of VR
    - Student's Choice presentations
    Wed 09/09 - 09/07: No class
    - 09/09 Passcode: 8*5ai9?j Starting from 50:00
    - 09/11 Passcode: *4.yXKcK Starting from 55:00
    Week 4: 09/14 - 09/18 - Introduction to Three.js
    - Aframe tutorial
    - Student's Choice presentations
    Wed 09/16 - 09/14 Passcode: Vn*JN!S9
    - 09/16 Passcode: 7*T5^?n+
    - 09/18 Passcode: Z%Z71DAE
    Week 5: 09/21 - 09/25 - The future of VR
    - Fundamental units in visual design
    - Student's Choice presentations
    Wed 09/23 - 09/21 Passcode: H$98C*Yc
    - 09/23 Passcode: i*5yZqjQ
    - 09/25 Passcode: $1=QnEXT
    Week 6: 09/28 - 10/02 - 3D Visual modeling and rendering
    - Project 1 link and code is due Sunday 10/4
    Wed 09/30 - 09/28 Passcode: uS#VA%7z
    - 09/30 Passcode: QS7?sPK1
    - 10/02 Passcode: O#EA7?0h
    Week 7: 10/05 - 10/09 - Project 1 presentations
    - Project 2 is out => Team assignment
    Wed 10/07 - 10/05 Passcode: mBp1nx$#
    - 10/07 Passcode: QV7?ZtbA
    - 10/09 Passcode: pyE.s$g1
    Week 8: 10/12 - 10/16 - Project 1 review, lessons learned (Open discussions)
    - Demo Oculus Rift in class
    - Project 2 Team formation is due Friday, Oct 16 --> Team assignment
    - Student's Choice presentations
    Wed 10/14 - 10/12 Passcode: S+jr^2fd
    - 10/14 Passcode: L=5ai0Y&
    - 10/16 Passcode: 8Az$n^Mi
    Week 9: 10/19 - 10/23 - Introduction to Unity3D (no attendance, may have quiz)
    - Position Tracking
    - Interaction and Navigation
    - Student's Choice presentations
    Wed 10/21 - 10/19 Passcode: 44+8ux?s
    - 10/21 Passcode: w!@c2NaM
    - 10/23 Passcode: 1#41F!yj
    Week 10: 10/26 - 10/30 - Unity tutorial (Project 2 related) by TA (no attendance, may have quiz)
    - VR hardware and software
    - Student's Choice presentations
    Wed 10/28 - 10/26 Passcode: AGm4^fWN
    - 10/27 Passcode: u0.@ZD3&
    - 10/30 Passcode: ns.1Ka4M
    Week 11: 11/02 - 11/06 - Project 2 mid-review is on Monday, Nov 2
    - Collaboration in VR
    - Student's Choice presentations
    Wed 11/04 - 11/02 Passcode: 9j0c54a+
    - 11/04 Passcode: jz0#*k?d
    - 11/06 Passcode: *s8%3M8R
    Week 12: 11/09 - 11/13 - Collaboration in VR
    - VR game designs (new)
    - Student's Choice presentations
    Wed 11/11 - 11/09 Passcode: I?bB1?uh
    - 11/11 Passcode: tr9s?69y
    - 11/13 Passcode: c^#H?gw7
    Week 13: 11/16 - 11/20 - More added VR lectures (Student may suggest the topic) (new)
    - Student's Choice presentations
    Wed 11/18 - 11/16 Passcode: .VZ6$eS%
    - 11/18 Passcode: 3M&Q+e0b
    - 11/20 Passcode: r%2%1pDL
    Week 14: 11/23 - Final exam review
    - Student's Choice presentations
    - Thanksgiving 2020 (no class on Wed and Fri)
    - Project 2 link and code is due Mon, Nov 23
    No face to face class - 11/23 Passcode: M?%MND0B
    Week 15: 11/30 - 12/04 - Project 2 presentations
    - Project 2 team report is due Sunday, Nov 29
    - Final exam: 4:30 p.m. to 7:00 p.m. Friday, Dec 4
    No face to face class - 11/30 Passcode: AeRE95c&
    - 12/02 Passcode: kRG$5WN^

    Topics and/or dates may be changed during the semester at the instructor’s discretion because of scheduling issues, developments in the discipline, or other contingencies.
    Textbooks:
    No official textbook but there will be some assigned readings. Here are some references:
    - Jos Dirksen, Learning Three.js : The JavaScript 3D Library for WebGL, 2015
    - Jos Dirksen, Three.js cookbook, 2015
    - Andreas Anyuru, Professional WebGL Programming: Developing 3D Graphics for the Web, 2012
    - Isaac Sukin, Game development with Three.js, 2013

    References:
    - https://courses.engr.illinois.edu/cs498sl3/sp2017/
    - http://creativecoding.evl.uic.edu/courses/cs491/
    Related Pages:
    - Aframe
    - three.js/
    - unity3d/
    © Last revised: Sep 28, 2020