Someone suggested to replace the Blue Screen with the Linux Kernel Panic on the Linux port, so I added it!

Thanks u/citrusalex for the awesome suggestion!

It was more difficult to get the video to work on the 3D model (especially with Unity not cooperating haha) but I think the end result looks nice!

The game is called Barely Breathing, you can play the Native Linux port of the Demo here: https://store.steampowered.com/app/4514070/Barely_Breathing/ Would appreciate if you guys can Wishlist as well 😄 Thank you!

u/BarelyBreathingGame — 10 days ago
▲ 1.5k r/indiegames+2 crossposts

New Swinging Pots level in our physics fish platformer - it's called Barely Breathing

We just pushed a free demo update that added 2 new areas, an enemy, and more!

u/BarelyBreathingGame — 11 days ago
▲ 1.0k r/Unity3D+1 crossposts

I made a procedural puddle generator that dynamically reacts to the environment

The previous puddle was simple and worked, but had some problems in edge cases (literally)

Previously it just spawned a pre-made circular mesh wherever the bottle dropped, which meant that it didn't know where the edges were or if there was an object blocking the water.

To fix this, I had to create a procedural puddle generator from scratch.

I used the BFS (breadth-first-search) algorithm so that it spreads from the mouth of the glass realistically. It worked, but unfortunately the shape was a diamond instead of a circle.

I figured out that if you spawn the next points in a priority queue (priority being distance from the glass mouth) instead of a normal queue, it results in a smoother and more circular spread since the closer points expand first.

But, it still doesn't avoid objects and still goes over the edge. Fixing that is simple, using raycasts. From the glass mouth, it shoots out raycasts in four direction, with each ray detecting colliders and next the point generation would be cancelled if the collider blocks it.

After enough points generated, from there, I casted a ray downwards to find the nearest valid ground. So it just spawned the spheres there and generated the puddle that way!

The final mesh is created using Marching Cubes, I gave all the points generated from above algorithm with blob radius and it generated a nice merged puddle. (no need to give real mesh blobs, which optimizes this algorithm significantly)

So, to recap, it works like this:

  1. BFS Algorithm to spawn spheres spreading from the center
  2. Casts rays across the floor perpendicularly to check for walls.
  3. From there, it casts rays straight down until it hits a collider to check for floors.
  4. Using Marching Cubes algorithm, it turns the spheres into an actual mesh that can be used in-game!

Thank you for reading, I hope this was helpful! If you're curious on what my game is, it's called Barely Breathing, it'll mean a lot if you could Wishlist on Steam.

u/BarelyBreathingGame — 2 months ago
🔥 Hot ▲ 9.3k r/IndianGaming+3 crossposts

Yes, the game has a native Linux build on Steam 😁 It also runs smoothly on the SteamDeck!

If the game looks interesting to you, feel free to try Demo for free: https://store.steampowered.com/app/4514070/Barely_Breathing/

Barely Breathing is a 3D Physics-based Puzzle/Platformer, where you play as a cute cozy goldfish jumping around pots, knocking over water glasses, to try and get out of the house.

u/BarelyBreathingGame — 3 days ago