- Currently uses multiple different techniques to do different things (collisions and pushing, see src/physics/Polygon.js). Unifying it into a single system that includes capabilities such as pushing things along walls or rotation when pushing would make sense.
- Things should rotate when pushed
- Things should slide along walls when pushed against walls
- Get rid of the horrible hacky mess to try and make things get pushed in all directions (the assignment of distMin)
- Add a specific section of the robot that picks things up rather than picking items up whether you drive straight forward into it or just clip it with the back corner
- Make robots push each other
- Update the vision code to work like the new vision system when it arrives
- Check to see how
query.timeout()
is implemented in the Python API v5
- Add a
Marker.vertices[]
property
- Add advanced VisionV2 code
- Yield Query and Timeout - uses
yield
andquery.timeout()
- Should possibly be more integrated with the physics code
- Using
SRJS.phys
seems a bit hacky SRJS.intersections
also seems a bit hacky
- Currently centred on the edge of the robot
- Code duplicated between Bump Sensor and Range Finder
- Specifying the width and length (so they're something other than 50) causes the bump sensors to be in the wrong place
- Setting the height as anything other than 50 causes it to float
- See if the use of
eval()
can be reduced
- Try and make the input API slightly more like the Python version
- Make it possible to specify the position and rotation of range finders (add your own)
- When doing SAT detection, project each vertex only once
- Check whether the update system works with multiple robots, or whether markers need cloning when returning from update()
- Can create large numbers of span objects per frame. Possibly reuse to give the garbage collector some love.
- Would make more sense to access image data directly rather than converting to PNG, drawing that, then getting imageData to process
- Blue Blobs show through the wall from certain angles