Ross Nordby
Ross Nordby
I've reproduced it locally; that's a bug in the `CapsuleTriangleTester`. A downward pointing triangle is generating a contact with a downward pointing normal, even though the capsule is clearly behind...
Should be fixed in dfbb1962230fca0c94e3938f759e1607c05678d5, thanks for the report.
I was wondering if you were going to run into that before I could improve it :P That *was* expected behavior. Triangles, being one sided, didn't guarantee robust collision at...
Alright, several nightmares of long-hidden bugs later, all triangle pairs should handle edge contacts gracefully. The relevant tuning constant now lives in `TriangleWide.BackfaceNormalDotRejectionThreshold`: https://github.com/bepu/bepuphysics2/blob/master/BepuPhysics/Collidables/Triangle.cs#L168
While that's true for older scalar codegen, v2 uses SIMD widely. Bumping up to 64-bit as a default would cut ALU throughput in the most expensive stages by around a...
(Un)fortunately, there is no fixed threshold. It's completely dependent on the application's tolerance for error, and the scales that it chooses to work at. For example, it would be totally...
As far as scheduling this goes, here are my current thoughts in no particular order: - It's not a fundamentally required feature, so it's very hard to justify delaying core...
Swapping the broad phase for something completely different is possible, though a little annoying since I deliberately avoided adding relevant abstractions. I suspect the tree structure (particularly after the next...
>Alternatively, how difficult is to completely skip the broad/narrow phase, and perform collision detection directly? The StreamingBatcher (expect a rename) does exactly this, but you will have to prune pairs...
Splitting simulations is indeed the current recommendation to deal with enormous worlds. Individual simulations operating in FP32 while having a meta-origin stored in arbitrary precision does work. I have no...