PBR で強化した美しいテクスチャに加えて、PBR で強化されたリソース パックでは、カスタム フォグ定義を追加し、新しいフォグ スタック (詳細は Minecraft.net をご覧ください) を使って適用することができます。このフォグ スタックは、優先度の低いものから高いものの順に並べられています。
- ハードコードされたエンジンのデフォルト
- biomes_client.json 内の "default " オブジェクトのデータ デフォルトの設定
- biomes_client.json でのバイオーム単位の設定
- /fog コマンド
biomes_client.json も /fog コマンドも、リソース パックの "fog" フォルダーの JSON で定義されたフォグの定義を参照しています。
フォグの定義
各フォグの定義は、リソース パックの "fog" フォルダーにある JSON ファイルです。例は次のようになります:
{
"format_version": "1.16.2100",
"minecraft:fog_settings": {
"description": { "identifier": "nvidia:example_fog" },
"distance": {
"air": {
"fog_start": 0.92,
"fog_end": 1.0,
"fog_color": "#ABD2FF",
"render_distance_type": "render"
}
},
"volumetric": {
"max_density": {
"air": {
"max_density": 0.1,
"max_density_height": 56,
"zero_density_height": 70
}
},
"media_coefficients": {
"air": {
"scattering": [ 0.02, 0.02, 0.02 ],
"absorption": [ 0.0, 0.0, 0.0 ]
}
}
}
}
}
フォグ定義のためのスキーマ。
- format_version: この記述した JSON のスキーマ バージョン。
- minecraft:fog_settings: フォグの定義のためのエントリ。
- 説明
- identifier: 引用符で囲んだユニークな名前、前に名前空間とコロンが付きます。このユニークな識別子は、例えば biomes_client.json や /fog コマンドなどからフォグ定義を参照するために使用されます。
- distance: カメラから特定の距離を超えてプレイヤーの視界が見えないように制限する距離フォグの設定を含むオプションのオブジェクト。 1 つ以上のオプションを列挙したオブジェクトのグループが含まれます:
- air: プレイヤーのカメラが空中にあるとき。
- weather: プレイヤーのカメラが空中にあり、天気が活発な場合 (雨や雪など)。
- water: プレイヤーのカメラが水中にあるとき。
- lava: プレイヤーのカメラが溶岩の中にあるとき。
- lava_resistance: 「火耐性」バフがかかったプレイヤーのカメラが溶岩の中にあるとき。
- 列挙された各オブジェクトには、次の距離値を持っています:
- fog_start: 霧が出始める単位またはパーセンテージでの距離。
- fog_end: 霧で完全に不透明になる単位またはパーセンテージでの距離。
- render_distance_type: 固定またはレンダーのいずれか:
- fixed : 距離の値は単位であり、プレイヤーのカメラからのブロックとして適用されます。
- render: 距離の値は、0.0 から 1.0 の範囲のパーセンテージであり、クライアントのレンダリング距離設定に対して乗算されます。
- fog_color: フォグの色を 0 から 255 の範囲の 3 つの値の角括弧で囲まれたリストとして指定します。または、引用符で囲まれた # に続く 16 進の RGB 値で指定することもできます。
- volumetric: ブロックを通過する光として計算されるボリュームフォグの設定を含むオプションのオブジェクト:
- density: 高さベースのフォグの設定を含むオプションのオブジェクト。 1 つ以上のオプションの列挙されたオブジェクトのグループが含まれます:
- air: プレイヤーのカメラが空中にあるとき。
- weather: プレイヤーのカメラが空中にあり、天気が活発な場合 (雨や雪など)。
- water: プレイヤーのカメラが水中にあるとき。
- lava: プレイヤーのカメラが溶岩の中にあるとき。
- lava_resistance: 「火耐性」バフがかかったプレイヤーのカメラが溶岩の中にあるとき。
- 列挙された各オブジェクトは、次の密度と高さの値を持ちます:
- max_density: フォグ密度を乗算するための小数値。0 は霧がなくなり、1 は完全に不透明な霧になります。
- uniform: 真偽値: false は、列挙された媒体の深さに基づいてフォグ密度をスケーリングし、true は zero_density_height と max_density_height の値を無視して、フォグを高さ全体に均等に分散させます。
- zero_density_height: フォグが濃くなり始めるブロック内の高さ。uniform が true の場合は無視されます。
- max_density_height: フォグの濃くなるのが止まるブロック内の高さ。uniform が true の場合は無視されます。
- media_coefficients: 光線がさまざまな媒体を通過するときに、フォグの密度によって光がどのように分散および屈折されるかについての設定を含むオプションのオブジェクト。 1 つ以上のオプションが列挙されたオブジェクトのグループが含まれます:
- air: 光が空気を通過するときに使用されます。
- water: 光が水を通過するときに使用されます。
- cloud: 光が雲を通過するときに使用されます。
- 列挙された各オブジェクトは、以下の係数の設定を持ちます:
- scattering: 列挙された媒体を通過する光に対して拡散する、赤、緑、および青の色の 3 つの値の角括弧で囲まれたリスト。 これらの値の範囲は 0.0 から 1.0 です。 代わりに、引用符で囲まれた # に続く 16 進 RGB 値で指定することもできます。
absorption: 列挙された媒体を通過する光を吸収するための、赤、緑、および青の色の 3 つの値の角括弧で囲まれたリスト。 これらの値の範囲は 0.0 から 1.0 です。 代わりに、引用符で囲まれた # に続く 16 進 RGB 値で指定することもできます。
バイオーム
アクティブ フォグ スタックのバイオーム レイヤーは、プレイヤーの位置周辺のバイオームからの設定の平均です。 biomes_client.json 内の各バイオームは、バイオーム固有のフォグ設定を適用するためのユニークな識別子によってフォグ定義を参照することができます。
フォグ コマンド
The /fog コマンドで、各プレイヤーのアクティブ フォグ スタックに適用されるフォグ定義をさらに管理できます。
スタックのこのレイヤー内のフォグ設定は、/fog コマンドの push、pop、および remove モードを介して順序付けられます。
push: フォグの定義を、ユーザーが指定した ID とともに、選択したプレイヤーのフォグ コマンド レイヤーの最上部に適用します。
pop: 選択されたプレイヤーの中から、ユーザーが提供した ID に一致する最上位のフォグ定義を削除します (つまり、/fog コマンドの push モードで直前に適用されたもの)。
remove : 選択されたプレイヤーから、ユーザーが指定した ID に一致するすべてのフォグ定義を削除します。
アクティブ フォグ スタックのプレイヤーのフォグ コマンド レイヤーの状態は、ワールドのプレイ セッション中、各プレイヤーごとに保存され、読み込まれます。