# Pixelblaze for Beginners - a tutorial syllabus

**URL:** <https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679>\
**Category:** Pixelblaze Academy of Wizardry and Enchantment\
**Tags:** tutorial, beginner\
**Created:** [October 26, 2021, 2:46pm UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679 "2021-10-26T14:46:06Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Scruffynerf](https://forum.electromage.com/letter_avatar_proxy/v4/letter/s/34f0e0/32.png) [@Scruffynerf](https://forum.electromage.com/u/Scruffynerf)\
**Post date:** [October 26, 2021, 2:46pm UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679/1 "2021-10-26T14:46:06Z")

</div>

Heavily influenced by the expression doc, found at the bottom of the PB editor ([and in github](https://github.com/simap/pixelblaze/blob/master/README.expressions.md))

This is a first pass at a tutorial lesson plan, very subject to change… it’ll start with the most basics, and then flesh out those, assuming you know zero to start with. Feedback will always be welcomed. Ideally, this will eventually become a book of sorts, so letting me know what is clear or what isn’t, is helpful to everyone. More advanced topics will come after the below, but you have to walk before you can run.

# [How the PB engine works - the 2 stroke engine](https://forum.electromage.com/t/pixelblaze-for-beginners-lesson-1-the-little-engine-that-could/1716)

- 
## Step 1 (optional): beforeRender
- 
## Step 2: render(), or maybe render2D(),render3D()
- 
## Repeat

# Essential concepts

- 
## 0 to 1 thinking
- 
## RGB, HSV
- 
## ws2812 and other types of LEDs

# PB Language - How PB is and also isn’t JS

- 
  - 
### Language limitations

- 
## 16.16 math
- 
## Operators
- 
## Logic
- 
## if/else
- 
## while/for/break/continue
- 
## how and why to make a function of your own
- 
  - 
### lambda syntax

- 
  - 
### built in vs custom functions

# The Editor - live editing can be your friend

# Variables

- 
## pixelCount, and other variables
- 
## Watching Variables
- 
## arrays
- 
  - 
### using arrays with functions

- 
## Constants

# Functions

- 
## Pixel / Color Functions
- 
## Math Functions
- 
## Waveform Functions
- 
## Array Functions
- 
## UI functions
- 
  - 
### Sliders

- 
  - 
### Color Pickers

- 
## Coordinate Transformation Functions
- 
### Pixel mapping 2D and 3D
- 
## Input / Output Functions
- 
## Clock / Time Functions

# Sensor Board

---

<div class="post-metadata">

**Author:** ![Scruffynerf](https://forum.electromage.com/letter_avatar_proxy/v4/letter/s/34f0e0/32.png) [@Scruffynerf](https://forum.electromage.com/u/Scruffynerf)\
**Post date:** [November 3, 2021, 2:58am UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679/2 "2021-11-03T02:58:28Z")

</div>

Too many things happening this week, so I’ll shoot to start the series next week.

First up: How the PB engine works, from a noncode perspective, and the most minimal program we can write, with enough explaining of what it does to make the code simple enough for everyone.

---

<div class="post-metadata">

**Author:** ![Scruffynerf](https://forum.electromage.com/letter_avatar_proxy/v4/letter/s/34f0e0/32.png) [@Scruffynerf](https://forum.electromage.com/u/Scruffynerf)\
**Post date:** [November 22, 2021, 2:51pm UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679/3 "2021-11-22T14:51:08Z")

</div>



---

<div class="post-metadata">

**Author:** ![Gallaugher](https://forum.electromage.com/user_avatar/forum.electromage.com/gallaugher/32/3889_2.png) [@Gallaugher](https://forum.electromage.com/u/Gallaugher)\
**Post date:** [September 6, 2025, 4:31am UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679/4 "2025-09-06T04:31:23Z")

</div>

Sis you ever create this series or book? I am distributing pbs to students next week and am completely new so I’d love to learn from your work. Thx.

---

<div class="post-metadata">

**Author:** ![Gallaugher](https://forum.electromage.com/user_avatar/forum.electromage.com/gallaugher/32/3889_2.png) [@Gallaugher](https://forum.electromage.com/u/Gallaugher)\
**Post date:** [September 7, 2025, 5:26pm UTC](https://forum.electromage.com/t/pixelblaze-for-beginners-a-tutorial-syllabus/1679/5 "2025-09-07T17:26:38Z")

</div>

Oops. meant to type Did not Sis. Sorry. My fingers often fail me.
