使用c#代码中的opengl渲染顶点

本文关键字:顶点 opengl 代码 使用 | 更新日期: 2023-09-27 18:24:54

我在XNA上工作了很长一段时间,但作为任务的一部分,我被要求编写一段代码,使用OpenGL渲染obj文件。我已经编写了从obj文件读取顶点和其他信息的代码,并将这些值存储在数组中。

现在,我只想要一种渲染顶点的方法。经过一点研究,我得到了CsGL框架,并在项目中添加了对那些dll的引用。我无法从这里继续,因为当我使用Gl.glclear();函数时,项目挂起。我检查了intelltrace甚至调用堆栈,但什么都找不到。

我想,在我可以清除缓冲区或开始绘制任何东西之前,我应该初始化其他东西。但是,我找不到任何相同的教程。我只需要在屏幕上渲染一个点。有人能帮我写同样的代码吗?

使用c#代码中的opengl渲染顶点

使用CsGL的示例可以从这里获得CsGL官方示例和Legacy Nehe教程请参阅每个教程的底部,了解示例CsGL C#代码和另一个基本教程。

当调用glcear(它通常会清除你告诉它的屏幕和深度缓冲区)时,你的项目挂起的原因可能是OpenGL或屏幕或深度缓冲区没有根据OpenGL正确初始化/设置。

请参阅链接的示例,了解如何在绘制任何内容之前初始化OpenGL/ONGL上下文。