SurfaceGui

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

基本的なユーザーインタラクションが発生することを許可しながら、3D 世界の表面に GUI 要素をレンダリングできます。SurfaceGuis は、PlayerGui の子孫である必要があります。表面Guis は、どのプレイヤーがそれと対話しているかを知るために PlayerGui の子孫でなければなりません。

性能の向上のために静的 UI をキャッシュする

次のイベントの 1 つが発生するまで、GUI の外観はキャッシュされます:

  • 子がGUIに追加されます。
  • 子孫は、GUIから削除されます。
  • GUI の子孫のプロパティが変更される。
  • GUI のプロパティが変更されます。

これらのイベントが発生すると、GUI の外観は次のフレームで再計算されます。

概要

プロパティ

  • 並列読み取り

    SurfaceGui が常に他の 3D オブジェクトの上にレンダリングされるかどうかを決定します。

  • 並列読み取り

    GUIのライトがスケールされるときの要素を決定します。 LightInfluence が 0 のとき、GUIのライトがスケールされる要素は次のとおりです。

  • 並列読み取り

    「バーチャル画面」のサイズ、「バーチャルピクセル」で、SurfaceGuis のピクセル間の互換性をサポートします。

  • 並列読み取り

    オンに設定すると、サーフェスギュイのキャンバスボーダーの外にある GuiObjects の一部は描画されません。

  • 並列読み取り

    SurfaceGui がゲームワールドの照明にどれほど影響されるかを制御します。

  • 並列読み取り

    表示する前に SurfaceGui の距離をコントロールします。

  • 並列読み取り

    世界スペースのスクリーン空間ピクセルの数を決定します。これは、表面ギュイのコンテンツをレンダリングするために使用される世界スペースのスタッドプレットです。

  • SurfaceGui がスタッドでサイズを変更するか、固定サイズでレンダリングするかを決定します。

  • 持続ツールではなく、表面GUI をクリックしたときに作動する距離を設定します。

  • 並列読み取り

    接続されている表面のノーマルに対する SurfaceGui のオフセットをオフセットします。

SurfaceGuiBase から継承した プロパティLayerCollector から継承した プロパティGuiBase2d から継承した プロパティ

イベント

GuiBase2d から継承した イベント
  • SelectionChanged(amISelected : bool,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal

    ゲームパッドの選択が移動すると、退出します。または、接続された GuiBase2d または任意の子 GuiObjects 内で変更されます。

プロパティ

AlwaysOnTop

並列読み取り

SurfaceGui が 3D コンテンツの上にレンダリングするか、または 3D コンテンツによって隠されるかを決定します。

フラグを偽に設定すると、SurfaceGui は他の 3D コンテンツと同じようにレンダリングされ、他の 3D オブジェクトによって隠されます。

設定を「真」にすると、3D コンテンツのトップに常にレンダリングされ、外観が大幅に変更されます:

  • 色は、ScreenGui 内のどのように表示されるかに一致します。
  • 高いDPIデバイスでテキストは鋭く表示される場合があります。
  • SurfaceGui.LightInfluence は 0 として扱われます。
  • SurfaceGui.Brightness にはエフェクトはありません。

Brightness

並列読み取り

明るさ は、GUI のエミットされた光のスケールに使用される要素を決定します。デフォルトでは、このプロパティは 1 ですが、範囲 [0, 1000] に任意の値を設定できます。

このプロパティを変更することで、GUI の明るさは環境によくマッチできます。たとえば、タイムスクエアにあるビデオボードは、明るい日にはよく見えるように明るくすることができます。

このプロパティは、GUI が光を放出しない次のシナリオでは影響を与えません:

  • Class.SurfaceGui.AlwaysOnTop|AlwaysOnTop が true の場合、各ピクセルの色は画面に表示されている色です。
  • Class.SurfaceGui.LightInfluence|LightInfluence が 1 であると、GUI からのすべての光が環境から反射され、エミットされる代わりに発生します。

CanvasSize

並列読み取り

「バーチャル画面」のサイズ、「バーチャルピクセル」で、SurfaceGuis のピクセル間の互換性をサポートします。

ClipsDescendants

並列読み取り

オンに設定すると、サーフェスギュイのキャンバスボーダーの外にある GuiObjects の一部は描画されません。

このプロパティが偽であっても、SurfaceGui のキャンバスの外にあるオブジェクトはレンダリングされません。

LightInfluence

並列読み取り

SurfaceGui がゲームワールドの照明にどれほど影響されるかを制御します。

MaxDistance

並列読み取り

サーフェスギュイのレンダリングを停止する前に表示されることの距離を制御します。0の値は、制限がありません、そして、無限に遠くにレンダリングされます。

多くのサーフェスGUIでエクスペリエンスを持つ場合、これを各サーフェスGUIに対して適切な値に設定することをお勧めします。Studio でサーフェスGUIを挿入するときのデフォルト値は 1000です。これは、ほとんどのユースケースにとって問題ないでしょう。

屋外の UI の場合は、MaxDistance を遠くに設定して、UI が画面に表示されるときにスクリーンの小さなサイズを維持する必要があります。これにより、屋外に表示されるときに目立たなくなります。

サーフェスギュイの下に似たデカールを追加するか、UI の背景色と同じようにパーツの色を変更して、ポップをさらに減少させることができます。

室内の場合は、MaxDistance を Room のサイズより少し大きく設定して、プレイヤーが別の部屋にいるときに UI がレンダリングされないようにします。

PixelsPerStud

並列読み取り

ピクセルパースタッド は、サーフェスギュイのコンテンツをレンダリングするために使用されるピクセルの密度を決定します。

より高い値は、GuiObject 内のさまざまなオブジェクトが同じサイズで表示される

並列読み取り

Class.SurfaceGui.CanvasSize を使用して、サーフェスGUIを固定サイズに設定すると、SurfaceGui.CanvasSize を使用してサイズを設定したサイズのサーフェスをレンダリングします。

Class.SurfaceGui.PixelsPerStud に設定されると、SurfaceGui は、 SurfaceGui.PixelsPerStud とサーフェスギュイのサイズを基に変数サイズを持つようにレンダリングされます。

ToolPunchThroughDistance

並列読み取り

持っているツールではなく、表面ギュイの開始時点で反応する距離を設定します。たとえば、キャラクターが表面ギュイのこの距離にある場合、ツールはクリックではなく、ツールを開始しません。

ZOffset

並列読み取り

接続されている表面のノーマルに対する SurfaceGui のオフセットをオフセットします。

方法

イベント