Cocoaアプリケーションでウインドウサイズ変更を実現する方法です。
-(void)reshape { NSRect bounds = [self bounds]; glViewport(0, 0, (int)bounds.size.width, (int)bounds.size.height); }
ウインドウサイズが変更されるとreshapeが実行されます。 なのでNSOpenGLViewから派生したクラスのreshapeに上記のコードを追加すると ウインドウサイズ変更に対応できます。 OpenGLの場合はglViewportでウインドウの大きさを指定するだけで良いと思います。
MainMenu.nibをダブルクリックしてInterface Builderを起動します。
MyOpenGLViewをクリックします。
MyOpenGLView SizeウインドウのAutosizingの所で 左の矢印などを全部クリックして赤く設定します。 これでウインドウサイズに合わせてViewの大きさも変化します。
WindowのMyOpenGLView以外の白い部分をクリックします。
Minimum SizeのHas Minimum Sizeのチェックボックスを チェックしてwidthとheightを入力します。 ここでウインドウの最小サイズを設定できます。 今回はUse Currentボタンを押して現在のウインドウの大きさを そのまま設定しました。これで現在の設定よりもウインドウを 小さくすることはできなくなります。
前に戻る?