問題タブ [shadow]
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.
opengl - シャドウボリュームを作成するときにGLSLで後ろ向きの頂点を変換する方法
私はOpenGLを使用してゲームを作成しており、シャドウボリュームを実装しようとしています。
頂点シェーダーを介してGPU上にモデルのシャドウボリュームを構築したいと思います。そのために、モデルをVBOで表します。
- 各三角形が独自の3つの頂点を持つように、頂点が複製されます。
- 各頂点には、その三角形の法線があります
- 入らない理由で、とにかく上記の2つのポイントを実際にやっていたので、頂点の重複についてはあまり心配していません。
- 縮退した三角形が追加され、「通常の」三角形の各ペア間のエッジの内側に四角形が形成されます。
このモデル形式を使用して、頂点シェーダー内で、ライトの反対側を向いている三角形の一部である頂点を見つけ、それらを後ろに移動してシャドウボリュームを形成することができます。
私が理解するために残したのは、後ろ向きの頂点に正確にどのような変換を適用する必要があるかです。
頂点がライトの反対側を向いていることを検出することはできますが、どの変換を適用する必要があるのかわかりません。これは私の頂点シェーダーがこれまでのように見えるものです:
単純にに設定gl_position
してみましftransform() - (vec4(realLightDir, 1.0) * someConstant)
たが、これにより、ある種の深度テストのバグが発生し(ボリュームをカラーでレンダリングすると、一部の面が他の面の後ろに見えるように見えました)someConstant
、背面がどこまで伸びるかには影響しなかったようです。 。
更新-1月22日
私がおそらくどのスペースにいるかについての質問を明確にしたかっただけです。私がどのスペースにいるかを追跡することは、私のシェーダーの頭痛の最大の原因であると言わなければなりません。
シーンをレンダリングするとき、私は最初にを使用してカメラをセットアップしましたgluLookAt
。カメラは固定されている場合もあれば、動き回っている場合もあります。それは問題ではないはずです。glTranslated
次に、モデルを配置するなどの変換関数を使用します。
プログラム(つまりCPU上)では、世界空間(3つのフロート)で光ベクトルを表します。開発中に、この光ベクトルをシェーダーの適切なスペースに配置するには、カメラを設定した後、モデルを配置する前に、モデルビューマトリックスの逆数を掛ける必要があることがわかりました。したがって、私のプログラムコードは次のようになります。
- ポジショニングカメラ(
gluLookAt
) - ワールド空間にある光ベクトルを取得し、それを現在のモデルビューマトリックスの逆行列で乗算して、シェーダーに渡します。
- 位置モデルへの変換
- モデルの描画
これは何かを明確にしますか?
jquery - jQueryによる透明な影
固定1000pxのページがあります。メインページの左右に影をつけたい。私の背景は固定色ではなく、画像であるため、静的な .png を y-repeat で使用することはできません。なので画像は使えません。シャドウを実行できる jQuery プラグインはありますか? または、jQueryプラグインだけでなく、他のソリューション...
shadow - MicrosoftSurfaceのScatterViewItemでシャドウを無効にする
MicrosoftSurfaceでプログラムを開発しています。
そして、私はシャドウを完全に無効にすることに成功しませんでした。これが私の問題です:
http://i61.servimg.com/u/f61/11/31/25/01/sans_t10.png
XAMLコードは次のとおりです。
iphone - UIView内のUIViewとShadow?
addSubview を使用して UIView 内に追加された UIView の影を描画する方法を理解しようとしています。
私はオンラインで検索してドキュメントを読みましたが、Apple のドキュメントは単に以下のように新しい図形を描いているだけです。Core Graphics を使用して UIView に影を追加したいのですが、これを UIView に直接行う方法がわかりません。
これを SuperView の drawRect メソッドに入れる必要があることはわかっていますが、その方法がわからないため、addSubView に追加したビューに影が追加されます。
ありがとう!
css - コンテナdivのCSSボックスシャドウによりスクロールバーが発生します
次の設定のWebサイトがあります。
十分なコンテンツがない場合は、クリアフッターとコンテナーの外側のフッターを使用して、ページの下部にフッターを保持します。
私の問題は、次の方法でコンテナdivにボックスシャドウを適用したいということです。
ご覧のとおり、コンテナdivの両側にドロップシャドウがあります。ただし、これを行う際に、コンテンツが完全な高さを占めていない場合でも、ぼやけのために影がフッターの下部を通過することによって引き起こされるスクロールバーがあります。
シャドウがコンテナdivの端を超えてスクロールバーが発生するのを防ぐ方法はありますか?
ご協力いただきありがとうございます!
css - ボックスの影が特定の側に表示されないようにする
ぼかしの値に関係なく、シャドウが目的の側にのみ表示されるcssボックスシャドウを作成する方法はありますか?
たとえば、左側と右側に影があり、上部または下部に影がないdivを作成する場合です。divは絶対的に配置されているわけではなく、その高さはコンテンツによって決まります。
- 編集 -
@ricebowl:あなたの答えに感謝します。たぶん、あなたはあなたの解決策への私の返信で述べられた問題を修正するための完全な解決策を作成するのを手伝うことができます...私のページ設定は次の通りです:
そしてこのようなCSS:
ios - 影付きの iPhone サブビュー
サブビューをメイン ビューに追加し、小さな影をぼかして表示したいと考えています。
方法はありますか?
javascript - レイアウトの作成に JavaScript を使用することをお勧めしますか?
ブログを作成しているのですが、ボックスのボックスシャドウが必要なので、次のように質問しています。
a)images/css または b)javascript を介して影を追加するのは良いことですか?
ブラウジング中に JavaScript を有効にしていない人が多いと聞きましたが、何か問題はありますか? 100 万の div を追加して配置するよりも、JavaScript でこれらの影を作成する方が簡単で簡単です。
編集: このページを見つけました: http://www.w3schools.com/browsers/browsers_stats.aspほぼすべてのユーザーが js を有効にしていると書かれています。
iphone - Core Graphics で CGContextClip の後に影を描画する
更新: Peter によって指定されたメソッドを実装しようとしましたが、正しくないシャドウイングが発生しています。なにが問題ですか?
元の質問: 次のコードを使用して、CoreGraphics で作成したカスタムの丸みを帯びたセル項目の下部に自然な影を描画しようとしています:
グラデーション塗りつぶしの前または後に、このパスの外側に影を適用したいと思います。これを行う最善の方法は何ですか?