High Definition Standard Definition Theater
Video id : 8_5Zrgek1p8
ImmersiveAmbientModecolor: #584db8 (color 2)
Video Format : (720p) openh264 ( https://github.com/cisco/openh264) mp4a.40.2 | 44100Hz
Audio Format: 140 ( High )
PokeEncryptID: 73e3c613e16929b962477c64a8f342f42cc37f4200b233f39a41e12f66513ceed9a7b8c2aa9d9e2e7a29f3c64f10aaf2
Proxy : eu-proxy.poketube.fun - refresh the page to change the proxy location
Date : 1739920715089 - unknown on Apple WebKit
Mystery text : OF81WnJnZWsxcDggaSAgbG92ICB1IGV1LXByb3h5LnBva2V0dWJlLmZ1bg==
143 : true
Game Dev Secrets: Increase your FPS by ten thousand percent! #indiegamedev #gamedev
 60 FPS video
885,821 Views • Jul 27, 2024 • Click to toggle off description
Follow Isadora's Edge on Kickstarter: www.kickstarter.com/projects/inboundshovel/isadora…
Wishlist Isadora's Edge on Steam: store.steampowered.com/app/3125320/Isadoras_Edge/

(you can have a global queue that controls which frames the algorithm runs on, that way you avoid big spikes if multiple enemies just happen to line up and recalculate their pathfinding on the same frame! but honestly this trick is such a lifesaver man, you can write sloppy messy unoptimized code, then just have it only run every, like, 2 or 3 frames and it makes development way faster for prototyping. plus, then if you do optimize the code later on, you'll already be all time sliced up, so you'll be able to absolute COOK those framerates lmao)

The game that I'm developing as an indie game dev is called Isadora's Edge! A 2D Pixel Art platformer game, that I'm developing in the Godot Game Engine! If you're new to Godot or have any questions about Godot or game dev in general, feel free to ask me! #indiegame #gamedesign #godot #godotengine #gaming #gamedevelopment #pixelart #gameengine
Metadata And Engagement

Views : 885,821
Genre: Gaming
License: Standard YouTube License
Uploaded At Jul 27, 2024 ^^


warning: returnyoutubedislikes may not be accurate, this is just an estiment ehe :3
Rating : 4.957 (818/75,485 LTDR)

98.93% of the users lieked the video!!
1.07% of the users dislieked the video!!
User score: 98.40- Masterpiece Video

RYD date created : 2025-02-18T22:50:30.273012Z
See in json
Connections
Nyo connections found on the description ;_; report an issue lol

509 Comments

Top Comments of this video!! :3

@InboundShovel

6 months ago

Wishlist Isadora's Edge on Steam!
store.steampowered.com/app/3125320/Isadoras_Edge/
And you can follow the Kickstarter here: www.kickstarter.com/projects/inboundshovel/isadora…

Thank you!

446 |

@hamzamotara4304

6 months ago

Fun fact: Celeste uses this method for spikes hit boxes, and you can use a glitch or external tool to ignore 2/3rds of spikes. Don't forget failsafes!

5.3K |

@jeghamjegham

6 months ago

The much bigger optimization is to choose a completely different approach , on a low end machine you should be having hundreds of enemies pathfinding at once without dropping below 60 fps , especially in a 2d game, so the problem here is the algorithm itself and not the frequency, but i understand this is just an example

3.1K |

@sepiasmith5065

6 months ago

SO CUTE my god i LOVE your art!!! the owl looks like a combo with a cat!

27 |

@Nemofication

6 months ago

This is a very good example of code that should never be related to framerate but rather a fixed-time update function like the ones physics also ought to use.

288 |

@להבצור

6 months ago

Another youtuber (blargis) also added random offset for each enemy path calculation in his game to spread out the load

651 |

@lenderjun

6 months ago

I've been seeing these shorts for the past few days and I very much looking forward to your game. Great way to advertise it❤

9 |

@TheKevDev

6 months ago

My game has about 500 enemies pathfinding on screen at a time. The pathfinder updates every 6 frames and I use multithreading and ECS to lessen the load on the main thread and reference the data more efficiently.

I still have some optimizing to do, currently creating and destroying enemies and I saw your video about instantiating all objects on start then disable and renable when needed but I feel like that takes the same amount if not more processing than creating and destroying.

God optimization is a real puzzle sometimes

200 |

@dipperdomes7184

6 months ago

your game art style is such an eye candy 🥺❤

3 |

@extranji

6 months ago

Love the little Owlboy cameo ❤

18 |

@nokkturnaldev

6 months ago

This is a good technique (though as others have pointed out, it should be done in a fixed time step), but it isn't time slicing. Time slicing involves doing work over multiple frames, normally using threading / jobs.

19 |

@Thecreashhacks

2 months ago

Great demonstration! That said, really expensive algorithms like this do exist! If you need it yo be calculated each frame, make your own function in like C or something

3 |

@jarankennedy762

6 months ago

I can’t wait for this game to come out. Wishlisted and watch all of these shorts that come to my feed-it looks great, super excited to play it. Keep up the great work!

|

@Ktoyatakoiskazhimne

3 months ago

Just make a task scheduler, if you don't want to use multi-threading.

1. Make a master controller that updates every frame.

2. Make a controllers for game mechanics that need to be updated regularly

3. Code a update budget, which is your preferable minimal fps, i.e 60 frames per second, so 1/60 second.

4. Put a priorities to controllers and desirable update period(i.e 0.5 second and etc)

5. Measure execution time

???

Just run all controllers that need to be updated every frame according to priority and skip them if there's not enough time to run them. Also you can spread loops inside your update function on the next frames

btw ECS-friendly

5 |

@StinkerBinker

6 months ago

Love these videos, even sometimes when it’s something i already know it’s super fun to see an explanation of what can be a confusing concept to visualize at times. Keep making em ❤

|

@allegro6104

6 months ago

Kind of unrelated to the actual topic but i finally figured out what your game reminds me off. it's the Megaman Z series! hyped to see more of it eventually

7 |

@TidanOfc

6 months ago

You reminded me to limit my player stat bar updates to once every 30 frames

43 |

@eiscreme3116

5 months ago

The sprite of the owl is so bouncy
It's disorienting 0-o

1 |

@MightyDantheman

5 months ago

Just make sure to have each one checking on different frames so that you don't have a lag spike every 15 frames. You also only need to check the ones that are in frame or close enough to be relevant. You can also use 2D voxel pathfinding which may be more performant depending on the size of those voxels. There's probably some other methods too, but that's off the top of my head.

2 |

@graydiation

5 months ago

Looks great! I can't wait to see what you've done.

|

Go To Top