├── .gitignore
├── LICENSE.md
├── README.md
├── docs
├── cloning.md
├── command-line.md
├── images
│ ├── demo1.png
│ ├── demo2.png
│ ├── demo6.png
│ ├── xyz-1.png
│ └── xyz-2.png
└── snippets.md
├── package-lock.json
├── package.json
└── src
├── extras
├── custom-attribute.js
└── noise-sphere.js
├── gego
├── 0-sphere.js
├── 1-random.js
├── 2-advanced.js
└── 3-shader-animation.js
└── turrell
├── 0-shader-cube-stack.js
├── 1-shader-cube-city.js
└── 2-shader-interactive.js
/.gitignore:
--------------------------------------------------------------------------------
1 | bower_components
2 | node_modules
3 | *.log
4 | .DS_Store
5 | bundle.js
6 | demo/
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 | Copyright (c) 2017 Matt DesLauriers
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all
12 | copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19 | OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
20 | OR OTHER DEALINGS IN THE SOFTWARE.
21 |
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # draw_code.001 — ThreeJS, WebGL & GLSL
2 |
3 | This repository includes code & resources for students attending the *ThreeJS, WebGL & GLSL* workshops.
4 |
5 | ###### ✨ [ [Interactive Demo](https://drawcode-001-demo.surge.sh/) ]
6 |
7 |
8 | [

](https://drawcode-001-demo.surge.sh/)
9 |
10 | # Contents
11 |
12 | - 📖 [Digital Book](#digital-book)
13 |
14 | - 🔧 [Tools & Prerequisites](#tools--prerequisites)
15 |
16 | - 🎨 [Installing `canvas-sketch` CLI](#installing-canvas-sketch-cli)
17 |
18 | - ✂️️ [Code Snippets](#code-snippets)
19 |
20 | - 💻 [Command-Line Tips & Suggestions](#command-line-tips--suggestions)
21 |
22 | - 🔥 [Modules for Creative Coding](#modules)
23 |
24 | - ⚡️ [Cloning & Running Examples](#cloning--running-examples)
25 |
26 | - ✨ [Further Reading](#further-reading)
27 |
28 | # Digital Book
29 |
30 | You can browse the interactive "slide book" here:
31 |
32 | - [https://drawcode-001.surge.sh/](https://drawcode-001.surge.sh/)
33 | - [ [mirror](https://001--angry-saha-ab0472.netlify.com/) ]
34 |
35 | # Tools & Prerequisites
36 |
37 | Here is a list of tools, software and libraries that will be used during the workshop.
38 |
39 | | Tool | Documentation | Description |
40 | |---|---|---|
41 | | *Code Editor* | | A JavaScript code editor, [VSCode](https://code.visualstudio.com/) is recommended
42 | | *Browser* | | A modern browser, [Chrome](https://www.google.com/chrome/) is recommended
43 | | *Canvas API* | [[docs](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)] | The HTML5 `