複数のOpenGL/Glutウィンドウを開く方法を知りたいと思います。 と私が同時に ないサブウィンドウと は、同じウィンドウを更新しない複数のWindows OpenGL/Glut
0
A
答えて
1
複数のウィンドウを意味し、あなたがそれを複数回行う必要があり除きあなたは、一つのウィンドウを作成するのと同じ方法:
#include <cstdlib>
#include <GL/glut.h>
// Display callback ------------------------------------------------------------
float clr = 0.2;
void display()
{
// clear the draw buffer .
glClear(GL_COLOR_BUFFER_BIT); // Erase everything
// set the color to use in draw
clr += 0.1;
if (clr>1.0)
{
clr=0;
}
// create a polygon (define the vertexs)
glBegin(GL_POLYGON); {
glColor3f(clr, clr, clr);
glVertex2f(-0.5, -0.5);
glVertex2f(-0.5, 0.5);
glVertex2f(0.5, 0.5);
glVertex2f(0.5, -0.5);
} glEnd();
glFlush();
}
// Main execution function
int main(int argc, char *argv[])
{
glutInit(&argc, argv); // Initialize GLUT
glutCreateWindow("win1"); // Create a window 1
glutDisplayFunc(display); // Register display callback
glutCreateWindow("win2"); // Create a window 2
glutDisplayFunc(display); // Register display callback
glutMainLoop(); // Enter main event loop
}
この例は、両方のウィンドウで同じコールバックをレンダリングするように設定する方法を示しています。しかし、あなたは窓のために異なった機能を使うことができます。
3
私は上記の答えは正確だと思っていますが、少し複雑になり、後でウィンドウ間を移動する(例えば、描画するなど)ときに難しいかもしれません。これは、私たちがちょうどクラスで何をやったかである:
GLint WindowID1, WindowID2; // window ID numbers
glutInitWindowSize(250.0, 250.0); // set a window size
glutInitWindowPosition(50,50); // set a window position
WindowID1 = glutCreateWindow("Window One"); // Create window 1
glutInitWindowSize(500.0, 250.0); // set a window size
glutInitWindowPosition(500,50); // set a window position
WindowID2 = glutCreateWindow("Window Two"); // Create window 2
あなたは、私が同じ作成ウィンドウ関数を使用しますが輝きにロードしてい気づくでしょう。これは、このようにしてウィンドウを作成すると、glutがウィンドウを識別するために使用する一意のGLintを実際に返します。
ウィンドウ間を移動して適切な描画機能を実行するためには、ウィンドウを取得して設定する必要があります。 You can find the calls here。
関連する問題
- 1. Windowsユニバーサルアプリケーション(Windows 10)の複数のインスタンス
- 2. PyQt4の複数のWindows
- 3. windowsコマンドライン複数のコマンド
- 4. Windowsフォーム:複数のデフォルトボタン?
- 5. Windowsサービス複数サービスバス契約
- 6. Windows自動複数ユーザーログインコマンドライン
- 7. Windowsバッチファイル - 複数選択
- 8. 複数のWindowsでのプロパティの管理
- 9. 複数のTkinterのWindowsとのCheckbuttons
- 10. Windows 7のWampの複数のPHPバージョン
- 11. 複数のブラウザのWindows同期
- 12. Windows Phone複数のアプリケーションのインスタンス
- 13. Windowsの黄色いツールチップの複数行?
- 14. 複数レベルのWindows右クリックメニューのカスタマイズ
- 15. 複数のキープレスイベントの乱用Windowsで
- 16. Windowsシェル複数のファイルとの統合
- 17. Windowsフォーム用の複数のスライダトラックバー
- 18. 1つのexeで複数のWindowsサービス
- 19. 閉じるWindowsフォームの複数のフォームアプリケーション
- 20. Cドライブ上の複数のPythonインスタンス-Windows
- 21. 複数のクリップボードをC#で(Windowsアプリケーション)
- 22. Jenkins + Windows + CMake +複数のビルドタイプ(Debug、Release)
- 23. WindowsのXCOPY 0ファイル(複数可)
- 24. WIX 3.5複数のインスタンスWindowsサービス
- 25. Windows 8 XAML複数列のテキスト
- 26. C#サイコロゲーム(Windowsアプリケーションフォーム)複数の問題
- 27. Windows XPモードで複数のWindows Virtual PCを作成する
- 28. Windowsサービス:複数のWindowsサービスを複数のexeファイルとして作成する方法
- 29. 重複のWindows
- 30. Windowsの複数のファイルで複数のパターンを置き換えるオプション
[これはどうでしょう?](https://docs.google.com/viewer?a=v&q=cache:o0oeSgPKnqIJ:www.cs.uml.edu/~hmasterm/Charts/Managing_Multiple_Windows.ppt+&hl=ja&gl = UK&PID = BL&SRCID = ADGEESihxzk1y3TDCXn6d5irTvT0eoQWFZmh6L-rLJo0UKQNO5WLd7tjoe8DxW6_wOzOu1F6U7VqTnFtTkhbGkd-gyJn6TpPkbNUcjAtHqDgSsGSZ-keOGkPA16TRsnBflwj8NMrIshN&SIG = AHIEtbQLFUU-hI_fKaVvqR_JP1aXw_14dg) – Thomas