CSharpで始めるOpenGLプログラミング/プロジェクトを作成する
このページでは、OpenGLプログラミングを行う際のプロジェクトの作成方法を解説します。
プロジェクトを作成する
編集- MonoDevelopを起動し、「ファイル」メニューから「新しいソリューション(S)...」をクリックします。
- 「新しいプロジェクト」ダイアログが開きます。左側のリストで「.NET」を選択し、右側のリストで「コンソール プロジェクト」を選択した後、「次へ」をクリックします。
- プロジェクト名に適当な名前(TestOpenGLなど)を入力し、「作成」ボタンをクリックします。
OpenTKパッケージを追加する
編集C#からOpenGLを使用するため、OpenTKというライブラリを使用します。
- ソリューションリストの中の、先ほど作成したプロジェクトの配下にある「パッケージ」を右クリックし、「パッケージの追加(P)...」をクリックします。
- 出現したダイアログの右上のテキストボックスに"OpenTK"と入力します。
- OpenTKパッケージにチェックを入れ、「パッケージを追加」ボタンをクリックします。
MainWindowクラスを作成する
編集OpenGLで図形を描画するためのウィンドウを表すクラス "MainWindow"を作成します。
- ソリューションリストの中の、作成したプロジェクトを右クリックし、「追加▶新しいファイル(F)...」をクリックします。
- 出現したダイアログで、左側のリストで"General"を選択し、中央のリストで"空のクラス"を選択します。名前には"MainWindow"と入力します。
- 「新規(N)」ボタンをクリックしてダイアログを閉じます。MainWindow.csというファイルが作成されます。
- MainWindow.csとProgram.csを書き換えます。
MainWindow.csは次のような内容にしてください:
using System;
using OpenTK;
using OpenTK.Graphics;
using OpenTK.Graphics.OpenGL;
namespace Test3DProject
{
public class MainWindow : GameWindow
{
public MainWindow(int width, int height, GraphicsMode mode, string title)
: base(width, height, mode, title)
{
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
}
protected override void OnUpdateFrame(FrameEventArgs e)
{
base.OnUpdateFrame(e);
}
protected override void OnRenderFrame(FrameEventArgs e)
{
base.OnRenderFrame(e);
GL.ClearColor(0.0f, 1.0f, 0.0f, 1.0f); //緑色をセットする
GL.Clear(ClearBufferMask.ColorBufferBit); //バッファ一面を緑色にする
SwapBuffers();
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
}
}
}
Program.csはmainメソッドを次のようにします:
public static void Main(string[] args)
{
var window = new MainWindow(500, 500, OpenTK.Graphics.GraphicsMode.Default, "Test");
window.Run();
}
実行してみる
編集MonoDevelopの左上にある「▶」(実行)ボタンをクリックするとプログラムが起動します。 うまくいけば緑色で塗りつぶされたウィンドウが出現します。