Darwinbots Forum
Code center => Suggestions => Topic started by: EricL on October 25, 2006, 12:14:09 PM
-
Are people interested in ties becoming more physical? Today, ties kind of exist outside the physical realm. They transmit and translate acceleration ad torque forces between the two tied bots, but that's about it. Specifically,
- There is no collision detection done between bots and ties. Bot C can pass right through a tie connecting bots A and B.
- There is no collision detection done between ties and shapes. Tie connected bots can straddle a skinny shape.
- There is no collison detection done between ties and ties. That is, ties can be created through other ties. Multi-bots can "cross brace", feeding ties, etc. can be established between and "through" tie connected bots.
- There is no collison detection done between ties and shots.
- Ties don't exhibit drag or exhert forces on the tie connected bots due to interaction with the the medium fluid or due to friction. A squid bot isn't possible at present. Note that such routines may have existed in the code at one time, but they are disabled in the 2.4 fork.
- Ties are invisable. Bot's can't see them.
- Ties can't be felt. Touch senses don't register when bots hit ties (like they do when bots hit other bots or bump into shapes).
Interested in feedback. Note that the more physics we add here, the more (negative) impact it might have on sim performance.
-
I think it is fine the way it is, and if adding these things would reduce perf, I don't think the pro's outweigh the cons.
-
I think it would be nice, even if performance suffers. I'm more concerned about complex interactions that may increase the number of bugs and reduce stability.
-
I imagine ties can cross over some things (like other ties) becasue they maybe curve a little in the 3rd dimension or can go through each other (physically bore a tunnel through the other one) or other similar properties.
Bots colliding with ties would be pretty interesting. However, try to keep in mind something important: currently everything is 2D but a 3D version isn't impossible to consider (the C++ fork even allows this implicitly since all the vectors are 3D and things like volume are calculated using 3 dimensions). If a bot can't go through ties, it means that a triangle multibot in 2D is rather solid. But in 3D this doesn't hold true for a tetrahedron multibot.
Maybe something like a solid membrane that can surround a multibot to make it impenetrable to shots, bots, etc. (the membrane could even be destructed by shots. Maybe membranes are made of shell or something like that.)
Ties should exhibit drag, but to do it properly is tricky. I think I have the math for it figured out, but I haven't tested it yet.
Ties should only be visible and otherwise detectable (through touch) if bots can influence ties through collisions, shots, etc. They are a package deal IMO.
-
However, try to keep in mind something important: currently everything is 2D but a 3D version isn't impossible to consider (the C++ fork even allows this implicitly since all the vectors are 3D and things like volume are calculated using 3 dimensions).
I don't think 3D is really possible : you're forgetting about the "curse of dimensionality". And it would require a complete redesign of motion and vision logic. So I don't think we should consider it in design decisions.
That being said, I think we should consider the 2D universe simulates something that's actually kind of 3D and I'd rather consider ties as thin tubes able to bend slightly in the 3rd dimension. So I'd say that ties, shots and bots should cross them unimpeded, but that ties shouldn't cross shapes, because these should be like barriers of infinite height. I can't really justify drag this way, but it'd be good to have it anyway.
-
I don't think 3D is really possible : you're forgetting about the "curse of dimensionality". And it would require a complete redesign of motion and vision logic. So I don't think we should consider it in design decisions.
I disagree. 3D controls would just be a superset of the current "projected" controls. Not really the place to discuss it of course.
-
I have my doubts about this as it can slow performance, now when the program finally runs at an acceptable speed. Instead I whould prefer shorter ties that put bots closer together. Looks more realistic I think.