0

MILライブラリを使用して画像を取得しようとしていますが、OpenGLを使用して画像をglCanvasウィンドウにレンダリングしたいと思いました。しかし、問題は私の

    OnPaint( wxPaintEvent &event)

画像を表示するためのメソッドがループで実行されていません。このメソッドにコードを入れて、MILを使用して画像を取得し、表示する前にテクスチャとして設定しました。したがって、wxPaintEventがループで実行されている場合、ビデオのような画像シーケンスが表示されないのはなぜですか?MILを使用せずにデフォルトのテクスチャでチェックすると、動作します。だから、基本的には、テクスチャを設定するだけです!

プロセス間およびミューテックスを使用していませんが、これは問題になる可能性がありますか?または、このイベントのタイミングにもっと注意する必要がありますか?

4

1 に答える 1

0

ペイントイベントは通常、ウィンドウが「無効」または「ダーティ」としてマークされている場合にのみ発行され、再描画が必要であると見なされます。アニメーションを再生する場合は、ウィンドウを自分で再描画する対象としてマークします(wxWindow :: Refresh)。または、推奨される方法として、アイドルイベントハンドラーを登録し、そこからOpenGL操作を実行します:http ://wiki.wxwidgets.org/Making_a_render_loop

于 2012-05-24T11:12:32.903 に答える