Is it possible to write directly to screen (pixels) on the Arcade?

If you are in JavaScript, there are two ways to do it:

// This callback will run every frame after the sprites have been drawn
// so you can draw to the screen and not be overwritten
game.onShade(() => {
    screen.setPixel(0, 0, 1)
})

// Creates a "sprite-ish" object where you implement the draw method
// (only available in beta beta)
scene.createRenderable(0, (target: Image, camera: scene.Camera) => {
    target.setPixel(0, 0, 1)
})

The renderable approach is nice because it handles sorting for you (the first argument is the z-index). It’s currently only available in beta beta (https://arcade.makecode.com/beta)

2 Likes