LINUX.ORG.RU

История изменений

Исправление Bad_ptr, (текущая версия) :

Однако, в моем случае нет необходимости реализовывать какую-либо игру

никто не заставляет.

Насчет второго линка

почитать тут http://www.opentk.com/doc/graphics
Простейший пример, что-то типа:

using OpenTK;
using OpenTK.Graphics;
//using OpenTK.Graphics.OpenGL;

namespace TestOpenTk
{
  public class Program : GameWindow
  {

    public Program () : base( 1424, 800, new GraphicsMode(16,16) )
    {}

    protected override void OnLoad (EventArgs e)
    {
      base.OnLoad (e);

      GL.ClearColor (Color.MidnightBlue);
      GL.Enable (EnableCap.DepthTest);

      GL.Ortho (0, 1424, 0, 800, -1.0, 1.0);
    }

    protected override void OnResize (EventArgs e)
    {
      base.OnResize (e);

      GL.Viewport (0, 0, Width, Height);
    }


    protected override void OnUpdateFrame (FrameEventArgs e)
    {
      base.OnUpdateFrame (e);

      if (Keyboard [OpenTK.Input.Key.Escape]) {
        this.Exit ();
        return;
      }

    }

    public void DrawCircle( float x, float y, float r )
    {
      float alp, k = 360/10;
      GL.Begin(BeginMode.LineStrip);
      for(int i = 0; i <= 10; i++){
        alp = k*i * (float)Math.PI / 180.0f;
        GL.Vertex3( r * Math.Cos(alp) + x, r * (float)Math.Sin(alp) + y, 0);
      }
      GL.End();
    }

    protected override void OnRenderFrame (FrameEventArgs e)
    {
      base.OnRenderFrame (e);

      GL.Clear (ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit);

      DrawCircle ( 50, 50, 50 );

      this.SwapBuffers ();
    }

    [STAThread]
    public static void Main ()
    {
      using (Program prog = new Program()) {
        prog.Run( 30.0, 0.0 );
      }
    }
  }
}

Исходная версия Bad_ptr, :

Однако, в моем случае нет необходимости реализовывать какую-либо игру

никто не заставляет.

Насчет второго линка

почитать тут http://www.opentk.com/doc/graphics
Простейший пример, что-то типа:

using OpenTK;
using OpenTK.Graphics;
//using OpenTK.Graphics.OpenGL;

namespace TestOpenTk
{
  public class Program : GameWindow
  {

    public Program () : base( 1424, 800, new GraphicsMode(16,16) )
    {}

    protected override void OnLoad (EventArgs e)
    {
      base.OnLoad (e);

      GL.ClearColor (Color.MidnightBlue);
      GL.Enable (EnableCap.DepthTest);

      GL.Ortho (0, 1424, 0, 800, -1.0, 1.0);
    }

    protected override void OnResize (EventArgs e)
    {
      base.OnResize (e);

      GL.Viewport (0, 0, Width, Height);

      this.s.Resize ((float)Width, (float)Height);
    }


    protected override void OnUpdateFrame (FrameEventArgs e)
    {
      base.OnUpdateFrame (e);

      if (Keyboard [OpenTK.Input.Key.Escape]) {
        this.Exit ();
        return;
      }

    }

    public void DrawCircle( float x, float y, float r )
    {
      float alp, k = 360/10;
      GL.Begin(BeginMode.LineStrip);
      for(int i = 0; i <= 10; i++){
        alp = k*i * (float)Math.PI / 180.0f;
        GL.Vertex3( r * Math.Cos(alp) + x, r * (float)Math.Sin(alp) + y, 0);
      }
      GL.End();
    }

    protected override void OnRenderFrame (FrameEventArgs e)
    {
      base.OnRenderFrame (e);

      GL.Clear (ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit);

      DrawCircle ( 50, 50, 50 );

      this.SwapBuffers ();
    }

    [STAThread]
    public static void Main ()
    {
      using (Program prog = new Program()) {
        prog.Run( 30.0, 0.0 );
      }
    }
  }
}