Skip to content

Commit e443829

Browse files
committed
Implement eye openness for v2 params
1 parent a81525c commit e443829

1 file changed

Lines changed: 29 additions & 15 deletions

File tree

ExpressionStrategies/V2Mapper.cs

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -37,32 +37,46 @@ public V2Mapper(ILogger logger)
3737
public void handleOSCMessage(OSCMessage message)
3838
{
3939
string paramToMap = ImappingStategy.GetParamToMap(message.address);
40-
if (parameterValues.ContainsKey(paramToMap))
41-
{
42-
parameterValues[paramToMap] = message.value;
43-
44-
var singleEyeMode = singleEyeParamNames.Contains(paramToMap);
45-
UpdateVRCFTEyeData(ref UnifiedTracking.Data.Eye, ref UnifiedTracking.Data.Shapes, singleEyeMode);
46-
}
40+
if (!_parameterValues.ContainsKey(paramToMap))
41+
return;
42+
43+
_parameterValues[paramToMap] = message.value;
44+
var singleEyeMode = _singleEyeParamNames.Contains(paramToMap);
45+
UpdateVRCFTEyeData(ref UnifiedTracking.Data.Eye, ref UnifiedTracking.Data.Shapes, singleEyeMode);
4746
}
4847

49-
public void UpdateVRCFTEyeData(ref UnifiedEyeData eyeData, ref UnifiedExpressionShape[] eyeShapes, bool singleEyeMode = false)
48+
private void UpdateVRCFTEyeData(ref UnifiedEyeData eyeData, ref UnifiedExpressionShape[] eyeShapes, bool isSingleEyeMode = false)
5049
{
51-
handleEyeGaze(ref eyeData, singleEyeMode);
50+
HandleEyeGaze(ref eyeData, isSingleEyeMode);
51+
HandleEyeOpenness(ref eyeData, ref eyeShapes, isSingleEyeMode);
5252
}
5353

54-
private void handleEyeGaze(ref UnifiedEyeData eyeData, bool singleEyeMode)
54+
private void HandleEyeGaze(ref UnifiedEyeData eyeData, bool isSingleEyeMode)
5555
{
56-
// todo, we can probably drop support but EyeX/EyeY but I'll leave it be for now
57-
if (singleEyeMode)
56+
if (isSingleEyeMode)
5857
{
59-
var combinedGaze = new Vector2(parameterValues["EyeX"], parameterValues["EyeY"]);
58+
var combinedGaze = new Vector2(_parameterValues["EyeX"], _parameterValues["EyeY"]);
6059
eyeData.Left.Gaze = combinedGaze;
6160
eyeData.Right.Gaze = combinedGaze;
6261
return;
6362
}
6463

65-
eyeData.Left.Gaze = new Vector2(parameterValues["EyeLeftX"], parameterValues["EyeLeftY"]);
66-
eyeData.Right.Gaze = new Vector2(parameterValues["EyeRightX"], parameterValues["EyeRightY"]);
64+
eyeData.Left.Gaze = new Vector2(_parameterValues["EyeLeftX"], _parameterValues["EyeLeftY"]);
65+
eyeData.Right.Gaze = new Vector2(_parameterValues["EyeRightX"], _parameterValues["EyeRightY"]);
66+
}
67+
68+
private void HandleEyeOpenness(ref UnifiedEyeData eyeData, ref UnifiedExpressionShape[] eyeShapes, bool isSingleEyeMode = false)
69+
{
70+
if (isSingleEyeMode)
71+
{
72+
var eyeOpenness = _parameterValues["EyeLid"];
73+
74+
eyeData.Left.Openness = eyeOpenness;
75+
eyeData.Right.Openness = eyeOpenness;
76+
return;
77+
}
78+
79+
eyeData.Left.Openness = _parameterValues["EyeLidLeft"];
80+
eyeData.Right.Openness = _parameterValues["EyeLidRight"];
6781
}
6882
}

0 commit comments

Comments
 (0)