2013-04-27 69 views
0

我想移植到XNA/MonoGame的一些OpenTK(C#Opengl實現)的應用程序,我來到一個緩衝區,但我無法弄清楚如何移植這個,因爲似乎沒有是任何緩衝功能的直接平等。我想端口驗證碼:端口OpenGl緩衝區到XNA

public void RefillVBO() 
     { 
      if (positions == null) return; 
      if (hasBuf) 
       GL.DeleteBuffers(3, buf); 
      GL.GenBuffers(3, buf); 
      GL.BindBuffer(BufferTarget.ArrayBuffer, buf[0]); 
      GL.BufferData(BufferTarget.ArrayBuffer, (IntPtr)(positions.Length * sizeof(float)), positions, BufferUsageHint.StaticDraw); 
      if (normals != null) 
      { 
       GL.BindBuffer(BufferTarget.ArrayBuffer, buf[1]); 
       GL.BufferData(BufferTarget.ArrayBuffer, (IntPtr)(normals.Length * sizeof(float)), normals, BufferUsageHint.StaticDraw); 
      } 
      GL.BindBuffer(BufferTarget.ElementArrayBuffer, buf[2]); 
      GL.BufferData(BufferTarget.ElementArrayBuffer, (IntPtr)(elementsLength * sizeof(int)), elements, BufferUsageHint.StaticDraw); 
      hasBuf = true; 
     } 

任何人都可以請翻譯這對我來說,可能解釋是怎麼回事,因爲我不知道?

另外,是否有任何移植指南或其他內容,因爲字面上有數百個與「G1」函數有關的其他錯誤。

回答