glbindframebuffer MonoGame Windows OpenGL项目出错

时间:2013-06-02 22:09:54

标签: c# visual-studio opengl monogame

我一直遇到MonoGame的问题并且首先让它工作是SDL.dll然后它是我现在必须下载的OpenAL。每当我尝试运行项目时,它都会给我Unable to find an entry point named 'glBindFramebuffer' in DLL 'opengl32.dll'.错误。

创建Android或内容模板时我也会遇到错误,但我只是试图让它工作我已经做了一些研究,唯一的解决方案是围绕try / catch块进行包装,但我觉得好像这是这可以在以后给我提出问题,我很乐意感谢你的帮助。

我正在使用VS 2010,但在VS 2010和2012中都给出了错误。

屏幕截图:

Image

代码:

public class Game1 : Game
{
    GraphicsDeviceManager graphics;
    SpriteBatch spriteBatch;

    public Game1() : base()
    {
        graphics = new GraphicsDeviceManager(this); // Throws EntryPointNotFoundException
        Content.RootDirectory = "Content";
    }
    ....
}

1 个答案:

答案 0 :(得分:0)

我认为这个错误实际上是说它无法找到DLL的正确的版本,因为它无法在DLL中找到应该存在的方法。

您遇到问题的DLL是非托管代码,因此不会自动复制到您的输出目录,因为它们无法作为引用添加到项目中。

您的游戏完全有可能尝试在系统上的其他位置使用DLL(例如Windows \ System32文件夹)。尝试从MonoGame安装目录中找到正确的DLL并将它们复制到bin \ Debug \文件夹。

如果可行,您可以将文件作为链接添加到解决方案中,并将其设置为复制到构建时的输出文件夹。这样,如果你“清理”项目,就不必手动完成。