「Xamarin.MacでNSOpenGLViewを使う」の版間の差分

imported>Administrator
imported>Administrator
Administrator がページ「Xamarin.Mac/NSOpenGLViewを使う」を「Xamarin.MacでNSOpenGLViewを使う」に移動しました
 
(同じ利用者による、間の3版が非表示)
1行目: 1行目:


 
== 概要 ==
==概要==
[[OpenGL]]は一見すると非常にシンプルなので簡単に扱えるように思えてくる。
[[OpenGL]]は一見すると非常にシンプルなので簡単に扱えるように思えてくる。
すると[[CoreGraphics]]だの[[CoreAnimation]]だので悩むより、[[OpenGL]]を使って2Dやった方が早い気がしてくる。
すると[[CoreGraphics]]だの[[CoreAnimation]]だので悩むより、[[OpenGL]]を使って2Dやった方が早い気がしてくる。
10行目: 9行目:
== 実装1 ==
== 実装1 ==
[[Xamarin.Mac]]では[[OpenGL]]に加えて[[OpenTK]]も標準で使えるので非常に簡単に実装できる。
[[Xamarin.Mac]]では[[OpenGL]]に加えて[[OpenTK]]も標準で使えるので非常に簡単に実装できる。


=== 準備 ===
=== 準備 ===
Xamarin.Macに標準で用意されているOpenTKの参照を追加する。
Xamarin.Macに標準で用意されているOpenTKの参照を追加する。
[[ファイル:Xamarin.MacでOpenTKの参照を追加.png]]
[[ファイル:Xamarin.MacでOpenTKの参照を追加.png|none]]


== NSOpenGLViewを継承したカスタムコントロールを作る ==
=== NSOpenGLViewを継承したカスタムコントロールを作る ===
*「[[Xamarin.Mac/カスタムコントロールを使用する]]」も参照
*「[[Xamarin.Mac/カスタムコントロールを使用する]]」も参照


80行目: 78行目:
                 // コンテキストを有効化する
                 // コンテキストを有効化する
                 glc.MakeCurrentContext();
                 glc.MakeCurrentContext();
                // 塗りつぶす
                GL.ClearColor(red:0.5f, green:0.5f, blue:0.5f, alpha:0);
                GL.Clear(ClearBufferMask.ColorBufferBit);


                 // 描画コマンド群
                 // 描画コマンド群
108行目: 110行目:
=== クラス名を書き換える ===
=== クラス名を書き換える ===
NSOpenGLViewのクラス名を派生コントロールのものに書き換える。
NSOpenGLViewのクラス名を派生コントロールのものに書き換える。
[[ファイル:Xamarin.MacでNSOpenGLViewの派生コントロールを貼る.png]]
[[ファイル:Xamarin.MacでNSOpenGLViewの派生コントロールを貼る.png|none]]


==関連項目==
==関連項目==