we're trying to make use of EmguCV, which is a pure .Net library that interfaces to the native library OpenCV. We're using Unity 3.0 beta 4 for the modern Mono version.
However, when trying to create cameras for capture, we run into some missing type problems:
So I locate this type in the Mono System.ServiceModel.dll, and paste the dll into our plugins directory. Then I get this:
And I find this type inside mscorlib.dll, which is also in Mono. I paste this library into the Plugins directory aswell. This causes the Unity compiler to hang for a LOOOONG time, and in the end it doesn't seem to find the type anyway - still the same error message.
Any pointers and tips on how to make this work? Is it at all possible? Any idea why SecurityCriticalAttribute is missing from Unity's Mono version?
Is there a better way to resolve these issues than just pasting various DLLs into your Plugins dir to see if it works?
asked Jul 27 '10 at 11:59 AM
First of all, kudos to Jens for solving this!
The problem lies in API compatibility in Player settings in the editor. It was set to .NET 2.0 reduced, instead of just .NET 2.0.
So, if you have big/complex .NET libraries that cause problems, check API compatibility settings.
answered Jul 28 '10 at 05:35 PM
Sorry to bump an old thread, but I am getting the first problem you had. When I try to make a Capture object in MonoDevelop, it gives me
'System.ServiceModel.ServiceBehaviorAttribute' from assembly 'Emgu.CV'.
I have trued putting emgu.cv.dll, emgu.cv.ui.dll, and emgu.util in the assets/plugins folder and added them as a reference to the monodevleop project.