mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 10:29:01 +02:00
Merge branch 'master' of github.com:highfidelity/hifi into instancing
This commit is contained in:
commit
c0e4509095
4 changed files with 106 additions and 55 deletions
|
@ -5244,23 +5244,23 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idle",
|
"state": "idle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5313,19 +5313,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5380,19 +5380,19 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "idle",
|
"state": "idle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5469,19 +5469,19 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "strafeRightHmd",
|
"state": "strafeRightHmd",
|
||||||
|
@ -5533,19 +5533,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5597,19 +5597,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5661,19 +5661,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5725,19 +5725,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5794,19 +5794,19 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnLeft",
|
"state": "turnLeft",
|
||||||
|
@ -5859,19 +5859,19 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5919,15 +5919,15 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "strafeLeftHmd",
|
"state": "strafeLeftHmd",
|
||||||
|
@ -5935,11 +5935,11 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -5983,15 +5983,15 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "idleSettle",
|
"state": "idleSettle",
|
||||||
"var": "isNotMoving"
|
"var": "isNotInput"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "strafeRightHmd",
|
"state": "strafeRightHmd",
|
||||||
|
@ -5999,11 +5999,11 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
@ -6128,19 +6128,19 @@
|
||||||
"transitions": [
|
"transitions": [
|
||||||
{
|
{
|
||||||
"state": "WALKFWD",
|
"state": "WALKFWD",
|
||||||
"var": "isMovingForward"
|
"var": "isInputForward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "WALKBWD",
|
"state": "WALKBWD",
|
||||||
"var": "isMovingBackward"
|
"var": "isInputBackward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFERIGHT",
|
"state": "STRAFERIGHT",
|
||||||
"var": "isMovingRight"
|
"var": "isInputRight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "STRAFELEFT",
|
"state": "STRAFELEFT",
|
||||||
"var": "isMovingLeft"
|
"var": "isInputLeft"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"state": "turnRight",
|
"state": "turnRight",
|
||||||
|
|
|
@ -315,6 +315,10 @@ void MySkeletonModel::updateRig(float deltaTime, glm::mat4 parentTransform) {
|
||||||
const float TALKING_TIME_THRESHOLD = 0.75f;
|
const float TALKING_TIME_THRESHOLD = 0.75f;
|
||||||
params.isTalking = head->getTimeWithoutTalking() <= TALKING_TIME_THRESHOLD;
|
params.isTalking = head->getTimeWithoutTalking() <= TALKING_TIME_THRESHOLD;
|
||||||
|
|
||||||
|
//pass X and Z input key floats (-1 to 1) to rig
|
||||||
|
params.inputX = myAvatar->getDriveKey(MyAvatar::TRANSLATE_X);
|
||||||
|
params.inputZ = myAvatar->getDriveKey(MyAvatar::TRANSLATE_Z);
|
||||||
|
|
||||||
myAvatar->updateRigControllerParameters(params);
|
myAvatar->updateRigControllerParameters(params);
|
||||||
|
|
||||||
_rig.updateFromControllerParameters(params, deltaTime);
|
_rig.updateFromControllerParameters(params, deltaTime);
|
||||||
|
|
|
@ -2160,6 +2160,51 @@ void Rig::updateFromControllerParameters(const ControllerParameters& params, flo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//deadzone constant
|
||||||
|
const float INPUT_DEADZONE_THRESHOLD = 0.05f;
|
||||||
|
|
||||||
|
if (fabsf(params.inputX) <= INPUT_DEADZONE_THRESHOLD && fabsf(params.inputZ) <= INPUT_DEADZONE_THRESHOLD) {
|
||||||
|
// no WASD input
|
||||||
|
_animVars.set("isInputForward", false);
|
||||||
|
_animVars.set("isInputBackward", false);
|
||||||
|
_animVars.set("isInputRight", false);
|
||||||
|
_animVars.set("isInputLeft", false);
|
||||||
|
_animVars.set("isNotInput", true);
|
||||||
|
} else if (fabsf(params.inputZ) >= fabsf(params.inputX)) {
|
||||||
|
if (params.inputZ > 0.0f) {
|
||||||
|
// forward
|
||||||
|
_animVars.set("isInputForward", true);
|
||||||
|
_animVars.set("isInputBackward", false);
|
||||||
|
_animVars.set("isInputRight", false);
|
||||||
|
_animVars.set("isInputLeft", false);
|
||||||
|
_animVars.set("isNotInput", false);
|
||||||
|
} else {
|
||||||
|
// backward
|
||||||
|
_animVars.set("isInputForward", false);
|
||||||
|
_animVars.set("isInputBackward", true);
|
||||||
|
_animVars.set("isInputRight", false);
|
||||||
|
_animVars.set("isInputLeft", false);
|
||||||
|
_animVars.set("isNotInput", false);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (params.inputX > 0.0f) {
|
||||||
|
// right
|
||||||
|
_animVars.set("isInputForward", false);
|
||||||
|
_animVars.set("isInputBackward", false);
|
||||||
|
_animVars.set("isInputRight", true);
|
||||||
|
_animVars.set("isInputLeft", false);
|
||||||
|
_animVars.set("isNotInput", false);
|
||||||
|
} else {
|
||||||
|
// left
|
||||||
|
_animVars.set("isInputForward", false);
|
||||||
|
_animVars.set("isInputBackward", false);
|
||||||
|
_animVars.set("isInputRight", false);
|
||||||
|
_animVars.set("isInputLeft", true);
|
||||||
|
_animVars.set("isNotInput", false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
_headEnabled = params.primaryControllerFlags[PrimaryControllerType_Head] & (uint8_t)ControllerFlags::Enabled;
|
_headEnabled = params.primaryControllerFlags[PrimaryControllerType_Head] & (uint8_t)ControllerFlags::Enabled;
|
||||||
bool leftHandEnabled = params.primaryControllerFlags[PrimaryControllerType_LeftHand] & (uint8_t)ControllerFlags::Enabled;
|
bool leftHandEnabled = params.primaryControllerFlags[PrimaryControllerType_LeftHand] & (uint8_t)ControllerFlags::Enabled;
|
||||||
bool rightHandEnabled = params.primaryControllerFlags[PrimaryControllerType_RightHand] & (uint8_t)ControllerFlags::Enabled;
|
bool rightHandEnabled = params.primaryControllerFlags[PrimaryControllerType_RightHand] & (uint8_t)ControllerFlags::Enabled;
|
||||||
|
|
|
@ -88,6 +88,8 @@ public:
|
||||||
AnimPose secondaryControllerPoses[NumSecondaryControllerTypes]; // rig space
|
AnimPose secondaryControllerPoses[NumSecondaryControllerTypes]; // rig space
|
||||||
uint8_t secondaryControllerFlags[NumSecondaryControllerTypes];
|
uint8_t secondaryControllerFlags[NumSecondaryControllerTypes];
|
||||||
bool isTalking;
|
bool isTalking;
|
||||||
|
float inputX;
|
||||||
|
float inputZ;
|
||||||
bool reactionEnabledFlags[NUM_AVATAR_BEGIN_END_REACTIONS];
|
bool reactionEnabledFlags[NUM_AVATAR_BEGIN_END_REACTIONS];
|
||||||
bool reactionTriggers[NUM_AVATAR_TRIGGER_REACTIONS];
|
bool reactionTriggers[NUM_AVATAR_TRIGGER_REACTIONS];
|
||||||
HFMJointShapeInfo hipsShapeInfo;
|
HFMJointShapeInfo hipsShapeInfo;
|
||||||
|
|
Loading…
Reference in a new issue