C#でOpenGLを使ってみる ー OpenTK編(1)

DirectXよりもOpenGLのほうがなんとなく慣れているのもあって、

これまで、C#フォームアプリケーションでOpenGLを利用したい場合にはtao Frameworkを利用していたんですが、どうやらOpenTKに組み込まれた模様。

taoFrameworkは現在も入手できるようですが、OpenTKにバンドルされているものを使い、Windows7、VS2012の環境での利用する方法に関してまとめておきます。



  • (1)OpenTKのダウンロードとインストール

  • The Open Toolkit libraryから、opentk-{yyyy}-{mm}-{dd}.exeをダウンロードしてくる。

    なお、執筆時点でのバージョンは、1.1.0-stable。

    ダウンロードしたらインストールする。

    特に設定を要する項目はないが、インストールする項目を選ぶ際に「NShader plugin」のチェックが外れている。

    チェックつけておくと後で幸せになるかもしれない程度。


  • (2)他のプロジェクトから参照する


  • インストール時に、特に設定を行っていない場合、

    C:\Users\{username}\Documents\OpenTK

    あたりにインストールされているはずなので、

    C:\Users\{username}\Documents\OpenTK\1.1\Binaries\OpenTK\Release

    あたりを覗いてみると下記の2つのDLLが存在することを確認する。
    OpenTK.GLControl.dll
    OpenTK.dll


    次に、参照したいプロジェクトの「ソリューションエクスプローラ」から「参照の追加」を選択。

    OpenTK_01.png
    「参照マネージャ」ウィンドウが開くので、「参照」ボタンを押して上記2つのDLLを参照に追加する。
    OpenTK_02.png

    これらのDLLを参照したいプロジェクトに指定する。


    ※OpenTK.Compatibility.dllも入ってるが、おそらく下位互換のためのラッパーか何かと察するところなので参照には追加しないでおく。



    次に、ツールボックスにWindowsフォーム用のコンポーネントを追加します。

    「ツール」メニューから「ツールボックスアイテムの選択」を選択。


    OpenTK.GLControl.dllを参照して、チェックを入れておく。


    OpenTK_03.png

    ツールボックスにGLControlが追加されているので、フォームにドラッグして追加する。
    OpenTK_05.png

  • (3)コードを実装する


  • OpenTK_06.pngのサムネイル画像


    ※ここでOpenTK.Compatibility.dllを入れていると、同じ名前のクラス(OpenTK.Graphics.GLとOpenTK.Graphics.OpenGL.GLあたりとか)が複数の名前空間に存在していて、エラーが山積みなはず。

コメント(0)

コメントを投稿する