From 6a168be69e38cbfba522666ced2fb3f6579b0f29 Mon Sep 17 00:00:00 2001 From: Wim Vriend Date: Tue, 1 Feb 2011 21:00:36 +0000 Subject: Fixing alpha-update 5 issues. git-svn-id: svn+ssh://svn.code.sf.net/p/facetracknoir/code@46 19e81ba0-9b1a-49c3-bd6c-561e1906d5fb --- FTNoIR_Filter_EWMA2/ftnoir_filter_ewma2.cpp | 4 ++-- FaceTrackNoIR.suo | Bin 333824 -> 334848 bytes FaceTrackNoIR/FTNoIR_cxx_protocolserver.h | 23 ++++++++++++++++++++++ FaceTrackNoIR/tracker.cpp | 7 +++++++ List of compatible games.xls | Bin 26112 -> 26624 bytes List of compatible webcams.xls | Bin 20480 -> 20992 bytes bin/FaceTrackNoIR.exe | Bin 757760 -> 757760 bytes bin/Settings/ArmA.ini | 29 +++++++++++++++------------- bin/Settings/Wings of Prey.ini | 13 +++++++------ 9 files changed, 55 insertions(+), 21 deletions(-) diff --git a/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma2.cpp b/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma2.cpp index c298c6e8..4748f879 100644 --- a/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma2.cpp +++ b/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma2.cpp @@ -96,7 +96,7 @@ FTNoIR_Filter_EWMA2::FTNoIR_Filter_EWMA2() setParameterValue(kSmoothingScaleCurve,10.0f); first_run = true; - alpha_smoothing = 0.2f; //this is a constant for now, might be a parameter later + alpha_smoothing = 0.02f; //this is a constant for now, might be a parameter later } @@ -121,7 +121,7 @@ void FTNoIR_Filter_EWMA2::FilterHeadPoseData(THeadPoseData *current_camera_posit float prev_output[6]; float target[6]; float output_delta[6]; - float scale[]={0.05f,0.05f,0.05f,1.2f,1.2f,1.2f}; + float scale[]={0.025f,0.025f,0.025f,6.0f,6.0f,6.0f}; float norm_output_delta[6]; float output[6]; int i=0; diff --git a/FaceTrackNoIR.suo b/FaceTrackNoIR.suo index ae97a5a6..d5744f58 100644 Binary files a/FaceTrackNoIR.suo and b/FaceTrackNoIR.suo differ diff --git a/FaceTrackNoIR/FTNoIR_cxx_protocolserver.h b/FaceTrackNoIR/FTNoIR_cxx_protocolserver.h index 6548a82f..39e50e44 100644 --- a/FaceTrackNoIR/FTNoIR_cxx_protocolserver.h +++ b/FaceTrackNoIR/FTNoIR_cxx_protocolserver.h @@ -60,6 +60,29 @@ namespace v4friend virtual void setHeadPosY(float y) { headPosY = y; } virtual void setHeadPosZ(float z) { headPosZ = z; } + virtual void resetProperties() { + virtPosX = 0.0f; + virtPosY = 0.0f; + virtPosZ = 0.0f; + virtRotX = 0.0f; + virtRotY = 0.0f; + virtRotZ = 0.0f; + + headPosX = 0.0f; + headPosY = 0.0f; + headPosZ = 0.0f; + headRotX = 0.0f; + headRotY = 0.0f; + headRotZ = 0.0f; + + prevPosX = 0.0f; + prevPosY = 0.0f; + prevPosZ = 0.0f; + prevRotX = 0.0f; + prevRotY = 0.0f; + prevRotZ = 0.0f; + } + protected: ProtocolServerBase() {}; diff --git a/FaceTrackNoIR/tracker.cpp b/FaceTrackNoIR/tracker.cpp index f271ee5b..90efc9d6 100644 --- a/FaceTrackNoIR/tracker.cpp +++ b/FaceTrackNoIR/tracker.cpp @@ -345,6 +345,13 @@ void Tracker::run() { qDebug() << "Tracker::run() FilterName = " << filterName; } + // + // Initialize all internal data of the Game-protocol. + // + if (server_Game) { + server_Game->resetProperties(); + } + // // Setup the DirectInput for keyboard strokes // diff --git a/List of compatible games.xls b/List of compatible games.xls index bbe78b3b..c95bafb0 100644 Binary files a/List of compatible games.xls and b/List of compatible games.xls differ diff --git a/List of compatible webcams.xls b/List of compatible webcams.xls index c21e1bf8..49a47f96 100644 Binary files a/List of compatible webcams.xls and b/List of compatible webcams.xls differ diff --git a/bin/FaceTrackNoIR.exe b/bin/FaceTrackNoIR.exe index dde6f8bf..191feaa9 100644 Binary files a/bin/FaceTrackNoIR.exe and b/bin/FaceTrackNoIR.exe differ diff --git a/bin/Settings/ArmA.ini b/bin/Settings/ArmA.ini index c60fcf0e..1d87a0b7 100644 --- a/bin/Settings/ArmA.ini +++ b/bin/Settings/ArmA.ini @@ -20,23 +20,26 @@ redRoll=60 redX=71 redY=70 redZ=70 +minSmooth=15 +powCurve=10 +maxSmooth=50 [GameProtocol] Selection=0 [Curves] Roll_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\b\0\0\0\0\0\0) -Roll_point2=@Variant(\0\0\0\x1a@6\x80\0\0\0\0\0@B\xc0\0\0\0\0\0) -Roll_point3=@Variant(\0\0\0\x1a@9\x80\0\0\0\0\0@B\x80\0\0\0\0\0) -Roll_point4=@Variant(\0\0\0\x1a@F\0\0\0\0\0\0@I\0\0\0\0\0\0) -Yaw_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0) -Yaw_point2=@Variant(\0\0\0\x1a@2\0\0\0\0\0\0@8\0\0\0\0\0\0) -Yaw_point3=@Variant(\0\0\0\x1a@5\0\0\0\0\0\0@9\0\0\0\0\0\0) -Yaw_point4=@Variant(\0\0\0\x1a@G\0\0\0\0\0\0@I\0\0\0\0\0\0) -Pitch_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\b\0\0\0\0\0\0) -Pitch_point2=@Variant(\0\0\0\x1a@<\x80\0\0\0\0\0@@\0\0\0\0\0\0) -Pitch_point3=@Variant(\0\0\0\x1a@<\x80\0\0\0\0\0@@\x80\0\0\0\0\0) -Pitch_point4=@Variant(\0\0\0\x1a@D\x80\0\0\0\0\0@I\0\0\0\0\0\0) +Roll_point2=@Variant(\0\0\0\x1a@R\xc0\0\0\0\0\0@A\x80\0\0\0\0\0) +Roll_point3=@Variant(\0\0\0\x1a@e`\0\0\0\0\0@G\0\0\0\0\0\0) +Roll_point4=@Variant(\0\0\0\x1a@e`\0\0\0\0\0@I\0\0\0\0\0\0) +Yaw_point1=@Variant(\0\0\0\x1a@ \0\0\0\0\0\0@&\0\0\0\0\0\0) +Yaw_point2=@Variant(\0\0\0\x1a@@@\0\0\0\0\0@:\x80\0\0\0\0\0) +Yaw_point3=@Variant(\0\0\0\x1a@L\x80\0\0\0\0\0@C\0\0\0\0\0\0) +Yaw_point4=@Variant(\0\0\0\x1a@U\0\0\0\0\0\0@I\0\0\0\0\0\0) +Pitch_point1=@Variant(\0\0\0\x1a@\x1c\0\0\0\0\0\0@ \0\0\0\0\0\0) +Pitch_point2=@Variant(\0\0\0\x1a@C\xc0\0\0\0\0\0@>\x80\0\0\0\0\0) +Pitch_point3=@Variant(\0\0\0\x1a@P \0\0\0\0\0@D\x80\0\0\0\0\0) +Pitch_point4=@Variant(\0\0\0\x1a@T\x80\0\0\0\0\0@I\0\0\0\0\0\0) X_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0) X_point2=@Variant(\0\0\0\x1a@Z@\0\0\0\0\0@1\0\0\0\0\0\0) X_point3=@Variant(\0\0\0\x1a@a@\0\0\0\0\0@?\0\0\0\0\0\0) @@ -45,8 +48,8 @@ Y_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0) Y_point2=@Variant(\0\0\0\x1a@F\x80\0\0\0\0\0@E\0\0\0\0\0\0) Y_point3=@Variant(\0\0\0\x1a@6\0\0\0\0\0\0@9\0\0\0\0\0\0) Y_point4=@Variant(\0\0\0\x1a@P@\0\0\0\0\0@I\0\0\0\0\0\0) -Z_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\x10\0\0\0\0\0\0) -Z_point2=@Variant(\0\0\0\x1a@6\0\0\0\0\0\0@I\0\0\0\0\0\0) +Z_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@&\0\0\0\0\0\0) +Z_point2=@Variant(\0\0\0\x1a@1\0\0\0\0\0\0@H@\0\0\0\0\0) Z_point3=@Variant(\0\0\0\x1a@6\0\0\0\0\0\0@D\x80\0\0\0\0\0) Z_point4=@Variant(\0\0\0\x1a@K\x80\0\0\0\0\0@I\0\0\0\0\0\0) diff --git a/bin/Settings/Wings of Prey.ini b/bin/Settings/Wings of Prey.ini index 44459460..742e3ec4 100644 --- a/bin/Settings/Wings of Prey.ini +++ b/bin/Settings/Wings of Prey.ini @@ -46,19 +46,20 @@ Inhibit_Roll=false Inhibit_X=false Inhibit_Y=false Inhibit_Z=false +SetZero=false [Curves] Yaw_point1=@Variant(\0\0\0\x1a@\x14\0\0\0\0\0\0@\x14\0\0\0\0\0\0) -Yaw_point2=@Variant(\0\0\0\x1a@_\xc0\0\0\0\0\0@ \0\0\0\0\0\0) -Yaw_point3=@Variant(\0\0\0\x1a@c`\0\0\0\0\0@?\0\0\0\0\0\0) +Yaw_point2=@Variant(\0\0\0\x1a@`\xd0\0\0\0\0\0@A@\0\0\0\0\0) +Yaw_point3=@Variant(\0\0\0\x1a@f\0\0\0\0\0\0@9\x80\0\0\0\0\0) Yaw_point4=@Variant(\0\0\0\x1a@f\x80\0\0\0\0\0@I\0\0\0\0\0\0) Pitch_point1=@Variant(\0\0\0\x1a@\b\0\0\0\0\0\0@\b\0\0\0\0\0\0) -Pitch_point2=@Variant(\0\0\0\x1a@W@\0\0\0\0\0@ \0\0\0\0\0\0) -Pitch_point3=@Variant(\0\0\0\x1a@\\\xc0\0\0\0\0\0@9\0\0\0\0\0\0) +Pitch_point2=@Variant(\0\0\0\x1a@X\x80\0\0\0\0\0@9\x80\0\0\0\0\0) +Pitch_point3=@Variant(\0\0\0\x1a@e\x80\0\0\0\0\0@3\0\0\0\0\0\0) Pitch_point4=@Variant(\0\0\0\x1a@f\x80\0\0\0\0\0@I\0\0\0\0\0\0) Roll_point1=@Variant(\0\0\0\x1a@\x10\0\0\0\0\0\0@\x10\0\0\0\0\0\0) -Roll_point2=@Variant(\0\0\0\x1a@S\0\0\0\0\0\0@3\0\0\0\0\0\0) -Roll_point3=@Variant(\0\0\0\x1a@a\xa0\0\0\0\0\0@C\0\0\0\0\0\0) +Roll_point2=@Variant(\0\0\0\x1a@^\xc0\0\0\0\0\0@?\0\0\0\0\0\0) +Roll_point3=@Variant(\0\0\0\x1a@d@\0\0\0\0\0@B\0\0\0\0\0\0) Roll_point4=@Variant(\0\0\0\x1a@d@\0\0\0\0\0@I\0\0\0\0\0\0) X_point1=@Variant(\0\0\0\x1a\0\0\0\0\0\0\0\0@\x14\0\0\0\0\0\0) X_point2=@Variant(\0\0\0\x1a@F\0\0\0\0\0\0@1\0\0\0\0\0\0) -- cgit v1.2.3