# Mazes - Generator - PushBall

**URL:** <https://forum.babylonjs.com/t/mazes-generator-pushball/55416>\
**Category:** Demos and projects\
**Tags:** game\
**Created:** [December 17, 2024, 5:25am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416 "2024-12-17T05:25:56Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [December 17, 2024, 5:25am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/1 "2024-12-17T05:25:56Z")

</div>

I made new generated mazes for ball to push in those mazes.

You can look at here. You can try play it.

> **[Push Ball - BabylonJS](https://ajna4taiga.mooo.com/PushBall/index.html)**

From Level [20 to 25].

Greetings  
Ian

---

<div class="post-metadata">

**Author:** ![Bogdan\_Mlakar](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bogdan_mlakar/32/42975_2.png) [@Bogdan\_Mlakar](https://forum.babylonjs.com/u/Bogdan_Mlakar)\
**Post date:** [December 17, 2024, 3:55pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/2 "2024-12-17T15:55:22Z")

</div>

![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/2/9/293084d109bcba79b609a96cb5beb33f234bf18e.jpeg)

---

<div class="post-metadata">

**Author:** ![withADoveInOneHand](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/withadoveinonehand/32/1243_2.png) [@withADoveInOneHand](https://forum.babylonjs.com/u/withADoveInOneHand)\
**Post date:** [December 18, 2024, 11:51pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/3 "2024-12-18T23:51:49Z")

</div>

i fell off and it broke

---

<div class="post-metadata">

**Author:** ![Bogdan\_Mlakar](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bogdan_mlakar/32/42975_2.png) [@Bogdan\_Mlakar](https://forum.babylonjs.com/u/Bogdan_Mlakar)\
**Post date:** [December 22, 2024, 2:37pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/4 "2024-12-22T14:37:52Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![Bogdan\_Mlakar](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bogdan_mlakar/32/42975_2.png) [@Bogdan\_Mlakar](https://forum.babylonjs.com/u/Bogdan_Mlakar)\
**Post date:** [December 28, 2024, 11:41am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/5 "2024-12-28T11:41:14Z")

</div>

Level 23

 ![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/8/8/88cef10c4b9b6736edc9b03df2221d4ac7dabf3d.jpeg)

---

<div class="post-metadata">

**Author:** ![Bogdan\_Mlakar](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bogdan_mlakar/32/42975_2.png) [@Bogdan\_Mlakar](https://forum.babylonjs.com/u/Bogdan_Mlakar)\
**Post date:** [December 31, 2024, 5:12pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/6 "2024-12-31T17:12:32Z")

</div>

Leve 26

 ![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/8/3/8366ac0c619e8f2a7fa1387a275a696180779a8a.jpeg)l

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [February 21, 2025, 5:00pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/7 "2025-02-21T17:00:26Z")

</div>

How can I get better FPS. As I take a look, only physic if I disable in debugger increase FPS. There are if I have 2000 tiles then I have 4\*2000 colliders. How could I optimize physic havok so I enable only colliders around player. Or are there any another approach ?

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [February 25, 2025, 5:59am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/8 "2025-02-25T05:59:59Z")

</div>

![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/7/3/733239283b31a7c1f18b16da41e81888f6295a6d.jpeg)

---

<div class="post-metadata">

**Author:** ![Cedric](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/cedric/32/2742_2.png) [@Cedric](https://forum.babylonjs.com/u/Cedric)\
**Post date:** [February 25, 2025, 10:26am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/9 "2025-02-25T10:26:14Z")

</div>

If physics tile geometry is not very complex, I’d try to merge them all into a static trimesh.

---

<div class="post-metadata">

**Author:** ![Joe\_Kerr](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/joe_kerr/32/39017_2.png) [@Joe\_Kerr](https://forum.babylonjs.com/u/Joe_Kerr)\
**Post date:** [February 25, 2025, 11:10am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/10 "2025-02-25T11:10:56Z")

</div>

I would try Cedric’s way first because that would be easier. If that did not help enough:

These levels look huge. But you probably only need to check collisions where the ball is.

If the colliders are just simple boxes, you might get away with de/spawning them dynamically.

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [February 27, 2025, 7:13pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/11 "2025-02-27T19:13:45Z")

</div>

[![](https://img.youtube.com/vi/aGLz6_fpnAU/maxresdefault.jpg "PushBall - WebGL 3D Game") ](https://www.youtube.com/watch?v=aGLz6_fpnAU)

---

<div class="post-metadata">

**Author:** ![withADoveInOneHand](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/withadoveinonehand/32/1243_2.png) [@withADoveInOneHand](https://forum.babylonjs.com/u/withADoveInOneHand)\
**Post date:** [February 27, 2025, 7:56pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/12 "2025-02-27T19:56:17Z")

</div>

massive!

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [March 18, 2025, 6:05am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/13 "2025-03-18T06:05:49Z")

</div>

It works only - if you have WebXR plugin for Chrome/Firefox …

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [April 16, 2025, 4:27pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/14 "2025-04-16T16:27:39Z")

</div>

Some new levels from 20-40 - Fixed generator.

new virtual joystick - and - generator in run time to enter seed and depth.

 ![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/d/7/d7c9c45a358d86d8582ebc717e3b84ae3407e641.jpeg)

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [May 1, 2025, 5:39pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/15 "2025-05-01T17:39:34Z")

</div>

Now you can generate any maze under Button “Generate”  
You Enter first “seed” which is number for random generator.  
And recusion “depth”.  
Than you can play unique random generated maze.

Still some bugs and not implemented features.

New Video - What is New.

[![](https://img.youtube.com/vi/1VKYaJdZwT4/maxresdefault.jpg "Push Ball WebGL 3D Game") ](https://www.youtube.com/watch?v=1VKYaJdZwT4)

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [June 3, 2025, 2:39pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/16 "2025-06-03T14:39:16Z")

</div>

New Bug Fixes - Generate.

Now Seed and Depth and Generate algorithm should work fine.  
Each seed-depth combination is uniqe level and always same.

Direction x,y,z

Approximately Playing  
100 points → 10min  
1000 points → 100min - 1h 40 min

Add - new Skybox for test

 ![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/0/3/039b7e07e7468a243ec56ebc7ab6902b6ef9e5dd.jpeg)

Good ref. for skyboxes:

> **[Skybox AI](https://skybox.blockadelabs.com/)**
>
> Skybox AI: One-click 360° image generator from Blockade Labs

---

<div class="post-metadata">

**Author:** ![Ian\_Sheehan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ian_sheehan/32/1195_2.png) [@Ian\_Sheehan](https://forum.babylonjs.com/u/Ian_Sheehan)\
**Post date:** [June 3, 2025, 2:45pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/17 "2025-06-03T14:45:17Z")

</div>

Here one for who would like to have it.

> **[\_\_SkyBox\_\_ - Google Drive](https://drive.google.com/drive/folders/1COPf-1E8enQB5ylg0C-vgqJ67UR4U-Xn)**

---

<div class="post-metadata">

**Author:** ![Bogdan\_Mlakar](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bogdan_mlakar/32/42975_2.png) [@Bogdan\_Mlakar](https://forum.babylonjs.com/u/Bogdan_Mlakar)\
**Post date:** [August 21, 2025, 5:07pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/18 "2025-08-21T17:07:56Z")

</div>

![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/f/8/f8e94ecc0f1f20b0834d986f837171fdbe970836.jpeg)

---

<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:** [August 21, 2025, 11:06pm UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/20 "2025-08-21T23:06:19Z")

</div>

Freaking beautiful

---

<div class="post-metadata">

**Author:** ![Leandro\_Roggerone](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/leandro_roggerone/32/40220_2.png) [@Leandro\_Roggerone](https://forum.babylonjs.com/u/Leandro_Roggerone)\
**Post date:** [August 22, 2025, 11:41am UTC](https://forum.babylonjs.com/t/mazes-generator-pushball/55416/21 "2025-08-22T11:41:56Z")

</div>

Mazes looks amazing , would you describe how to create them ?  
while working [on this](https://leostereo.github.io/freesbeDeathMatchArena/) project, I struggled a lot to create those basic platforms.

[Next page](https://forum.babylonjs.com/t/mazes-generator-pushball/55416.md?page=2)
