Author Topic: Physics E-Grid  (Read 2495 times)

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Physics E-Grid
« on: October 22, 2007, 11:03:37 PM »
I beginning to work on this.  For clarity, this is the portion of the E-Grid where the physics differ in different grids I.e. differ parts of the field, as opposed to the substance E-grid, where each grid cell contains differening amounts of substances bots can potentially see, move and otherwise interact with.

The physcis E-Grid is easier to implment and does not carry with it the performance issues associated with the substance grid.  This is why I'm working on it first.

I am soliciting input on what people would like to see w.r.t. the physics grid.  In particualar:

Which physics are most interesting to you to vary across different grids?  Y or Z axis gravity?  Fluid resistance or friction?  Perhaps sight range or veggy feeding rates?

How would you like these things to vary?  Completly random?  A limited delta between any two adjacent grids providing a more grandual transition?

Over what range would you like thigns to vary?  From 0 to 100% of the amount configured in the overall physics dialog with linear probability distribution across grids?  Perhaps the values in the physics dialog are a mean in a guassian distribution across grids?

What new physics would you like to see on a grid basis?  For example, varying Z axis gravitational direction as well as strength.

Any suggestions for visualizing the grid?  Pick a single physics parameter and vary the grid color according to percentage?  A little bar graph in each grid showing all relavalent physics percentages?

Any other thoughts appreciated.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Physics E-Grid
« Reply #1 on: October 23, 2007, 08:16:40 AM »
I'd suggest a simplex grid (ie: a grid made of equilateral triangles in 2D).  Each vertex could potentially have its own physics constants.  You could then LERP between the verticies when a bot is inside a given triangle.  LERPing helps ensure that the bots' environment's derivatives are all continuous.  If we were really ambitious, there are other interpolation methods that ensure that higher derivatives are all also continuous.

It also scales much nicer into 3D, if we ever want to go that far.  (Square grids increase with 2^N, simplex grids increase with N + 1, as dimensions N increase).

Alternatively, you could just let the user place down random "physics points", and use them to construct weird physics triangles at arbitrary locations.

Everything in the physics dialog box should be fair game, plus most things on the general tab, plus mutation and cost multipliers.

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Physics E-Grid
« Reply #2 on: October 23, 2007, 01:51:08 PM »
If I understand this correctly, you're talking about bots getting various friction and invisible obstacles at random locations while they move across the field?
Personally I think they should be able to discover those and learn to overcome or take advantage of them, not just hitting on it for no reason. Also it should be completely configurable and also the possibility to not use it at all.
When I run a sim I imagine it as a little dish with water the bots move through, so friction and fluid are the same all over. Only obstacles are the moving shapes I use, which the bots can see. Maybe adding a sysvar so the bots can know and adapt to the shapes is what I would prefer, before adding other physics.
Just my humble opinion.  
The internet is corrupt and controlled by criminally minded people.