GithubHelp home page GithubHelp logo

filipkernan / imgd-cs-420x-2022.github.io Goto Github PK

View Code? Open in Web Editor NEW

This project forked from imgd-cs-420x-2022/imgd-cs-420x-2022.github.io

0.0 0.0 0.0 108 KB

Course website for IMGD/CS 420x 2022

HTML 100.00%

imgd-cs-420x-2022.github.io's Introduction

IMGD/CS 420x: Graphical Simulation of Physical Systems

This course focuses on the digital simulation of physical systems and strategies for interactive representation. Topics include:

  • Parallel computing on graphics processing units (GPUs)
  • Realtime graphics techniques
  • The history of analog interactive visuals
  • Interaction techniques for controlling digital simulations

Students will explore digital simulations of real world phenonmenon, such as chemical diffusion models, models of artifical life, fluid simulations, and video feedback. The class is designed to encourage both technical and aesthetic exploration.

All students will be expected to maintain a course website that contains links to all assignments. Videos should be posted to "permanent" locations (Vimeo, YouTube etc.) and embedded / linked in your course website. Details on this website can be found in the onboarding assignment.

Assignments and examples for this class will primarily use GLSL / JavaScript, however, other environments and systems for GPU programming will be discussed and may be suitable for final projects.

Course Outline

This is an experimental course; as such this outline is subject to change. I am happy to make minor additions if there are related topics of interest that are not mentioned here... please let me know!

Week 1: Getting Started / Review

1/12 - Basic Intro to WebGL / Shader programmming Assignment:

1/13 - GLSL Live Coding and History-Visual Music. Assignments:

Week 2: Tech - Intro to WebGL and modular shaders

1/17 - Martin Luther King Jr. Day - NO CLASS

1/20 - Intro to WebGL and modular shaders Assignments:

Week 3: Automata, Reaction Diffusion, and Rendering to Texture

1/24 - Rendering to Texture, 1D / 2D Automata, Game of Life

1/27 - Reaction Diffusion

Week 4: Perlin Flows and Modular GLSL,

1/31 - Modular GLSL. Assignments:

Week 5: Interaction in Digital Arts

Week 6: Other ways to tame the GPU: OpenCL + WebGPU + CUDA

Week 7: ???

Week 8: Final Project Presentations & Wrapup

3/2 - Wrap-up, preliminary final project critiques
3/5 - Final Project Presentations

Grades

Your course grade comes from three parts:

Assignments (55%)
Final Project (35%)
Quizzes, in-class assignments, attendance (10%)

There will most likely be 4โ€“5 assignments in the course in addition to the final project. I reserve the right to adjust the above if needed.

I'm guessing everyone will need to turn in at least one assignment late this term given our current situation; just let me know! I don't want anyone getting too far behind in the class as the technical material is sequential, but I'll do my best to help you figure out a reasonable schedule for completing your coursework.

Attendance

Attendance is required. Please notify the instructor in advance over Discord if you must miss class. All classes will be recorded for asynchronous viewing / review.

Academic Integrity

The goal of this class is to both create aesthetically interesting content and understand the code used to create it. In order to understand the code, you need to author it yourself. Copying and pasting code is not allowed in this class, unless explicitly stated by the instructor. If you have a question about this, ask the instructor!!

Collaboration is encouraged in this class. There are many ways in which you can assist others without giving them code and answers. Providing low-level implemetation details (small code fragments that contribute to, but don't complete on their own, major portions of assignments) is great. For example, telling a classmate that they need to use the smoothstep() function in GLSL and showing them how to call it.

imgd-cs-420x-2022.github.io's People

Contributors

charlieroberts avatar justin-gaborit avatar jlduerk avatar wdandanw avatar evelyntrvn avatar filipkernan avatar kerneylh avatar marzpuente avatar billymcross avatar bjaubuchon avatar justgaret23 avatar samuelrodgers avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.