Search found 4145 matches

by Norbo
Fri Jun 22, 2018 10:21 pm
Forum: General
Topic: Deterministic fixed-point port, open source
Replies: 24
Views: 777

Re: Deterministic fixed-point port, open source

That behavior reminds me of one of a few things: 1) Incorrect depth calculation. 2) Failing shallow collision detection, followed by deep detection trying to compensate and 'bouncing' the shape out. 3) Broken persistent manifold management. All the pairs in the video would use the GeneralConvexPairH...
by Norbo
Fri Jun 22, 2018 10:08 pm
Forum: Questions and Help
Topic: [V1] Collision between two convex colliders
Replies: 1
Views: 22

Re: [V1] Collision between two convex colliders

You're welcome :) This is (probably) the collision margin. v1 uses an algorithm called GJK for shallow collision detection between many shape types including convex hull pairs. Standard GJK only works with separated objects, so the collision margin is used to keep the shapes apart. You can think of ...
by Norbo
Sun Jun 03, 2018 10:48 pm
Forum: Questions and Help
Topic: Most efficient rotation method for an entity?
Replies: 5
Views: 88

Re: Most efficient rotation method for an entity?

The EntityRotator doesn't support a 'time to meet goal' explicitly, but for dynamics, you can modify the underlying motor to behave in different ways. For example, you could mess with the rotator.AngularMotor.Servo.MaxCorrectiveVelocity, rotator.AngularMotor.Servo.BaseCorrectiveSpeed, or spring sett...
by Norbo
Sat Jun 02, 2018 9:28 pm
Forum: Questions and Help
Topic: Infinite plane collider
Replies: 2
Views: 45

Re: Infinite plane collider

There is no true 'plane' collider, but it can be approximated by a large shape. For example, collisions with a triangle's face work pretty much the same as a plane. It would look something like this: var ground = new Entity(new TriangleShape(new Vector3(0, 0, 0), new Vector3(100000, 0, 0), new Vecto...
by Norbo
Fri Jun 01, 2018 5:49 pm
Forum: Questions and Help
Topic: Most efficient rotation method for an entity?
Replies: 5
Views: 88

Re: Most efficient rotation method for an entity?

Since the OrientationMatrix is constructed from the Orientation quaternion, and the Orientation is forced to be normalized, the OrientationMatrix.Forward should always be a unit length direction. (Or NaNs if something has gone badly wrong.) For example: body.Orientation = Quaternion.CreateFromAxisAn...
by Norbo
Thu May 31, 2018 10:50 pm
Forum: Questions and Help
Topic: Most efficient rotation method for an entity?
Replies: 5
Views: 88

Re: Most efficient rotation method for an entity?

Directly setting the orientation of an entity is pretty cheap and can work just fine. There are a few things to keep in mind: 1) Directly changing orientation is equivalent to teleportation. The physics engine can't stop it from entering collision because there is no velocity associated with the mov...
by Norbo
Sat May 05, 2018 8:21 pm
Forum: General
Topic: Deterministic fixed-point port, open source
Replies: 24
Views: 777

Re: Deterministic fixed-point port, open source

From what I hear from Norbo, there's not much hope of getting V2 to be deterministic. Its highly optimized to use SIMD instructions, which don't really translate to integer math at all. Yup- for now. I would like to look into abstracting scalars with a compile time switch, though. If I can find a w...
by Norbo
Sat Apr 28, 2018 3:51 am
Forum: Questions and Help
Topic: V2 Simulation lists
Replies: 2
Views: 109

Re: V2 Simulation lists

Kinematic bodies (i.e. bodies with 0 inverse inertia) have velocity and are capable of velocity-based movement. Static objects, in contrast, have no velocity, cannot move at all (outside of direct user pose modification), and cannot be connected to by constraints. In the block chain demo, the top bo...
by Norbo
Sat Apr 28, 2018 3:30 am
Forum: General
Topic: v2.0.0-alpha released!
Replies: 3
Views: 180

Re: v2.0.0-alpha released!

Do you have a document for porting from V1 to V2?
Not yet- that's something I do want to make, though. Once I get some more of the important missing features in, I'll probably start creating some high level concept mapping documentation that links back to relevant demos for examples.
by Norbo
Mon Apr 09, 2018 11:33 pm
Forum: Questions and Help
Topic: Teleporting and joints
Replies: 1
Views: 73

Re: Teleporting and joints

Teleportation is not a physically 'understood' action- when only part of the ship is teleported, the other connected pieces stay where they are. The resulting constraint error is gradually fixed at the velocity level, as you've observed. Generally, when applying network corrections, it's a good idea...
by Norbo
Wed Apr 04, 2018 7:17 pm
Forum: Questions and Help
Topic: Getting all entitys inside a bounding frustrum
Replies: 2
Views: 87

Re: Getting all entitys inside a bounding frustrum

One approach would be to represent the frustum as a ConvexHullShape, and then use the NarrowPhaseHelpers.GetPairHandler to grab a pair to test. The character's QueryManager.QueryContacts function does this. That said, it's not going to be ideal. An enormous convex hull tested against relatively smal...
by Norbo
Sun Apr 01, 2018 4:30 am
Forum: General
Topic: v2.0.0-alpha released!
Replies: 3
Views: 180

v2.0.0-alpha released!

If you like eating partially baked bread, you'll love using the alpha!
http://www.bepuphysics.com/blog/2018/3/ ... eased.html
by Norbo
Thu Mar 22, 2018 8:03 pm
Forum: General
Topic: Games using bepu
Replies: 54
Views: 23943

Re: Games using bepu

Nice work, hopefully I'll have v2.0 out before you can finish a third entire game :P
by Norbo
Sat Mar 10, 2018 11:02 pm
Forum: General
Topic: Convert static mesh to dynamic mesh at an impact
Replies: 2
Views: 130

Re: Convert static mesh to dynamic mesh at an impact

In bepuphysics v1 and engines which handle things similarly, removing something from a static mesh is a topological change that will tend to imply a heavy acceleration structure update. So, it is possible, but it comes with pretty significant overhead- especially when talking about a single giant le...
by Norbo
Wed Feb 28, 2018 5:38 am
Forum: General
Topic: Deterministic fixed-point port, open source
Replies: 24
Views: 777

Re: Deterministic fixed-point port, open source

MethodImplOptions.AggressiveInlining tends to work best (at least on the versions of coreclr 2.0.X that I've tested) when dealing with functions that pass by reference exclusively. When passing by value, many copies tend to persist, so even if the call itself is inlined the value is somewhat limited...