シャドウコンポーネントは、エンティティおよびその子オブジェクトのシャドウを有効にします。周囲のオブジェクトから影を受け取ることと、他のオブジェクトに影を投げることは、独立して有効にすることができます(多くの場合、そうする必要があります)。

このコンポーネントがない場合、エンティティは影を落としたり受け取ったりしません。

#

以下の例では、木のモデルが周囲のシーンに影を落としていますが、自分自身は影を受けないように設定されています。

<a-entity light="type:directional; castShadow:true;" position="1 1 1"></a-entity>
<a-gltf-model src="tree.gltf" shadow="receive: false"></a-gltf-model>

重要: shadowコンポーネントを追加するだけでは、シーンに影を表示することはできません。castShadow: true を有効にしたライトが少なくとも1つ必要です。さらに、ライトのシャドウカメラ(深度投影に使用)は、通常、正しく設定されている必要があります。詳細については、ライトコンポーネントを参照してください。

# プロパティ

Property 概要 デフォルト値
cast エンティティが周囲のシーンに影を落とすかどうか。 true
receive エンティティが周囲のシーンから影を受け取るかどうか。 true

# シーンプロパティ

シャドウシステムは、シャドウのためのレンダラーを設定するためのシーンレベルのプロパティを公開しています。これらは <a-scene> で設定されます (例: <a-scene shadow="autoUpdate: false">)。

Property 概要 Default Value
enabled 影コンポーネントと castShadow: true が有効なライトがある場合でも、グローバルに影を無効にするかどうか。 true
autoUpdate シャドウマップを毎フレーム動的に更新するかどうか。最高のパフォーマンスを得るには、 renderer.shadowMap.needsUpdate = true を設定して無効化し、手動で更新します。シャドウマップの計算には大きな負荷がかかります。
true
type シャドウの種類。pcfbasicのどちらか pcfsoft. pcf (フィルタリングのパーセンテージ)