Search found 698 matches

by drleviathan
Thu Jan 28, 2021 4:49 pm
Forum: General Bullet Physics Support and Feedback
Topic: Simulate the dynamics in large particle systems on which external forces acts with elastic collisions in real time
Replies: 4
Views: 1763

Re: Simulate the dynamics in large particle systems on which external forces acts with elastic collisions in real time

The initial situation would be that there are already 10^4-10^5 particles in the world. Then only single objects (positive and negative charges that are creating the electrical field) are added one after the other. In total, about 10 objects will be added to the world. Will there also be problems i...
by drleviathan
Wed Jan 27, 2021 4:01 pm
Forum: General Bullet Physics Support and Feedback
Topic: Simulate the dynamics in large particle systems on which external forces acts with elastic collisions in real time
Replies: 4
Views: 1763

Re: Simulate the dynamics in large particle systems on which external forces acts with elastic collisions in real time

On a suitable machine I believe Bullet could handle 1e5 rigid spheres. I haven't tried it but this is based on memories of anecdotes I've heard. Dunno about 1e6. Bullet starts to have a measurable performance problem when adding new objects to the world when the number of objects already in the worl...
by drleviathan
Wed Jan 20, 2021 4:44 pm
Forum: General Bullet Physics Support and Feedback
Topic: inertia vector from inertia tensor matrix
Replies: 5
Views: 1958

Re: inertia vector from inertia tensor matrix

To clarify some points in the hope of being useful: The "inertia tensor" of an object is the analogous to "mass", but for rotational motion. In linear dynamics you are probably familiar with the formula: force = mass * acceleration In its full 3D glory that is a vector equation: ...
by drleviathan
Thu Jan 07, 2021 4:54 pm
Forum: General Bullet Physics Support and Feedback
Topic: Get rotation on Y axis from btRigidBody
Replies: 4
Views: 1417

Re: Get rotation on Y axis from btRigidBody

It is a Bad Idea to decompose rotations to Euler angles. It will be source of frustration and fragility. If you can change your Camera API then I would recommend you do so and have it accept a rotation, or better yet a transform. This is how I would do it. Dunno if this will work for you but maybe s...
by drleviathan
Wed Jan 06, 2021 11:40 pm
Forum: General Bullet Physics Support and Feedback
Topic: Get rotation on Y axis from btRigidBody
Replies: 4
Views: 1417

Re: Get rotation on Y axis from btRigidBody

Is it possible to get the rotation on Y axis of a btRigidBody? Body rotations are not necessarily about the Y-axis, and since rotations don't commute then it doesn't make sense to ask "How much of some general rotation is about the just the Y-axis?", unless you had a very clear recipe for...
by drleviathan
Wed Jan 06, 2021 3:17 pm
Forum: General Bullet Physics Support and Feedback
Topic: point to point spring constraint possible?
Replies: 6
Views: 6515

Re: point to point spring constraint possible?

Try the btPoint2PointConstraint . Edit: I'm sorry I didn't ready that carefully enough. You want it to swivel on both ends but to be springy along one linear direction. The btGeneric6DofConstraint would allow you to make only one swivel point. The btPoint2PointConstraint would allow you to swivel bo...
by drleviathan
Mon Jan 04, 2021 7:26 pm
Forum: General Bullet Physics Support and Feedback
Topic: Best way to rotate a btRigidBody
Replies: 3
Views: 852

Re: Best way to rotate a btRigidBody

Your description is not clear to me. A diagram or video would be helpful. That said, I think I can offer some advice already. It would go like this: Avoid representing full rotations with Euler angles. Use pure rotation math when possible. It is ok to use Euler angles (roll, pitch, yaw) to compute r...
by drleviathan
Fri Jan 01, 2021 2:09 am
Forum: General Bullet Physics Support and Feedback
Topic: CProfileManager::dumpAll() Prints Nothing
Replies: 4
Views: 982

Re: CProfileManager::dumpAll() Prints Nothing

