問題タブ [shading]

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 投票する
1 に答える
2587 参照

opengl - OpenGLでフォンシェーディングの法線を補間するには?

現在、古き良きフォンシェーディングを実装しています。全体的にはかなり正しいように見えますが、法線の出現には説明できないパターンがあります。

よく見なくても、スタンフォードバニーはかなり正しいように見えます。 ここに画像の説明を入力

しかし、たとえば耳には奇妙なパターンがあります。 ここに画像の説明を入力

この写真では、法線を視覚化し、彩度を上げて問題をより見やすくしています。 ここに画像の説明を入力

これは私の頂点シェーダーです:

これは私のフラグメントシェーダーです:

誰かがこの動作を説明できますか?

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

unity3d - Unity3D: 動く 3D オブジェクトに一貫したシェーディングを持たせたい

シーンには 2 つの指向性ライトがあり、ライト 1 は Y 軸に平行で (球の下に影を作りたい)、ライト 2 は X 軸に平行です。

画面の左側に移動するいくつかのバリア (3d キューブ オブジェクト) があります (速度 = (-20,0,0) )。

シーン内を移動している間、バリアに一貫した色/陰影を持たせたい。オブジェクトが画面の右側にあるときは暗く、左に移動すると、画面から消える直前に明るくなります。理由がわかりません!

私がやったこと:

シーンからすべてのライトを削除すると、効果が発生しないことがわかりました。

シーンから他のすべてのオブジェクトを削除しました。

ライティング オプションで、RealtimeGI と Baked GI をオフにしました。Skybox を削除し、Ambient Intensity、Reflection Intensity を 0 にしました。

それをより理解するのに役立つ効果は次のとおりです。

バリア

バリアが移動しました

あなたが私を助けることができれば、ありがとう!

0 投票する
0 に答える
238 参照

android - PopupWindow の周囲のシャドウ レイヤー、できればプログラムによる

PopupWindow の周りにシャドウ レイヤーを設定して可視性を高める最も簡単な方法を探しています。custom-9-patch-graphic の作成を含むソリューションを見てきましたが、動的にカスタマイズするのは難しいようです (私の PopupWindow は、入力などに応じて異なるコンテンツを表示しているため、サイズが異なります)。XML では、透明な背景を持つ RelativeLayout として実装された Box として設計されています。

シャドーイングの例

(Googleで見つけたランダムな例。でも、私が欲しいものです。)

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

graphics - ランバート シェーディングの実装方法

私は C++ と OpenGL (glDrawPixels) を使用してレイ トレーサーに取り組んでおり、これまでのところうまくいっています。ただし、私のシェーディングは少しずれているようです。強度間に露骨な線を入れずに、球を少し滑らかに見せたいです。現時点では、強度 = Id * pd * (N dot L) であるランバート シェーディングを実装しようとしています。法線ベクトルと光​​ベクトルを正規化して (N dot L) を計算する必要があることはわかっていますが、Id と pd (強度拡散と比例係数) はどうですか? 次のことを達成するために、定数値 2.5 を使用しています。

これは私のシェーディングがどのように見えるかの写真です

明らかに、2.5 は完全に恣意的なものであり、他の試みが適切なシェーディングにさえ似ていなかったので、私はそれを使用しているだけです。上記の式は、色に強度を掛けるべきであることを示唆しているようです。これは私の方法です:

法線ベクトルと光​​ベクトルが正しいと仮定します。Color は、RGB 値ごとに unsigned int を持つ、私が作成した単なる色の構造体です。パラメータ Color color は、シェーディングしたい球の色です。たとえば、red = Color(255,0,0) です。色の強度を変更するには、各値に計算した強度を掛けるだけですが、実行すると正しく表示されません。

誰かが私が欠けているものを説明し、ベクトルと球の色が与えられたときに正しい関数がどのように見えるべきかを教えてもらえますか? 私はいたるところを見てきましたが、良い解決策が見つかりません。float から unsigned int への変換が間違っている可能性もありますが、よくわかりません。どんな助けでも大歓迎です。

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

postscript - ポスト スクリプトのタイプ 3 関数プロシージャ

私はポスト スクリプトの初心者で、ポスト スクリプトの作業を始めたばかりです。ポスト スクリプトのシェーディング効果に使用できるポスト スクリプト プロシージャを作成したいと考えています。このシェーディングには 2 色以上を使用できるため、タイプ 3 のステッチ関数を定義する必要があります。

関数 2 のプロシージャを定義することを考えており、後でこのプロシージャをタイプ 3 関数の定義に使用できます。

以下は私が試したものです...

私が直面している問題は、バインドされた変数をスタックから読み取る方法です。これが機能するかどうかはわかりません。その中の問題を確認してお知らせください。

0 投票する
3 に答える
1359 参照

apache-spark - Scala + SBT - シェーディングされた Akka ライブラリの reference.conf を構成する方法

TL;DR

ライブラリのバージョンをシェーディングしてアプリケーションにバンドルしようとしています (のバージョンでサーバーakkaを実行できるようにするため)。シェーディング プロセスはのデフォルト設定を台無しにし、手動でシェーディングされた の別のバージョンを提供した後でも、2 つのバージョンが何らかの形で混同されているように見えます。spray-canCDH 5.7Spark 1.6akkaakkareference.confakka

シェーディングakkaバージョンは問題を引き起こすことが知られていますか? 私は何を間違っていますか?

バックグラウンド

Scala/Sparkアプリケーションを現在Spark 1.6.1スタンドアロンで実行しています。アプリケーションは、 を使用してhttpサーバーspray-canを実行します。spray 1.3.3akka 2.3.9Spark 1.6.1akka 2.3.11

のバージョンを実行している新しいClouderaベースSparkのクラスタにアプリケーションを移行しようとしています。問題は、が正しく機能するのに十分でないがバンドルされていることです。CDH 5.7Spark 1.6Spark 1.6CDH 5.7akka 2.2.3spray 1.3.3

試みられた解決策

この投稿の提案に従って、akka 2.3.9アプリケーションと一緒にシェーディングしてバンドルすることにしました。今回は新しい問題に遭遇しましたが、アプリケーションのクラスパスに配置する必要があるファイルにakkaデフォルトの構成が定義されています。のシェーディング機能の既知の問題により、シェーディングライブラリreference.confは別の設定が必要になるようです。sbt-assemblyakka

akkaそのため、次のシェーディング ルールでシェーディングを行いました。

reference.conf私のプロジェクトに追加のファイルを含めます。これは、akkaのオリジナルと同じですreference.confが、「akka」のすべての出現が「akka_2_3_9_shade」に置き換えられています。

ただし、次のエラーが発生しているため、 Spark-providedakkaが shaded と何らかの形で混同されているようです。akka

私のアプリケーションのBoot.scalaファイルからの関連コードは次のとおりです。