我可以删除Xamarin版本的OpenTK并使用另一个吗?

时间:2016-11-20 08:26:43

标签: macos opentk xamarin.mac

我已经下载了visual studio for mac并创建了一个跨平台的解决方案。我想使用OpenTK v2(不是xamarin提供的那个)。

问题是,即使未引用Xamarin.Mac,也会出现运行XTrin.Mac的OpenTK命名空间。类型(Vector4等)和Math Helper类出现在我的解决方案中,即使参考部分没有显示引用。

当我将OpenTK v2 .dll添加到包中时(来自nuget)我得到错误,说'导入类型'Opentk.Vector3'(或任何类型)被多次定义。一旦进入OpenTk,另一个进入Xamarin.mac(v0)。

我删除了对Xamarin.Mac的引用,但错误消失了,但当然我得到错误,说我不能使用CoreGraphics等。

是否有某种方法可以指定您的意思?或者删除那些不应该存在的OpenTK引用?

我试过OpenTK.Matrix4 mat = new OpenTK.Matrix4()但它仍然不喜欢它。

1 个答案:

答案 0 :(得分:2)

1)为引用的程序集(引用属性)设置Alias

enter image description here

2)将extern alias添加到源文件的顶部:

extern alias OpenTK2;

3)然后,您可以使用using alias或完全限定名称:

using AlphaFunction = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction;
~~~

var alpha = AlphaFunction.Always;
alpha = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction.Equal