# Carrier 3D (unfinished work in progress)

**URL:** <https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573>\
**Category:** Show & Tell\
**Created:** [October 26, 2021, 3:25pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573 "2021-10-26T15:25:09Z")\
**Posts on this page:** 19\
**Page:** 2

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [January 26, 2022, 6:27pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/21 "2022-01-26T18:27:22Z")

</div>

In theory it’s possible, but I think that getting acceptable performance would be extremely difficult. Marching cubes creates a huge number of vertices and polygons, and the renderer I made can only do a few hundred polygons before performance dips into single digits on hardware. A version optimized for the emulator could likely do a bit better though.

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [January 26, 2022, 7:58pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/22 "2022-01-26T19:58:48Z")

</div>

Yeah, I guess it would be pretty complex to create a grid with x/y/z in makecode, I just watched a YT video about the marching cubes algorithm and thought it would be a pretty efficient algorithm, but makecode doesn’t do well with grids in x/y, much less adding a z into the mix lol! I guess it could be possible, but rendering many tries would be tough for makecode.

---

<div class="post-metadata">

**Author:** ![TreeBurgerPOV](https://avatars.discourse-cdn.com/v4/letter/t/7cd45c/32.png) [@TreeBurgerPOV](https://forum.makecode.com/u/TreeBurgerPOV)\
**Post date:** [January 27, 2022, 5:39pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/23 "2022-01-27T17:39:31Z")

</div>

This is so Cool! Keep working on it

---

<div class="post-metadata">

**Author:** ![IvanPoon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/ivanpoon/32/6232_2.png) [@IvanPoon](https://forum.makecode.com/u/IvanPoon)\
**Post date:** [May 19, 2022, 6:33pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/24 "2022-05-19T18:33:08Z")

</div>

Why is it unfinished?

---

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [May 20, 2022, 6:54pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/25 "2022-05-20T18:54:33Z")

</div>

I just haven’t been very motivated to continue working on it - it would take a lot of work to get interesting flight physics, and adding gameplay elements such as enemy AI or aerobatics point scoring would be difficult.

I think it would actually be easier if it were possible to make this a two-player game, for example using the cable connection for PyGamer, since then there’s no need to write enemy AI code. However, last I checked this wasn’t working: [Hardware Multiplayer (game) - #39 by jwunderl](https://forum.makecode.com/t/hardware-multiplayer-game/132/39) . However, it’s currently a bit too slow to work properly on hardware, so that may not be feasible even if that’s implemented.

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [May 23, 2022, 4:53pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/26 "2022-05-23T16:53:14Z")

</div>

If the redscript community gets their network working, it could be possible to have this game work with online multiplayer!

---

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [May 23, 2022, 9:11pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/27 "2022-05-23T21:11:40Z")

</div>

> [@Kiwiphoenix364](#):
>
> If the redscript community gets their network working, it could be possible to have this game work with online multiplayer!

I haven’t been following the redscript development closely - has there been any successful demo showing communication between two different computers? I saw this post by @E-EnerG-Gamecentral which I’d interpret to mean that communication is only working for two nodes within the same browser tab so far.

> [@RedScript Network - Collab?](https://forum.makecode.com/t/redscript-network-collab/12891/7):
>
> Two Nodes - Can they talk via the same tab (PROVEN)  
> Two Nodes - Can they talk via two google accounts (seperate windows, not proven)  
> Two Nodes - Can they talk via different browsers? (Microsoft Edge & Google Chrome, Not Proven)  
> Two Nodes - Can they talk via different computers? (Windows, Not Proven)  
> Two Nodes - Can they talk if they’re running different Operating Systems? (Cboy Azure & Cboy R, Very Unlikely)

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [May 23, 2022, 9:43pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/28 "2022-05-23T21:43:40Z")

</div>

On the forum, I’ve not seen any successful communication between two different computers. Idk if they’ll actually get it working, but _if_ they do, then you could possibly make this game into online multiplayer. I don’t think work has started on the networking side yet, so Idk if it’s possible to get working.

---

<div class="post-metadata">

**Author:** ![E-EnerG-Gamecentral](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/e-energ-gamecentral/32/5353_2.png) [@E-EnerG-Gamecentral](https://forum.makecode.com/u/E-EnerG-Gamecentral)\
**Post date:** [May 24, 2022, 5:17pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/29 "2022-05-24T17:17:26Z")

</div>

Well, Development on that just started… but don’t worry!  
We will get the messaging system running and perform these tests!

---

<div class="post-metadata">

**Author:** ![EuJeen](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/eujeen/32/12807_2.png) [@EuJeen](https://forum.makecode.com/u/EuJeen)\
**Post date:** [August 25, 2022, 4:14pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/30 "2022-08-25T16:14:33Z")

</div>

Wow, your graphics is amazing! I’m really looking forward to your full game if you are still doing it!!! 😆 😆 😆

---

<div class="post-metadata">

**Author:** ![jackal](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jackal/32/19506_2.png) [@jackal](https://forum.makecode.com/u/jackal)\
**Post date:** [September 22, 2022, 7:23pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/31 "2022-09-22T19:23:36Z")

</div>

But the player model design tho…

---

<div class="post-metadata">

**Author:** ![LaserFoxPro](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/laserfoxpro/32/4105_2.png) [@LaserFoxPro](https://forum.makecode.com/u/LaserFoxPro)\
**Post date:** [October 17, 2022, 9:24pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/32 "2022-10-17T21:24:17Z")

</div>

just make it be a 2d asset thats a plane, easy

---

<div class="post-metadata">

**Author:** ![NxNMatrixGL](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/nxnmatrixgl/32/2553_2.png) [@NxNMatrixGL](https://forum.makecode.com/u/NxNMatrixGL)\
**Post date:** [November 5, 2022, 9:03pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/33 "2022-11-05T21:03:58Z")

</div>

@kwx, I’m going over your [Cubes](https://arcade.makecode.com/03733-23293-89994-81627) program you shared under your [3D graphics test](https://forum.makecode.com/t/3d-graphics-test/6285/18) post. I’m enjoying seeing how the mathematics I learned in my undergraduate mathematics courses being put to use in game programming. This is something I’ve been sharing with my son. I’m a programmer professionally, but I have no experience with 3D rendering algorithms and game development. If you don’t mind sharing, what is/are your go-to references/textbooks you use? Thanks!

---

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [November 7, 2022, 12:21pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/34 "2022-11-07T12:21:50Z")

</div>

I liked [Procedural Elements of Computer Graphics](https://www.nar-associates.com/nar-publishing/pecg2nd.html). The first edition is a classic, I haven’t read the second edition but it looks like a nice upgrade. It covers the things I used for my renderer, including reentrant polygon clipping and BSP trees for occlusion handling.

Of course much of this isn’t very relevant if you’re using a modern GPU since it takes care of all of that and moves the complexity to shaders and other topics, but I kind of enjoy the old school handcoded raster graphics approach.

---

<div class="post-metadata">

**Author:** ![jackal](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/jackal/32/19506_2.png) [@jackal](https://forum.makecode.com/u/jackal)\
**Post date:** [November 7, 2022, 6:38pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/35 "2022-11-07T18:38:31Z")

</div>

BTW, @E-EnerG-Gamecentral when are we getting that started again?

---

<div class="post-metadata">

**Author:** ![Blobbey](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/blobbey/32/20831_2.png) [@Blobbey](https://forum.makecode.com/u/Blobbey)\
**Post date:** [May 16, 2023, 6:44pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/36 "2023-05-16T18:44:09Z")

</div>

This game is epic! Just wondering, @kwx, do you plan on finishing this at any point?

---

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [May 16, 2023, 11:31pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/37 "2023-05-16T23:31:43Z")

</div>

Thanks! I don’t have any specific plans to revisit it - I might do so if I get a bunch of idle time to work on it. A couple of my recent games had large chunks written while on long airplane trips, but I don’t have any planned in the near future.

---

<div class="post-metadata">

**Author:** ![CodeOnTheCob](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/codeonthecob/32/19306_2.png) [@CodeOnTheCob](https://forum.makecode.com/u/CodeOnTheCob)\
**Post date:** [February 6, 2025, 11:59pm UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/38 "2025-02-06T23:59:31Z")

</div>

i would love to see enemy ai it really good btw

---

<div class="post-metadata">

**Author:** ![kwx](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kwx/32/1545_2.png) [@kwx](https://forum.makecode.com/u/kwx)\
**Post date:** [February 7, 2025, 12:29am UTC](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573/39 "2025-02-07T00:29:30Z")

</div>

Thanks! I don’t currently have plans to revisit Carrier 3D, but check out [[Repost] Space Rocks Revenge](https://forum.makecode.com/t/repost-space-rocks-revenge/31570) which does have enemy AI for spaceships. It’s a bit easier to do this in space since it doesn’t need to worry about directions or crashing into the water. It actually cheats slightly, the enemy ships can fly through each other and through asteroids since I didn’t bother hooking up collision detection for that…

Also, it would really need to get an airplane-like flight model so that it feels like flying a plane. The current controls let you park in midair or fly backwards.

[Previous page](https://forum.makecode.com/t/carrier-3d-unfinished-work-in-progress/10573.md?page=1)
