Opengl 我可以在同一个项目中使用opentk和xna并在同一个窗口中显示数据吗?OpenTk支持Xna吗?
我想在OpenTk项目的同一窗口中使用xna绘制一些东西 但我是Xna的首发,所以我不知道这是否可能 如果可能的话,我想用这种方法画Xna:Opengl 我可以在同一个项目中使用opentk和xna并在同一个窗口中显示数据吗?OpenTk支持Xna吗?,opengl,xna-4.0,opentk,Opengl,Xna 4.0,Opentk,我想在OpenTk项目的同一窗口中使用xna绘制一些东西 但我是Xna的首发,所以我不知道这是否可能 如果可能的话,我想用这种方法画Xna: private void glControl1_Paint(object sender, PaintEventArgs e) { if (!glcontrol1_isloaded) return; glControl1.MakeCurrent(); GL.MatrixMode(MatrixMode.M
private void glControl1_Paint(object sender, PaintEventArgs e)
{
if (!glcontrol1_isloaded) return;
glControl1.MakeCurrent();
GL.MatrixMode(MatrixMode.Modelview);
GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit);
GL.LoadIdentity();
Scientifical_Calculations.Camara.Update(moviendo);
IntPtr sf = Glu.NewQuadric();
GL.Translate(0, 0, 0);
GL.Color3(Color.White);
GL.Enable(EnableCap.Texture2D);
Gl.glBindTexture(Gl.GL_TEXTURE_2D, suntext);
Glu.QuadricTexture(sf, true);
Glu.Sphere(sf, 10, 35, 35);
GL.Disable(EnableCap.Texture2D);
Stars.Draw();
glControl1.SwapBuffers();
}
我真的不知道以前是否有人尝试过,但我希望如此,XNA使用的是Direct3d,而OpenTK是OpenGL。在一般情况下,无法使用OpenGL在Direct3d窗口中绘制。[1] 您可以做的是从XNA切换到。它是XNA的开源实现,同时支持Direct3d和OpenGL。如果您使用OpenGL版本,您将能够使用XNA和OpenTK在同一窗口中绘图 [1] 允许您在OpenGL和Direct3d之间共享纹理和渲染缓冲区,因此可以在某些系统上实现这一点。我建议你不要这样做,除非你真的知道自己在做什么