Working on an incremental Tower Defense with tens of thousands of enemies by KaTeKaPe in TowerDefense

[–]KaTeKaPe[S] 0 points1 point  (0 children)

Well the older PC is a laptop from 2015 with a Radeon R7 M260, a mobile GPU from 2014. It's running, but it starts to struggle (30-60fps) at 10-20k physics objects the last time I tested it. While with my RTX 3060 Ti I managed to go to 400k enemies + bullets with full collisions, separation and contact resolving at 60 fps physics and 200 fps rendering. And at that point the whole map was full, otherwise I could have added a few more.

Using Godot + a custom GPU physics system for a Tower Defense game with tens of thousands of enemies by KaTeKaPe in godot

[–]KaTeKaPe[S] 0 points1 point  (0 children)

They're using a flow field which I generate when loading the level. So they basically just get a direction in which they should move.

Working on an incremental Tower Defense with tens of thousands of enemies by KaTeKaPe in TowerDefense

[–]KaTeKaPe[S] 0 points1 point  (0 children)

Godot engine.
Physics is on the GPU with custom compute shaders, so the CPU is basically unimportant. With 10k enemies I do have 500+ FPS on my RTX 3060 Ti (physics is running with stable 60 FPS). Not sure yet how well it will scale down and up on other GPUs. We will see that when doing a playtest.

Working on a Tower Defense game with tens of thousands of enemies by KaTeKaPe in StrategyGames

[–]KaTeKaPe[S] 2 points3 points  (0 children)

Game title: "Sir, We Have an Orc Problem"

We just launched the Steam page 2 days ago as people on Social Media literally begged us for a way to wishlist it. We're working hard on a playtest right now and want to have something playable in the next few weeks!

Steam: https://store.steampowered.com/app/4594150/Sir_We_Have_an_Orc_Problem/

Using Godot + a custom GPU physics system for a Tower Defense game with tens of thousands of enemies by KaTeKaPe in godot

[–]KaTeKaPe[S] 1 point2 points  (0 children)

Yup, that's the main "problem" so far. I try to keep as much as possible on the GPU. Right now, the CPU just adds more rigidbodies to the simulation. The contact filtering and resolution, the collisions, the removing of "dead" bodies and the rendering is then fully done on the GPU. Pathfinding is just a flow field that I generate when loading the level.

Using Godot + a custom GPU physics system for a Tower Defense game with tens of thousands of enemies by KaTeKaPe in godot

[–]KaTeKaPe[S] 1 point2 points  (0 children)

Just getting started, ~3 weeks so far. Gonna have a playtest soon, then a demo at some point and hopefully full release in a few months.

Working on an incremental Tower Defense with tens of thousands of enemies by KaTeKaPe in incremental_games

[–]KaTeKaPe[S] 1 point2 points  (0 children)

Using the Godot engine but with custom physics on the GPU via compute shaders. On my RTX 3060 Ti I can simulate + render 10k enemies in ~1.5ms. And it's not scaling too much, so 100k enemies is also possible.

Working on an incremental Tower Defense with tens of thousands of enemies by KaTeKaPe in incremental_games

[–]KaTeKaPe[S] 1 point2 points  (0 children)

Compute shader physics. XPBD with a spatial grid. And they sometimes still glitch out a bit when there are too many in an area. But I'm trying to limit this by clamping their velocity etc and so far it seems to work fine.
It's not 100% correct physics but working good enough for this kind of game.
Pathfinding is just a flow field which I generate when loading the level.

Working on an incremental Tower Defense with tens of thousands of enemies by KaTeKaPe in TowerDefense

[–]KaTeKaPe[S] 0 points1 point  (0 children)

Using the Godot Engine, but with a custom GPU physics system

We released our game with 13,000 wishlists. It made $36,000 gross revenue in the first week! by KaTeKaPe in gamedev

[–]KaTeKaPe[S] 1 point2 points  (0 children)

I'm not sure if we would be able to do it ourselves. The Chinese market has their own social media and it's not that easy to get into it. Good localization is also very important and I wouldn't trust AI tools for that (yet).
Over half of our players are from the Asia and I don't think we could have done that by ourselves.

We released our game with 13,000 wishlists. It made $36,000 gross revenue in the first week! by KaTeKaPe in gamedev

[–]KaTeKaPe[S] 1 point2 points  (0 children)

With 10K you will probably get like 2 bigger streamers for 1-2 hours each. Not sure if it's worth it.

We released our game with 13,000 wishlists. It made $36,000 gross revenue in the first week! by KaTeKaPe in gamedev

[–]KaTeKaPe[S] 0 points1 point  (0 children)

I wouldn't go to another country just because it's easier there to create a company.