Comments (2)
Actually, before i go back to actually re-implement this, do you have any numbers? Because i never had any maps that really warranted using skip, so this wasn't well tested and never actually benchmarked, iirc. So i guessed it's fair to cut this, less source of problems and confusion, etc etc.
So in case you have a map that you could share that shows perf benefits in action, or even just some numbers with skip==1 and skip>1, that would be super helpful. (ok to use the older JPS for checking this).
Alternatively, how big is your map? As you've been using skip you're probably aware of the problems it could cause; if all of your walls are thick enough to work with skip>1 without problems, maybe your map is too high-res and could do with less resolution?
from tinypile.
I was doing benchmark once. From my head, the time was divided by skip number, so:
skip= 0 time of execution ~ X
skip = 10 time of execution ~ X/10
So it worked nicely.
I have grid which is 8192x8192, you can think of it as bitmap terrain like in worms but top down. So I don't mind really when enemy player sometimes squeezes through one or two pixel wide line. I'm using skip = 5 which gives me 5 times performance boost and it behaves almost the same. 2-3 pixel wide walls are very rare in my case. Old vid of the map https://gfycat.com/welcomelimitedflatfish
from tinypile.
Related Issues (11)
- Suggestions :D HOT 5
- Path to the closest point to the destination
- Obstructed start-point HOT 10
- limit steps in Jump? HOT 2
- strange paths, operator() called with UINT_MAX HOT 6
- cant found path in some cases
- Memory leak HOT 2
- About the step direction
- Adding optional Diagonals
- jps.hh: redundant perculateUp call? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tinypile.