C#(OpenTK)渲染不正确

时间:2015-04-10 22:06:39

标签: c# opengl opentk

我正在阅读用C ++编写的OpenGL 3.3+教程,并且我将我的代码转换为C#(使用OpenTK)。在教程中,使用vector<BYTE>的VectorBufferObject来保存缓冲区的数据。不幸的是,我没有设法使用List<byte>实现相同的功能,因为我无法将{3}函数使用它的方式转换为byteArray。

但是,我已经决定存储DrawArrays而是按照教程我在VectorBufferObject的单个List中存储所有浮点数(3个位置+ 2个纹理坐标为每个顶点)。

除了没有正确渲染纹理(我认为我的错误,此刻并不重要)它应该工作得很好,但它应该渲染一个立方体和一个金字塔旋转 - 它确实渲染一个三角形和一个矩形。我已经用PolygonMode.Line检查了它,我可以看出矩形是由2个以上的三角形组成的(它有盒式线穿过,而不是一个当用2个三角形绘制时应该存在的那个)) 。因此,我怀疑他们是一个接一个。我无法弄明白为什么。

以下是相关课程的源代码。请询问是否需要更多信息。

@EDIT 尽管我非常希望能够学习本教程,但我还是会考虑一种替代方案,而不是过于复杂的替代方案。

RenderingEngine.cs http://pastebin.com/gtnX4ESg

VectorBufferObject.cs http://pastebin.com/veGwybp7

Static_Geometry.cs http://pastebin.com/K1bJ8z8u

0 个答案:

没有答案
相关问题