I went back and refined my experience in the game / application I’m trying to develop while someone at epic figured out what was wrong with the project building issues I had, now that we finally have that sorted I’m back to trying to compile Myo, and get the .DLL’s out so that I can create a package that I can install anywhere, as long as it has a Myo connected.
I also bought a Leap, and got that library to function with your tutorials. And I’m waiting for a Tobii Eye-X which they provide plugins for, which is nice to see from a hardware manufacturer…
So back to the myo, it refuses to compile on my machine, here are the errors, and what I’ve looked into. (I made sure I had the latest download from the top of the page, and I have Myo Connect 0.8.0 and teh firmware it installs when you install 0.8.0
Error 6 error C2664: ‘void MyoDelegate::MyoOnEmgData(int32,FMyoEmgData)’ : cannot convert argument 2 from ‘TArray<int32,FDefaultAllocator>’ to ‘FMyoEmgData’ E:\DD_Perforce\dc_MB_01\EGame\Plugins\MyoPlugin\Source\MyoPlugin\Private\FMyoPlugin.cpp 437 1 EGame
Error 7 error : Failed to produce item: E:\DD_Perforce\dc_MB_01\EGame\Plugins\MyoPlugin\Binaries\Win64\EGame-MyoPlugin-Static.lib E:\DD_Perforce\dc_MB_01\EGame\Intermediate\ProjectFiles\ERROR EGame
Error 8 error MSB3073: The command “E:\DD_Perforce\dc_MB_01\Unreal4.6\Engine\Build\BatchFiles\Build.bat EGame Win64 Development “E:\DD_Perforce\dc_MB_01\EGame\EGame.uproject”” exited with code -1. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.MakeFile.Targets 38 5 EGame
and in the Output:
E:\DD_Perforce\dc_MB_01\EGame\Plugins\MyoPlugin\Source\MyoPlugin\Private\FMyoPlugin.cpp(437): error C2664: ‘void MyoDelegate::MyoOnEmgData(int32,FMyoEmgData)’ : cannot convert argument 2 from ‘TArray<int32,FDefaultAllocator>’ to ‘FMyoEmgData’
1> No user-defined-conversion operator available that can perform conversion, or the operator cannot be called
1> -------- End Detailed Actions Stats -----------------------------------------------------------
1>ERROR : UBT error : Failed to produce item: E:\DD_Perforce\dc_MB_01\EGame\Plugins\MyoPlugin\Binaries\Win64\EGame-MyoPlugin-Static.lib
1> Cumulative action seconds (8 processors): 0.00 building projects, 6.06 compiling, 0.00 creating app bundles, 0.00 generating debug info, 0.00 linking, 0.00 other
1> UBT execution time: 16.94 seconds
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.MakeFile.Targets(38,5): error MSB3073: The command “E:\DD_Perforce\dc_MB_01\Unreal4.6\Engine\Build\BatchFiles\Build.bat EGame Win64 Development “E:\DD_Perforce\dc_MB_01\EGame\EGame.uproject”” exited with code -1.
I tried to change the line:
TArray<int32> data;
to
FMyoEmgData data;
But that was too simplistic… any Ideas what I’m doing wrong ?
Edit:
Nevermind! For others following along, there’s a section of code commented out above the line that has the error, Source looks like this:
//Gather and organize
//There are 8 streams one for each plate
/*
FMyoEmgData data;
for (int i = 0; i < 8; i++) {
data.streams.Add(emg*);
}
*/
TArray<int32> data;
for (int i = 0; i < 8; i++) {
data.Add(emg*);
}
and needs to look like this:
//Gather and organize
//There are 8 streams one for each plate
FMyoEmgData data;
for (int i = 0; i < 8; i++) {
data.streams.Add(emg*);
}
/*
TArray<int32> data;
for (int i = 0; i < 8; i++) {
data.Add(emg*);
}*/
So wap out the two commented blocks for eachother and mine started working.