SetGraphicsAPI重载方法匹配(C#Unity)
有人能帮我吗SetGraphicsAPI重载方法匹配(C#Unity),c#,unity3d,C#,Unity3d,有人能帮我吗 PlayerSettings.SetGraphicsAPIs (BuildTarget.Android, TargetGlesGraphics.OpenGLES_2_0); 给我这个编译错误: Assets/_Developer/JEONG/Editor/BuildEditor.cs(776,18):错误CS1502: 匹配的最佳重载方法 `UnityEditor.PlayerSettings.SetGraphicsAPIs(UnityEditor.BuilD目标, Unit
PlayerSettings.SetGraphicsAPIs (BuildTarget.Android, TargetGlesGraphics.OpenGLES_2_0);
给我这个编译错误:
Assets/_Developer/JEONG/Editor/BuildEditor.cs(776,18):错误CS1502:
匹配的最佳重载方法
`UnityEditor.PlayerSettings.SetGraphicsAPIs(UnityEditor.BuilD目标,
UnityEngine.Rendering.GraphicsDeviceType[])的某些属性无效
论据
我不知道为什么,但我遵循Unity中的文档,您应该这样称呼它:
PlayerSettings.SetGraphicsAPIs (BuildTarget.Android, new [] { GraphicsDeviceType.OpenGLES3 });
根据错误消息,函数需要GraphicsDeviceType的数组。因为您只需要一种设备类型,所以仍然必须提供一个只有一个元素的数组
此外,该值是graphicsdevitype.OpenGLES3
(全名和命名空间:UnityEngine.Rendering.graphicsdevitype.OpenGLES3
),而不是TargetGlesGraphics.Whatever
您可以在错误消息中看到,它需要一个值作为GraphicsDeviceType
的数组,因此我搜索了unity文档以找到以下内容:
谢谢你,帕克先生,但我试过这个
PlayerSettings.SetGraphicsAPIs (BuildTarget.Android, new [] {UnityEngine.Rendering.GraphicsDeviceType.OpenGLES2});
它是有效的。也感谢所有帮助我的人。对不起,我的英语不好你不知道为什么什么?请将完整的错误消息复制到您的问题中好吗?@Pac0-Assets/_-Developer/JEONG/Editor/BuildEditor.cs(776,18):错误CS1502:UnityEdit.PlayerSettings.SetGraphicsAPI(UnityEdit.BuildTarget,UnityEngine.Rendering.GraphicsDeviceType[]的最佳重载方法匹配)'有一些无效参数该错误清楚地告诉您,第二个参数需要是数组,而不是单个值,因此您应该将
TargetGlesGraphics.OpenGLES_2_0
更改为new[]{TargetGlesGraphics.OpenGLES_2_0}
@UnholySheep,因此类似于PlayerSettings.SetGraphicsAPIs(BuildTarget.Android,new[]{TargetGlesGraphics.OpenGLES_2_0})
它不能正常工作,您实际上在这里使用了错误的枚举类型-它必须是GraphicsDeviceType.OpenGLES2
,而不是TargetGlesGraphics.OpenGLES_2_0
(并且按照我前面的评论使用数组形式)它仍然是相同的,第二个错误是this>Assets/_Developer/JEONG/Editor/BuildEditor.cs(776,56):错误CS1503:Argument#2'无法将
UnityEditor.TargetGlesGraphics[]表达式转换为类型“UnityEngine.Rendering.GraphicsDeviceType[]“@NoobProgrammer:我编辑了我的答案,请看一看iterror CS1502:UnityEditor.PlayerSettings.SetGraphicsAPI(UnityEditor.BuildTarget,UnityEngine.Rendering.GraphicsDeviceType[]的最佳重载方法匹配)'有一些无效参数这是现在的错误,因此显然OPENGLES3出于某些原因对您无效。请注意,您使用的版本具有完整的命名空间。如果您希望使用“短版本”而不必编写命名空间(如我的示例中所示),只需在类定义之前,使用UnityEngine.Rendering;在文件顶部添加。