問題タブ [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.

0 投票する
4 に答える
9042 参照

.net - VB.NETのイベントを上書きする

VB.NETのイベントをシャドウ/オーバーライドしたい。

これを行うのは、このオブジェクトに、ベースオブジェクト自体と同じイベントを含むインターフェイスを実装する必要があるためです。また、このベースイベントを、変更や補足イベントの追加なしでそのまま維持する必要があります。

どうすればいいですか?

したがって、VisibleChangedイベントを含むインターフェイスを実装したいと思いますが、myBaseVisibleChangedイベントも機能し続けます。

このようなものですが、VisualStudioはそのような構文を認識していないようです...

つまり、C#では次のように認識しています。

0 投票する
5 に答える
1551 参照

raytracing - レイトレーシングシャドウの問題

レイトレーサーのシャドウレイに問題があります。

次の2枚の写真をご覧ください

3D sMax:

代替テキストhttp://neo.cycovery.com/shadow_problem.gif

私のレイトレーサー:

代替テキストhttp://neo.cycovery.com/shadow_problem2.jpg

シーンは非常に明るい光で照らされ、後ろから輝いています。非常に明るいので、シェーディングにグラデーションはなく、白または暗い(露出オーバーのため)だけです。

両方の画像は3DStudioMaxを使用してレンダリングされ、両方ともまったく同じジオメトリを使用します。1つのケースでは、法線が三角形全体に補間されます。

次に、表面の赤い点について考えます。滑らかでないバージョンの場合、それは暗い領域にあります。これは、光源が三角形とは反対を向いているため、この三角形からは光源が見えないことを意味します。ただし、平滑化されたバージョンでは、補間された法線がそのポイントで光が見えることを示唆しているため、明るい領域にあります(三角形の実際のジオメトリは光源とは反対を向いていますが)。

私の問題は、レイトレーシングされたシャドウが入ってくるときです。シャドウレイが赤い点からシーンに照射され、光源が見えるかどうかをテストする場合(シャドウイングを決定するため)、シャドウレイは交差点を返します。法線が補間されるかどうか(交差はジオメトリにのみ依存するため)。したがって、ピクセルは暗くシェーディングされます。

3dsamxはケースを正しく処理しています-レンダリングされた画像はレイトレースシャドウをオンにして生成されました。ただし、レイトレーシングされたシャドウをオンにすると、自分のレイトレーサーでこの問題が発生します(レイトレーシングされたシャドウがシャドウにあるポイントを決定するため、レイトレーサーでは、どちらの場合もポイントが暗くなります)。解決方法がわかりません。それ。

誰かがこの問題とその対処方法を知っていることを願っています。

ありがとう!

0 投票する
2 に答える
1041 参照

mapping - 6 つのスポット ライトを使用してポイント ライトをレンダリングしますか?

6 つのスポット ライトをレンダリングして、シャドウ マッピング アルゴリズム用のポイント ライトを作成しようとしています。

これを正しく行っているかどうかはわかりません。ビューと射影行列を設定するときに、多かれ少なかれここの指示に従いましたが、最終結果は次のようになります。

代替テキスト

白い部分は 6 つのシャドウ マップのいずれかで覆われている部分で、暗い部分はシャドウ マップで覆われていない部分です。もちろん、ティーポットとボックスの影がシーンに投影されても問題はありませんが、ご覧のとおり、6 つのシャドウ マップには盲点があります。これは立方体のシャドウ マップがどのように見えるべきか? 点光源のシャドウマップに見えない…

0 投票する
1 に答える
1261 参照

android - 画像の「影」バージョンを描画するにはどうすればよいですか?

私は、私を夢中にさせている単純な問題に固執しています。標準の Android MapView オーバーレイ イメージでは、drawAt メソッドを呼び出すと、自動的に影が描画されます。同じ影の効果を再現したいのですが、影のバージョンの画像 (メイン画像とは別に描画されます) をメイン画像に正しく合わせる方法がわかりません。

0 投票する
5 に答える
7008 参照

iphone - UITextField の drawTextInRect が呼び出されない

この SO questionへの回答を実装しようとしています。問題は次のとおりです:-[drawTextInRect]は明らかに呼び出され-[drawRect]ておらず、シャドウを設定しても UITextField のテキストはシャドウされません。

もう 1 つの奇妙な点は、-[drawTextInRect]とのサブクラスの実装-[drawRect]が完全に空 (super の呼び出しでさえない) であっても、テキスト フィールドのテキストが描画されることです。

0 投票する
1 に答える
162 参照

mapping - 状況によっては、シャドウ マップでシャドウを適切に投影できませんか?

Microsoft が提供するシャドウ マップのサンプルで、薄いジオメトリが高角度で投影されたときに影が正しく投影されない問題に気付きました。ここで投影されている影を参照してください。ライトからの極が投影されていないことに注意してください。

http://imgur.com/QwOBa.png

そして、このスクリーンショットでは、極がはっきりと見えるのではなく、ライトの視点から物事を見ています: http://imgur.com/k2woZ.png

本当に 2 つの質問があります。これは実際のバグなのか、それともシャドウ マッピングの制限なのか、バグの場合はどうすれば修正できるのでしょうか。

ソースは、2004 年 7 月の Microsoft DirectX サンプル ブラウザ 'ShadowMap' サンプルから直接取得したもので、サンプル ブラウザは最新の 2009 年 8 月のものです。

0 投票する
2 に答える
14353 参照

jquery - jqueryによるdivシャドウ

div でシャドウ効果を使用するためのプラグインはありますか?

ありがとう

0 投票する
5 に答える
69365 参照

iphone - UIImageView の背後に影を作成する最良の方法は何ですか?

後ろに影を追加したい UIImageView があります。アップルがそれをプロパティとして持っていればいいのですが、私たちプログラマーにとって多くのことを難しくしなければならないので、この質問をする必要があります.

0 投票する
1 に答える
762 参照

windows-xp - XP SP2 の永続的なシャドウ コピー?

Windows Vista/7 のように、XP が永続的なシャドウ コピーをサポートしているかどうか疑問に思っています。シャドウコピーに関するウィキペディアの記事を読んだところ、次の段落がありました(強調は私のものです):

Windows Server 2003 では、永続的なスナップショット (システムから明確に削除されるまで再起動後も使用可能な複数のスナップショット) の作成が追加されました。、同じボリュームに対して最大 512 個のスナップショットを同時に存在させることができます。そのため、Windows Server 2003 では、VSS を使用して、データの定期的な増分スナップショット、または変更されたファイルの差分 (差分) を長期間にわたって作成します。最大 64 個のスナップショットがサーバーに保存され、クライアントまたはネットワーク共有を介して同じサーバーからアクセスできます。この機能は、共有フォルダーのシャドウ コピーと呼ばれ、クライアント サーバー モデル用に設計されています。共有フォルダ クライアントのシャドウ コピーは、Windows 2000 および Windows XP RTM および SP1 にインストールする必要があります。32 ビット Windows プラットフォーム用のこのクライアントのコピーは、サーバーで入手するか、Microsoft からダウンロードできます。Windows XP SP2 以降の OS に組み込まれています

これは、永続的なシャドウ コピー、またはネットワーク接続が切断された場合でも存在するファイルの部分的なコピーを作成する機能を XP が備えていると解釈しました。

サポートされている機能に光を当てていただければ幸いです。

0 投票する
1 に答える
1419 参照

opengl - シャドウボリュームを作成するときにGLSLで後ろ向きの頂点を変換する方法

私はOpenGLを使用してゲームを作成しており、シャドウボリュームを実装しようとしています。

頂点シェーダーを介してGPU上にモデルのシャドウボリュームを構築したいと思います。そのために、モデルをVBOで表します。

  • 各三角形が独自の3つの頂点を持つように、頂点が複製されます。
  • 各頂点には、その三角形の法線があります
    • 入らない理由で、とにかく上記の2つのポイントを実際にやっていたので、頂点の重複についてはあまり心配していません。
  • 縮退した三角形が追加され、「通常の」三角形の各ペア間のエッジの内側に四角形が形成されます。

このモデル形式を使用して、頂点シェーダー内で、ライトの反対側を向いている三角形の一部である頂点を見つけ、それらを後ろに移動してシャドウボリュームを形成することができます。

私が理解するために残したのは、後ろ向きの頂点に正確にどのような変換を適用する必要があるかです。

頂点がライトの反対側を向いていることを検出することはできますが、どの変換を適用する必要があるのか​​わかりません。これは私の頂点シェーダーがこれまでのように見えるものです:

単純にに設定gl_positionしてみましftransform() - (vec4(realLightDir, 1.0) * someConstant)たが、これにより、ある種の深度テストのバグが発生し(ボリュームをカラーでレンダリングすると、一部の面が他の面の後ろに見えるように見えました)someConstant、背面がどこまで伸びるかには影響しなかったようです。 。

更新-1月22日

私がおそらくどのスペースにいるかについての質問を明確にしたかっただけです。私がどのスペースにいるかを追跡することは、私のシェーダーの頭痛の最大の原因であると言わなければなりません。

シーンをレンダリングするとき、私は最初にを使用してカメラをセットアップしましたgluLookAt。カメラは固定されている場合もあれば、動き回っている場合もあります。それは問題ではないはずです。glTranslated次に、モデルを配置するなどの変換関数を使用します。

プログラム(つまりCPU上)では、世界空間(3つのフロート)で光ベクトルを表します。開発中に、この光ベクトルをシェーダーの適切なスペースに配置するには、カメラを設定した後、モデルを配置する前に、モデルビューマトリックスの逆数を掛ける必要があることがわかりました。したがって、私のプログラムコードは次のようになります。

  • ポジショニングカメラ(gluLookAt
  • ワールド空間にある光ベクトルを取得し、それを現在のモデルビューマトリックスの逆行列で乗算して、シェーダーに渡します。
  • 位置モデルへの変換
  • モデルの描画

これは何かを明確にしますか?