I looked back at an old project where we were using CProfileManager and found code that looks something like the snippets below. You should consider this as pseudo code: I modified it to remove Qt stuff and make it more clear, but dunno if this compiles and it may well have bugs. I offer it with hop...
by drleviathan
Thu Dec 31, 2020 3:14 pm
Forum: General Bullet Physics Support and Feedback
Topic: CProfileManager::dumpAll() Prints Nothing
Replies: 4
Views: 982

Re: CProfileManager::dumpAll() Prints Nothing

When I look at the code I find this in src/LinearMath/btQuickprof.h:

Code: Select all

#ifndef BT_ENABLE_PROFILE
#define BT_NO_PROFILE 1
#endif  //BT_NO_PROFILE
What that means, I believe, is you need to compile with -DBT_ENABLE_PROFILE.
by drleviathan
Mon Dec 07, 2020 9:05 pm
Forum: General Bullet Physics Support and Feedback
Topic: Properly set shape data from robotics library to HACD structure
Replies: 1
Views: 949

Re: Properly set shape data from robotics library to HACD structure

First: VHACD works well for many general concave shapes, but is not failproof. It doesn't work well on non-closed meshes and takes configuration parameters which determine voxel resolutions, iteration limits, etc. When the config parameters are not appropriate for submitted meshes then you can get b...
by drleviathan
Mon Dec 07, 2020 8:35 pm
Forum: General Bullet Physics Support and Feedback
Topic: Rotating one object at the expense of the second
Replies: 7
Views: 1935

Re: Rotating one object at the expense of the second

You're calling stepSimulation(timeStep, maxSubSteps, subStep) with: fixed timesStep = 0.1f maxSubSteps = 1000 fixed subStep = 1.0f / 2400.0f I haven't explored it myself, but there have been reports of strange stuff happening at subSteps smaller than 1/1000. Meanwhile, if you don't have objects movi...
by drleviathan
Sat Nov 28, 2020 4:28 pm
Forum: General Bullet Physics Support and Feedback
Topic: Adding forces on collision callback for CCD:
Replies: 3
Views: 1210

Re: Adding forces on collision callback for CCD:

Ok. The good news is: btDiscreteDynamicsWorld::internalSingleStepSimulation() is virtual. You could derive MyDiscreteDynamicsWorld from btDiscreteDynamicsWorld and override that method to do what you want. In other words: add doMySpecialStuff() between solveConstraints() and integrateTransforms() .
by drleviathan
Sat Nov 28, 2020 5:42 am
Forum: General Bullet Physics Support and Feedback
Topic: Rotating one object at the expense of the second
Replies: 7
Views: 1935

Re: Rotating one object at the expense of the second

I have two ideas:

(1) Increase the friction coefficient on one or both objects? I believe friction > 1.0 is ok.

(2) Increase the substep frequency (e.g. reduce the substep duration) toward 240 Hz if you aren't already there yet.
by drleviathan
Fri Nov 27, 2020 2:27 pm
Forum: General Bullet Physics Support and Feedback
Topic: Adding forces on collision callback for CCD:
Replies: 3
Views: 1210

Re: Adding forces on collision callback for CCD:

One idea that occurs to me is: set the flag in the collision callback but harvest it in an Action within the same substep. If you look inside btDiscreteDynamicsWorld::internalSingleStepSimulation() you will see: the collisions are computed and processed before the actions are updated.
by drleviathan
Thu Nov 26, 2020 2:46 pm
Forum: General Bullet Physics Support and Feedback
Topic: Convert vec3 AngularVelocity to vec4?
Replies: 2
Views: 788

Re: Convert vec3 AngularVelocity to vec4?

From what I understand, Bullet expresses a rigid body's angular velocity as a 3D vector, where the x, y and z components represent a rotation around the body's local x, y and z axis (a yaw, pitch, roll rotation). That is incorrect . Bullet stores angular velocity as a 3D vector which points along t...