FILM A226: Coding Basics for Immersive Media Applications
Item | Value |
---|---|
Curriculum Committee Approval Date | 04/08/2020 |
Top Code | 061410 - Multimedia |
Units | 3 Total Units |
Hours | 72 Total Hours (Lecture Hours 45; Lab Hours 27) |
Total Outside of Class Hours | 0 |
Course Credit Status | Credit: Degree Applicable (D) |
Material Fee | No |
Basic Skills | Not Basic Skills (N) |
Repeatable | No |
Grading Policy | Standard Letter (S) |
Course Description
In contrast to traditional coding classes offered in Computer Science departments, this course offers a very basic-level overview and training in multiple coding languages specific to Immersive Media and Game Design, and only to the level needed to address typical programming challenges that may come up in the building of VR/AR and related projects using Game Engines. Coding languages and software taught will reflect only the current industry standards for Immersive Media (which often change), but may likely include elements of C#, C++, Javascript, Swift, XCode, AR Kit, AR Core, and Vuforia. This course is meant to be a 'primer', as a supplement to other Immersive Media courses, and not designed to teach any one coding language extensively. Enrollment Limitation: IMVR A210; students who complete FILM A226 may not enroll in or receive credit for IMVR A210. ADVISORY: FILM A220 or FILM A221; and FILM A223. Transfer Credit: CSU.
Course Level Student Learning Outcome(s)
- Discriminate between a variety of coding languages and techniques used in Immersive Media (VR/AR) content creation and video game design.
- Demonstrate a basic level of proficiency in: a. basic coding for game-engine-specific modifications and scripting routines b. basic coding for Augmented Reality (AR) content creation and AR-enabled device integration c. Troubleshooting and modification of bad code
- Demonstrate basic theoretical understanding of coding techniques applicable to Immersive Media (VR/AR) content creation and video game design.
Course Objectives
- 1. List the different coding languages often used in creating Immersive Media (VR/AR) and video games.
- 2. List the 3D modeling, game engine, and related Immersive Media software using each type of coding language.
- 3. Understand the basic coding techniques used to accomplish scripts and routines specific to Immersive Media content creation.
- 4. Understand essential terminology used in coding for Immersive Media and Game Design.
- 5. Experience and critique commercially available Immersive Media to recognize coded scripts at work.
- 6. Demonstrate effective coding to modify an existing Game Engine routine.
- 7. Demonstrate proficiency in troubleshooting an intentionally poorly-written piece of code to identify mistakes.
- 8. Demonstrate proficiency in creating new code from scratch to accomplish a basic scripting task in an Immersive Media (VR/AR) project.
- 9. Recognize the difference between coding languages by examining a section of code.
- 10. Understand basic 3D modeling and game-engine software and how to switch between modes to allow for manual coding.
- 11. Understand the basics of smartphone operating systems, and coding processes enabling them to integrate AR (Augmented Reality)
- 12. Understand the basics of specialized AR Development Kits designed to work with smartphones and AR goggles
- 13. Demonstrate proficiency in basic coding for Augmented Reality (AR) content creation for use on AR-enabled devices.
Lecture Content
I. Introduction to Coding for Immersive Media A. Understanding Immersive Media (VR/AR) and its creation workflow B. Where does coding fit in. C. Coding languages commonly used in Immersive Media creation D. Fundamentals of all coding language structures starting with the very basics E. Learning to think in code with or without prior knowledge F. Self-paced alternative ways to practice coding available in apps and online II. Coding used in the Most Common 3D Modeling and Game Engine platforms A. An overview of C-based languages and how theyre used in game engines B. Analyzing lines of code pulled from game engine scripts C. Modifying code to add functionality or fix problems in a game engine project D. Creating new code to accomplish a very simple task E. Troubleshooting and checking your work III. Coding used in the Most Common Smartphone Operating Systems for AR A. An overview of Android and iOS related to AR B. Analyzing lines of code pulled from AR-enabled apps C. Modifying code to add functionality or fix problems in an AR project D. Creating new code to accomplish a very simple task in AR E. Working with accompanying software and languages (Vuforia, Xcode, etc.) F. Image recognition using smartphone cameras for use in AR G. Troubleshooting and checking your work III. Coding used in AR Goggle Development Kits IV. Coding used in VR and Haptic Device Development Kits V. Chosing a Coding Language to Focus on Based on Immersive Project Type VI. Beyond the Basics in the Most Currently-Viable Language - Industry Guided A. Further exploration and practical training in one coding language path B. Final testing and output of a coding script into a game engine to accomplish a higher-level Immersive Me dia-related task
Lab Content
I. Basic coding practice for C-based coding languages used in Game Engines II. Basic coding practice for smartphone-based coding languages used for AR III. Basic coding practice for VR and Haptic Development Kits IV. Higher-level coding practice for a select coding language - based on current Immersive Media industry viability, as well as overall student proficiency and interest
Method(s) of Instruction
- Lecture (02)
- DE Online Lecture (02X)
- Lab (04)
- DE Online Lab (04X)
Instructional Techniques
1. Lecture 2. Demonstration 3. Video examples 4. One-on-one instruction 5. Individual assignments 6. Group assignments 7. Assignment critique 8. Examinations
Reading Assignments
Students will Read 1-2 hours per week from assigned from handouts, coding manuals, and online sources, as well as analyzing code from various sources.
Writing Assignments
Students will spend 1-2 hours writing computer code in a variety of coding languages pertaining to Game Engines and AR apps used in the creation of Immersive Media. Proficiency will be demonstrated by satisfactorily completing assignments and by incorporating the elements of coding they have learned. Students will demonstrate critical thinking and problem solving skills through the utilization of unique coding techniques relevant to Immersive Media, and by working through coding challenges as they arise.
Out-of-class Assignments
Students will spend 1-2 hours creating and testing computer code in a variety of coding languages pertaining to Game Engines and AR apps used in the creation of Immersive Media.
Demonstration of Critical Thinking
A. Assigned individual projects B. Examinations
Required Writing, Problem Solving, Skills Demonstration
Students will write computer code in a variety of coding languages pertaining to Game Engines and AR apps used in the creation of Immersive Media. Proficiency will be demonstrated by satisfactorily completing assignments and by incorporating the elements of coding they have learned. Students will demonstrate critical thinking and problem solving skills through the utilization of unique coding techniques relevant to Immersive Media, and by working through coding challenges as they arise.
Eligible Disciplines
Commercial art (sign making, lettering, packaging, rendering): Any bachelors degree and two years of professional experience, or any associate degree and six years of professional experience. Computer science: Masters degree in computer science or computer engineering OR bachelors degree in either of the above AND masters degree in mathematics, cybernetics, business administration, accounting or engineering OR bachelors degree in engineering AND masters degree in cybernetics, engineering mathematics, or business administration OR bachelors degree in mathematics AND masters degree in cybernetics, engineering mathematics, or business administration OR bachelors degree in any of the above AND a masters degree in information science, computer information systems, or information systems OR the equivalent. Note: Courses in the use of computer programs for application to a particular discipline may be classified, for the minimum qualification purposes, under the discipline of the application. Masters degree required. Multimedia: Any bachelors degree and two years of professional experience, or any associate degree and six years of professional experience.
Other Resources
1. Open Source coding scripts on Game Engine websites and forums. 2. Existing computer code pertaining to Immersive Media projects.