test

Lesson Overview

This session is the foundational first part of a two-session course designed to introduce you to GLSL (OpenGL Shading Language) within TouchDesigner. Led by instructor Fanta, this class aims to equip you with the fundamental understanding and skills necessary to begin writing your own shaders.

The first session primarily focuses on working with GLSL TOPs for 2D image processing.
You will learn:

The Core Concept:

Understanding the difference between CPU and GPU processing. A GPU processes all pixels simultaneously, which is the fundamental principle behind shaders. ou’ll learn that a shader is a small piece of code that runs on each pixel individually but concurrently.

Basic Syntax:

Get introduced to the C-based syntax of GLSL. This includes understanding variable types like float and vec4 (commonly used for color), comments, and the structure of the main function.

Uniforms:

Learn how to use Uniforms to pass data from TouchDesigner parameters into your shader code. Uniforms provide values that are consistent across the entire frame but can change over time, allowing external control over your visuals.

UV Coordinates (vUV):

Discover the vUV variable, a special built-in that gives each pixel its normalized coordinate (typically from 0 to 1). This allows you to make each pixel behave differently based on its position.

Built-in Functions:

Begin exploring some essential built-in GLSL functions (like sin, TDPerlinNoise, distance, mix, step, smoothstep). These functions are the “words” of the language, enabling powerful operations with concise code.

Texture Sampling:

Learn how to sample (read data/color from) input TOPs within your shader using functions like texture.

Custom Functions:

Understand how to write your own reusable functions within your shader code, making your programming more modular and efficient.


Useful Links

docs.derivative.ca/Write_a_GLSL_TOP#Built-in_Functions

en.wikipedia.org/wiki/Perlin_noise

shadertoy.com

thebookofshaders.com


About the Instructor

VanTa is an experienced developer, with a strong focus in the field of computer graphics. In his creations, he always tries to find a balance between geometry, abstraction, and chaos. With a background in environmental science, his work revolves around the intersection between art, science, and technology. He loves when digital elements align with the real world; either in augmented reality overlays, projection mapping on architectural landmarks, or pixels floating in thin air. VanTa also performs as a VJ and musician in different locations and festivals around the world. When he finds the time, he teaches coding to designers and artists.


Get Support

To get support outside of the live session, please join our discord server with this invite:
https://discord.gg/F7cXRMYUK7



hjgtzmtgzm