LlSetAgentEnvironment/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llSetAgentEnvironment( key agent_id, float transition, list params );

この関数は、エクスペリエンス内の個々のエージェントに対して環境値を設定します。環境の変更は、エージェントが新しい領域に移動するか、llSetAgentEnvironmentが空のリストで呼び出されるまで継続します。 paramsに空のリストを渡すと、このエージェントに適用されたすべての環境設定が取り除かれます。

• key agent_id リージョン内のエージェントのキー。エージェントはリージョン内にいて、エクスペリエンスに参加している必要があります。
• float transition 新しい設定に移行する秒数。
• list params 現在の環境から取得するパラメータのリスト。詳細については以下の表を参照してください。

戻り値
定数 説明
1 エージェントに環境の変更が指示されました。
ENV_NOT_EXPERIENCE -1 スクリプトは有効なエクスペリエンスキーを持つエクスペリエンスの一部として実行されていません。
ENV_NO_EXPERIENCE_PERMISSION -2 エージェントが許可を付与していません。
ENV_NO_ENVIRONMENT -3 環境インベントリオブジェクトが見つかりませんでした。
ENV_INVALID_AGENT -4 指定されたエージェントが見つかりません。
ENV_INVALID_RULE -5 ルールのいずれかに問題が発生しました。
ENV_VALIDATION_FAIL -6 渡された値を検証できませんでした。
ENV_NO_EXPERIENCE_LAND -7 エクスペリエンスが有効になっていないか、土地で実行できません。
ENV_THROTTLE -8 スクリプトがスロットルを超過しました。待ってから再試行してください。

パラメータ

パラメータ 整数値 設定値 説明
SKY_CLOUDS 2 vector color, float coverage, float scale, float variance, vector scroll, vector density, vector detail 環境雲の情報:
  • color: 雲の色。
    範囲 = [<0,0,0>, <1,1,1>]
  • coverage: カバレッジのパーセンテージ。
    範囲 = [0, 1]
  • scale: 雲のテクスチャに適用されるスケーリング。
    範囲 = (0 - 3]
  • variance: 主雲層に適用されるランダム化ファクター。
    範囲 = [0, 1]
  • scroll: 雲のスクロール速度。Xが東/西、Yが北/南、Zは未使用。
    範囲 = [<-50,-50>, <50,50>]
  • density: 雲密度を生成するために使用されるX/YおよびDパラメータ。
    範囲 = [<0,0,0>, <1,1,3>]
  • detail: 雲の詳細を生成するために使用されるX/YおよびDパラメータ。
    範囲 = [<0,0,0>, <1,1,1>]
SKY_CLOUD_TEXTURE 19 string texture_ident 雲に使用するテクスチャのインベントリアイテムの名前またはUUID。
SKY_DOME 4 float offset, float radius, float max_altitude 空のドームの情報。
  • offset: 空のドームに適用されるオフセット。
    範囲 = [0,1]
  • radius: 空のドームの半径。
    範囲 = [1000,2000]
  • max_altitude: 空のドームの高度。
    範囲 = [0,10000]
SKY_GAMMA 5 float gamma シーンに適用されるガンマ値。
範囲 = [0,20]
SKY_GLOW 6 float glow_size, float glow_focus 太陽と月に適用されるグロー。
  • glow_size: グローエフェクトのサイズ。
    範囲 = [0.2, 40]
  • glow_focus: グローエフェクトの焦点。
    範囲 [-10, 10]
SKY_MOON 9 rotation rot, float scale, float brightness 詳細な月の情報:
  • rot: 月に適用される現在の回転。
    正規化された回転。
  • scale: 月のテクスチャに適用される現在のスケール。
    範囲 = [0.25, 20]
  • brightness: 月の明るさ。
    範囲 = [0,1]
SKY_MOON_TEXTURE 20 string texture_ident 月に使用するテクスチャのインベントリアイテムの名前またはUUID。
SKY_STAR_BRIGHTNESS 13 float brightness 星に適用される輝きの値。
範囲 = [0,500]
SKY_SUN 14 rotation rot, float scale, vector sun_color 詳細な太陽の情報:
  • rot: 太陽に適用される現在の回転。
    正規化された回転。
  • scale: 太陽のテクスチャに適用される現在のスケール。
    範囲 = [0.25, 20]
  • sun_color: 太陽の色。
    範囲 = [<0,0,0>, <1,1,1>]
