Macos 我可以删除Xamarin版本的OpenTK并使用其他版本吗?
我下载了visual studio for mac,并创建了一个跨平台解决方案。我想使用OpenTK v2(不是xamarin提供的版本) 问题在于,似乎存在一个OpenTK命名空间,用于运行Xamarin.Mac,即使它没有被引用。类型(Vector4等)和数学助手类显示在我的解决方案中,即使引用没有显示在引用部分 当我将OpenTK v2.dll添加到包(来自nuget)时,我会收到错误消息,称“导入的类型”OpenTK.Vector3(或任何类型)被多次定义。一次在OpenTk中,另一次在Xamarin.mac(v0)中 我删除了对Xamarin.Mac的引用,错误消失了,但是我当然会收到错误,说我不能使用CoreGraphics等等 有没有办法指定你指的是哪种类型?或者删除不应该存在的对OpenTK的引用 我尝试了OpenTK.Matrix4 mat=new OpenTK.Matrix4(),但它仍然不喜欢它。1)为引用的程序集设置一个Macos 我可以删除Xamarin版本的OpenTK并使用其他版本吗?,macos,opentk,xamarin.mac,Macos,Opentk,Xamarin.mac,我下载了visual studio for mac,并创建了一个跨平台解决方案。我想使用OpenTK v2(不是xamarin提供的版本) 问题在于,似乎存在一个OpenTK命名空间,用于运行Xamarin.Mac,即使它没有被引用。类型(Vector4等)和数学助手类显示在我的解决方案中,即使引用没有显示在引用部分 当我将OpenTK v2.dll添加到包(来自nuget)时,我会收到错误消息,称“导入的类型”OpenTK.Vector3(或任何类型)被多次定义。一次在OpenTk中,另一次在
别名(引用属性):
2) 将外部别名添加到源文件的顶部:
3) 然后,您可以使用别名使用或完全限定名:
using AlphaFunction = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction;
~~~
var alpha = AlphaFunction.Always;
alpha = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction.Equal
这是可行的,至少项目编译时没有错误,但在运行时,当加载使用OpenTK的类时,它会给出TargetInvocationException。还需要什么吗?
using AlphaFunction = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction;
~~~
var alpha = AlphaFunction.Always;
alpha = OpenTK2::OpenTK.Graphics.OpenGL.AlphaFunction.Equal