問題タブ [framebuffer]
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.
c# - フレームバッファで白い正方形が表示されるのはなぜですか?
OpenGL(OpenTK)プロジェクトにフレームバッファーの使用を追加しようとしています。
最初に追加した初期化メソッドに:this.RenderBufferTex = GL.GenTexture();
this.glcシーンが実行されるGLControlです。
レンダリングする前に追加しました
続いてGL.Clear()とシーンを描画するためのすべての古いコードが続きます。
次に、レンダリングされたシーンを表示する方法:
これから得られる結果は、画面の左側を埋める白い正方形です(したがって、画面の高さからは正方形に見えます)。
私は何が間違っているのですか?
arm - ARMベースのプラットフォーム上のXウィンドウ
アームベースのリファレンスプラットフォームを使用しています。その中で私はVGAディスプレイを持っています。そのプラットフォーム用の画像ビューアソフトウェアを開発したい場合、X Windowsプログラミングについて学ぶ必要がありますか?貴重な情報をご提供ください。これにはフレームバッファの概念が含まれていますか?rgds、yaj
android - Android & OpenGL ES 2.0 でテクスチャをファイルに保存する
私が理解している限り、OGLES2 へのテクスチャの送信は を使用して行われGLUtils.texImage2Dます。つまり、テクスチャを GPU にアップロードします。それを Android に送り返すにはどうすればよいですか (GPU からダウンロードします)。
ありがとう!
performance - glReadPixels() GL_DEPTH_COMPONENT の読み取りが遅い
私のアプリケーションは、フレームバッファから深度情報を読み取ることに依存しています。これを glReadPixels(0, 0, width, height, GL_DEPTH_COMPONENT, GL_FLOAT, &depth_data) で実装しました
ただし、これは非常に遅く実行され、アプリケーションがスムーズな 30fps からラグのある 3fps になります。他のディメンションまたはデータを読み戻そうとすると、許容レベルで実行されます。
概要を説明するには:
- glReadPixels なし -> 毎秒 30 フレーム
- glReadPixels(0, 0, 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &depth_data); -> 毎秒 20 フレーム、許容範囲
- glReadPixels(0, 0, 幅, 高さ, GL_RED, GL_FLOAT, &depth_data); -> 毎秒 20 フレーム、許容範囲
- glReadPixels(0, 0, 幅, 高さ, GL_DEPTH_COMPONENT, GL_FLOAT, &depth_data); -> 毎秒 3 フレーム、受け入れられない
最後の呼び出しが他の呼び出しに比べて非常に遅いのはなぜですか? それを改善する方法はありますか?
幅 x 高さは約 100 x 1000 で、サイズを大きくすると呼び出しが遅くなります。
ピクセルバッファオブジェクトも使用しようとしましたが、これはパフォーマンスに大きな影響を与えず、glMapBuffer() 呼び出しまで速度が遅くなるだけです。
(私はこれを MacBook Air nVidia 320m グラフィックス OS X 10.6 でテストしましたが、不思議なことに、私の古い MacBook Intel GMA x3100 では深度バッファの読み取りが最大 15 fps でした。)
更新: GLUT_MULTISAMPLE を glutInitDisplayMode オプションから除外すると、アプリケーションが再びスムーズな 20fps に戻るという大きな違いが生まれました。そもそもオプションが何をするのかわかりません。誰か説明できますか?
linux - 組み込み Linux 用の WebKit/Gecko のようなフル機能の HTML レンダリング エンジン?
HTML+CSS+JavaScript を使用して、Linux 環境でタッチスクリーン デバイス用のユーザー インターフェイスを開発したいと考えており、適切なレンダリング エンジンが必要です。
問題のデバイスには、400 ~ 900 MHz クロックの ARM CPU、VGA または WVGA ディスプレイ、および約 256 MB 以上の RAM (標準の Debian Linux (最小限のインストール)) が搭載されています。
レンダリング エンジンが /dev/fb0 およびマウス イベントに直接アクセスするのが理想的です。ブラウザーはレンダリング エンジンとして使用されるだけなので、GUI は必要ありません。ウィンドウもタブもダイアログ ボックスもありません。JavaScript を多用してユーザーと対話する単一のフルスクリーン HTML ページ (動的なウェブページ)。
Qt / GTK / DirectFB などを回避できれば (メモリのオーバーヘッドと起動時間を短縮するために) 素晴らしいことですが、もちろんこれは絶対に必要というわけではありません。
もちろん、WebKit と Gecko が頭に浮かびますが、どちらも理解しにくく、コンパイルも困難です。おそらく、多数のフォークの1つが必要なものに近づいています(検索しましたが、これまでのところ運がありませんでした)?
opengl - オフスクリーンバッファにレンダリングしてからテクスチャにレンダリングするときに深度テストを使用する方法
シーンをテクスチャにレンダリングしています。これは、深度テストが機能しないことを除いて、正常に機能します。オフスクリーンテクスチャにレンダリングする場合、深度テストを有効にするにはどうすればよいですか?FrameBufferクラスを使用していますhttp://www.opengl.org/news/comments/framebuffer_object_fbo_c_class_available_with_example_application/
iphone - iPhone で glFramebufferTexture2D が特定のテクスチャ サイズで失敗する
テクスチャをフレームバッファにアタッチしようとすると、glCheckFramebufferStatus が特定のテクスチャ サイズに対して GL_FRAMEBUFFER_UNSUPPORTED を報告します。第 2 世代と第 4 世代の iPod Touch でテストしました。失敗するテクスチャのサイズは、2 つのモデル間で同じではありません。
いくつかの興味深い結果を次に示します。
第 2 世代 - 8x8 は失敗し、16x8 は失敗しましたが、8x16 は成功しました!
第 4 世代 - 8x8 は成功し、8x16 は成功しましたが、16x8 は失敗しました!
さまざまなサイズのテクスチャの取り付けをテストするために使用したコードを次に示します。
両方のサイズが 16 ピクセル以上であれば、両方のデバイスですべて問題なく動作するようです。しかし、気になるのは、フレーム バッファ オブジェクトにアタッチするためのテクスチャ サイズの要件について書かれたものを見たことがないということです。現時点での 1 つの解決策は、テクスチャ サイズを少なくとも 16 ピクセルに制限することです。どのテクスチャ サイズが許可されているかを動的に把握するために、起動時にこのテスト コードを実行することもできますが、それは少しばかげているようです。
qt4 - Qt/EmbeddedのQGLWidgetの上にQWSWindowのサーフェスを配置する
Qt for Embedded Linux用のQScreenドライバーを作成して、フレームバッファーを介してOpenGL機能を統合できるようにしようとしています。今のところ、両方のQWSウィンドウとEGLサーフェスが、ドライバーとともに画面に表示されています。私はメソッドexposeRegion、blit、solidFillのデフォルトの実装を使用しています。残念ながら、QWSウィンドウをEGLサーフェス上に配置しようとすると、EGLサーフェスが常にQWSウィンドウ上にあることに気付きました。
EGLサーフェスがトップレベルウィンドウでない場合に、QWSウィンドウがEGLサーフェスを通過できるようにすることは可能ですか?これどうやってするの?
OpenGLが画面に直接描画することは知っていますが、更新手順を中断すると、QScreenドライバーがその上にウィンドウを描画できるはずだったと思いますが、これは発生していないようです。
ありがとう!
iphone - iPhone opengl ESはフレームバッファをレンダバッファにコピーします
皆さん、
私はopengl esでアニメーションに取り組んでいます。アニメーションは正方形を描画する必要があります。これは既に機能していますが、フレームバッファからレンダバッファにコンテンツをコピーするにはどうすればよいですか。問題は、すべてのフレームで 1 つの正方形しか表示されないことです。
シミュレーターでテストしたところ、うまくいきました。新しいフレームごとに、既知の正方形が描画され、既に描画されている他の正方形はまだ画面に表示されます。しかし、デバイスでテストしたところ、機能しませんでした。画面が点滅するだけでした。
これは、他のすべてのコンピューターと同様に、私の Mac がダブルバッファリングを使用しているのに、iPhone が使用していないために発生すると思います。
私を助けてください。
これは、フレームバッファを設定する方法です:
setupView Methode も作成しました。
これは私の drawView Methode です:
const GLfloat squareVertices[] = { -1.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, -1.0f, 0.0f, -1.0f, -1.0f, 0.0f };
usb - udev および usb フレームバッファ デバイス
特定の USB フレームバッファ デバイス (DisplayLink) の固定デバイス名を取得したい。ベンダー ID を使用すると、udev ルールを使用して一致を取得できます: SUBSYSTEM=="usb", ATTRS{idVendor}=="17e9", GROUP="video"
しかし、SYMLINK+="fbdl" を使用すると、/dev/fbX デバイス (X=1,2,3..) へのシンボリック リンクは取得されませんが、bus/usb/... へのシンボリック リンクは取得されません。これは同じではありません。 device-file (リンク) は xorg.conf では機能しません。SYMLINK の代わりに NAME を設定することは同じです: 実際のデバイス /dev/fbX はそこにとどまって動作し、指定された NAME は追加で作成されますが、他のターゲットです (動作しません)。ここで何が起こっているのですか?? /dev/input/eventX と SYMLINK のような場合、その eventX へのリンクを取得します。なぜここにいないのですか?
ありがとう!(Ubuntu 11.04)