awesome-creative-coding
Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.
https://github.com/terkelg/awesome-creative-coding
Last synced: 15 days ago
JSON representation
Blogs • Websites
Other
- CreativeApplications.Net [CAN - Famous digital art blog.
- adriancourrèges.com - Blog of software engineer Adrian Courrèges. Articles about game graphics studies etc.
- madebyevan.com - WebGL experiments and articles by Evan Wallace.
- simonschreibt.de - Game art tricks, design tricks by Simon Schreibt.
- sighack.com - Blog about generative art algorithms and techniques, by Manohar Vanga.
- WebAudio Weekly - Newsletter to know everything about the WebAudio API
- bit-101.com - Blog by Keith Peters, specialised in creative coding.
- syntopia - Blog about generative art and systems, by Mikael Hvidtfeldt Christensen.
- songho.ca - Home of Song Ho Ahn, with a good collection of tutorials on OpenGL and math.
- jsdo.it-archives - Compilation of WebGL experiments including comparisons on WebGL frameworks and physics engine (oimo.js, cannon.js, ammo.js).
- ibreakdownshaders - Explore the math behind shaders.
- iquilezles.org - Home of Íñigo Quílez, specialised in GLSL and math snippets.
- clicktorelease.com - Home of Jaume Sanchez Elias, with demos, talks, articles on WebGL and WebVR.
Books
- Generative Art: A Practical Guide - Practical guide using Processing.
- The Nature of Code - Simulating natural systems with p5.js.
- Programming Design Systems - Practical introduction to the new foundations of graphic design.
- Programming Interactivity - Designer's Guide to Processing, Arduino, and openFrameworks.
- Mastering openFrameworks: Creative Coding Demystified - Advanced in depth guide to openFrameworks.
- Algorithms for Visual Design Using the Processing Language - Experiment with design problems to create 3D animations, GUIs, and more.
- Real-Time Rendering - Learn how to use modern techniques to generate synthetic three-dimensional images in a fraction of a second.
- Math for Programmers - Book teaches you to solve mathematical problems in code.
- Synthèse d'images avec OpenGL (ES) - Book in french, which covers OpenGL, OpenGL ES and WebGL.
- Hands-On Music Generation with Magenta - Explore the role of deep learning in music generation and assisted music composition.
- openFrameworks Essentials - openFrameworks beginner Guide for programmer, visual artist, or designer.
- Graphics Shaders: Theory and Practice - Introduction to shader programming in general, but focusing on the GLSL shading language.
- Learning Modern 3D Graphics Programming - Series of tutorials on using OpenGL to do graphical rendering.
- Processing 2: Creative Programming Cookbook - Guides you to explore the Processing environment using practical and useful recipes.
- Ray Tracing in One Weekend - Mini book about Ray Tracing.
- Anton's OpenGL 4 Tutorials - Practical guide to starting 3d programming with OpenGL.
- Data-driven Graphic Design - Creative Coding for Visual Communication.
- Generative Design - Visualize, Program, and Create with Processing.
- Playing with chaos - Programming Fractals and Strange Attractors in JavaScript.
- Foundation HTML5 Animation with JavaScript - Everything you need to know to create animation using the HTML5 canvas.
- Physics for JavaScript Games, Animation, and Simulations - Teaches JavaScript programmers how to incorporate real physics into their HTML5 games, animations, and simulations.
Communities
Other
- The Creative Coding Podcast - Iain and Seb discuss the ins and outs of creative coding.
- realtimevfx.com - Real Time VFX Community.
- 3D Programming Weekly Articles - Great collection of shader and math related resources.
- Data Stories - Podcast on data visualization.
Slack
- Creative Coding Club - Creative Coding Club Slack.
Subreddits
- r/creativecoding - Sharing and discussing the use of computer programming as a creative discipline.
- r/raytraycing - Subreddit on raytracing.
- r/opengl - News and discussion about OpenGL on all platforms.
- r/graphicsprogramming - Subreddit on graphics programming.
- r/processing - Subreddit on Processing.
- r/shaders - Subreddit on shaders.
- r/proceduralgeneration - Subreddit on procedural generation.
- r/MachineLearning - Subreddit on machine learning.
- r/generative - Subreddit on generative art and music.
Courses
- Create 3D Graphics in JS Using WebGL - Get started creating content with WebGL without any frameworks.
- Learn HTML5 Graphics and Animation - Introduction to the canvas 2D drawing API.
- Interactive Computer Graphics - Computer graphics course from Coursera.
- Kadenze Creative Coding - Selection of Kadenze courses covering p5.js, TensorFlow, Max/Jitter, and ChucK.
- Creative Programming for Digital Media & Mobile Apps - Coursera course on creative coding with processing.
- Imaginary Institute - Learn how to create gorgeous interactive graphics.
- Intro to JS: Drawing & Animation - Use JavaScript and the ProcessingJS library to create drawings and animations.
- Advanced JS: Natural Simulations - Combine JS, ProcessingJS, and mathematical concepts to simulate nature in your programs.
- Programming Data Visualizations: A Coding Toolkit for Processing - Join information designer Nicholas Felton in the world of Processing.
- Introduction to Data Visualization - Join Nicholas Felton for a smart, comprehensive, and inspiring intro to data visualization.
- Creative Coding with Canvas & WebGL - Workshop by Matt DesLauriers that teaches you about generative art, interactive animations, 3D graphics, and shaders.
- Advanced Creative Coding with WebGL & Shaders - Workshop by Matt DesLauriers that goes deeper into graphics programming, math and shaders.
- Three.js Journey - This course by Bruno Simon will teach you the secrets to create the coolest WebGL websites with Three.js whether you are a beginner or an advanced developer.
- 3D Computer Graphics Programming - Learn all the theory and the math behind 3D graphics while creating a software renderer from scratch using the C programming language.
- Future Learn: Creative Coding - Use computer programming as a creative discipline to generate sounds, images, animations and more.
- Programming Graphics I - graphics-ii-generative-art-animation/388564917), 3 - Learn generative art and Processing with art with Joshua Davis.
- Interactive 3D Graphics - Udacity course that teach you the principles of 3D computer graphics.
Events
Other
- OFFF Festival - Digital design festival (Online Flash Film Festival).
- Gray Area Festival - Creative coding, art and technology festival.
- Signal Festival - Showcase of light art and emerging technologies in Prague, the Czech Republic.
- Eyeo Festival - Bring together creative coders, data designers and creators working at the intersection of data, art and technology.
- Mutek - Organization dedicated to digital creativity in sound, music, and audio-visual art.
- Node - An open platform for the exchange on culture, arts and technology.
- CODAME ART+TECH - Projects and nonprofit events, to inspire through experience.
- Digital Design Days - 3 day event offering conferences, workshops, digital showcases & installations.
Inspiration
Other
- Dwitter - Social network for short JavaScript demos.
- Chrome Experiments - Showcase of web experiments written by the creative coding community.
- For your Processing - Projects and tutorials about Processing.
- Art From Code - Code sketches by Keith Peters.
- Raven Kwok - Tumblr by visual artist Raven Kwok.
- P5Art - Really good collection of experiments in Processing.
- Echophon - Tumblr with visual inspiration.
- Bees & Bombs - Tumblr with gifs by Dave.
- Folds2d - Tumblr with curves, surfaces, scalar and vector fields.
- People You Should Follow on CodePen - List of interesting people worth following.
Learning Resources
Articles • Tutorials
- Introduction to shaders - Part 1 of an introduction to shaders using threejs.
- Three.js 101 - Introduction to three.js from a creative coder perspective.
- lwjgl: Shaders - Shader tutorial in the context of lwjgl-basics.
- Ray Marching and Signed Distance Functions - Introduction to ray marching and signed distance functions.
- Custom shaders with Three.JS - Introduction to custom shaders, uniforms, textures and lighting in three.js.
- An intro to modern OpenGL - First part of an introduction to modern OpenGL.
- Real-time Rendering - Book, blog and collection of resources regarding real-time rendering.
- OpenGL 4 Shaders - Short and sweet introduction to OpenGL shaders by Anton Gerdelan.
- On ray casting, ray tracing, ray marching and the like - The title says it all. Introduction by Adok.
- Generating Geometry: 1 - geometry-part-2-going-3d), 3 - Beginner introduction on how to create geometry object.
- Into Vertex Shaders - Series of tutorials about WebGL, Three.js, and Three.bas.
- The Spaces of WebGL - Brief overview over the different coordinate systems throughout the 3D graphics pipeline.
- Particle Effects via Billboards - How to create a particle effects with billboarding and WebGL.
- Beautifully Animate Points with WebGL and regl - How to create GPGPU particles with regl.
- WebGL Tutorial: Directional Shadow Mapping without extensions - Introduction to the concepts behind real time directional light shadow mapping.
- WebGL Quest - A tutorial and a list of useful resources to use WebGL raymarching and distance functions easily.
- Particles in a Simplex Noise Flow Field - Perlin noise flow field tutorial.
- Graphics for Games - Introduction to 3D graphics programming including shaders, math post-processing etc. from Newcastle University.
- Three.js Basics - Introduction to Three.js by Eric Haines.
- An Interactive Introduction to WebGL and three.js - Slides from the SIGGRAPH 2017 WebGL workshop.
- How to Start Learning Computer Graphics Programming - Advice and thoughts on how to get started by Eric Arnebäck.
- What Every Coder Should Know About Gamma - Deep dive into the importance of gamma.
- HTML Canvas Deep Dive - Profound introduction to the canvas API.
- Pen Plotter Art & Algorithms Part 1 - plotter-2) - How to use the AxiDraw pen plotter with JavaScript.
- Noise in Creative Coding - In-depth blog post about noise as an indispensable tool for creative coding.
- Cat Like Coding - In depth tutorials on math, algorithms and Unity.
- Fun Programming - Learn creative coding writing simple programs.
- Creative-coding on iOS with C4 - Introduction to C4 published on Creative Applications.
- Visualizing Algorithms - Looks at the use of visualization to understand, explain and debug algorithms.
- Working With Color in Generative Art - Tips on how to get color right.
- Particle Physics - Particle physics explained.
- Smooth minimum - Article about the smooth based primitive union.
- Writing a small software renderer - Really good introduction to how basic software rendering works.
- Introduction to Ray Tracing - A simple method for creating 3D images.
- Flow Fields, Part 1 - Introduction to flow fields also known as vector fields.
- Flow Fields, Part 2 - Introduction to flow fields also known as vector fields.
- WebGL Lessons — ThreeJS Shaders - Using custom vertex and fragment shaders in ThreeJS.
- ThreeJS post-process example - Example of post-processing effects in ThreeJS.
- GLSL lighting walkthrough - Phong shading tutorial with glslify.
- Three glslify example - Example on how to use three.js with glslify.
- WebGL Beyond Dom - Greg Tatum explains the basics of WebGL using Regl.
- FBO particles - Article about FBO/GPGPU particles by @nicoptere.
- Ray marching (with THREE.js) - Article about ray marching with three.js by @nicoptere.
- Modern OpenGL Series - Good introduction to some of the OpenGL terms.
- WebGL Tutorials - Website with a really good collection of WebGL tutorials.
- WebGL Workshop - Short and sweet online introduction to WebGL.
- THREE.js & instanced geometry - Fluffy predator with three.js and instanced geometry.
- Exploring bump mapping with WebGL - Introduction to different bump mapping techniques.
- 31 days of Canvas tutorials - Collection of canvas tutorials by Seb Lee-Delisle.
- Amit's Game Programming Information - Collection of resources on stuff like path-finding, AI, math, etc.
- Shaders: A primer - A primer on shaders.
- Shaders: Second stage - The second part to the previous.
- WebGL Lessons — Fragment Shaders - A brief introduction to fragment shaders.
- Modeling with distance functions - Collection of distance functions in one centralized place.
- OpenGL/GLSL Shader Programming - Deck on OpenGL/GLSL shader programming.
- Adventures in Game Development World - Easy to understand collection of articles on game development, but relevant to creative coding as well.
- Tips to Improve Your Generative Artwork - Tips to make your art look better.
- COSMOS - An end-to-end tutorial on the design, programming and launch of an app using C4.
Interactive
- SDF Tutorial 1: box & balloon - Shadertoy tutorial on raytracing.
- HOWTO: Ray Marching - Shadertoy tutorial on Ray Marching.
- Raymarch Tutorial2 - Shadertoy raymarch tutorial.
- GLSL 2D Tutorials - Shadertoy GLSL 2D Tutorial.
- Bubble Breakdown - Shader breakdown by Perlin.
- Let's Make A Ray Marcher - Interactive Shader-Toy on writing a ray marcher.
- Raymarching - Interactive Shader-Toy raymarching tutorial.
- Shader-school - Workshop for GLSL shaders and graphics programming.
- Webgl-workshop - The sequel to shader-school: Learn the WebGL API.
Quick References • Cheat Sheets
- The Book of Shaders Glossary - Shader glossary by theme.
- gltut glossary pages: 1 - OpenGL 3D programming glossary.
- Canvas Cheatsheet - Quick and visual canvas cheatsheet.
- WebGL Cheatsheet - WebGL 1.0 API reference card.
- Glossary of Computer Graphics - Glossary of terms relating computer graphics.
- 3D Maths Cheat Sheet - Math cheatsheet by Anton Gerdelan, from his OpenGL book.
- OpenGL 4.3 Reference Card - PDF Reference Card for the OpenGL 4.3 API.
- Easings - Interactive easing functions cheatsheet.
- PixelSpirit - GLSL library on the back of tarot cards, for learning and reference.
- Visual Noises - Visualize noise algorithms in 1D and 2D.
- Trigonoparty - Simple trigonometry visualisation.
- Shaderific GLSL - OpenGL ES shading language reference.
- GLSL Reference Guide - OpenGL Shading Language quick reference guide.
- Procedural Patterns And Noises - Collection of procedural patterns and procedural noises.
- Morphogenesis - Exploration of how shapes, forms, and patterns emerge in nature.
- docs.GL - Improvement of the official OpenGL documentation.
- OpenGL Shading Language - Khronos Group GLSL wiki.
Talks
- Making WebGL Dance - How I Learnt to Stop Worrying and Love Linear Algebra.
- The Pixel Factory - Talk about WebGL, GPUs and Math by Steven Wittens.
- Generative Machines - FITC talk by Matt DesLauriers about his passion for generative art.
- Inigo Quilez Live - Collection of live coding videos by Íñigo Quílez.
- How We Do This Shit - Talk on how tech-based artists do this financially.
- Poetic Computation - Inspiring talk by Zach Lieberman.
- There is also canvas - Bruno Imbrizi go through the use of canvas for creative coding at WebExpo 2016. Interactive slides here.
- OpenGL 3D Game Tutorials - Beginners tutorial series about creating 3D games with OpenGL.
Videos
- openFrameworks tutorial - YouTube playlist about openFrameworks - not updated [2015].
- Shadertoy Tutorials - YouTube playlist teaching you how to make shaders, starting with zero knowledge using shadertoy.
- WebGL Lighting - Introduction to WebGL lighting with Greg Tatum.
- openFrameworks Tutorial Series - YouTube series about learning openFrameworks.
- Shader Tutorial Series - YouTube playlist about Shaders, using Visual Studio Code.
- Kha Tutorial Series - YouTube playlist about the Kha framework, built in Haxe.
- Fun with WebGL 2.0 - YouTube playlist about WebGL 2.0.
- MFGD - Fragment Shaders - YouTube playlist about fragment shaders.
- Diving in Three.js - YouTube playlist diving into three.js.
Machine Learning • Computer Vision • AI
Other
- ml4a - Machine learning for artists.
- Tesseract.js - Pure JavaScript Multilingual OCR.
- TensorFlow - Open source software library for machine intelligence.
- ConvNetJS - Deep Learning in your browser.
- ml5.js - Friendly machine learning for the web.
- Model Zoo - Discover open source deep learning code and pretrained models.
- Keras.js - Run Keras models (tensorflow backend) in the browser, with GPU support.
- Machine Learning - Coding Train repo with links to machine learning resources.
- Google ML - Cloud machine learning by Google.
- Teachable Machine - Explore how machine learning works, live in the browser.
- TensorFlow.js - JavaScript library for training and deploying ML models in the browser and on Node.js.
- Runway - AI-powered tools for video and content creation.
- Wekinator - Allows anyone to use machine learning.
Math
Other
- Formula Animations - The principles of painting with maths.