問題タブ [glut]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
6429 参照

c++ - 非静的メソッドへのコールバック

基本的な GLUT プログラムを考えてみてください。それらは単にメイン メソッドから実行され、`glutMouseFunc(MouseButton) (MouseButton はメソッドの名前) のようなコールバックを含みます。

私が行ったことは、メイン ファイルをクラスにカプセル化したため、MouseButton は静的関数ではなく、インスタンスを持つようになりました。しかし、これを行うと、コンパイルエラーが発生します:

エラー 2 エラー C3867: 'StartHand::MouseButton': 関数呼び出しに引数リストがありません。「&StartHand::MouseButton」を使用して、メンバー c:\users\angeleyes\documents\visual studio 2008\projects\capstone ver 4\starthand.cpp へのポインターを作成します 388 IK エンジン

クラスが非常に大きいため、コード サンプルを提供することはできません。

使用してみthis->MouseButtonましたが、同じエラーが発生します。コールバックにインスタンス関数へのポインタを与えることはできませんか?

0 投票する
4 に答える
16302 参照

c++ - OS X 上の Eclipse での OpenGL と GLUT

OS X で CDT を使用して Eclipse で OpenGL および GLUT ライブラリをセットアップしようとしましたが、あまり成功していません。GLUTがどこにあるかを実際に理解するためにEclipseを取得できないようです。現在、未解決のインクルージョン GL/glut.h があるというエラーが表示されています。オンラインで調べてみると、gcc リンカー設定で -framework GLUT フラグを使用する必要があることがわかりましたが、これは効果がないようです。

0 投票する
1 に答える
258 参照

c++ - 過剰を初期化する問題

問題を次の例に簡略化しました。

glutCreateWindowを実行すると、約1分かかり、画面が数回ちらつきます。

これは途方もなく長いです。これは正常ではありません。

環境:

  • Fedora 10
  • 3台のモニターを駆動するデュアルNVIDIAGTX280カード。
  • NVIDIAドライバーバージョン190.53CUDA2.3がインストールされています
  • gccバージョン4.3.220081105(Red Hat 4.3.2-7)(GCC)

何が間違っている可能性があるかについてのアイデアはありますか?

編集:私の最終的な目標は、いくつかのCUDAコードからピクセルバッファーオブジェクトを作成できるようにすることであるため、表示機能はありません(現時点では出力を表示しません。また、 gkxMakeCurrentが呼び出されたときに同じ遅延とちらつきが発生する一連のglx呼び出しのコンテキスト。

0 投票する
2 に答える
4816 参照

visual-studio-2008 - 64ビット用にコンパイルしたときにGLUTアプリを起動するときにエラーが発生しました

私はGLUTアプリの骨組みを持っています。Win32用にコンパイルすると正常に動作しますが、x64用にコンパイルすると次のエラーが発生します。

The application was unable to start correctly (0xc000007b). Click OK to close the application.

リンカーのglut64.lib入力として、nVidiaCUDAsdkから取得します。"C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\common\lib"

OpenGLをCUDAと組み合わせて使用​​したいのですが、このベアボーンアプリにはCUDAへの参照がありません。VisualStudio2008をWindows764ビットで実行しています。

あなたが提供できるどんな洞察も高く評価されます。

Main.cpp:

0 投票する
3 に答える
2649 参照

c++ - GLUTをラップするクラスを作成するには?

OpenGL で学校向けのゲームを書いています。似たような課題が他にもいくつかあるので、OpenGL で一般的なことを行うための小さなフレームワークを作成したいと考えています。以前にいくつかの単純なゲームを作成したことがありますが、通常、入力と画面への描画を処理する IO クラス、メインのゲーム ループ/ロジック用の Game クラス、およびゲーム内にあるあらゆるオブジェクトのクラスに分解します。

SDL を使用する前に、私の質問は、これは OpenGL でこれを行う正しい方法ですか? 私はすでにいくつかのトラブルに遭遇しました。ウィンドウの初期化、シーンの描画、およびマウス クリックを IO クラスで処理する必要があります。したがって、コンストラクタは次のようになります。

ただし、drawSceneクラスメソッドです。クラスメソッドをglutDisplayFunc()静的にせずに渡す方法はありますか?

0 投票する
3 に答える
3205 参照

macos - OS XのメインスレッドにないGLUTを使用するにはどうすればよいですか?

私はかつてサブスレッドからGLUTウィンドウを開こうとしましたが、多くの厄介な問題が発生しました。私はlists.apple.comのこの投稿を覚えています:

Mac OS XのGLUTに関して、この点に関して何か変更はありますか?任意のスレッドからウィンドウを開くことができるスレッドセーフなGLUTはありますか?

GLUTがオプションでない場合、GLUTを置き換え、どのスレッドからでも機能する小さなライブラリはありますか?

[編集]

回答として提案されたさまざまなソリューションによってトリガーされた私のテストの結果は次のとおりです。

  • GLFWは見栄えが良かったのですが、コンパイルされませんでした(現在のブランチは3年前のものです)
  • 寒天は別のふりをしていましたが、私が持っていた小さなニーズには大きすぎます
  • SDLはBSDライセンスと互換性がなく、単一のファイルに収まるコード用の巨大なライブラリです。
  • GLUTはどのスレッドでも実行できません。

私は車輪の再発明をすることにしました(そう、それは時々良いことです)そして最終的なクラスはたった200行のコードです。任意のスレッドからウィンドウを開いたり閉じたり(新しいスレッドでopenGLを描画)、垂直同期などを完全に制御できます(SDLはダブルバッファリングを使用します= openGLでは低速です)。アプリケーションを適切に開始および停止するために、をだまして回避するNSApp必要がありました(それ以外の場合はイベントループを使用しません)。

OpenGLはスレッドセーフではないと私に言っている人にとっては、それは正確には真実ではありません。複数のOpenGLスレッドを実行でき、描画コマンドはそのスレッドに割り当てられたOpenGL状態で実行されます。OpenGLはスレッド固有です。

Cocoaを使用してOpenGLウィンドウを作成するための最低限のコードが必要な場合:gl_window.mm

0 投票する
1 に答える
3317 参照

c++ - glutを使用してppmファイルをロードする

C++ で PPM ファイルにテクスチャ マッピングを実行したいと考えています。PPM ファイルをロードする方法はありますか。ありがとう。

0 投票する
2 に答える
12323 参照

c++ - OpenGLウィンドウをGLUTで中央に配置します

画面の中央に配置する必要がある640x480のopenGLウィンドウがあります。以前に使用したもの:

うまくいった。

しかし今、私がコンパイルすると突然...

誰か助けてください。私はOpenGLとGLUTについてあまり知らないので、これは私にとって非常に迷惑でイライラします。

0 投票する
2 に答える
689 参照

opengl - 過剰なビジュアルエディター

彼らがAutoCADのようなGlut(opengl)ビジュアルエディターであるかどうかを知りたかったのです。