mirror of
https://github.com/overte-org/overte.git
synced 2025-08-10 08:23:04 +02:00
Add 5 point eye tracker calibration option
This commit is contained in:
parent
72c4ab33a1
commit
c771574578
4 changed files with 23 additions and 8 deletions
|
@ -2042,8 +2042,9 @@ void Application::setActiveEyeTracker() {
|
||||||
Menu::getInstance()->setIsOptionChecked(MenuOption::SMIEyeTracking, false);
|
Menu::getInstance()->setIsOptionChecked(MenuOption::SMIEyeTracking, false);
|
||||||
isEyeTracking = false;
|
isEyeTracking = false;
|
||||||
}
|
}
|
||||||
Menu::getInstance()->getActionForOption(MenuOption::Calibrate1Point)->setEnabled(isEyeTracking && !isSimulating);
|
Menu::getInstance()->getActionForOption(MenuOption::OnePointCalibration)->setEnabled(isEyeTracking && !isSimulating);
|
||||||
Menu::getInstance()->getActionForOption(MenuOption::Calibrate3Points)->setEnabled(isEyeTracking && !isSimulating);
|
Menu::getInstance()->getActionForOption(MenuOption::ThreePointCalibration)->setEnabled(isEyeTracking && !isSimulating);
|
||||||
|
Menu::getInstance()->getActionForOption(MenuOption::FivePointCalibration)->setEnabled(isEyeTracking && !isSimulating);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2061,6 +2062,13 @@ void Application::calibrateEyeTracker3Points() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Application::calibrateEyeTracker5Points() {
|
||||||
|
#ifdef HAVE_IVIEWHMD
|
||||||
|
auto eyeTracker = DependencyManager::get<EyeTracker>();
|
||||||
|
eyeTracker->calibrate(5);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
bool Application::exportEntities(const QString& filename, const QVector<EntityItemID>& entityIDs) {
|
bool Application::exportEntities(const QString& filename, const QVector<EntityItemID>& entityIDs) {
|
||||||
QVector<EntityItemPointer> entities;
|
QVector<EntityItemPointer> entities;
|
||||||
|
|
||||||
|
|
|
@ -411,6 +411,7 @@ public slots:
|
||||||
void setActiveEyeTracker();
|
void setActiveEyeTracker();
|
||||||
void calibrateEyeTracker1Point();
|
void calibrateEyeTracker1Point();
|
||||||
void calibrateEyeTracker3Points();
|
void calibrateEyeTracker3Points();
|
||||||
|
void calibrateEyeTracker5Points();
|
||||||
|
|
||||||
void aboutApp();
|
void aboutApp();
|
||||||
void showEditEntitiesHelp();
|
void showEditEntitiesHelp();
|
||||||
|
|
|
@ -440,10 +440,15 @@ Menu::Menu() {
|
||||||
MenuWrapper* eyeTrackingMenu = avatarDebugMenu->addMenu("Eye Tracking");
|
MenuWrapper* eyeTrackingMenu = avatarDebugMenu->addMenu("Eye Tracking");
|
||||||
addCheckableActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::SMIEyeTracking, 0, false,
|
addCheckableActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::SMIEyeTracking, 0, false,
|
||||||
qApp, SLOT(setActiveEyeTracker()));
|
qApp, SLOT(setActiveEyeTracker()));
|
||||||
addActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::Calibrate1Point, 0,
|
{
|
||||||
qApp, SLOT(calibrateEyeTracker1Point()));
|
MenuWrapper* calibrateEyeTrackingMenu = eyeTrackingMenu->addMenu("Calibrate");
|
||||||
addActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::Calibrate3Points, 0,
|
addActionToQMenuAndActionHash(calibrateEyeTrackingMenu, MenuOption::OnePointCalibration, 0,
|
||||||
qApp, SLOT(calibrateEyeTracker3Points()));
|
qApp, SLOT(calibrateEyeTracker1Point()));
|
||||||
|
addActionToQMenuAndActionHash(calibrateEyeTrackingMenu, MenuOption::ThreePointCalibration, 0,
|
||||||
|
qApp, SLOT(calibrateEyeTracker3Point()));
|
||||||
|
addActionToQMenuAndActionHash(calibrateEyeTrackingMenu, MenuOption::FivePointCalibration, 0,
|
||||||
|
qApp, SLOT(calibrateEyeTracker5Point()));
|
||||||
|
}
|
||||||
addCheckableActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::SimulateEyeTracking, 0, false,
|
addCheckableActionToQMenuAndActionHash(eyeTrackingMenu, MenuOption::SimulateEyeTracking, 0, false,
|
||||||
qApp, SLOT(setActiveEyeTracker()));
|
qApp, SLOT(setActiveEyeTracker()));
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -156,8 +156,6 @@ namespace MenuOption {
|
||||||
const QString Bookmarks = "Bookmarks";
|
const QString Bookmarks = "Bookmarks";
|
||||||
const QString CascadedShadows = "Cascaded";
|
const QString CascadedShadows = "Cascaded";
|
||||||
const QString CachesSize = "RAM Caches Size";
|
const QString CachesSize = "RAM Caches Size";
|
||||||
const QString Calibrate1Point = "Calibrate - 1 Point...";
|
|
||||||
const QString Calibrate3Points = "Calibrate - 3 Points...";
|
|
||||||
const QString CalibrateCamera = "Calibrate Camera";
|
const QString CalibrateCamera = "Calibrate Camera";
|
||||||
const QString CenterPlayerInView = "Center Player In View";
|
const QString CenterPlayerInView = "Center Player In View";
|
||||||
const QString Chat = "Chat...";
|
const QString Chat = "Chat...";
|
||||||
|
@ -197,6 +195,7 @@ namespace MenuOption {
|
||||||
const QString Faceshift = "Faceshift";
|
const QString Faceshift = "Faceshift";
|
||||||
const QString FilterSixense = "Smooth Sixense Movement";
|
const QString FilterSixense = "Smooth Sixense Movement";
|
||||||
const QString FirstPerson = "First Person";
|
const QString FirstPerson = "First Person";
|
||||||
|
const QString FivePointCalibration = "5 Point Calibration";
|
||||||
const QString Forward = "Forward";
|
const QString Forward = "Forward";
|
||||||
const QString FrameTimer = "Show Timer";
|
const QString FrameTimer = "Show Timer";
|
||||||
const QString Fullscreen = "Fullscreen";
|
const QString Fullscreen = "Fullscreen";
|
||||||
|
@ -221,6 +220,7 @@ namespace MenuOption {
|
||||||
const QString NamesAboveHeads = "Names Above Heads";
|
const QString NamesAboveHeads = "Names Above Heads";
|
||||||
const QString NoFaceTracking = "None";
|
const QString NoFaceTracking = "None";
|
||||||
const QString OctreeStats = "Entity Statistics";
|
const QString OctreeStats = "Entity Statistics";
|
||||||
|
const QString OnePointCalibration = "1 Point Calibration";
|
||||||
const QString OnlyDisplayTopTen = "Only Display Top Ten";
|
const QString OnlyDisplayTopTen = "Only Display Top Ten";
|
||||||
const QString PackageModel = "Package Model...";
|
const QString PackageModel = "Package Model...";
|
||||||
const QString Pair = "Pair";
|
const QString Pair = "Pair";
|
||||||
|
@ -283,6 +283,7 @@ namespace MenuOption {
|
||||||
const QString SuppressShortTimings = "Suppress Timings Less than 10ms";
|
const QString SuppressShortTimings = "Suppress Timings Less than 10ms";
|
||||||
const QString TestPing = "Test Ping";
|
const QString TestPing = "Test Ping";
|
||||||
const QString ThirdPerson = "Third Person";
|
const QString ThirdPerson = "Third Person";
|
||||||
|
const QString ThreePointCalibration = "3 Point Calibration";
|
||||||
const QString ThrottleFPSIfNotFocus = "Throttle FPS If Not Focus";
|
const QString ThrottleFPSIfNotFocus = "Throttle FPS If Not Focus";
|
||||||
const QString ToolWindow = "Tool Window";
|
const QString ToolWindow = "Tool Window";
|
||||||
const QString TransmitterDrive = "Transmitter Drive";
|
const QString TransmitterDrive = "Transmitter Drive";
|
||||||
|
|
Loading…
Reference in a new issue