2011-01-06 12 views
4

まず、私はWPFアプリケーションでOpenTKを使用していますが、これはもっと一般的なOpenGLの問題だと思います。OpenGL:OpenGLを設定してFBOにレンダリングするだけで、画面/ウィンドウ/コントロールへの出力はありません。

私のアプリケーションでは、3Dのものをテクスチャにレンダリングできるようにしたいと考えています。 ウィンドウやコントロールの出力は必要ありません。背景のテクスチャにレンダリングしたいだけです。

OpenGLをセットアップするにはどうすればよいですか? 通常、graphicscontextはパラメータとしてdevicecontextを使用して作成する必要があります。 私の場合、私はdevicecontextに出力したくないので、ウィンドウやディスプレイと無関係な設定(f.e. 1024x1024、32bpp、32bits ZBuffer)の固定サイズのFrameBufferObjectにレンダリングしたいと思います。

私は誰もがこのようなセットアップの経験を持っている願っています:)

答えて

3

コンテキストの作成には、OpenGLのAPI自体の範囲外です。 GLコンテキストは、Windows GDI、X11/GLX、Quartz/AGLなどのターゲットグラフィックスシステムによって作成されます。今は、PBuffersという概念があります。これは、ウィンドウに結び付けられていないHWアクセラレーションされたOpenGLコンテキストを作成するために使用できます。しかし、PBuffersは通常は拡張機能としてのみアクセスできるため、これまでのところOpenGLのコンテキストが必要です。解決策は、ダミーのウィンドウを作成することです。ダミーのウィンドウは、画面上に表示する必要はなく、ダミーのGLコンテキストを作成して拡張子を取得します。その後、PBufferとそのOpenGLコンテキストが作成されます。

しかし、FBOを使用する場合は、PBufferフープをジャンプする必要はありません。レンダリングターゲットがFBOになるので、OpenGLコンテキストを持つ見えないダミーウィンドウも同様にジョブを実行します。

関連する問題