# 3D voxel rendering engine

**URL:** <https://forum.makecode.com/t/3d-voxel-rendering-engine/42425>\
**Category:** Show & Tell\
**Tags:** graphics-and-math, demo, art\
**Created:** [March 1, 2026, 1:55am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425 "2026-03-01T01:55:02Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![YamJamTheGoober](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yamjamthegoober/32/29681_2.png) [@YamJamTheGoober](https://forum.makecode.com/u/YamJamTheGoober)\
**Post date:** [April 6, 2026, 10:03pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/41 "2026-04-06T22:03:59Z")

</div>

Whoa! This is cool! How did you manage to record a video and get it on makecode arcade?

---

<div class="post-metadata">

**Author:** ![NeverStopTheCoder](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/neverstopthecoder/32/21194_2.png) [@NeverStopTheCoder](https://forum.makecode.com/u/NeverStopTheCoder)\
**Post date:** [April 6, 2026, 10:05pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/42 "2026-04-06T22:05:41Z")

</div>

could you dum down what’s wrong sorry I just don’t know what your saying but shawdo is for stuff like

```javascript
//% mySprite.shadow=variables_get
//% mySprite.defl=mySprite
//% block
 export function foo(mySprite: Sprite): void {

}
}

```

It would look like this

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/8/e/8e13128ccfda8c11aa5108d86b9e19703fcf897b.png)

It would look like this in the blocks

![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/0/f/0f104b9c3a69ce43d2452ace486602ea5deeb6a8.png)

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 6, 2026, 10:20pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/43 "2026-04-06T22:20:22Z")

</div>

I don’t intirely remember but I think it had to do with pre-setting the variables using defl and shadow, and constantly having to switch back to blocks to view my changes

---

<div class="post-metadata">

**Author:** ![NeverStopTheCoder](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/neverstopthecoder/32/21194_2.png) [@NeverStopTheCoder](https://forum.makecode.com/u/NeverStopTheCoder)\
**Post date:** [April 6, 2026, 11:02pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/44 "2026-04-06T23:02:44Z")

</div>

well when I make extensions and I need a variable global I just do let Variable = 0 at the top under the namespace

---

<div class="post-metadata">

**Author:** ![NeverStopTheCoder](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/neverstopthecoder/32/21194_2.png) [@NeverStopTheCoder](https://forum.makecode.com/u/NeverStopTheCoder)\
**Post date:** [April 6, 2026, 11:06pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/45 "2026-04-06T23:06:48Z")

</div>

well I thought it was just pre coded movemebt

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 6, 2026, 11:35pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/46 "2026-04-06T23:35:35Z")

</div>

ah found it: [Video + Audio Conversion Tool [Showcase]](https://forum.makecode.com/t/video-audio-conversion-tool-showcase/40865)

---

<div class="post-metadata">

**Author:** ![KawaiiGoddess](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kawaiigoddess/32/33722_2.png) [@KawaiiGoddess](https://forum.makecode.com/u/KawaiiGoddess)\
**Post date:** [April 7, 2026, 1:38am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/47 "2026-04-07T01:38:43Z")

</div>

You should make it like MineFun io.

---

<div class="post-metadata">

**Author:** ![KawaiiGoddess](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kawaiigoddess/32/33722_2.png) [@KawaiiGoddess](https://forum.makecode.com/u/KawaiiGoddess)\
**Post date:** [April 12, 2026, 5:43pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/48 "2026-04-12T17:43:49Z")

</div>

Happy 100th anniversary! Voxels rule!

---

<div class="post-metadata">

**Author:** ![KawaiiGoddess](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kawaiigoddess/32/33722_2.png) [@KawaiiGoddess](https://forum.makecode.com/u/KawaiiGoddess)\
**Post date:** [April 13, 2026, 6:23pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/49 "2026-04-13T18:23:45Z")

</div>

I dyed the sky blue. Like it now?

> **[voxels ??? PARKOUR](https://arcade.makecode.com/S49260-72744-25475-89078)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 13, 2026, 9:43pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/50 "2026-04-13T21:43:49Z")

</div>

can’t tell right know bc I’m on my phone, but based on the picture on the share link, Im beginning to think “how did I not think of that.“. I like it, at it fits the terrain!

---

<div class="post-metadata">

**Author:** ![KawaiiGoddess](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kawaiigoddess/32/33722_2.png) [@KawaiiGoddess](https://forum.makecode.com/u/KawaiiGoddess)\
**Post date:** [April 13, 2026, 9:47pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/51 "2026-04-13T21:47:47Z")

</div>

Haha!

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 15, 2026, 11:44pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/53 "2026-04-15T23:44:18Z")

</div>

I tried rendering a 200x200x200 with a completely random block generator.

IT WAS SO FAST. because it used raytracing, it was exactly the same speed. yes, there were 8,000,000 voxels. no, I did it on a SLOWER computer. This is the power of raytracing.

---

<div class="post-metadata">

**Author:** ![CodingGrizzlyBear](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codinggrizzlybear/32/14838_2.png) [@CodingGrizzlyBear](https://forum.makecode.com/u/CodingGrizzlyBear)\
**Post date:** [April 16, 2026, 2:31am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/54 "2026-04-16T02:31:04Z")

</div>

Share it here please!!! I want to see

---

<div class="post-metadata">

**Author:** ![CodingGrizzlyBear](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codinggrizzlybear/32/14838_2.png) [@CodingGrizzlyBear](https://forum.makecode.com/u/CodingGrizzlyBear)\
**Post date:** [April 16, 2026, 2:31am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/55 "2026-04-16T02:31:07Z")

</div>

Also: just an idea: make the cursor (through browser extension) determine where the player is facing, and the arrow keys for movement

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 16, 2026, 10:12pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/56 "2026-04-16T22:12:39Z")

</div>

> **[voxels ??? big](https://arcade.makecode.com/S98616-04459-98666-26548)**
>
> BIG

The random generation takes a few seconds, but the rendering is FAST. it is 8 million voxels, so trying to save it with the settings extension WILL NOT WORK.

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 16, 2026, 10:38pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/57 "2026-04-16T22:38:38Z")

</div>

the only issue is that it doesn’t have a way to set the cursors position or loop. you know how with Minecraft you don’t see the mouse and you can pretty much turn around infinitely? either the mouse is looping around the screen or it’s being set back to the center of the screen. @richard, do you think it would be possible to add setting the cursors position or making it loop around the screen, and also something to hide/show it? it would be very helpful for things like this.

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 21, 2026, 11:50pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/58 "2026-04-21T23:50:25Z")

</div>

FIRST EXTENSION UPDATE! WOOOO!!!

> **[GitHub - c-minusminus/arcade-voxel-engine: voxdel engine](https://github.com/c-minusminus/arcade-voxel-engine)**
>
> voxdel engine

doesnt have much yet. other than more rendering or block support, what should i add next? I want it to be more customizable to other poeple, so please respond with what should be added!

---

<div class="post-metadata">

**Author:** ![BitBot](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/bitbot/32/33272_2.png) [@BitBot](https://forum.makecode.com/u/BitBot)\
**Post date:** [April 22, 2026, 2:58am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/59 "2026-04-22T02:58:53Z")

</div>

Uuuuhhhh… It added this:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/1/4/144d2142733ee04a76b5bc743788357a8a3fca67.png)

---

<div class="post-metadata">

**Author:** ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)\
**Post date:** [April 22, 2026, 2:59am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/60 "2026-04-22T02:59:02Z")

</div>

Also please note that it doesn’t do much. the world is pre-defined, and there is a glitch I noticed. It is still MUCH in development, and am still working on it

---

<div class="post-metadata">

**Author:** ![CodingGrizzlyBear](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codinggrizzlybear/32/14838_2.png) [@CodingGrizzlyBear](https://forum.makecode.com/u/CodingGrizzlyBear)\
**Post date:** [April 22, 2026, 3:01am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/61 "2026-04-22T03:01:10Z")

</div>

How do I use it?

[Previous page](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425.md?page=2)

[Next page](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425.md?page=4)
