-
Notifications
You must be signed in to change notification settings - Fork 13
Description
Hello!
Ive been looking through your nice library and I found some puzzling things about the reportConstraints
function.
1. Typo
It seems like there might be a typo here where .lenght
should be .length
index = _constraints.lenght; |
It also seems as if it was not fixed for quite a while.
2. .ta
attribute is defined conditionally
The .ta
attribute is set in the addConstraint
function for the slider
, conetwist
, and dof
types.
physics-module-ammonext/bundle-worker/physics-module.js
Lines 2527 to 2528 in 5f58d67
constraint.ta = transforma; | |
constraint.tb = transformb; |
The .ta
attribute is only used in the reportConstraints
function for ALL constraints regardless of type.
physics-module-ammonext/bundle-worker/physics-module.js
Lines 3141 to 3158 in 5f58d67
while (index--) { | |
if (_constraints[index]) { | |
var _constraint = _constraints[index]; | |
var offset_body = _constraint.a; | |
var transform = _constraint.ta; | |
var origin = transform.getOrigin(); | |
// add values to report | |
offset = 1 + i++ * CONSTRAINTREPORT_ITEMSIZE; | |
constraintreport[offset] = index; | |
constraintreport[offset + 1] = offset_body.id; | |
constraintreport[offset + 2] = origin.x; | |
constraintreport[offset + 3] = origin.y; | |
constraintreport[offset + 4] = origin.z; | |
constraintreport[offset + 5] = _constraint.getBreakingImpulseThreshold(); | |
} | |
} |
Therefore, if you create a constraint that does not set the .ta
attribute, you will get an error when this function is run: