# 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:** 2

<div class="post-metadata">

**Author:** ![YamJam](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yamjam/32/29681_2.png) [@YamJam](https://forum.makecode.com/u/YamJam)\
**Post date:** [March 14, 2026, 6:33pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/21 "2026-03-14T18:33:03Z")

</div>

Perfect! Creative mode! You know what’s next now…

---

<div class="post-metadata">

**Author:** ![IAmMyGuy21th](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/iammyguy21th/32/16978_2.png) [@IAmMyGuy21th](https://forum.makecode.com/u/IAmMyGuy21th)\
**Post date:** [March 15, 2026, 1:22am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/22 "2026-03-15T01:22:08Z")

</div>

AHH Ur breakin my brain  
THIS IS AWESOME  
how’d you do the click raytracing for interaction?

---

<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:** [March 15, 2026, 9:12pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/23 "2026-03-15T21:12:39Z")

</div>

render() uses traceRay() to trace a ray into a block, and so I made the clicking do the same thing. traceRay() returns a number[] like this [face, distance, face x, face y, voxel index, voxel x, voxel y, voxel z] and when placing a block, it adds/subtracts 1 to voxelX/voxelY/voxel and sets the block. Did that help?

---

<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:** [March 26, 2026, 11:10pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/24 "2026-03-26T23:10:33Z")

</div>

HITBOXES ARE ADDED!!! WOOOOOOOO

> **[shared: voxels ??? hitboxes](https://arcade.makecode.com/S15587-05247-40580-48661)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

no sliding though, because i have plans to add gravity and make it a platformer

---

<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:** [March 28, 2026, 4:06pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/25 "2026-03-28T16:06:55Z")

</div>

also id appreciate it if anybody would like to help!

_Poll ([view on site](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/25))_

---

<div class="post-metadata">

**Author:** ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)\
**Post date:** [March 29, 2026, 9:30pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/26 "2026-03-29T21:30:06Z")

</div>

Soooo why does the house suddenly turn into eyes when you get far enough from it

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/6/1/6134a9b1fba7db1c78bee05356eff13c7425c1d6.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:** [March 30, 2026, 12:10am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/27 "2026-03-30T00:10:36Z")

</div>

because the ray tracer has a max amount of steps, so some of the house is never rendered

---

<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:** [March 30, 2026, 12:12am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/28 "2026-03-30T00:12:18Z")

</div>

:0 creepy!

---

<div class="post-metadata">

**Author:** ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)\
**Post date:** [March 30, 2026, 1:27pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/29 "2026-03-30T13:27:16Z")

</div>

Ok thx, I was kind of half-asking half-making-a-joke here so thx for answering!

---

<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 5, 2026, 8:40pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/30 "2026-04-05T20:40:22Z")

</div>

> **[voxels ??? PARKOUR](https://arcade.makecode.com/S82659-51337-07935-57468)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

I have added gravity and stuff :󠇪)

---

<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 6, 2026, 1:02am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/31 "2026-04-06T01:02:35Z")

</div>

> [@VoxelMaster64](#):
>
> [https://arcade.makecode.com/S82659-51337-07935-57468](https://arcade.makecode.com/S82659-51337-07935-57468)

Wowowowowow (how do I even start tho)

---

<div class="post-metadata">

**Author:** ![YamJam](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/yamjam/32/29681_2.png) [@YamJam](https://forum.makecode.com/u/YamJam)\
**Post date:** [April 6, 2026, 1:11am UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/32 "2026-04-06T01:11:00Z")

</div>

Do you think you’ll be turning this into an extension? Since that would be nice!

---

<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 6, 2026, 4:54pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/33 "2026-04-06T16:54:37Z")

</div>

I suggest add skins. And AI’s also doing parkour. (That is what I plan to make 2D.)

---

<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, 5:07pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/34 "2026-04-06T17:07:17Z")

</div>

> [@YamJam](#):
>
> Do you think you’ll be turning this into an extension? Since that would be nice!

if you don’t know how I can help with that

---

<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, 5:13pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/35 "2026-04-06T17:13:00Z")

</div>

> **[shared: voxel parkour video](https://arcade.makecode.com/S59035-42992-80750-65927)**
>
> video for https://arcade.makecode.com/S82659-51337-07935-57468

---

<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, 8:35pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/36 "2026-04-06T20:35:11Z")

</div>

Thanks! I know how to make the code work on an extension, but I’m not very good at making the blocks actually show up on the editor. Any help on that would be good!

---

<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, 8:50pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/37 "2026-04-06T20:50:28Z")

</div>

this project will be paused until I finish changing Makecode’s Code to try to add an audio function in c++ (more info here [Questions about MakeCode C++ sound](https://forum.makecode.com/t/questions-about-makecode-c-sound/42721) )

---

<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, 8:50pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/38 "2026-04-06T20:50:31Z")

</div>

what do you mean not showing up?

---

<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, 9:03pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/39 "2026-04-06T21:03:48Z")

</div>

dang Nice 👌

also

ok so check out **[Breaking Makecode! [Contest] [Badges]](https://forum.makecode.com/t/breaking-makecode-contest-badges/42563)**

but

**Congratulations You Have Now Won A**

 ![Screenshot 2026-03-07 11.34.03 AM](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/2/9/2906442835214524a11dc233160545fdd150230e.png)

**1st Place Badge in the Complex Yet Cool Game Design Section**

Note: more than one person can have the same badge in the same section its more like 1st place is just a ranking like 100% or 100 points

---

<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, 9:08pm UTC](https://forum.makecode.com/t/3d-voxel-rendering-engine/42425/40 "2026-04-06T21:08:55Z")

</div>

things like:

```javascript
//% block="..."

```

or

```javascript
//% shadow=...

```

Often is very finicky when I use them. My first extension made (doesn’t work yet) was [Mini menu Trees!](https://forum.makecode.com/t/mini-menu-trees/41386/1) The issue was more the coding part, but I disliked using the //%… because of have to repeatedly change to blocks over and over again and the blocks would often glitch out

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

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