SKY_SUN_TEXTURE 21 string texture_ident 太陽に使用するテクスチャのインベントリアイテムの名前またはUUID。
SKY_PLANET 10 float planet_radius, float sky_bottom_radius, float sky_top_radius 空のレンダリングに使用される惑星の情報。
  • planet_radius: 範囲 = [1000, 32768]
  • sky_bottom_radius: 範囲 = [1000, 32768]
  • sky_top_radius: 範囲 = [1000, 32768]
SKY_REFRACTION 11 float moisture_level, float droplet_radius, float ice_level 虹や光学効果のための空の屈折パラメータ。
  • moisture_level: 範囲 = [0, 1]
  • droplet_radius: 範囲 = [5, 1000]
  • ice_level: 範囲 = [0, 1]
WATER_BLUR_MULTIPLIER 100 float multiplier 水中でのシーンのぼかしに適用される乗数。

範囲 = [-0.5, 0.5]

WATER_FOG 101 vector color, float density, fload modulation 水中で適用される霧のパラメータ:
  • color: 水中の霧の色。
    範囲 = [<0,0,0>, <1,1,1>]
  • density: 霧に適用される密度指数。
    範囲 = [-10, 10]
  • modulation:
    範囲 = [0, 20]
WATER_FRESNEL 102 float offset, float scale 水面に適用されるフレネル散乱。
  • offset: 範囲 = [0,1]

scale: 範囲 = [0,1]

WATER_NORMAL_TEXTURE 107 string texture_ident 水の法線に使用するテクスチャのインベントリアイテムの名前またはUUID。
WATER_NORMAL_SCALE 104 vector scale 水の法線マップに適用されるスケーリング。

範囲 = [<0,0,0>, <10,10,10>]

WATER_REFRACTION 105 float scale_above, float scale_below 水の表面を通して見るときの屈折係数。
  • scale_above: 範囲 = [0, 3]
  • scale_below: 範囲 = [0, 3]
WATER_WAVE_DIRECTION 106 vector large_wave, vector small_wave 波の方向を示すベクトル。 Yが北/南を表し、Xが東/西の移動を表します。
  • large_wave: 大きな波の速度と方向。
    範囲 = [<-20, -20>, <20, 20>]
  • small_wave: 小さな波の速度と方向。
    範囲 = [<-20, -20>, <20, 20>]
SKY_AMBIENT 0 vector color シーンで使用されるアンビエントカラー。
SKY_BLUE 22 vector blue_density, vector blue_horizon 環境で使用される青の密度と青の地平線を計算するための色を変更します。
SKY_HAZE 23 float density, float horizon, float density_multiplier, float distance_multiplier 青の密度と青の地平線がシーンのライティングに与える影響を計算するための値。
SKY_REFLECTION_PROBE_AMBIANCE 24 float ambiance すべてのリフレクションプローブに適用される最小アンビエンス値。

範囲 = [0.0, 10.0]

注記: この機能は、今後のGLTF Materialsプロジェクトでサポートされます。現時点では、サポートされたテストエリアとサポートされたテストビューアでのみ機能します。

警告

  • 有効なパラメータのリストは、llGetEnvironment で利用可能なものと異なります。
  • エージェントのビューアは、このコマンドを無視することがあります。
  • ビューア上でローカルに設定された環境は、この関数で設定された環境を上書きします。

サンプル

float gTransitionTime = 3.0;
list gListEnvironmentParams = [
    SKY_CLOUD_TEXTURE, TEXTURE_PLYWOOD,
    SKY_GAMMA, 10.0,
    WATER_NORMAL_SCALE, <5.0, 5.0, 5.0>
];

default
{
    touch_start(integer total_number)
    {
        key person = llDetectedKey(0);
        if (llGetAgentSize(person) != ZERO_VECTOR)
        {
            llRequestExperiencePermissions(person, "");
        }
        else
        {
            llInstantMessage(person, "You need to be in the same region to change environment");
        }
    }

    experience_permissions(key agent_id)
    {
        integer envTest = llSetAgentEnvironment(agent_id, gTransitionTime, gListEnvironmentParams);
        if (envTest == 1)
        {
            llRegionSayTo(agent_id, 0, "Applying environment for " + (string)agent_id);
        }
        else
        {
            llRegionSayTo(agent_id, 0, "Cannot apply environment for " + (string)agent_id + " due to reason id: " + (string)envTest);
        }
    }

    experience_permissions_denied(key agent_id, integer reason)
    {
        llRegionSayTo(agent_id, 0, "Denied experience permissions for " + (string)agent_id + " due to reason id: " + (string)reason);
    }
}

関連項目

特記事項

Search JIRA for related Issues

Signature

function void llSetAgentEnvironment( key agent_id, float transition, list params );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。