滑杆 - MRTK2

Slider example

滑杆是可讓您在追蹤上移動滑杆來持續變更值的 UI 元件。目前,捏合滑杆可以直接或距離直接抓取滑杆來移動。 滑杆適用于 AR 和 VR,使用運動控制器、手部或手勢 + 語音。

範例場景

您可以在 的 MRTK/Examples/Demos/UX/Slider/Scenes/SliderExample場景中找到範例。

如何使用滑杆

PinchSlider 預製專案拖放到場景階層中。 如果您想要修改或建立自己的滑杆,請記得執行下列動作:

  • 請確定您的指紋物件有碰撞器。 在 PinchSlider 預製工具中,碰撞器已開啟 SliderThumb/Button_AnimationContainer/Slider_Button
  • 如果您想要能夠接近滑杆,請確定包含碰撞器的物件也具有「接近互動抓取」元件。

我們也建議使用下列階層

  • PinchSlider - 包含滑杆Component
    • TouchCollider - 包含滑杆整個可選取區域的 Collider。 啟用貼齊至位置行為。
    • SliderThumb - 包含可移動的指紋
    • TrackVisuals - 包含追蹤和任何其他視覺效果
    • OtherVisuals - 包含任何其他視覺效果

滑杆事件

滑杆會公開下列事件:

  • OnValueUpdated - 每當滑杆值變更時呼叫
  • OnInteractionStarted - 當使用者抓取滑杆時呼叫
  • OnInteractionEnded - 當使用者放開滑杆時呼叫
  • OnHoverEntered - 當使用者的手/控制器停留在滑杆上時呼叫,使用接近或遠距的互動。
  • OnHoverExited - 當使用者的手/控制器不再接近滑杆時呼叫。

設定滑杆系結和軸

您可以藉由在場景中移動控點,直接移動滑杆的起點和終點:

Sliders Config

您也可以透過 [滑杆軸 ] 欄位,在滑杆的本機空間中指定軸 ()

如果您無法使用控點,您可以改為透過 [滑杆開始距離 ] 和 [ 滑杆結束距離 ] 欄位來指定滑杆的起點和終點。 這些會以本機座標指定滑杆的開始/結束位置做為滑杆中心距離。 這表示一旦您將滑杆的開始和結束距離設定為您想要,您就可以調整滑杆的較小或更大,而不需要更新開始和結束距離。

Inspector 屬性

Thumb 根目錄 包含滑杆指紋的遊戲物件。

貼齊 [定位]滑杆是否貼齊滑杆上的指定位置

可觸控 此滑杆是否可透過觸控事件控制

Thumb Collider 控制滑杆指的碰撞器

可觸控的碰撞器當 貼齊 To Position 為 true 時,可以觸控或選取滑杆的區域。

滑杆值 滑杆的值。

使用滑杆步驟除法 控制此滑杆是以步驟遞增還是持續遞增。

滑杆步驟除法 啟用 [使用滑杆步驟除法] 時,滑杆分割成的細分數目。

追蹤視覺效果 包含沿著滑杆的所需追蹤視覺效果的遊戲物件。

刻度標記 包含沿著滑杆的所需刻度標記的遊戲物件。

Thumb 視覺效果 包含沿著滑杆的所需指紋視覺效果的遊戲物件。

滑杆軸 滑杆沿著移動的軸。

滑杆開始距離 滑杆追蹤開始的位置,如同沿著滑杆軸中央的距離,以本機空間單位為單位。

滑杆結束距離 滑杆追蹤結束的位置,如同沿著滑杆軸中央的距離,以本機空間單位為單位。

當使用者在編輯器中更新滑杆軸值時,如果指定 [追蹤視覺效果] 或 [刻度視覺效果],則會更新其轉換。 具體而言,其本機位置會重設,且其本機旋轉設定為符合滑杆軸方向。 不會修改其縮放比例。 如果刻度標記有 Grid 物件集合元件,則 Layout 和 CellWidth 或 CellHeight 會據以更新,以符合滑杆軸。

滑杆組態範例

具有貼齊到位置的連續滑杆Continuous Sliders

具有貼齊至位置的步驟滑杆

Step Sliders

觸控滑杆

Touch Sliders