# Space Invaders in 3D built with BabylonJS

**URL:** <https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807>\
**Category:** Demos and projects\
**Tags:** game\
**Created:** [April 28, 2022, 5:51am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807 "2022-04-28T05:51:23Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Viperfish](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/viperfish/32/23908_2.png) [@Viperfish](https://forum.babylonjs.com/u/Viperfish)\
**Post date:** [April 28, 2022, 5:51am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/1 "2022-04-28T05:51:23Z")

</div>

I built Space Invaders in 3D with BabylonJS. All code is on Github. It’s my first project with BabylonJS and so much fun. Looking forward to something more complex.

Play it here: [https://spaceinvaders.viperfish.com.au/](https://spaceinvaders.viperfish.com.au/)  
Github: [https://github.com/johnpitchers/Space-Invaders](https://github.com/johnpitchers/Space-Invaders)

 ![space_Invaders_babylonjs_3](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/9/4/94a4be8c9a0b98dc25fbbee91c18d1a722d39d45.jpeg)

 ![space_Invaders_babylonjs_2](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/e/a/ea7defb33fdb2e37b8fa149f305a74ce5a1ff828.jpeg)

 ![space_Invaders_babylonjs_1](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/5/d/5d417107c7a346285decc250aee23c30ad89f421.jpeg)

---

<div class="post-metadata">

**Author:** ![Jukka](https://avatars.discourse-cdn.com/v4/letter/j/53a042/32.png) [@Jukka](https://forum.babylonjs.com/u/Jukka)\
**Post date:** [April 28, 2022, 8:19am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/2 "2022-04-28T08:19:18Z")

</div>

Very nice implementation! 💎 💪

---

<div class="post-metadata">

**Author:** ![inteja](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/inteja/32/22553_2.png) [@inteja](https://forum.babylonjs.com/u/inteja)\
**Post date:** [April 28, 2022, 9:52am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/3 "2022-04-28T09:52:48Z")

</div>

Yep great! Lots of retro fun! 🕹 👽 🕶

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [April 28, 2022, 11:26am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/5 "2022-04-28T11:26:49Z")

</div>

I hope you understand there are people out here that need time to work on their own projects. What did you think when releasing something like this. 🤪 🤪 Can I send you an invoice for all the time I lost returning to my old days of gaming, when I was leaving school to secretly spend all my coins playing arcade games? 👾 👾 🚀  
Oh, Never mind, I luv it 😃 😄

---

<div class="post-metadata">

**Author:** ![waverider404](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/waverider404/32/17464_2.png) [@waverider404](https://forum.babylonjs.com/u/waverider404)\
**Post date:** [April 28, 2022, 12:59pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/6 "2022-04-28T12:59:15Z")

</div>

Nice!!

---

<div class="post-metadata">

**Author:** ![imerso](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/imerso/32/46445_2.png) [@imerso](https://forum.babylonjs.com/u/imerso)\
**Post date:** [April 28, 2022, 1:47pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/9 "2022-04-28T13:47:35Z")

</div>

Lol, now I will need to explain myself. I was using Linux exclusively for many years in a row, and just returned to use Windows.

I posted then remembered that it must be disabled when the popup shows. But then you were too fast to reply, again. Hahah. =)

Anyway, the game is very cool!

---

<div class="post-metadata">

**Author:** ![Viperfish](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/viperfish/32/23908_2.png) [@Viperfish](https://forum.babylonjs.com/u/Viperfish)\
**Post date:** [April 28, 2022, 1:51pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/10 "2022-04-28T13:51:44Z")

</div>

@imerso @waverider404 Thanks for the feedback. I would never have picked this up I’m also almost exclusively on Linux. I’ve just added preventDefault() and stopPropagation() to the input controller. Thanks again.

---

<div class="post-metadata">

**Author:** ![Viperfish](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/viperfish/32/23908_2.png) [@Viperfish](https://forum.babylonjs.com/u/Viperfish)\
**Post date:** [April 28, 2022, 1:53pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/11 "2022-04-28T13:53:56Z")

</div>

Glad you enjoy it. You must be old like me 👴 😆

---

<div class="post-metadata">

**Author:** ![shaderbytes](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/shaderbytes/32/174_2.png) [@shaderbytes](https://forum.babylonjs.com/u/shaderbytes)\
**Post date:** [April 28, 2022, 1:54pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/12 "2022-04-28T13:54:44Z")

</div>

excellent , love the 3d action cam , looks polished 😉

---

<div class="post-metadata">

**Author:** ![yamaciller](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/yamaciller/32/21810_2.png) [@yamaciller](https://forum.babylonjs.com/u/yamaciller)\
**Post date:** [April 28, 2022, 1:59pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/14 "2022-04-28T13:59:50Z")

</div>

Very nice. Plays smoothly. The 3d cam is a great idea and works amazingly well!  
Graphically its great in Voxelstyle.  
The explosions look a bit weird as the ‘particles’ have different sizes. Pixels nor Voxels usually dont ;).  
Best  
Werner

---

<div class="post-metadata">

**Author:** ![imerso](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/imerso/32/46445_2.png) [@imerso](https://forum.babylonjs.com/u/imerso)\
**Post date:** [April 28, 2022, 3:11pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/15 "2022-04-28T15:11:40Z")

</div>

> [@Viperfish](#):
>
> I’ve just added preventDefault() and stopPropagation() to the input controller.

Yes, that was exactly what I meant. For some reason I felt that I should not comment and deleted the post a few seconds later, but nice that you saw it and fixed. A small detail, but a nice to have. =)

Anyway, most users will just disable that feature, so not much to worry about, I guess.

Your implementation is very well done, congrats again!

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [April 28, 2022, 3:20pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/16 "2022-04-28T15:20:45Z")

</div>

> [@Viperfish](#):
>
> You must be old like me

That was just not necessary 😉 🧓 I shall forgive you for that but don’t try this again 😉

---

<div class="post-metadata">

**Author:** ![Deltakosh](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/deltakosh/32/26635_2.png) [@Deltakosh](https://forum.babylonjs.com/u/Deltakosh)\
**Post date:** [April 28, 2022, 3:35pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/17 "2022-04-28T15:35:08Z")

</div>

This is EXCELLENT! @PirateJC we should tweet about it!!

And we should also add it on our website

---

<div class="post-metadata">

**Author:** ![Deltakosh](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/deltakosh/32/26635_2.png) [@Deltakosh](https://forum.babylonjs.com/u/Deltakosh)\
**Post date:** [April 28, 2022, 3:38pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/18 "2022-04-28T15:38:53Z")

</div>

Do you have a twitter handle @Viperfish ?

---

<div class="post-metadata">

**Author:** ![Deltakosh](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/deltakosh/32/26635_2.png) [@Deltakosh](https://forum.babylonjs.com/u/Deltakosh)\
**Post date:** [April 28, 2022, 3:41pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/19 "2022-04-28T15:41:47Z")

</div>

Found you 🙂  
Here is the tweet: [https://twitter.com/babylonjs/status/1519703351511764994?s=20&t=XPXaHO-asuW1ondfLsn5JA](https://twitter.com/babylonjs/status/1519703351511764994?s=20&t=XPXaHO-asuW1ondfLsn5JA)

---

<div class="post-metadata">

**Author:** ![sebavan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/sebavan/32/57_2.png) [@sebavan](https://forum.babylonjs.com/u/sebavan)\
**Post date:** [April 28, 2022, 4:11pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/20 "2022-04-28T16:11:40Z")

</div>

@Viperfish you made my day !!!

---

<div class="post-metadata">

**Author:** ![perprerp](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/perprerp/32/23115_2.png) [@perprerp](https://forum.babylonjs.com/u/perprerp)\
**Post date:** [April 28, 2022, 9:26pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/21 "2022-04-28T21:26:22Z")

</div>

Great to see a complete project. Congrats on completing it, John. It’s a lot of work to put everything together.

---

<div class="post-metadata">

**Author:** ![Viperfish](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/viperfish/32/23908_2.png) [@Viperfish](https://forum.babylonjs.com/u/Viperfish)\
**Post date:** [April 29, 2022, 12:54am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/22 "2022-04-29T00:54:00Z")

</div>

Totally didn’t expect this. Thank you for the shoutout. 🙏

---

<div class="post-metadata">

**Author:** ![Viperfish](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/viperfish/32/23908_2.png) [@Viperfish](https://forum.babylonjs.com/u/Viperfish)\
**Post date:** [April 29, 2022, 1:36am UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/23 "2022-04-29T01:36:59Z")

</div>

You are totally right. Have added a uniform particle size for each explosion. It looks great. Thanks for the input.

---

<div class="post-metadata">

**Author:** ![carolhmj](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/carolhmj/32/25918_2.png) [@carolhmj](https://forum.babylonjs.com/u/carolhmj)\
**Post date:** [April 29, 2022, 1:12pm UTC](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807/24 "2022-04-29T13:12:53Z")

</div>

This is a STELLAR (haha get the joke?) first project! Beautifully done and lots and lots of fun to play with the different modes! ❤

P.S: Does anyone else, whenever they remember shoot-em-ups are a thing, HAVE to watch Touhou videos just to contemplate the crazy lengths of human skill? 🤣 [Touhou 15 東方紺珠伝 ~ Legacy of Lunatic Kingdom - Perfect Lunatic Junko (No-Miss, No-Bomb) - YouTube](https://www.youtube.com/watch?v=2XX59I0NqLg)

[Next page](https://forum.babylonjs.com/t/space-invaders-in-3d-built-with-babylonjs/29807.md?page=2)
