Comments (4)
On a related note, is it right to assume that constraints with more features either cost more performance, or are less stable, or both.
E.g. prefer point constraint > cone > swing twist > 6-dof ?
from joltphysics.
I think all joints should be equally stable, but the more complex the logic, the more the cost. From light to heavy (this is a guess, I haven't profiled it):
- Point
- Cone
- Slider/Hinge
- Swing Twist
- 6-DOF
- Path
The point and cone constraints are supposed to be cheap, so I'm not sure if I should add the extra complexity of friction to them. You can easily use a Swing Twist constraint and configure it without limits to get a point constraint, or a Swing Twist constraint with only swing limits to get a cone constraint with friction. The added cost of this should only be a couple of ifs (and a little bit of memory).
from joltphysics.
My thinking was the other way round: if I don't need twist limit I could use a cone constraint (e.g. in ragdolls) and if I don't need that either, I could use a point constraint. However, I always need the friction functionality.
from joltphysics.
I've decided to leave this as is. Adding friction to all constraints is going to duplicate code and the performance benefit is minimal compared to using a swing twist constraint with no limits.
from joltphysics.
Related Issues (20)
- Avoid setting CMake configuration types as a subproject HOT 9
- `CylinderShape` vs `MeshShape` yields odd collision data HOT 4
- Placement new with Jolt allocators HOT 2
- GCC 13.2: warning: ISO C++ prohibits anonymous structs [-Wpedantic] HOT 2
- Some userdata variables are still uint32_t HOT 2
- Support multiple collisions per vertex for a soft body
- CharacterContactListener: add OnContactPersisted and OnContactRemoved HOT 3
- Should DecoratedShapeSettings allow for raw pointers in its constructor? HOT 3
- Epsilon values in asserts causing issues in Debug builds HOT 9
- Automatic transmission HOT 2
- Crash in SkeletonMapperTest sample HOT 3
- Use in Vision OS?
- Slightly incorrect documentation HOT 1
- Box can rotate while sliding due to friction being applied asymmetrically
- About override new object (不能通过内存的方式创建对象,对于重写了new的class) HOT 2
- Linker Failure: GetSubmergedVolume HOT 2
- DirectX Error HOT 5
- btMotionState equivalent? HOT 4
- Documentation: Syntax is not valid for JPH::ConvexHullShapeSettings HOT 2
- Weird issue with virtual character controller not hitting the ground in Firefox Emscripten HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from joltphysics.