現在地メニュー >> NVIDIA_SDK >> NVIDIA_SDK_06

nvWidget


nvWidgetを使うと以下のように、
文字列を描画する、ボタンを設置する、
などの「ユーザインターフェース」を実現できる。




必要なものは、
  • 「nvGlutWidgets.h」、「nvGLWidgets.h」、「nvWidgets.h」
※「nvGlutWidgets.h」が「nvGLWidgets.h」をインクルードし、
さらに「nvGLWidgets.h」が「nvWidgets.h」をインクルードしている。
  • nvWidget.lib(nvWidgetd.lib)
  • nvWidgets.dll(nvWidgetsd.dll)
である。

使い方

  1. 「nv::GlutUIContext型」を各種コールバック内で設定
  2. インターフェースを描画する
【注意点】
「nvWidget」は「GLEW」を使っているので、初期化をする必要がある。


【例】
nv::GlutUIContext g_ui;//nvWidget用

//reshape関数
void reshape(int w, int h)
{
	... ...
	g_ui.reshape(w, h);
	... ...
}
//マウスクリック時
void myMouseFunc(int button,int state,int x,int y)
{
	if(!g_ui.isOnFocus()){
		/* UIの方にフォーカスがない時の処理 */
	}
	//UIに焦点が或る時
	g_ui.mouse(button, state, glutGetModifiers(), x, y);
	... ...
}
//マウスドラッグ時
void myMouseMotion(int x,int y)
{
	g_ui.mouseMotion(x, y);

	if(!g_ui.isOnFocus()){
		/* UIの方にフォーカスがない時の処理 */
	}
	
	glutPostRedisplay();

}
... ...
void display()
{
	... ...
	DrawUI();
	... ...
}
//--------- ユーザインターフェイス関係 ------------//
void DrawUI()
{
	g_ui.begin();
	{
		//ここにインターフェイスを描画
	}
	g_ui.end();
}

内容


目次

― その他 ―

Wiki内検索

計測中...(07.10.8〜)

Save The World






▲よろしければ広告のクリックもお願いします


▲ランキングに参加しました

管理人/副管理人のみ編集できます