Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 类型初始值设定项异常OpenTK和monogame_C#_Visual Studio 2012_Xna_Opentk_Monogame - Fatal编程技术网

C# 类型初始值设定项异常OpenTK和monogame

C# 类型初始值设定项异常OpenTK和monogame,c#,visual-studio-2012,xna,opentk,monogame,C#,Visual Studio 2012,Xna,Opentk,Monogame,我刚刚安装了MonoGame和OpenTK 1.0,在Visual Studio 2012中,我创建了一个类型为“Windows OpenGL Game”的新项目……但当我运行该项目时,我发现以下错误: The type initializer for 'OpenTK.Graphics.GraphicsMode' threw an exception. 错误就在这一行(constructor,在base()上) 我的笔记本电脑有intel oboard graphics 3000,我认为它支持

我刚刚安装了MonoGame和OpenTK 1.0,在Visual Studio 2012中,我创建了一个类型为“Windows OpenGL Game”的新项目……但当我运行该项目时,我发现以下错误:

The type initializer for 'OpenTK.Graphics.GraphicsMode' threw an exception.
错误就在这一行(constructor,在base()上)

我的笔记本电脑有intel oboard graphics 3000,我认为它支持OpenGL…这是我唯一能指出的。有什么想法吗?

我们可以查看并找到异常未处理的地方。“类型初始值设定项”基本上是指静态构造函数:

static GraphicsMode()
{
    lock (SyncRoot)
    {
        implementation = Platform.Factory.Default.CreateGraphicsMode();
    }
}
不幸的是,挖掘
CreateGraphicsMode
并没有发现任何异常的明显来源

您现在应该做的是尝试获取该异常的堆栈跟踪,并找出它在
CreateGraphicsMode
中的起源。当异常未经处理时,调试器应提供此信息


通过少量挖掘,在没有看到堆栈痕迹的情况下(因此我几乎猜得出),我发现:

当然,这是毫无帮助的。虽然,根据其位置,它似乎表明它无法找到合适的图形模式

在这个阶段,我认为最好是从源代码构建MonoGame和OpenTK,这样您就可以使用调试器查看它们到底在做什么。

我们可以查看并找到异常未处理的地方。“类型初始值设定项”基本上是指静态构造函数:

static GraphicsMode()
{
    lock (SyncRoot)
    {
        implementation = Platform.Factory.Default.CreateGraphicsMode();
    }
}
不幸的是,挖掘
CreateGraphicsMode
并没有发现任何异常的明显来源

您现在应该做的是尝试获取该异常的堆栈跟踪,并找出它在
CreateGraphicsMode
中的起源。当异常未经处理时,调试器应提供此信息


通过少量挖掘,在没有看到堆栈痕迹的情况下(因此我几乎猜得出),我发现:

当然,这是毫无帮助的。虽然,根据其位置,它似乎表明它无法找到合适的图形模式


在这个阶段,我认为最好是从源代码构建MonoGame和OpenTK,这样您就可以使用调试器查看它们到底在做什么。

这个问题也发生在我的身上,我不相信这是MonoGame的源代码问题

A)您需要确保安装了openTK


B)正如craftworkgames所说,您的机器(我假设是笔记本电脑)不支持OpenGL。我的Sufrace Pro上出现了这个问题,必须将我的英特尔驱动程序更新到最新版本(我使用了guru3d.com和www.guru3d.com/files\u categories/videocards\u Intel\u graphics\u drivers.html此时安装了15.31驱动程序),然后它开始工作。

这个问题也发生在我的电脑上,我不相信这是MonoGame的源代码问题

A)您需要确保安装了openTK


B)正如craftworkgames所说,您的机器(我假设是笔记本电脑)不支持OpenGL。我的Sufrace Pro上出现了这个问题,必须将我的英特尔驱动程序更新到最新版本(我使用了guru3d.com和www.guru3d.com/files\u categories/videocards\u Intel\u graphics\u drivers.html此时安装了15.31驱动程序),然后它开始工作。

这意味着“OpenTK.graphics.GraphicsMode”类的构造函数中有错误,你有权访问这个类的构造函数吗?这个答案可能会对你有所帮助。您的笔记本电脑可能不支持所需的OpenGL版本。这意味着“OpenTK.Graphics.GraphicsMode”类的构造函数中有错误,您有权访问该类的构造函数吗?这个答案可能会对您有所帮助。您的笔记本电脑可能不支持所需的OpenGL版本。好吧,我只是认为这是我的笔记本电脑芯片…在我的个人电脑上,一切都很好。如果硬件加速不可用,OpenTK现在将正确地退回到软件加速环境。这是缓慢的,但它避免了崩溃。嗯,我只是认为这是我的笔记本电脑garphics芯片…在我的pc上,一切都很好,为子孙后代,OpenTK现在将正确地回退到软件加速环境下,如果硬件加速不可用。这是缓慢的,但它避免了崩溃。
throw new GraphicsModeException(
    "No GraphicsMode available. This should never happen, please report a bug at http://www.opentk.com");