mirror of
https://github.com/SlimeVR/SlimeVR-Server.git
synced 2026-04-06 02:01:58 +02:00
Compare commits
1 Commits
sapphire/t
...
mitten
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8d91838fab |
@@ -662,6 +662,8 @@ settings-general-fk_settings-skeleton_settings-impute_hip_from_waist_legs = Impu
|
||||
settings-general-fk_settings-skeleton_settings-interp_hip_legs = Average the hip's yaw and roll with the legs'
|
||||
settings-general-fk_settings-skeleton_settings-interp_knee_tracker_ankle = Average the knee trackers' yaw and roll with the ankles'
|
||||
settings-general-fk_settings-skeleton_settings-interp_knee_ankle = Average the knees' yaw and roll with the ankles'
|
||||
settings-general-fk_settings-skeleton_settings-fingers_mitten = Fingers Mitten Mode
|
||||
|
||||
|
||||
settings-general-fk_settings-self_localization-title = Mocap mode
|
||||
settings-general-fk_settings-self_localization-description = Mocap Mode allows the skeleton to roughly track its own position without a headset or other trackers. Note that this requires feet and head trackers to work and is still experimental.
|
||||
|
||||
@@ -75,6 +75,7 @@ export type SettingsForm = {
|
||||
usePosition: boolean;
|
||||
enforceConstraints: boolean;
|
||||
correctConstraints: boolean;
|
||||
fingersMitten: boolean;
|
||||
};
|
||||
ratios: {
|
||||
imputeWaistFromChestHip: number;
|
||||
@@ -134,6 +135,7 @@ const defaultValues: SettingsForm = {
|
||||
usePosition: true,
|
||||
enforceConstraints: true,
|
||||
correctConstraints: true,
|
||||
fingersMitten: false,
|
||||
},
|
||||
ratios: {
|
||||
imputeWaistFromChestHip: 0.3,
|
||||
@@ -231,6 +233,7 @@ export function GeneralSettings() {
|
||||
toggles.usePosition = values.toggles.usePosition;
|
||||
toggles.enforceConstraints = values.toggles.enforceConstraints;
|
||||
toggles.correctConstraints = values.toggles.correctConstraints;
|
||||
toggles.fingersMitten = values.toggles.fingersMitten;
|
||||
modelSettings.toggles = toggles;
|
||||
}
|
||||
|
||||
@@ -1036,6 +1039,15 @@ export function GeneralSettings() {
|
||||
'settings-general-fk_settings-skeleton_settings-extended_knees_model'
|
||||
)}
|
||||
/>
|
||||
<CheckBox
|
||||
variant="toggle"
|
||||
outlined
|
||||
control={control}
|
||||
name="toggles.fingersMitten"
|
||||
label={l10n.getString(
|
||||
'settings-general-fk_settings-skeleton_settings-fingers_mitten'
|
||||
)}
|
||||
/>
|
||||
</div>
|
||||
<div className="flex flex-col">
|
||||
<div className="flex flex-col pt-2 pb-3 gap-2">
|
||||
|
||||
@@ -209,6 +209,7 @@ fun createModelSettings(
|
||||
humanPoseManager.getToggle(SkeletonConfigToggles.USE_POSITION),
|
||||
humanPoseManager.getToggle(SkeletonConfigToggles.ENFORCE_CONSTRAINTS),
|
||||
humanPoseManager.getToggle(SkeletonConfigToggles.CORRECT_CONSTRAINTS),
|
||||
humanPoseManager.getToggle(SkeletonConfigToggles.FINGERS_MITTEN),
|
||||
)
|
||||
val ratiosOffset = ModelRatios
|
||||
.createModelRatios(
|
||||
|
||||
@@ -241,6 +241,7 @@ class RPCSettingsHandler(var rpcHandler: RPCHandler, var api: ProtocolAPI) {
|
||||
hpm.setToggle(SkeletonConfigToggles.USE_POSITION, toggles.usePosition())
|
||||
hpm.setToggle(SkeletonConfigToggles.ENFORCE_CONSTRAINTS, toggles.enforceConstraints())
|
||||
hpm.setToggle(SkeletonConfigToggles.CORRECT_CONSTRAINTS, toggles.correctConstraints())
|
||||
hpm.setToggle(SkeletonConfigToggles.FINGERS_MITTEN, toggles.fingersMitten())
|
||||
}
|
||||
|
||||
if (ratios != null) {
|
||||
|
||||
@@ -17,7 +17,8 @@ public enum SkeletonConfigToggles {
|
||||
SELF_LOCALIZATION(10, "Self Localization", "selfLocalization", false),
|
||||
USE_POSITION(11, "Use Position", "usePosition", true),
|
||||
ENFORCE_CONSTRAINTS(12, "Enforce Constraints", "enforceConstraints", true),
|
||||
CORRECT_CONSTRAINTS(13, "Correct Constraints", "correctConstraints", true),;
|
||||
CORRECT_CONSTRAINTS(13, "Correct Constraints", "correctConstraints", true),
|
||||
FINGERS_MITTEN(14, "Fingers Mitten", "fingersMitten", true),;
|
||||
|
||||
public static final SkeletonConfigToggles[] values = values();
|
||||
private static final Map<String, SkeletonConfigToggles> byStringVal = new HashMap<>();
|
||||
|
||||
@@ -197,6 +197,7 @@ class HumanSkeleton(
|
||||
private var forceArmsFromHMD = true
|
||||
private var enforceConstraints = true
|
||||
private var correctConstraints = true
|
||||
private var fingersMitten = true
|
||||
|
||||
// Ratios
|
||||
private var waistFromChestHipAveraging = 0f
|
||||
@@ -1204,6 +1205,8 @@ class HumanSkeleton(
|
||||
SkeletonConfigToggles.ENFORCE_CONSTRAINTS -> enforceConstraints = newValue
|
||||
|
||||
SkeletonConfigToggles.CORRECT_CONSTRAINTS -> correctConstraints = newValue
|
||||
|
||||
SkeletonConfigToggles.FINGERS_MITTEN -> fingersMitten = newValue
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Submodule solarxr-protocol updated: fa2895b19a...c76469b50a
Reference in New Issue
Block a user