セルフシェードとは何ですか?

「セルフシェード」とは、オブジェクトの一部がそれ自体に影を落とす状況を説明する用語です。セルフシェードの例には、光源が上から来るときの顔または上唇の人間の鼻によってキャストされた影、または椅子の脚の椅子の座席でキャストされる影が含まれます。この用語がコンピューターグラフィックス(特にコンピューターグラフィックプログラミング)で使用される場合、それはシーンの3次元(3D)オブジェクトによってキャストされる影、または周囲のオブジェクトにダイナミックオブジェクトによってキャストされる影に基づいています。リアルタイムの3Dコンピューターグラフィックプログラミングの性質により、多くのアプリケーションが他の最適化を支持してセルフシェードをレンダリングする可能性を削除する技術を使用しますが、コンピューターの速度と機能が増加するにつれて、リアルタイムのセルフシャドー方法がアクセスしやすくなります。リアルタイムのセルフシェードオブジェクトをレンダリングする方法はいくつかあります。Tハードウェアの制限は、通常、不正確な影、人為的に硬いエッジを持つ影、または信じられないほど速くないグラフィックカードで非常にゆっくりとレンダリングするシーンなど、いくつかの欠点を持つ結果を生成します。

セルフシェードについて話すときに行うことの1つの区別は、リアルタイムグラフィックスの静的オブジェクトと動的オブジェクトの違いです。静的オブジェクトは、移動せず、レンダリングの過程でジオメトリの一部が変更されていないシーン内の3Dオブジェクトです。一方、動的オブジェクトは、シーンに直接接続されていないオブジェクトであり、フレームごとに異なる場合があります。ほとんどの場合、ほとんどの静的オブジェクトと非リアルタイムシーンは、レンダリングエンジンまたは使用できる他のグラフィックストリックのいずれかのためにセルフシェードを行います。

リアルタイムの3Dグラフィックをレンダリングするために使用されるいくつかの最適化は実現しますダイナミックなセルフシェードをメントするのは困難です。いくつかの例には、照明効果のみを静的な背景に適用するグラフィックエンジンが含まれます。シーン内の文字などの動的なオブジェクトや、内部ジオメトリを認識しないシルエットとしてのみオブジェクトを扱うエンジンを無視します。グラフィックプロセッサとコンピューターの増加により、新しいテクニックにより、セルフシェードされたオブジェクトがリアルタイムシーンに表示され、いくつかの制限とトレードオフが可能になります。

シャドウボリュームは、3Dシーンでセルフシェードを実装できる1つの方法です。この方法は、基本的に、影が鋳造されるシーンで密閉されたボリュームを占める3Dオブジェクトを作成し、レンダラーまたはシェーダーが、どのように点灯しているかを決定するために、どのポイントが影のボリューム内にあるかをテストすることができます。他の方法は、必ずしもエッジの忠実度に従うとは限らない非常に拡散した影を作成するために、頂点の位置からの影のマップ、または近似の影を作成します。

セルフシェードのほぼすべての方法が必要です速度または品質のいずれかを交換して、許容可能な結果を​​得ます。品質の問題は、いくつかのセルフシャドウを間違っている、または場違いに見えるかもしれない高速ではあるが低解像度またはファジーなテクニックを使用することで発生する可能性があります。速度の問題は、使用されているアルゴリズムがフレームごとにあまりにも多くのオーバーヘッドを必要とする場合、またはシャドウ投影を正確に計算しようとする場合に発生します。単一の標準的なセルフシェードを生成するアルゴリズムはありませんが、一部のグラフィックカードには、いくつかのテクニックの速度を高めることができるさまざまな方法のネイティブアクセラレーションが含まれます。

他の言語

この記事は参考になりましたか? フィードバックをお寄せいただきありがとうございます フィードバックをお寄せいただきありがとうございます

どのように我々は助けることができます? どのように我々は助けることができます?