Looking at the non-block GUIs, I actually agree they would be awesome, but that’s way more work, and likely more limited, because probably have to write to a format that lends itself to inputs and outputs. Which is still a huge playfield.
I’ll have to research some more. The block customizing might just let a hybrid work. I have an idea…
@Scruffynerf one of the key design constraints of Pixelblaze is that it works stand-alone, without internet access (but obviously with WiFi). Theres a subtle line between a website that runs blockly or something and can send that to a Pixelblaze, and Pixelblaze units themselves having and interface that requires or partially requires internet access.
The near future plans include some kind of cloud based firestorm, or at the least a way to attach PBs to a server/service, where additional functionality (perhaps like blockly editors) can be added.
I is zero, each loop, add one to I, until I is one less than the number of pixels, then do whatever, and loop back and add one to I…
Starts with I is zero, first time thru …
There’s two ways I use to estimate the time it takes to compute all LEDs (a frame) for a given pattern and number of LEDs.
1. Compute the inverse of FPS
FPS stands for Frames Per second and is always displayed in the top right corner of the Pixelblaze web IDE. The inverse (divide 1 by FPS) will be the number of seconds per frame; multiply by 1000 to get ms per frame.
80 FPS = 1/80th second per frame.
1/80th * 1000ms/s = 12.5ms
2. Use the watcher to monitor delta
The argument passed to your beforeRender() is the number of milliseconds since beforeRender was last called. It’s usually named delta, so you see it as function beforeRender(delta) {}
You can see a variable’s current value in the watcher if the variable is declared as exported and you’ve enabled the watcher.
export var lastDelta
function beforeRender(delta) {
lastDelta = delta
}
Here’s an example, and you can do the math to see how it correlates well with the displayed FPS: