Beginner-Friendly Shader Programming in p5.js v2 (lgm2026) episode artwork

EPISODE · Apr 22, 2026 · 23 MIN

Beginner-Friendly Shader Programming in p5.js v2 (lgm2026)

from Chaos Computer Club - recent events feed (low quality) · host Dave Pagurek, Luke Plowden, Perminder Singh, Kenneth Lim, Kit Kuksenok

For over a decade, p5.js has helped learners to make algorithmic art on the web. p5.js is community-driven, prioritizes access and inclusion, and makes coding beginner-friendly by requiring as little prior knowledge as possible to get hands-on, while supporting continued learning. How can a beginner-friendly shader programming API address the challenges that learners face? The parallel computation model of GPUs differs from the sequential model of CPUs, and is shaped by historical development of graphics APIs under fast-changing hardware constraints. Programming shaders relies on knowledge about graphics pipelines, target platforms, and sometimes historical quirks. We set out to design a shader creative coding experience for scaffolded learning. We present p5.strands, which allows getting started with shaders using the familiar syntactic and conceptual vocabulary of p5.js sketches. It can be used in p5.js v2 sketches, and works by transpiling JavaScript to GLSL. A p5.strands shader does not explicitly specify a full rendering pipeline. Instead, it describes modifications to a default shader. A shader author is not required to understand how every shape is positioned on the screen, or how all lighting is calculated. The code below shows a shader adding a per-pixel noise texture: function noiseTexture() { pixelInputs.begin(); pixelInputs.color.rgb *= noise(pixelInputs.texCoord * 5); pixelInputs.end(); } material = buildMaterialShader(noiseTexture); shader(material); sphere(50); Writing shaders is possible without reference to vertex or fragment shaders, uniforms, attributes, GLSL data types, or GLSL itself. These concepts are intentionally introduced incrementally. Uniforms, for example, can be introduced when an effect needs additional information, but they are not required to get started. We rely on community feedback to test assumptions and focus development efforts. This presentation introduces both the API design so far, the process to get there, and next steps for this beginner-friendly shader programming project. Also see the related p5.strands Hybrid Hackathon. Licensed to the public under https://creativecommons.org/licenses/by/4.0/ about this event: https://pretalx.c3voc.de/lgm-2026/talk/VECVVA/

For over a decade, p5.js has helped learners to make algorithmic art on the web. p5.js is community-driven, prioritizes access and inclusion, and makes coding beginner-friendly by requiring as little prior knowledge as possible to get hands-on, while supporting continued learning. How can a beginner-friendly shader programming API address the challenges that learners face? The parallel computation model of GPUs differs from the sequential model of CPUs, and is shaped by historical development of graphics APIs under fast-changing hardware constraints. Programming shaders relies on knowledge about graphics pipelines, target platforms, and sometimes historical quirks. We set out to design a shader creative coding experience for scaffolded learning. We present p5.strands, which allows getting started with shaders using the familiar syntactic and conceptual vocabulary of p5.js sketches. It can be used in p5.js v2 sketches, and works by transpiling JavaScript to GLSL. A p5.strands shader does not explicitly specify a full rendering pipeline. Instead, it describes modifications to a default shader. A shader author is not required to understand how every shape is positioned on the screen, or how all lighting is calculated. The code below shows a shader adding a per-pixel noise texture: function noiseTexture() { pixelInputs.begin(); pixelInputs.color.rgb *= noise(pixelInputs.texCoord * 5); pixelInputs.end(); } material = buildMaterialShader(noiseTexture); shader(material); sphere(50); Writing shaders is possible without reference to vertex or fragment shaders, uniforms, attributes, GLSL data types, or GLSL itself. These concepts are intentionally introduced incrementally. Uniforms, for example, can be introduced when an effect needs additional information, but they are not required to get started. We rely on community feedback to test assumptions and focus development efforts. This presentation introduces both the API design so far, the process to get there, and next steps for this beginner-friendly shader programming project. Also see the related p5.strands Hybrid Hackathon. Licensed to the public under https://creativecommons.org/licenses/by/4.0/ about this event: https://pretalx.c3voc.de/lgm-2026/talk/VECVVA/

NOW PLAYING

Beginner-Friendly Shader Programming in p5.js v2 (lgm2026)

0:00 23:17

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

LIGHTS, CAMERA, SMILE! Creatives Club Media Lights, Camera, Smile, is a podcast for anyone with a dream to share something with the world, out of the overflow of themselves - be it their mind, their heart, their personalities, and much more. Each of us are alive in this moment in time, with an innate ability to have ideas and create various things to benefit both ourselves and the people around us for a reason, and here, you will find the encouragement, the inspiration, and the motivation to do just that. Hosted by Cicily, founder of Creatives Club, she dives into various topics surrounding creativity and business. Exploring entrepreneurship for creatives in a corporate reality, sharing tips and tricks in a media centered company, answering questions regarding what a creative actually is are just a few of the things discussed on this podcast. Be encouraged to create for yourself as Cicily gets vulnerable by pivoting the camera to herself for the first time.To submit questions for Cicily to answer, or have her address certain t The PFN Cincinnati Bengals Podcast Pro Football Network The PFN Cincinnati Bengals Podcast is where you can stay up-to-date with the latest news and analysis on the Cincinnati Bengals! Our hosts, industry experts Jay Morrison and Dallas Robinson, provide weekly coverage of all the latest rumors and updates about the Bengals. Don’t forget to follow the show to receive new episodes directly in your podcast feed and leave a rating and review to let us know your thoughts. Piramidi Club The Bitcoin Butcher La Migliore Pizza di Firenze 🎙️Truth and Testimony the Broadcast Ray Gauthier & Adrian Scott This Podcast discusses and teaches the word of God. You will hear about world news and how it relates to bible prophecy. You will also hear interviews and testimonies from men and women of God who have devoted their lives to serving Yeshua (Jesus). Hosted by Ray Gauthier and Adrian Scott. These two long term broadcast colleagues have joined forces once again to provide you the highest quality in broadcast excellence, all for the glory of Yahweh: the God of all creation!You can see most of the podcasts uploaded here at our Youtube Channel.https://www.youtube.com/@truthandtestimonythebroadcast

Frequently Asked Questions

How long is this episode of Chaos Computer Club - recent events feed (low quality)?

This episode is 23 minutes long.

When was this Chaos Computer Club - recent events feed (low quality) episode published?

This episode was published on April 22, 2026.

What is this episode about?

For over a decade, p5.js has helped learners to make algorithmic art on the web. p5.js is community-driven, prioritizes access and inclusion, and makes coding beginner-friendly by requiring as little prior knowledge as possible to get hands-on,...

Can I download this Chaos Computer Club - recent events feed (low quality) episode?

Yes, you can download this episode by clicking the download button on the episode player, or subscribe to the podcast in your preferred podcast app for automatic downloads.
URL copied to clipboard!