問題タブ [webgl]
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.
javascript - o3d.Shape の頂点とインデックスを取得できますか?
chrome nightly と minefield で o3d webgl ライブラリを使用しています。o3d.Shape オブジェクトから頂点とインデックスを取得する方法を知っている人を探しています。これを行う理由は、最新のディストリビューションからピッキング デモ内のプリミティブ オブジェクトを利用できるようにするためです。
前もって感謝します、クリス
opengl-es - gl_Colorは、WebGLで宣言されていない識別子です
次のコードスニペットがあるhttp://www.swiftless.com/tutorials/glsl/3_glcolor.htmlを見ています。
WebGLでgl_Colorを使用しようとしました。gl_Colorが宣言されていない識別子であるというエラーが発生しました。
私は何を間違えましたか?
よろしくお願いします。
shader - WebGLフラグメントシェーダーの奇妙な浮動小数点演算
簡単なWebGLプログラムを書いています。シェーダープログラムで奇妙な動作に悩まされています:
条件( 1.01 * 2.0 > 1.0 )
はtrueと評価されますが、条件( 0.99 * 2.0 > 1.0 )
はflaseと評価されます
1.0
他の何かよりも小さい数を掛けるたびに、私はより少ない数を得る1.0
なんでそうなの?
[編集]
フラグメントシェーダーを使用して、ウィンドウレベルとウィンドウの高さ(線形ランプ)を使用して16ビットの符号なし整数データを8ビットのビットマップに変更し、画面に表示しています。16ビットデータを内部形式としてWebGL(AFAIK)に直接保存する方法がないためUint8Array(width*height*3)
、最初のバイトをRチャネルに保存し、2番目をBチャネルに保存してgl.RGB
、gl.UNSIGNED_BYTE
テクスチャに配置することにしました(おそらくLUMINESCANCE_ALPHA
より良いでしょう)。
シェーダーでは、単語形式のバイトを再構築し、レベリングを行います。シェーダープログラム:
ご覧のとおり、愚かな線がありますif( 1.0*2.0 > 1.1 ) gl_FragData[0] = vec4(1,0,0,1);
。浮動小数点演算をテストする場所です。この例では、画像全体が赤ですが、条件がである場合0.999999999*2.0 > 1.1
、答えは偽です。リサンプリングされた16ビット画像に奇妙なアーティファクトが含まれていると、何かを疑うようになりました。
Chrome8とFirefox4でテストしました。浮動小数点演算について何も理解していないと思います。
webgl - WebGL でのマルチテクスチャ GL_TEXTURE1 の問題
WebGL でマルチテクスチャを使用する方法を学んでいます。次のシェーダー コード スニペットがあります。
また、私の JavaScript コード スニペット:
photoTexture1 (texture1) は、画面に黒のみを表示します。photoTexture0 (テクスチャ 0) を正しく表示できます。photoTexture1(texture1)がシェーダーに表示されていないようです。
上記のコードは機能せず、私はこれに慣れていないため、何か間違ったことをしたか、マルチテクスチャがどのように機能するかという概念を誤解しているのではないかと考えています。
どんな助けでも大歓迎です。よろしくお願いします。
注: http://www.khronos.org/message_boards/viewtopic.php?f=43&t=3357&p=8858#p8858への相互投稿
macos - 古い Mac OS X バージョン (10.4 など) の WebGL
プログラミング関連の質問ではありませんが...
暇なときに WebGL を試してみたいと思っています。私の現在の「暇な」マシンは、Mac OS X Tiger (10.4.xx) を実行している MacBook ですが、この OS をサポートする新しいブラウザを見つけることができません。Firefox はサポートを終了し、Chrome も、Safari もサポートを終了しました。
これは、Apple が修正しない Quicktime のバグによるものだとどこかで読みました。
この問題について詳しい情報を持っている人はいますか?
Mac OS X 10.4 で WebGL の実行中の実装を見つけるための手がかりや追跡を誰かが持っていますか?
乾杯、
javascript - o3d(webgl)プロジェクションの最大遠平面はいくつですか?
やあ、
私は次のJavaScriptを使用しています...
o3d(webgl)プロジェクションの最大遠平面を教えてもらえますか?
5000と9999を使ってみましたが、同じ時点ですべてが消えてしまうようです。SDKの現在のドキュメントでこの情報を見つけようとしました。
そのような弱い制限の理由はありますか?
最大値をハックすることは可能ですか?
performance - シェーダー/状態の変更を最小限に抑えて WebGL のパフォーマンスを最適化するためのガイドライン
100K の三角形で構成される大きなインテリア シーンをレンダリングするための WebGL の実用性を理解しようとしています。これらの三角形は多くのオブジェクトに分散されており、シーンには多くのマテリアルがあります。一方、可動部分はありません。また、マテリアルはかなり単純で、ほとんどがテクスチャ マップに基づいている傾向があります。多くのテクスチャ マップが共有されています。たとえば、シーン内のすべての椅子が共通のマップを共有します。マルチテクスチャリングもあります - マテリアルに最大 3 つのテクスチャを重ねることができます。
私は少しの実験と読書を行っており、レンダリング パス中にマテリアルを頻繁に切り替えると速度が低下することがわかっています。たとえば、オブジェクトが表示されるたびに新しいマテリアルが設定されると仮定すると、200K の三角形を含むシーンでは、オブジェクトが 10 個か 1000 個かによって、パフォーマンスに大きな違いがあります。
したがって、パフォーマンスが重要な場合は、マテリアルの切り替えを最小限に抑えるために、シーンをマテリアルごとに分類する必要があるようです。私が探しているのは、さまざまな状態変化のオーバーヘッドをどのように考えるか、そしてどこで最大の費用対効果を得られるかについてのガイドラインです。例えば、
gl.useProgram()
たとえば、の相対的なパフォーマンス コストはいくらですかgl.uniformMatrix4fv()
。gl.drawElements()
- シェーダーの切り替えを最小限に抑えるには、ubershader を作成する必要がありますか?
gl.drawElements()
呼び出し回数を最小限に抑えるためにジオメトリを集約する必要がありますか?
ブラウザ、OS、グラフィックス ハードウェアによって走行距離が異なる場合があることを認識しています。また、英雄的な手段も求めていません。シーンを高速化する経験をすでに持っている人からのガイドラインです。過去に固定パイプラインの OpenGL プログラミングの経験はありましたが、WebGL/OpenGL ES 2.0 のやり方については初心者です。
css - テキストボックスを選択できない、またはフォーカスを設定できない
私は最新の Minefield と Chrome ナイトリー ビルドを使用しています。公式の O3D webgl サンプル (例: http://o3d.googlecode.com/svn/trunk/samples_webgl/o3d-webgl-samples/customcamera.html ) で無効化されていない HTML テキスト ボックスのテキストを変更できません. O3D を使用する場合、自分のページで同じ問題が発生します (生の webgl スクリプトはテストしていませんが、現在は o3d eekを使用しています)。私の3Dシズ
この問題を抱えている人、問題を調査した人、またはこのバグの知識や分析を提供できる人はいますか?
javascript - O3Dのテクスチャと反射を備えたWebGLウォーターシェーダー..誰かに例がありますか?
O3Dのテクスチャと反射を備えたWebGLウォーターシェーダー..誰かに例がありますか?
ありがとう
html - Google O3D WebGLラッパーはどうなっていますか?
Google O3D WebGLラッパーの更新は非常に長い間見られず、このサイトのo3dwebglやインターネット上の他のコンテンツに関する投稿の形であまり見られません-O3DWebGLラッパーで何が起こっているのかはまだです開発中?